/* 2026-07 passkey/UI V6: garde finale lisibilite pour les pages auth. */
body.auth-body {
  font-size: 1rem;
  line-height: 1.55;
}

body.auth-body .auth-card {
  color: var(--auth-text, #252b40);
}

body.auth-body .auth-card header .lead,
body.auth-body .auth-form .form-text,
body.auth-body .auth-small-note,
body.auth-body .auth-meta,
body.auth-body .auth-help__title,
body.auth-body .auth-help__links a {
  font-size: max(0.9375rem, 15px);
  line-height: 1.5;
}

body.auth-body .auth-form .form-label {
  color: var(--auth-ink, #171c2f);
  font-size: 1rem;
  font-weight: 800;
}

body.auth-body .auth-form .form-control,
body.auth-body .auth-theme-switch .form-select {
  min-height: 48px;
  border-width: 2px;
  border-color: color-mix(in srgb, var(--auth-muted, #5b657d) 36%, transparent);
  color: var(--auth-ink, #171c2f);
  background-color: var(--auth-surface-strong, #ffffff);
  font-size: 1rem;
}

body.auth-body .auth-form .form-control::placeholder {
  color: var(--auth-muted, #5b657d);
  opacity: 1;
}

body.auth-body .auth-small-note {
  display: block;
  padding: 0.75rem 0.85rem;
  border: 1px solid color-mix(in srgb, var(--auth-muted, #5b657d) 24%, transparent);
  border-radius: var(--auth-radius-md, 12px);
  background: color-mix(in srgb, var(--auth-panel, #f8fafc) 88%, var(--auth-surface-strong, #ffffff));
  color: var(--auth-text, #252b40);
  font-weight: 650;
}

body.auth-body .auth-security-note {
  border: 1px solid #fdba74;
  border-radius: var(--auth-radius-md, 12px);
  color: #7c2d12;
  font-size: 0.9375rem;
  line-height: 1.5;
}

body.auth-body .auth-passkey-button {
  min-height: 52px;
  border-width: 2px;
  font-size: 1rem;
}

body.auth-body .auth-inline-links a,
body.auth-body .auth-footer-link {
  color: #1d4ed8;
  text-underline-offset: 0.18em;
}

body.auth-body .auth-inline-links a:hover,
body.auth-body .auth-footer-link:hover {
  color: #1e3a8a;
}

body.auth-body .alert {
  font-size: 1rem;
  line-height: 1.5;
}

html[data-theme="dark"] body.auth-body .auth-small-note,
body.auth-body.dark-mode .auth-small-note {
  border-color: rgba(203, 213, 225, 0.32);
  background: rgba(15, 23, 42, 0.88);
  color: #e5eefb;
}

html[data-theme="dark"] body.auth-body .auth-form .form-control,
html[data-theme="dark"] body.auth-body .auth-theme-switch .form-select,
body.auth-body.dark-mode .auth-form .form-control,
body.auth-body.dark-mode .auth-theme-switch .form-select {
  border-color: rgba(203, 213, 225, 0.42);
  color: #f8fafc;
  background-color: #0b1220;
}

html[data-theme="dark"] body.auth-body .auth-form .form-control::placeholder,
body.auth-body.dark-mode .auth-form .form-control::placeholder {
  color: #cbd5e1;
}

html[data-theme="dark"] body.auth-body .auth-security-note,
body.auth-body.dark-mode .auth-security-note {
  border-color: rgba(250, 204, 21, 0.56);
  color: #fde68a;
  background: rgba(120, 53, 15, 0.36);
}

html[data-theme="dark"] body.auth-body .auth-inline-links a,
html[data-theme="dark"] body.auth-body .auth-footer-link,
body.auth-body.dark-mode .auth-inline-links a,
body.auth-body.dark-mode .auth-footer-link {
  color: #bfdbfe;
}

@media (max-width: 575.98px) {
  body.auth-body .auth-card header .lead,
  body.auth-body .auth-form .form-text,
  body.auth-body .auth-small-note,
  body.auth-body .auth-meta {
    font-size: 0.9375rem;
  }

  body.auth-body .auth-passkey-button,
  body.auth-body .btn-auth {
    width: 100%;
  }
}

@media (forced-colors: active) {
  body.auth-body .auth-small-note,
  body.auth-body .auth-security-note,
  body.auth-body .auth-form .form-control {
    border-color: CanvasText;
  }
}
