
/* v104 — restore full phone mockup on login */
html, body.v65-login{
  min-height:100%!important;
}
body.v65-login{
  margin:0!important;
  overflow:hidden!important;
}
body.v65-login .v65-layout{
  min-height:100vh!important;
  height:100vh!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(430px,.8fr)!important;
  align-items:center!important;
  gap:32px!important;
  padding:28px clamp(24px,4vw,64px)!important;
  box-sizing:border-box!important;
}
body.v65-login .v65-intro{
  align-self:center!important;
  max-width:780px!important;
}
body.v65-login .v65-phone-area{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  height:100%!important;
  overflow:visible!important;
}
body.v65-login .v65-phone{
  width:min(410px,31vw)!important;
  height:min(820px,92vh)!important;
  max-width:410px!important;
  min-width:340px!important;
  aspect-ratio:9/19.5!important;
  border-radius:48px!important;
  padding:12px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  flex:0 0 auto!important;
}
body.v65-login .v65-screen{
  width:100%!important;
  height:100%!important;
  border-radius:38px!important;
  overflow:hidden!important;
}
body.v65-login .v65-phone-content{
  height:calc(100% - 42px)!important;
  max-height:calc(100% - 42px)!important;
  min-height:0!important;
  padding:16px 24px 26px 22px!important;
  box-sizing:border-box!important;
}
body.v65-login .v65-phone-brand{
  margin-top:4px!important;
  margin-bottom:12px!important;
}
body.v65-login .v65-phone .v65-phone-brand img{
  width:72px!important;
  height:72px!important;
  max-width:72px!important;
  max-height:72px!important;
}
body.v65-login .v71-welcome{
  text-align:center!important;
  margin-bottom:10px!important;
}
body.v65-login .v71-welcome h2{
  margin:0 0 3px!important;
}
body.v65-login .v65-form{
  gap:9px!important;
}
body.v65-login .v65-form > label{
  margin:0!important;
}
body.v65-login .v65-input,
body.v65-login .v65-input.v71-captcha-answer{
  min-height:48px!important;
  height:48px!important;
}
body.v65-login .v65-captcha-row{
  min-height:58px!important;
}
body.v65-login .v65-submit{
  min-height:46px!important;
  height:46px!important;
}
body.v65-login .v65-security{
  margin-top:10px!important;
  margin-bottom:4px!important;
}
body.v65-login .v96-phone-scroll-spacer{
  height:56px!important;
  flex-basis:56px!important;
}
body.v65-login .v95-phone-rule{
  top:56px!important;
  bottom:24px!important;
}

/* Common laptop / 100% zoom */
@media (max-height:820px) and (min-width:901px){
  body.v65-login .v65-layout{
    padding-top:16px!important;
    padding-bottom:16px!important;
  }
  body.v65-login .v65-phone{
    height:94vh!important;
    width:auto!important;
    min-width:330px!important;
  }
  body.v65-login .v65-phone-content{
    padding-top:10px!important;
  }
  body.v65-login .v65-phone .v65-phone-brand img{
    width:62px!important;
    height:62px!important;
    max-width:62px!important;
    max-height:62px!important;
  }
}

/* Narrow desktop/tablet: keep the whole mockup visible */
@media (max-width:1100px) and (min-width:761px){
  body.v65-login .v65-layout{
    grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;
    gap:18px!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
  body.v65-login .v65-phone{
    width:auto!important;
    height:min(800px,92vh)!important;
    min-width:330px!important;
  }
  body.v65-login .v65-intro h1{
    font-size:clamp(38px,5vw,62px)!important;
  }
}

/* Real phone/mobile: hide the decorative left side, use full login card */
@media (max-width:760px){
  body.v65-login{
    overflow:auto!important;
  }
  body.v65-login .v65-layout{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    min-height:100svh!important;
    height:auto!important;
    padding:14px!important;
  }
  body.v65-login .v65-intro{
    display:none!important;
  }
  body.v65-login .v65-phone-area{
    width:100%!important;
    height:auto!important;
  }
  body.v65-login .v65-phone{
    width:min(390px,100%)!important;
    min-width:0!important;
    height:min(800px,calc(100svh - 28px))!important;
    max-height:none!important;
  }
}
