/* Jetons de style. Tout ce qui est partagé entre l'IHM, le HUD, les graphiques
   et la scène 3D est défini ici, une seule fois.

   Les couleurs de voiture (--car-1 … --car-4) sont le cas intéressant : elles
   servent à la fois de couleur de série dans les graphiques, de liseré dans le
   garage, de teinte de peinture par défaut du modèle 3D et de couleur de
   libellé dans le HUD. Les lire depuis le CSS plutôt que de les redéclarer en
   JavaScript évite qu'une voiture bleue dans le tableau soit rouge à l'écran. */

:root {
  color-scheme: dark;

  /* Fonds, du plus profond au plus clair */
  --bg-0: #07090d;
  --bg-1: #0b0f15;
  --bg-2: #11161f;
  --bg-3: #1a212c;
  --bg-4: #242e3c;

  /* Texte */
  --ink-0: #f2f5f9;
  --ink-1: #c3ccd9;
  --ink-2: #8a96a7;
  --ink-3: #5d6878;

  /* Traits */
  --line-1: #1e2632;
  --line-2: #2a3545;
  --line-focus: #3f8cff;

  /* Accent de l'application : l'orange des cônes et des feux de stand */
  --accent: #ff6a2b;
  --accent-soft: #ff8c5a;
  --accent-dim: #c9501e;
  --accent-ink: #1a0d06;

  /* États */
  --ok: #3ddc97;
  --warn: #ffc24b;
  --bad: #ff5c5c;
  --info: #58b9ff;

  /* Couleurs de série, une par emplacement du garage */
  --car-1: #ff7a1a;
  --car-2: #35c8f5;
  --car-3: #b388ff;
  --car-4: #5bdc8a;
  --car-1-dim: #8f4210;
  --car-2-dim: #156d87;
  --car-3-dim: #5e4594;
  --car-4-dim: #2d7a4c;

  /* Typographie : rien d'externe, l'application doit tourner hors ligne */
  --font-ui: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-num: ui-monospace, "Cascadia Mono", "SF Mono", Consolas, monospace;

  --fs-xs: 11px;
  --fs-sm: 12px;
  --fs-md: 13px;
  --fs-lg: 15px;
  --fs-xl: 19px;
  --fs-2xl: 26px;
  --fs-3xl: 40px;

  /* Rythme */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;

  --radius-1: 4px;
  --radius-2: 8px;
  --radius-3: 14px;
  --radius-pill: 999px;

  /* Ombres : courtes et contrastées, l'interface est sombre */
  --shadow-1: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-2: 0 4px 16px rgb(0 0 0 / 0.45);
  --shadow-3: 0 18px 48px rgb(0 0 0 / 0.55);
  --glow-accent: 0 0 0 1px var(--accent-dim), 0 0 18px -4px var(--accent);

  /* Durées. L'interface doit paraître mécanique, pas élastique. */
  --t-fast: 90ms;
  --t-mid: 180ms;
  --t-slow: 320ms;
  --ease: cubic-bezier(0.2, 0.7, 0.3, 1);

  /* Géométrie de la mise en page */
  --topbar-h: 52px;
  --garage-w: 310px;
  --results-w: 380px;
}

/* Thème clair : l'application est pensée sombre (on regarde une scène 3D
   éclairée), mais un écran en plein soleil mérite de rester lisible. */
:root[data-theme='light'] {
  color-scheme: light;
  --bg-0: #eef1f5;
  --bg-1: #f6f8fa;
  --bg-2: #ffffff;
  --bg-3: #e7ebf1;
  --bg-4: #d8dee7;
  --ink-0: #0d1218;
  --ink-1: #333d4a;
  --ink-2: #5d6878;
  --ink-3: #8a96a7;
  --line-1: #dde3ea;
  --line-2: #c6ced9;
  --shadow-1: 0 1px 2px rgb(16 24 40 / 0.08);
  --shadow-2: 0 4px 16px rgb(16 24 40 / 0.1);
  --shadow-3: 0 18px 48px rgb(16 24 40 / 0.14);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --t-fast: 0ms;
    --t-mid: 0ms;
    --t-slow: 0ms;
  }
}

/* Écritures asiatiques : chaque langue nomme ses polices système, parce qu'un
   même caractère ne se dessine pas de la même façon en japonais, en chinois
   et en coréen, et que la police par défaut de Windows prendrait l'une pour
   l'autre. Toujours rien d'externe. */
:root:lang(ja) { --font-ui: system-ui, -apple-system, "Hiragino Sans", "Yu Gothic UI", Meiryo, sans-serif; }
:root:lang(zh) { --font-ui: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei UI", "Noto Sans CJK SC", sans-serif; }
:root:lang(ko) { --font-ui: system-ui, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", sans-serif; }
