/* Silver Ivy RC21 | Wizard illustration and navigation repair.
   Only the premium wizard desktop shell is changed. Mobile retains its
   established single-column flow, and saved per-step artwork is respected. */
@media (min-width: 1040px) and (min-height: 660px) {
  .ivy-wz--classic[data-premium="1"] .ivy-wz__body {
    --ivy-rc21-aside:clamp(265px,31%,390px);
    --ivy-rc21-gap:clamp(17px,2vw,29px);
    position:relative!important;
    padding:clamp(11px,1.35vw,19px) clamp(18px,2.1vw,32px) 11px!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    min-height:0!important;
    gap:0!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__contentGrid {
    position:relative!important;
    display:block!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__questionPanel {
    width:calc(100% - var(--ivy-rc21-aside) - var(--ivy-rc21-gap))!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    gap:clamp(10px,1.25vw,16px)!important;
    align-self:start!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__intro {
    padding:0!important;
    min-height:0!important;
    background:transparent!important;
    border:0!important;
    gap:clamp(6px,.75vw,10px)!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__title {
    max-width:28ch!important;
    font-size:clamp(23px,2.1vw,34px)!important;
    line-height:1.16!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__help {
    max-width:65ch!important;
    font-size:clamp(12px,1vw,14px)!important;
    line-height:1.48!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choices {
    gap:clamp(10px,1vw,14px)!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choice {
    min-height:clamp(59px,6.6vh,76px)!important;
    padding:clamp(9px,.85vw,13px) clamp(11px,1vw,15px)!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choiceTitle {
    font-size:clamp(12px,1vw,14px)!important;
    line-height:1.28!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choiceSub {line-height:1.34!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualPanel:not([hidden]),
  .ivy-wz--classic[data-premium="1"][data-step-type="plan"] .ivy-wz__visualPanel:not([hidden]),
  .ivy-wz--classic[data-premium="1"][data-step-type="review"] .ivy-wz__visualPanel:not([hidden]) {
    display:flex!important;
    flex-direction:column!important;
    position:absolute!important;
    z-index:1!important;
    top:0!important;
    right:0!important;
    width:var(--ivy-rc21-aside)!important;
    max-width:100%!important;
    max-height:calc(var(--ivy-wz-available,100dvh) - 155px)!important;
    min-height:0!important;
    overflow:auto!important;
    gap:clamp(9px,1vw,13px)!important;
    padding:clamp(10px,1.15vw,16px)!important;
    border-radius:18px!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualMedia {
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-height:clamp(145px,28vh,255px)!important;
    aspect-ratio:16/10!important;
    overflow:hidden!important;
    border-radius:13px!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualMedia img,
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualMedia video {object-fit:cover!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualCopy {gap:7px!important; padding:1px 2px!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualCopy strong {
    font-size:clamp(17px,1.3vw,21px)!important;line-height:1.22!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualCopy p {
    display:block!important; font-size:12px!important;line-height:1.5!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualSummary {
    width:100%!important;
    min-height:44px!important;
    margin-top:auto!important;
    padding:10px 12px!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__bottom {
    width:calc(100% - var(--ivy-rc21-aside) - var(--ivy-rc21-gap))!important;
    min-width:0!important;
    max-width:100%!important;
    gap:11px!important;
    margin:0!important;
    padding:9px 0 calc(9px + env(safe-area-inset-bottom))!important;
    min-height:60px!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__bottom .ivy-wz__btn--primary {
    margin-left:0!important;
    min-width:clamp(130px,12vw,178px)!important;
  }
  .ivy-wz--classic[data-premium="1"] .ivy-wz__bottom .ivy-wz__terms {
    margin-left:auto!important;
    margin-right:4px!important;
  }
  /* A short question should not push Continue to the bottom of the screen. */
  .ivy-wz--classic[data-premium="1"]:is([data-step-type="choice"],[data-step-type="text"],[data-step-type="identity"]) .ivy-wz__body {
    grid-template-rows:auto auto!important;
    align-content:start!important;
  }
  .ivy-wz--classic[data-premium="1"]:is([data-step-type="choice"],[data-step-type="text"],[data-step-type="identity"]) .ivy-wz__contentGrid {
    height:auto!important;
    max-height:calc(var(--ivy-wz-available,100dvh) - 170px)!important;
  }
  .ivy-wz--classic[data-premium="1"]:is([data-step-type="choice"],[data-step-type="text"],[data-step-type="identity"]) .ivy-wz__questionPanel {
    height:auto!important;
    justify-content:flex-start!important;
  }
  .ivy-wz--classic[data-premium="1"]:is([data-step-type="choice"],[data-step-type="text"],[data-step-type="identity"]) .ivy-wz__step {
    flex:0 1 auto!important;
    min-height:0!important;
    max-height:calc(var(--ivy-wz-available,100dvh) - 245px)!important;
    overflow:auto!important;
  }
  .ivy-wz--classic[data-premium="1"]:is([data-step-type="choice"],[data-step-type="text"],[data-step-type="identity"]) .ivy-wz__bottom {
    margin-top:clamp(10px,1.8vh,19px)!important;
  }
  /* Keep complex stages scrollable inside the question column. */
  .ivy-wz--classic[data-premium="1"]:not([data-step-type="choice"]):not([data-step-type="text"]):not([data-step-type="identity"]) .ivy-wz__step {
    min-height:0!important; overflow-y:auto!important; overscroll-behavior:contain;
  }
}
/* On small/short windows the saved illustration isn't allowed to steal form space. */
@media (max-width:1039px), (max-height:659px) {
  .ivy-wz--classic[data-premium="1"] .ivy-wz__visualPanel {display:none!important;}
}
/* Split sign-in cards vertically before the narrower desktop question column overflows. */
@media (min-width:1040px) and (max-width:1240px) and (min-height:660px) {
  .ivy-wz--classic[data-premium="1"] .ivy-wz__identity {
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    padding:clamp(10px,1.1vw,14px)!important;
  }
}
/* Small screens: steady vertical rhythm and tap-friendly answers. */
@media(max-width:880px){
  .ivy-wz--classic[data-premium="1"] .ivy-wz__questionPanel{gap:8px!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__intro{gap:6px!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choices{gap:8px!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__choice{min-height:51px!important;padding:9px 11px!important;}
  .ivy-wz--classic[data-premium="1"] .ivy-wz__step{padding-top:3px!important;}
}
