/* design-tokens.css — tokens « Encre & Lumière » de la mire de connexion.
 *
 * IHM-LOGIN (2026-08-14). La mire est un déploiement SÉPARÉ de la console
 * (ADR-86, §1.22.b) : elle ne partage ni build ni feuille de style avec
 * `console-common/`. Les tokens sont donc recopiés ici, et cette recopie est
 * verrouillée par `tests/governance/test_login_el_tokens_sync.py` — tout token
 * portant le même nom des deux côtés doit porter la même valeur.
 *
 * Sous-ensemble volontaire : la mire n'a ni sidebar, ni table de flux, ni score
 * Nutri-Score. On ne recopie que ce qu'elle emploie — un token mort ici serait
 * une dérive de plus à surveiller pour rien.
 *
 * Doctrine : sombre = ce qui s'observe (l'encre) · clair = ce qui fait foi
 * (la lumière) · l'or = l'acte d'autorité. Réf : docs/design/ENCRE-ET-LUMIERE.md.
 *
 * Aucun violet ici, et il n'en reviendra pas : le bloc legacy `--p0-violet-*` /
 * `--color-accent-purple` de la console n'a jamais été recopié dans la mire.
 */

:root {
  /* --- L'ENCRE : la mire est une surface d'observation, pas de preuve --- */
  --el-ink-deep:      #18212b;   /* fond de page */
  --el-ink-panel:     #252d37;   /* la carte de connexion */
  --el-ink-surface:   #2d3540;   /* champs de saisie */
  --el-ink-surface-2: #39434f;   /* bordures internes, hover */
  --el-ink-line:      #39434f;   /* hairline */
  --el-ink-text:      #c7cdd3;   /* texte courant */
  --el-ink-text-2:    #aeb5bd;   /* texte secondaire */
  /* IHM-LISIBILITE-TEXTE-3 — aligné sur la console (#727a81 → #8c949b), qui
   * est la référence de l'axe (test_login_el_tokens_sync). #727a81 rendait
   * 3,73:1 sur le fond de page et 3,19:1 sur la carte, sous le plancher AA de
   * 4,5:1 — et ici cette encre porte le PLACEHOLDER des champs et le pied de
   * page, c'est-à-dire ce qu'on lit avant de savoir quoi taper.
   * Reste sous le seuil sur `--el-ink-surface` (les champs eux-mêmes, 4,03:1) :
   * défaut de fond, pas d'encre, reporté au même lot de palette que la console
   * — voir tests/governance/test_ihm_lisibilite_texte_3.py. */
  --el-ink-text-3:    #8c949b;   /* légendes, placeholder, pied de page */
  --el-ink-white:     #ffffff;   /* saisie de l'utilisateur, titres */

  /* --- LA LUMIÈRE : ici, uniquement le CTA (l'acte qu'on vient poser) --- */
  --el-lum-ivory:     #f6f2e8;   /* fond du bouton principal */
  --el-lum-white:     #fffdf7;   /* son hover */
  --el-lum-ink:       #1f2833;   /* son texte */

  /* --- L'OR : marque, sélection/focus, acte. Jamais décoratif (§4 du brief) --- */
  --el-gold:          #c2922f;
  --el-gold-light:    #e8c877;   /* or sur l'encre */
  --el-gold-deep:     #8d6b1a;   /* or muet — « protected by Praetor0 » */
  --el-gold-mark:     #d6b25e;   /* l'or du logo, et l'anneau de focus */

  /* --- Sémantiques — la mire n'a qu'un verdict à rendre : l'échec d'auth --- */
  --el-ko-ink:        #cf5a48;
  --el-ko-ink-bg:     rgba(207, 90, 72, 0.18);
  --el-ok-ink:        #5ea967;
  --el-ok-ink-bg:     rgba(94, 169, 103, 0.15);
  --el-warn-ink:      #e8c877;
  --el-warn-ink-bg:   rgba(232, 200, 119, 0.14);

  /* --- Typographie ---
   * Divergence ASSUMÉE avec la console, et c'est la CSP qui la dicte : la mire
   * est servie sous `default-src 'self'` (nginx.conf.template), sans origine
   * tierce. La console charge Manrope/DM Sans depuis fonts.googleapis.com ;
   * ouvrir la CSP de l'écran de connexion à un CDN tiers pour une question de
   * graisse de caractère n'est pas un échange raisonnable.
   * Les familles doctrinales restent en tête de pile — le jour où les woff2
   * sont auto-hébergés, elles prennent le relais sans toucher à ce fichier.
   * Ce qu'on ne fait PAS : déclarer Manrope seul et récolter un fallback Arial
   * silencieux (c'est le bug qu'a dû corriger IHM-FONT-FIX-1 côté console). */
  --el-font-title:    "Manrope", "DM Sans", -apple-system, BlinkMacSystemFont,
                      "Segoe UI", system-ui, sans-serif;
  --el-font-body:     "DM Sans", -apple-system, BlinkMacSystemFont,
                      "Segoe UI", system-ui, sans-serif;
  --el-font-mono:     "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo,
                      monospace;

  /* --- Layout --- */
  --el-radius:        10px;      /* la carte */
  --el-radius-sm:     6px;       /* boutons, champs */
}
