/* ANSEMOK — brand-tokens v1.0 · SOURCE DE VÉRITÉ de la marque.
 * Copié depuis ansemok-move/app/src/styles/tokens.css (palette exacte CDC).
 * Gate G1 franchi le 24/08/2026 : direction « Le Grand Registre » validée.
 * Distribution : apps Vite -> import workspace ; surfaces sans build ->
 * /brand/tokens.css servi par la porte, GÉNÉRÉ depuis ce fichier, hashé,
 * diffé en CI. Modifier ailleurs qu'ici est une dérogation G1.
 */

/* ANSEMOK MOVE — tokens de direction artistique.
 * Source de vérité : CDC Annexe A (« valeurs exactes, pas indicatives », relevé 13/07/2026).
 * LOT U possède TOUT le CSS (PLAN §5.1). Ce fichier est l'UNIQUE source des tokens : un chiffre,
 * une source. La dette de l'ancienne DA (alias couleur mensongers d'une ex-palette + un glow non
 * déclaré) est NETTOYÉE ici — pas de variable mensongère (un token « bleu » valant du brun piège).
 */

:root {
  /* ---- A.1 Palette · fonds (papier) ---- */
  --bg: #F3EBD9;              /* le fond de tout */
  --bg-card: #FBF6EC;         /* cartes */
  --bg-input: #FBF6EC;        /* champs de saisie */
  --bg-sidebar: #ECE0C8;      /* rails, barres latérales */

  /* ---- A.1 Palette · encre (texte) — tous AAA sur papier ---- */
  --text: #241710;            /* texte principal */
  --ink: #241710;             /* alias sémantique de --text */
  --muted: #574539;           /* texte secondaire */
  --ink-2: #574539;           /* alias de --muted */
  --faint: #6F5C4B;           /* texte tertiaire */
  --ink-3: #6F5C4B;           /* alias de --faint */
  --text-inverse: #FBF6EC;    /* texte sur aplat d'encre */
  --ink-hover: #3A2618;       /* encre survolée du bouton dominant (relevé sur le rendu G1 Porte) */

  /* ---- A.1 Palette · accents et états ---- */
  --ocre: #C8923A;            /* filets, traits d'accent */
  --ocre-ink: #8A5E1A;        /* texte d'accent, surtitres */
  --sauge: #5E6B3E;           /* validé */
  --ok: #5E6B3E;              /* alias sémantique de --sauge */
  --warn: #8A5E1A;            /* vigilance */
  --terre: #8C3A1F;           /* alerte, écart */
  --alert: #8C3A1F;           /* alias sémantique de --terre */

  /* ---- A.1 Palette · filets ---- */
  --border: rgba(36,23,16,0.14);
  --hair: rgba(36,23,16,0.14);
  --hair-strong: rgba(36,23,16,0.30);
  /* --red-glow : l'ancienne DA l'utilisait SANS le déclarer → déclaré ici (Annexe A). */
  --red-glow: rgba(140,58,31,0.14);

  /* ---- A.2 Typographie · familles ---- */
  --font-display: "Bodoni Moda", Didot, Georgia, serif;      /* titres, montants géants */
  --font-body: "Archivo", "Helvetica Neue", system-ui, sans-serif; /* interface, corps, boutons */
  --font-mono: "Archivo", "Helvetica Neue", system-ui, sans-serif; /* identifiants (alias du corps) */

  /* ---- A.3 Espacement (4 / 8 / 12 / 16 / 24 / 32) ---- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;

  /* ---- A.3 Rayons — des filets, pas des galets ---- */
  --radius-card: 3px;
  --radius-button: 3px;
  --radius-input: 2px;
  --radius-pill: 999px;

  /* ---- A.3 Ombre (très fine, le papier trahit l'ombre) ---- */
  --shadow-card: 0 1px 2px rgba(36,23,16,.05), 0 12px 30px rgba(36,23,16,.07);

  /* ---- A.3 Grain papier — SVG en ligne, appliqué à 5% via .da-grain (da.css) ---- */
  --grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");

  /* ---- A.5 Tailles tactiles — RÈGLE 114 (gants, une main, soleil) ---- */
  --touch-primary: 76px;      /* bouton dominant : il ne doit pas se rater */
  --touch-secondary: 64px;    /* secondaire / alerte — la norme terrain */
  --touch-compact: 52px;      /* compact */
  --touch-min: 44px;          /* plancher absolu (lien de navigation) */
}

/* ---- A.1 / A.6 Accessibilité (déjà implémentée dans l'ancienne DA : à GARDER) ---- */
@media (prefers-contrast: more) {
  :root {
    --text: #000000;
    --ink: #000000;
    --border: rgba(36,23,16,0.30);
    --hair: rgba(36,23,16,0.30);
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ---- Accents filiales (décision 22/06, un emblème, dix tons) ---- */
:root {
  --filiale-move: #8C3A1F;
  --filiale-stay: #C68A3A;
  --filiale-learn: #944028;
  --filiale-drive: #B5532B;
  --filiale-route: #7A5230;
  --filiale-pay: #4E3B1E;
  --filiale-build: #B5673A;
  --filiale-auto: #5E4327;
  --filiale-play: #D2A24A;
  --filiale-parts: #C2703C;
}
