/**
 * Tokens OKI — Organisation KA Internationale.
 *
 * Valeurs mesurées sur o-k-i.net, reprises telles quelles de la charte. Le
 * thème sombre est l'identité par défaut ; le clair est une variante opt-in qui
 * assombrit les accents pour rester au contraste AA.
 *
 * Trois règles ne se négocient pas :
 *   · l'or porte toute l'interaction — c'est la seule couleur d'action ;
 *   · rouge = signaler, vert = valider, or = agir : jamais permuter ;
 *   · angles nets partout, 3 px sur les petits éléments, 6 px sur les cartes.
 *
 * Usage propre à cette application : c'est un outil de veille, pas une vitrine.
 * La densité informationnelle prime, le motion est réduit au strict minimum, et
 * la flag-bar n'apparaît qu'une fois par écran.
 */

:root {
	/* ── Noyau ── */
	--noir-oki: #0d0d0d;
	--noir-profond: #1a0f1a;
	--blanc-creme: #fff8e7;
	--line: rgba(255, 255, 255, 0.1);
	--or-oki: #fdb813;
	--rouge-oki: #ff1654;

	/* ── Étendue, avec parcimonie ── */
	--vert-oki: #00d66c;
	--turquoise-caraibes: #00ced1;
	--jaune-soleil: #ffd700;
	--orange-flamme: #ff6b35;
	--violet-nuit: #6b2d5c;
	--bleu-ocean: #0077be;
	--or-clair: #ffe066;
	--gris-sombre: #2d1b2e;

	/* ── Sémantique dérivée ── */
	--muted: color-mix(in srgb, var(--blanc-creme) 70%, transparent);
	--muted-fort: color-mix(in srgb, var(--blanc-creme) 55%, transparent);
	--card-bg: rgba(255, 255, 255, 0.03);
	--card-bg-survol: rgba(255, 255, 255, 0.06);

	/* ── Typographie ── */
	--font-display: 'Archivo', 'Arial Black', sans-serif;
	--font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--font-mono: ui-monospace, 'SFMono-Regular', 'Menlo', monospace;

	/* ── Formes et espacements ── */
	--radius-sm: 3px;
	--radius-md: 6px;
	--border-card: 1px solid var(--line);
	--border-btn: 2px solid var(--or-oki);
	--space-1: 0.75rem;
	--space-2: 1rem;
	--space-3: 1.5rem;
	--space-4: 2rem;
	--space-5: 4rem;
	--container: 1200px;

	/* ── Motion : les cadences gwoka ── */
	--ease-ka: cubic-bezier(0.22, 1, 0.36, 1);
	--ease-syncope: cubic-bezier(0.65, 0, 0.35, 1);
	--dur-tanbou: 120ms;
	--dur-mesure: 480ms;
	--dur-phrase: 960ms;

	/* ── Sémantique métier ──
	 * Les statuts sont d'abord distingués par leur libellé et leur forme, la
	 * couleur ne fait que renforcer : un daltonien doit pouvoir lire la page.
	 */
	--statut-promulguee: var(--vert-oki);
	--statut-attente: var(--or-oki);
	--statut-cc: var(--orange-flamme);
	--statut-navette: var(--turquoise-caraibes);
	--statut-projet: var(--muted-fort);
	--statut-rejetee: var(--rouge-oki);

	--impact-positif: var(--vert-oki);
	--impact-negatif: var(--rouge-oki);
	--impact-mixte: var(--jaune-soleil);
	--impact-neutre: var(--muted-fort);
}

/* Thème clair — opt-in, accents assombris pour le contraste AA. */
:root.light-theme {
	--noir-oki: #fff8e7;
	--blanc-creme: #0d0d0d;
	--noir-profond: #f5f0e8;
	--gris-sombre: #e8ddd0;
	--or-oki: #8f5c00;
	--vert-oki: #006b3d;
	--rouge-oki: #a01030;
	--turquoise-caraibes: #006b75;
	--bleu-ocean: #004b7f;
	--or-clair: #a86e00;
	--jaune-soleil: #7a5300;
	--orange-flamme: #b34700;
	--violet-nuit: #4a1f40;
	--line: rgba(0, 0, 0, 0.14);
	--card-bg: rgba(0, 0, 0, 0.025);
	--card-bg-survol: rgba(0, 0, 0, 0.05);
	--muted: color-mix(in srgb, var(--blanc-creme) 72%, transparent);
	--muted-fort: color-mix(in srgb, var(--blanc-creme) 58%, transparent);
}
