/* KiMercado Afiliados — auth cards sem scroll e sem corte */
@media (min-width:1101px){
  :root{
    --affiliate-auth-card-width:500px;
    --affiliate-auth-card-height:min(650px,calc(100dvh - 64px));
  }

  html,body,#root{
    height:100%;
    min-height:100%;
    overflow:hidden!important;
  }

  .reference-auth-page{
    height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
  }

  .reference-form-side{
    box-sizing:border-box!important;
    height:100dvh!important;
    min-height:0!important;
    padding:32px clamp(34px,4.3vw,72px)!important;
    overflow:hidden!important;
  }

  .exact-reference-hero{
    height:100dvh!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .exact-reference-hero-image{
    object-fit:contain!important;
    object-position:left center!important;
    background:#071b40!important;
  }

  .reference-login-card,
  .reference-mfa-card,
  .reference-password-card{
    box-sizing:border-box!important;
    width:min(var(--affiliate-auth-card-width),100%)!important;
    height:var(--affiliate-auth-card-height)!important;
    min-height:var(--affiliate-auth-card-height)!important;
    max-height:var(--affiliate-auth-card-height)!important;
    padding:28px 34px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    animation:none!important;
    transform:none!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }

  .reference-login-card::-webkit-scrollbar,
  .reference-mfa-card::-webkit-scrollbar,
  .reference-password-card::-webkit-scrollbar{
    display:none!important;
  }

  .reference-kicker{
    margin-bottom:16px!important;
  }

  .reference-kicker>span{
    width:46px!important;
    height:46px!important;
    border-radius:13px!important;
  }

  .reference-kicker svg{
    width:22px!important;
    height:22px!important;
  }

  .reference-login-card h2,
  .reference-mfa-card h2,
  .reference-password-card h2{
    margin:0 0 7px!important;
    font-size:32px!important;
    line-height:1.04!important;
  }

  .reference-login-card>p,
  .reference-mfa-card>p,
  .reference-password-card>p{
    margin:0 0 15px!important;
    font-size:12.5px!important;
    line-height:1.45!important;
  }

  .reference-login-card>label,
  .reference-mfa-card>label,
  .reference-password-card>label{
    margin-top:10px!important;
    gap:6px!important;
  }

  .reference-field{
    height:48px!important;
  }

  .reference-field input{
    height:45px!important;
  }

  .reference-login-options{
    margin-top:9px!important;
  }

  .reference-submit{
    height:49px!important;
    margin-top:14px!important;
  }

  .reference-first-access{
    margin-top:15px!important;
    gap:4px!important;
  }

  .reference-trust{
    margin-top:auto!important;
    padding:12px 14px!important;
    grid-template-columns:38px 1fr!important;
  }

  .reference-trust>span{
    width:34px!important;
    height:34px!important;
  }

  .reference-mfa-card .premium-qr{
    max-height:none!important;
    overflow:visible!important;
    margin:8px 0 10px!important;
  }

  .reference-mfa-card .premium-qr img{
    width:126px!important;
    height:126px!important;
  }

  .reference-mfa-card .reference-otp .otp-cells{
    gap:7px!important;
  }

  .reference-mfa-card .reference-otp .otp-cells span{
    height:50px!important;
  }

  .reference-mfa-card .reference-submit{
    margin-top:13px!important;
  }
}

@media (max-width:1100px){
  html,body,#root{
    min-height:100%;
    overflow-x:hidden!important;
  }

  .reference-login-card,
  .reference-mfa-card,
  .reference-password-card{
    width:min(500px,100%)!important;
    height:auto!important;
    min-height:560px!important;
    max-height:none!important;
    overflow:visible!important;
    scrollbar-width:none!important;
  }

  .reference-login-card::-webkit-scrollbar,
  .reference-mfa-card::-webkit-scrollbar,
  .reference-password-card::-webkit-scrollbar{
    display:none!important;
  }
}
