/* Derniers garde-fous — volontairement petits et prioritaires.
   Chargé après la couche Human Polish sur site/auth, et importé dans
   seasons.css pour l'app. */

:root,
[data-theme="dark"] {
  --font-display: "Young Serif", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --font-body: "Commissioner", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", sans-serif;
  --border: oklch(0.82 0.018 75);
  --border2: oklch(0.88 0.014 75);
}

/* La règle 13 px est réelle, y compris à 320 px. */
@media (max-width: 320px) {
  .mobile-tabbar .mtab-label { font-size: 13px !important; }
}

.footer-copyright,
.footer-legal-note,
.onb-section-kicker,
.onb-family-hint,
.onb-skip-note {
  font-size: 13px !important;
  line-height: 1.5 !important;
}
.footer-legal-note {
  color: var(--ink-muted);
  max-width: 900px;
  margin: 0 auto;
}
.footer-copyright { margin-bottom: 8px; }

.onb-section-kicker {
  margin-bottom: 8px;
  color: var(--brand-dark);
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.onb-family-hint {
  margin-top: 16px;
  padding: 16px 0;
  border-top: 1px solid var(--border2);
  border-bottom: 1px solid var(--border2);
  color: var(--ink-soft);
}
.onb-family-hint strong { color: var(--ink); }
.onb-notification-row { margin-top: 8px; }

.error-page * { box-sizing: border-box; }
.error-actions .btn-main,
.error-actions .btn-sec {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

/* Light-only : même si une ancienne préférence locale vaut dark, aucune
   surface visible ne doit basculer pendant cette phase. */
[data-theme="dark"] #darkToggle,
#darkToggle { display: none !important; }
