/* ==========================================================================
   code/itr-auth.css
   Páginas de acceso (iniciar sesión y dar de alta usuario): fondo corporativo, tarjeta centrada con el logo,
   selector de idioma y aviso de cookies. Usa los tokens de itr.css (--navy, --blue, --accent...).
   ========================================================================== */

body.auth{
  min-height:100vh;display:flex;flex-direction:column;
  background:
    radial-gradient(60rem 30rem at 85% -10%, rgba(232,120,12,.22), transparent 60%),
    radial-gradient(50rem 30rem at -10% 110%, rgba(13,78,139,.55), transparent 60%),
    linear-gradient(160deg, var(--navy) 0%, #0a2745 100%);
  background-attachment:fixed;
}

.auth-top{display:flex;justify-content:flex-end;padding:1rem 1.25rem 0}
.auth-lang{display:inline-flex;gap:.5rem;align-items:center;padding:.35rem .75rem;border-radius:2rem;background:rgba(255,255,255,.12)}
.auth-lang a{display:inline-flex;opacity:.65;transition:opacity .15s,transform .15s}
.auth-lang a:hover,.auth-lang a[aria-current=true]{opacity:1;transform:translateY(-1px)}

.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem}

.auth-card{
  width:100%;max-width:26rem;background:#fff;border-radius:1rem;
  padding:2rem 1.75rem 1.5rem;box-shadow:0 1.25rem 3rem rgba(0,0,0,.35);
}
.auth-card--wide{max-width:36rem}
.auth-logo{display:block;margin:0 auto 1.25rem;width:11rem;max-width:70%;height:auto}
.auth-title{font-size:1.25rem;font-weight:600;color:var(--navy);text-align:center;margin:0 0 1.25rem}
.auth-card .input-group-text{background:var(--soft);color:var(--blue);border-color:#ced4da}
.auth-card .form-control{padding-top:.6rem;padding-bottom:.6rem}
.auth-card .btn-lg{font-weight:600}
.auth-links{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line);text-align:center;font-size:.9rem}
.auth-links a{color:var(--blue);text-decoration:none}
.auth-links a:hover{text-decoration:underline}
.auth-code{
  font-family:var(--mono);font-size:1.15rem;letter-spacing:.12em;text-align:center;
  background:var(--soft);border:1px dashed #b7c4d4;border-radius:.5rem;padding:.6rem;color:var(--navy);user-select:all;
}

.auth-foot{padding:1rem;text-align:center;font-size:.8rem;color:rgba(255,255,255,.6)}

/* Aviso de cookies */
.auth-cookies{
  position:fixed;left:0;right:0;bottom:0;z-index:1030;display:none;
  background:#fff;border-top:3px solid var(--accent);box-shadow:0 -.5rem 1.5rem rgba(0,0,0,.2);
  padding:.9rem 1rem;
}
.auth-cookies .inner{max-width:60rem;margin:0 auto;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;justify-content:space-between;font-size:.9rem}
