/* Páginas de acceso v2 (iniciar sesión, registro, recuperar y restablecer
 * contraseña). Complementa la sección "PÁGINAS INTERNAS v2" de home.css. */

.auth{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start}
.auth.auth-sm{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:1080px;margin:0 auto;align-items:stretch}
@media (max-width:900px){.auth,.auth.auth-sm{grid-template-columns:minmax(0,1fr)}}

/* Panel de marca */
.auth-panel{position:relative;overflow:hidden;border-radius:24px;color:#ffffff;min-height:100%}
.auth:not(.auth-sm) .auth-panel{position:sticky;top:24px;min-height:0}
.auth-panel__in{position:relative;z-index:1;padding:44px 40px;display:flex;flex-direction:column;gap:18px}
.auth-panel .h2{font-size:38px;margin:4px 0 0}
.auth-panel .h2 em{font-style:normal;color:#FF4D55}
.auth-panel .lead{font-size:17px}
.auth-panel__feats{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.auth-panel .feat{align-items:center;font-size:15px;color:#EDE6E4;line-height:1.45}
.auth-panel .ico{background:rgba(255,255,255,.1);color:#FF6B70;width:44px;height:44px;font-size:18px}
@media (max-width:900px){
  .auth:not(.auth-sm) .auth-panel{position:relative;top:auto}
  .auth-panel__in{padding:32px 26px}
  .auth-panel .h2{font-size:30px}
  .auth-panel__feats{display:none}
}

/* Tarjeta del formulario */
.auth-card{display:flex;flex-direction:column;gap:22px}
.auth-card__h{margin:0;font-size:28px;line-height:1.15;font-weight:800;color:#2A0E0C;letter-spacing:-.01em}
.auth-card__sub{margin:6px 0 0;font-size:14px;line-height:1.6;color:#5E4B4A}
.auth-card form{display:flex;flex-direction:column;gap:16px}
.auth-card .btn{width:100%;margin-top:4px}
.auth-link{color:#D7141C;font-weight:600;text-decoration:none}
.auth-link:hover{text-decoration:underline}
.auth-olvido{text-align:right;font-size:14px;margin-top:-4px}
.auth-pie{margin:0;padding-top:18px;border-top:1px solid #F0E4E4;text-align:center;font-size:14px;color:#5E4B4A}

/* Campos con icono y botón de mostrar contraseña */
.in-wrap{position:relative}
.in-wrap .in-ico{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#B8A3A2;font-size:15px;pointer-events:none}
.in-wrap .input{padding-left:44px}
.in-wrap.has-eye .input{padding-right:46px}
.in-wrap .toggle-password{position:absolute;top:50%;right:14px;transform:translateY(-50%);cursor:pointer;color:#8A7473;font-size:16px;padding:4px}
.in-wrap .toggle-password:hover{color:#D7141C}

/* Errores de validación (mismas clases que usa el JavaScript del formulario) */
.uk-input.error{border-color:#D7141C}
.error-message{color:#D7141C;font-size:13px;font-weight:500}
.error-message:empty{display:none}
.text-danger{color:#D7141C;font-size:13px;font-weight:500}
.check a{color:#D7141C;font-weight:600}

/* intl-tel-input dentro del sistema visual */
.field .iti{display:block;width:100%}
.field .iti .input{width:100%}
.iti__selected-flag{border-radius:12px 0 0 12px}
.iti--container{z-index:10000}
