/* ============================================================
   LOGIN · limpio (mobile-first)
   Solo el formulario, con aire + neurona tenue de fondo.
   ============================================================ */
#login{
  position:fixed; top:0; left:0; width:100%; height:100%; z-index:10;  /* sin `inset` (compat celular) */
  display:flex; align-items:center; justify-content:center;
  background:radial-gradient(ellipse at top, var(--ent-hi) 0%, var(--ent-navy) 60%, var(--ent-deep) 100%);
  padding:32px; overflow-y:auto;
  opacity:0; transition:opacity .6s ease;
}
#login.is-in{ opacity:1; }

.lg-panel{ position:relative; z-index:1; width:100%; max-width:340px; }

.lg-wordmark{
  font-family:var(--font-serif); font-size:var(--fs-body); color:var(--ent-gold);
  text-align:center; letter-spacing:.01em; margin-bottom:30px; opacity:.9;
}
.lg-form{ width:100%; }
.lg-form-title{ font-family:var(--font-serif); font-size:var(--fs-title); color:#fff; line-height:1.14; text-align:center; margin-bottom:8px; }
.lg-form-sub{ font-family:var(--font-serif); font-style:italic; font-size:var(--fs-caption); color:rgba(var(--ent-ink-rgb),.5); text-align:center; margin-bottom:34px; }

.lg-field{ margin-bottom:24px; }
.lg-field label{ display:block; font-family:var(--font-sans); font-size:var(--fs-label); letter-spacing:.16em; text-transform:uppercase; color:var(--ent-gold); font-weight:600; margin-bottom:10px; }
.lg-field input{
  width:100%; background:transparent; border:none;
  border-bottom:1px solid rgba(var(--ent-gold-rgb),.32);
  padding:11px 2px; color:#fff; font-size:var(--fs-body);   /* 16px · anti-zoom iOS */
  font-family:var(--font-serif); transition:border-color .2s;
}
.lg-field input::placeholder{ color:rgba(var(--ent-ink-rgb),.3); font-style:italic; }
.lg-field input:focus{ outline:none; border-bottom-color:var(--ent-gold); }

.lg-form .btn--primary{ margin-top:8px; }

/* Botón primario en la ENTRADA · colores FIJOS (no se invierten en modo noche) */
#login .btn--primary, #acuerdo .btn--primary{
  background:linear-gradient(180deg,#1C2C42 0%, var(--ent-navy) 60%, var(--ent-deep) 100%);
  color:var(--ent-cream);
  border-color:rgba(var(--ent-gold-rgb),.5);
}
.lg-btn-arrow{ transition:transform .25s; }
.btn--primary:hover .lg-btn-arrow{ transform:translateX(4px); }

.lg-error{ color:#e8a39a; font-size:13px; margin-top:16px; text-align:center; padding:9px 12px; background:rgba(224,108,117,.08); border:1px solid rgba(224,108,117,.25); }
/* E2 · el mismo recuadro en tono informativo (magic link enviado) */
.lg-error.is-info{ color:var(--ent-gold-bright); background:rgba(var(--ent-gold-rgb),.07); border-color:rgba(var(--ent-gold-rgb),.3); }
/* E2 · pista bajo la contraseña (camino magic link) */
.lg-hint{ font-family:var(--font-sans); font-size:11.5px; line-height:1.6; color:rgba(var(--ent-ink-rgb),.4); margin-top:9px; }
.lg-credit{ text-align:center; margin-top:32px; line-height:1.5; }
.lg-credit .handle{ font-family:var(--font-serif); font-style:italic; font-size:var(--fs-caption); color:rgba(var(--ent-gold-rgb),.62); }
.lg-credit .role{ display:block; font-family:var(--font-sans); font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:rgba(var(--ent-ink-rgb),.30); margin-top:6px; }

@media(min-width:768px){
  .lg-panel{ max-width:360px; }
  .lg-form-title{ font-size:30px; }
}
