/* Pages d'authentification — charte v2 « Patrimoine sobre ».
   Surcouche chargée APRÈS auth-modern.css : le HTML, les identifiants et le JS
   (auth-critical.js) restent inchangés, seule l'apparence est réalignée sur la
   plateforme v2 (tokens de v2/src/styles/tokens.ts, Spectral + Archivo). */

.auth-modern-page {
  --efa-brand: #0F4C5C;
  --efa-brand-dk: #0A3744;
  --efa-sidebar: #0B3A45;
  --efa-brass: #A8773A;
  --efa-brass-lt: #C79A5B;
  --efa-content: #F5F7F5;
  --efa-card: #FFFFFF;
  --efa-line: #DBE0DD;
  --efa-line-soft: #E8ECE9;
  --efa-ink: #1B2A30;
  --efa-ink-2: #5B6A70;
  --efa-ink-3: #8F8C82;
  --efa-danger: #A24C3C;
  --efa-danger-soft: #F4E7E3;
  --efa-success: #3C7A57;
  --efa-success-soft: #E6EFE9;
  --efa-serif: 'Spectral', Georgia, serif;
  --efa-sans: 'Archivo', system-ui, sans-serif;
  --efa-shadow-soft: 0 1px 2px rgba(22, 42, 47, .04), 0 8px 20px -16px rgba(22, 42, 47, .22);

  background: var(--efa-content);
  font-family: var(--efa-sans) !important;
  color: var(--efa-ink);
}

.auth-modern-page .auth-modern {
  background: var(--efa-content);
}

/* ── Bloc marque (bandeau haut) ─────────────────────────────────────────── */

.auth-modern-page .auth-modern__brand {
  background: var(--efa-sidebar);
  border-bottom: 1px solid rgba(0, 0, 0, .25);
}

/* Aplat sobre : les halos radiaux laiton/turquoise d'auth-modern sont retirés. */
.auth-modern-page .auth-modern__brand::before {
  background: none;
}

.auth-modern-page .auth-modern__title,
.auth-modern-page .auth-modern__pagetitle {
  font-family: var(--efa-serif) !important;
  font-weight: 600;
  letter-spacing: -.01em;
  color: #FFFFFF;
  text-transform: none;
}

.auth-modern-page .auth-modern__brand .v-eyebrow {
  font-family: var(--efa-sans);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--efa-brass-lt);
}

.auth-modern-page .auth-modern__divider {
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, .14);
}

.auth-modern-page .auth-modern__lead {
  font-family: var(--efa-sans);
  font-size: 14.5px;
  line-height: 1.55;
  color: rgba(234, 241, 241, .70);
}

.auth-modern-page .auth-modern__brand-cta {
  font-family: var(--efa-sans);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: .02em;
  text-transform: none;
  border-radius: 9px;
  padding: 11px 20px;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.auth-modern-page .auth-modern__brand-cta--ghost {
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .18);
  color: #EAF1F1;
}

.auth-modern-page .auth-modern__brand-cta--ghost:hover {
  background: rgba(255, 255, 255, .13);
  border-color: rgba(255, 255, 255, .30);
}

.auth-modern-page .auth-modern__brand-cta--primary {
  background: var(--efa-brass-lt);
  border: 1px solid var(--efa-brass-lt);
  color: #2E2007;
}

.auth-modern-page .auth-modern__brand-cta--primary:hover {
  background: #D3AA70;
  border-color: #D3AA70;
}

/* ── Carte de formulaire ────────────────────────────────────────────────── */

.auth-modern-page .auth-modern__form-card {
  background: var(--efa-card);
  border: 1px solid var(--efa-line);
  border-radius: 12px;
  box-shadow: var(--efa-shadow-soft);
  padding: 30px 30px 26px;
}

.auth-modern-page .auth-modern__form-title {
  font-family: var(--efa-serif) !important;
  font-weight: 600;
  font-size: 21px;
  line-height: 1.15;
  letter-spacing: -.01em;
  color: var(--efa-ink);
  text-transform: none;
}

.auth-modern-page .auth-modern__form-sub {
  font-family: var(--efa-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--efa-ink-2);
}

.auth-modern-page .auth-modern__form-card .auth-field-label {
  font-family: var(--efa-sans);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--efa-ink-3);
}

.auth-modern-page .auth-modern__form-card .a2z-input {
  font-family: var(--efa-sans);
  font-size: 14.5px;
  height: 46px;
  padding: 0 14px;
  color: var(--efa-ink);
  background: var(--efa-card);
  border: 1px solid var(--efa-line);
  border-radius: 9px;
  box-shadow: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.auth-modern-page .auth-modern__form-card .a2z-input::placeholder {
  color: var(--efa-ink-3);
}

.auth-modern-page .auth-modern__form-card .a2z-input:focus {
  outline: none;
  border-color: var(--efa-brand);
  box-shadow: 0 0 0 3px rgba(15, 76, 92, .12);
}

.auth-modern-page .auth-modern__form-card .a2z-pw-toggle {
  color: var(--efa-ink-3);
  background: transparent;
  border: 0;
}

.auth-modern-page .auth-modern__form-card .a2z-pw-toggle:hover {
  color: var(--efa-ink-2);
  background: transparent;
}

/* ── Actions, liens et messages ─────────────────────────────────────────── */

.auth-modern-page .auth-modern__form-card .btn--primary,
.auth-modern-page .auth-modern__form-card .auth-login-submit {
  font-family: var(--efa-sans);
  font-weight: 600;
  font-size: 13.5px;
  letter-spacing: .02em;
  text-transform: none;
  height: 44px;
  border-radius: 9px;
  background: var(--efa-brand);
  border: 1px solid var(--efa-brand);
  color: #FFFFFF;
  transition: background .15s ease, border-color .15s ease;
}

.auth-modern-page .auth-modern__form-card .btn--primary:hover,
.auth-modern-page .auth-modern__form-card .auth-login-submit:hover {
  background: var(--efa-brand-dk);
  border-color: var(--efa-brand-dk);
}

.auth-modern-page .auth-modern__form-card .auth-link,
.auth-modern-page .auth-modern__form-footer a {
  font-family: var(--efa-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--efa-brand);
  text-decoration: none;
  border-bottom: 0;
}

.auth-modern-page .auth-modern__form-card .auth-link:hover,
.auth-modern-page .auth-modern__form-footer a:hover {
  color: var(--efa-brand-dk);
  text-decoration: underline;
  border-bottom: 0;
}

.auth-modern-page .auth-modern__form-footer {
  font-family: var(--efa-sans);
  font-size: 12.5px;
  line-height: 1.6;
  color: var(--efa-ink-2);
  border-top: 1px solid var(--efa-line-soft);
}

.auth-modern-page .auth-modern__form-card .auth-status {
  font-family: var(--efa-sans);
  font-size: 13px;
  line-height: 1.5;
  border-radius: 9px;
}

.auth-modern-page .auth-modern__form-card .auth-status--error {
  color: var(--efa-danger);
  background: var(--efa-danger-soft);
  border: 1px solid rgba(162, 76, 60, .22);
}

.auth-modern-page .auth-modern__form-card .auth-status--info {
  color: var(--efa-success);
  background: var(--efa-success-soft);
  border: 1px solid rgba(60, 122, 87, .22);
}
