/* ── tokens/colors.css ── */
:root {
	/* Encres — le sombre lui-même est `--navy`, plus bas ; ici ses trois
	   dégradés de texte. */
	--ink-2: #4a4e5d;
	--ink-3: #787d89;
	--ink-4: #90949f;
	/* UN SEUL NOIR, ET UN SEUL NOM — Ugo, 8 puis 11 septembre 2026.
	   Le 8, deux valeurs à quatre points d'écart sont devenues une. Le 11, il
	   restait trois NOMS pour cette valeur unique — `--ink` pour l'encre,
	   `--navy` pour la couleur, `--surface-inverted` pour le rôle — et Ugo a
	   demandé qu'il n'en reste qu'un. C'est `--navy` : le mot de la marque,
	   rangé avec `--citron`, `--plum` et `--accent` parmi les couleurs
	   nommées. Il sert au texte, aux fonds inversés, aux filets forts.
	   `--text-primary` y pointe, comme `--surface-card` pointe sur `--paper` :
	   c'est un rôle, pas un second nom. */
	--navy: #03081a;
	--umber: #221a14;

	/* Fonds chauds (le canevas) */
	--sand: #f3ebe1;
	--grit: #ede9e2;
	--chalk: #f5f1e8;
	--ice: #f6fcff; /* le seul canevas froid — hérité de la direction précédente */
	--mist: #eef2f8; /* le bleu-gris du site en production — canevas de la landing */
	--paper: #f7f9fc; /* la carte : blanc chaud, jamais #fff */
	--dune: #e1e7f1; /* surface muette / tuile */
	--dune-deep: #d3dbe9;

	/* Accent */
	--accent: #1c5cef;
	--accent-hover: #164bc8;
	--accent-press: #123ca3;
	--accent-soft: #8fb0f7;
	--accent-tint: #e6edfd;

	/* Accents chauds. Proposés en ESSAI le 7 septembre 2026 par le design
	   system, VALIDÉS le même jour par Ugo : le citron devient un jeton à part
	   entière, parce que la pastille du bandeau s'appuie dessus.
	   Ils sont décoratifs et éditoriaux : ils ne prennent jamais une action —
	   le bleu reste la seule couleur cliquable — ni un état produit. */
	--plum: #7d5c65;
	--plum-deep: #5c424a;
	--plum-tint: #efe3e4;
	/* Le jaune franc : surligneur, fond seulement, JAMAIS du texte. Il est à la
	   valeur du canevas et non plus clair que lui, donc il se lit comme une
	   couleur et non comme une lumière. */
	--citron: #ffec35;
	--citron-deep: #d9c92d;
	--citron-tint: #fef7c2;

	/* ── La certitude d'un fait (produit, revue du 20 septembre 2026) ──
	   Un carré = un fait. Sa couleur dit ce qu'on sait de lui, jamais s'il est
	   bon. Quatre degrés, du sûr au contradictoire : bleu, citron, ambre, orange.
	   Le rouge ne sert plus aux faits. */
	--certain: var(--accent);        /* recoupé : deux sources s'accordent, ou une pièce le porte */
	--probable: var(--citron);       /* plutôt sûr : une seule source, sur parole ou une seule pièce */
	--incertain: #ffb020;            /* pas sûr : dit avec réserve, ou déduit */
	--incertain-deep: #d99110;
	--incertain-tint: #fff1d6;
	--conflit: #ff7a1a;              /* deux sources, deux valeurs */
	--conflit-deep: #d9600f;
	--conflit-tint: #ffe8d6;
	--conflit-ink: #b8500a;          /* la seule encre colorée permise */
	/* VERT D'ACCENT — la valeur d'Ugo, 7 septembre 2026. Il vit comme le citron :
	   c'est un FOND, avec l'encre par-dessus. En texte sur le papier il vaut
	   1,5:1 ; en fond il donne 14,6:1. Le « deep » ne sert qu'au survol. */
	--vert: #aaf683;
	--vert-deep: #94e967;
	--vert-tint: #e6fcd8;
	--indigo: #1f1a38;
	/* Les deux essais du 7 septembre que le site n'a pas repris. Ils restent
	   déclarés pour que les cartes « Accents chauds » du projet continuent de
	   se dessiner ; la pousse est la même valeur que `--vert`, le nom du site.
	   Statut : essai. Rien ne les emploie. */
	--pousse: var(--vert); --pousse-deep: var(--vert-deep); --pousse-tint: var(--vert-tint);
	--fuchsia: #c81e80; --fuchsia-deep: #96155f; --fuchsia-tint: #fbe4f0;

	/* Illustration : cubes en aplats. Trois faces par cube, la teinte suivant
	   l'orientation. Décoratif uniquement — jamais un état produit, jamais du
	   texte, jamais une bordure. Les fichiers portent ces valeurs EN DUR (un
	   Lottie ne lit pas une variable CSS) : toute retouche ici oblige à
	   régénérer les six fichiers d'animations et d'illustrations vectorielles. */
	--cube-stone-top: #efe6da;
	--cube-stone-left: #e4d9ca;
	--cube-stone-right: #b3aca2;
	--cube-azur-top: #8fb0f7;
	--cube-azur-left: #1c5cef;
	--cube-azur-right: #123ca3;
	/* Le rouge des tas marque la part croissante du coût. Seul rouge décoratif
	   du système — à ne pas confondre avec --critical, qui reste un état
	   d'erreur applicatif et n'apparaît jamais dans une illustration. */
	--cube-flag-top: #db5e53;
	--cube-flag-left: #d6483c;
	--cube-flag-right: #a33b31;
	--cube-engrave-stone: #efe6da;
	--cube-engrave-stone-shadow: #9a9188;
	--cube-engrave-flag: #f4cfcc;
	--cube-engrave-flag-shadow: #83322a;
	--cube-ground-shadow: rgba(26, 22, 19, 0.1);

	/* Sémantique (produit uniquement, jamais décoratif) */
	--positive: #0e6f5c;
	--caution: #8a5a00;
	--critical: #a3231c;

	/* Alias : n'utiliser que ceux-ci */
	/* Grès depuis le 7 septembre 2026, comme le design system. La landing
	   propose une bascule vers `mist` — voir le sélecteur de fond. */
	/* LE MIST EST LE CANEVAS PAR DÉFAUT — Ugo, 8 septembre 2026. Il l'était déjà
	   en fait, par l'attribut `data-canvas="mist"` posé sur le corps : la
	   famille chaude déclarée ici était morte, et pourtant `--fdn-bg` allait la
	   chercher, si bien que deux fonds de page étaient déclarés en même temps.
	   Ce sont maintenant les mêmes valeurs des deux côtés. */
	--surface-canvas: var(--mist);
	--surface-card: var(--paper);
	--surface-muted: var(--dune);
	--text-primary: var(--navy);
	--text-secondary: var(--ink-2);
	--text-muted: var(--ink-3);
	--text-disabled: var(--ink-4);
	--text-on-dark: #f3ebe1;
	--text-on-dark-muted: #9c9289;
	--text-link: var(--accent);
	--text-link-hover: var(--accent-hover);
	/* UN SEUL NOM POUR LES FILETS. Le dépôt en portait TROIS : `--border*`
	   (l'ancien nom, retiré du design system le 1er septembre 2026),
	   `--border*` (le nom actuel du système) et `--border`, qui
	   n'était défini QUE dans `agent-blocks/` — un dossier que rien ne charge.
	   Douze bordures de la landing pointaient donc sur un jeton inexistant,
	   sans valeur de repli : elles ne se dessinaient pas du tout, en silence.
	   On garde les noms du système, qui fait autorité. */
	--border: rgba(3, 8, 26, 0.14);
	--border-strong: rgba(3, 8, 26, 0.28);
	--border-on-dark: rgba(243, 235, 225, 0.18);
	--action-primary: var(--accent);
	--action-primary-text: #ffffff;
}

