/* KOVRA — pulido premium final del portal externo.
   Solo presentación: proporción, composición comercial y cierre informativo. */

/* Proporción más recogida: menos ancha y con una lectura vertical un poco más larga. */
.auth-gateway-shell{
  width:min(calc(100% - 28px),500px) !important;
  padding-top:max(9px,env(safe-area-inset-top)) !important;
  padding-bottom:max(13px,env(safe-area-inset-bottom)) !important;
}
.auth-register-shell{
  width:min(calc(100% - 28px),540px) !important;
}

body.auth-premium-page::before{
  width:min(91vw,590px) !important;
  border-radius:50% 50% 0 0 / 18% 18% 0 0 !important;
}
body.auth-premium-page::after{
  width:min(85vw,548px) !important;
  border-radius:50% 50% 0 0 / 17% 17% 0 0 !important;
}

.auth-main-card,
.auth-register-card{
  border-radius:21px !important;
}

/* La cabecera conserva el logo como protagonista pero sin aire desperdiciado. */
.auth-brand{
  margin-bottom:6px !important;
}
.auth-brand .kovra-logo-login{
  width:clamp(164px,43vw,210px) !important;
  margin-bottom:2px !important;
}
.auth-logo-ornament{
  width:66px !important;
  margin-bottom:2px !important;
}
.auth-hero-line{
  font-size:14px !important;
}

/* Bloque comercial: apariencia de módulo premium, no texto suelto. */
.auth-benefits{
  margin-top:8px !important;
  padding:10px 10px 9px !important;
  border-radius:18px !important;
  background:
    radial-gradient(circle at 11% 24%,rgba(62,226,105,.075),transparent 25%),
    linear-gradient(145deg,rgba(8,18,12,.99),rgba(2,8,5,.995)) !important;
}
.auth-benefits-head{
  grid-template-columns:34px minmax(0,1fr) !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 0 7px !important;
  padding:0 1px 7px !important;
  border-bottom:1px solid rgba(255,255,255,.055);
}
.auth-benefits-badge{
  width:32px !important;
  height:32px !important;
  border-radius:10px !important;
}
.auth-benefits-badge svg{
  width:17px !important;
  height:17px !important;
}
.auth-benefits h2{
  margin:0 0 2px !important;
  font-size:13.5px !important;
  line-height:1.12 !important;
  letter-spacing:-.015em !important;
}
.auth-benefits-head p{
  margin:0 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  color:#9ea9a2 !important;
}
.auth-benefits-body{
  grid-template-columns:34% minmax(0,1fr) !important;
  gap:8px !important;
}

/* Visual de cartera corregido: el círculo de datos queda dentro del panel y no invade otros elementos. */
.auth-product-visual{
  min-height:151px !important;
  overflow:hidden !important;
}
.auth-mini-dashboard{
  left:4px !important;
  bottom:23px !important;
  width:82px !important;
  height:83px !important;
  padding:6px 6px 5px !important;
}
.auth-mini-bars{
  grid-template-columns:16px minmax(0,1fr) !important;
  gap:4px !important;
  margin-top:0 !important;
}
.auth-donut{
  width:14px !important;
  height:14px !important;
  justify-self:center !important;
}
.auth-donut::after{
  inset:3.5px !important;
}
.auth-lines{
  min-width:0 !important;
  overflow:hidden !important;
}
.auth-cloud{
  top:12px !important;
  left:12px !important;
}
.auth-coins{
  right:2px !important;
  bottom:14px !important;
  transform:scale(.86) !important;
  transform-origin:right bottom !important;
}
.auth-platform{
  height:32px !important;
}

/* Funciones con ritmo visual uniforme y un poco más de aire útil. */
.auth-feature{
  grid-template-columns:24px minmax(0,1fr) !important;
  gap:6px !important;
  padding:4.5px 0 !important;
}
.auth-feature p{
  font-size:12px !important;
  line-height:1.22 !important;
}

/* Cierre premium: convierte seguridad + aviso legal en un bloque intencional y organizado. */
.auth-footer-trust{
  width:min(100%,420px);
  margin:7px auto 0 !important;
  padding:7px 10px 6px !important;
  border:1px solid rgba(83,241,127,.10);
  border-bottom:0;
  border-radius:12px 12px 0 0;
  background:rgba(83,241,127,.022);
  font-size:12px !important;
  letter-spacing:.015em;
}
.auth-footer-trust svg{
  width:14px !important;
  height:14px !important;
}
.auth-disclaimer{
  width:min(100%,420px);
  margin:0 auto !important;
  padding:6px 11px 7px !important;
  border:1px solid rgba(255,255,255,.065);
  border-top:1px solid rgba(83,241,127,.08);
  border-radius:0 0 12px 12px;
  background:rgba(0,0,0,.16);
  color:#929d96 !important;
  font-size:12px !important;
  line-height:1.3 !important;
  letter-spacing:.005em;
}
.auth-disclaimer strong{
  display:inline-block;
  margin-bottom:2px;
  color:#dce6df !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.015em;
}

/* Recuperación y registro mantienen el mismo lenguaje visual, sin tocar campos ni lógica. */
.recovery-card .auth-card-title{
  margin-bottom:6px !important;
}
.auth-register-card .form-card,
.auth-register-card .id-preview-card{
  border-radius:12px !important;
}

@media(max-width:430px){
  .auth-gateway-shell,
  .auth-register-shell{
    width:min(calc(100% - 26px),475px) !important;
  }
  body.auth-premium-page::before{width:92vw !important;}
  body.auth-premium-page::after{width:86vw !important;}
  .auth-benefits-body{grid-template-columns:35% minmax(0,1fr) !important;}
}

@media(max-width:365px){
  .auth-gateway-shell,
  .auth-register-shell{width:calc(100% - 22px) !important;}
  .auth-benefits-body{grid-template-columns:34% minmax(0,1fr) !important;}
  .auth-feature p{font-size:12px !important;}
}