/* Options de canevas : appliquer sur <body> ou une section */
[data-canvas="sand"] { --surface-canvas: var(--sand); }
[data-canvas="grit"] { --surface-canvas: var(--grit); }
[data-canvas="chalk"] { --surface-canvas: var(--chalk); }
/* Ice refroidit tout le reste : encre, carte et surface muette suivent le fond,
   sinon le crème chaud posé sur un bleu pâle devient trouble. */
[data-canvas="ice"] {
	--surface-canvas: var(--ice);
	--paper: #fcfeff;
	--dune: #e4eff4;
	--dune-deep: #d2e2ea;
	--ink-2: #3d5259;
	--ink-3: #576a71;
	--ink-4: #93a4ab;
	--border: rgba(10, 31, 41, 0.14);
	--border-strong: rgba(10, 31, 41, 0.28);
	--surface-card: #fcfeff;
	--surface-muted: #e4eff4;
	--text-primary: var(--navy);
	--text-secondary: #3d5259;
	--text-muted: #576a71;
	--text-disabled: #93a4ab;
}

/* Mist — le bleu-gris déjà en production sur le site. Même raison qu'Ice : un
   canevas froid entraîne toute la suite, sinon le crème chaud posé dessus
   devient trouble. L'encre et ses degrés sont ceux du site (#03081A à 70 / 50 /
   40 %), aplatis sur le fond. */
[data-canvas="mist"] {
	--surface-canvas: var(--mist);
	--paper: #f7f9fc;
	--dune: #e1e7f1;
	--dune-deep: #d3dbe9;
	--ink-2: #4a4e5d;
	--ink-3: #787d89;
	--ink-4: #90949f;
	--border: rgba(3, 8, 26, 0.14);
	--border-strong: rgba(3, 8, 26, 0.28);
	--surface-card: #f7f9fc;
	--surface-muted: #e1e7f1;
	--text-primary: var(--navy);
	--text-secondary: #4a4e5d;
	--text-muted: #787d89;
	--text-disabled: #90949f;
}

/* Il n'y a plus d'options de bande sombre. Elles réglaient
   `--surface-inverted` — navy, umber, azur, indigo — et ce jeton n'existe
   plus : la bande sombre est `--navy`, et la bande bleue est `--accent`, posée
   directement là où elle est voulue (le panneau, la Suite, le pied). Aucun
   markup ne portait `data-dark`. */

