:root {
  /* fonds & texte */
  --bg:#0A0A0A; --fg:#F4F4F0; --dim:#8A8A85; --faint:#7E7E79; --hairline:#1E1E1C; --field-border:#6A6A64;
  /* accents néon du quartet de fûts */
  /* --uv éclairci de #8A5CFF à #9870FF : 4.77:1 → 5.75:1 sur --bg, pour le petit texte 10px (.v0-rail__grid span, .ph-token) */
  --kick:#FF00E5; --snare:#00FF6A; --tom:#00E5FF; --tom-bass:#B8FF00; --uv:#9870FF; --ph-accent:var(--uv);
  /* accent courant (réassigné par thème) — défaut neutre côté accueil */
  --accent:#F4F4F0;
  /* typo */
  --font-display:"Archivo Black", system-ui, sans-serif;
  --font-body:"Archivo", system-ui, sans-serif;
  --font-mono:"JetBrains Mono", ui-monospace, monospace;
  /* espacements & divers */
  --maxw:1200px; --gutter:clamp(16px,4vw,48px); --radius:2px; --hair:1px;
  --sp-1:8px; --sp-2:16px; --sp-3:24px; --sp-4:40px; --sp-5:64px; --sp-6:96px; --sp-7:140px;
}

/* Polices par écriture. Archivo / Archivo Black ne couvrent que le latin (latin-ext
   inclus, donc le turc). Pour les autres écritures, la police de la marque reste
   EN TÊTE de pile et la Noto Sans de l'écriture la suit : le navigateur choisit
   la police caractère par caractère, les mots latins (KRKN, Core, DMX, USB-C)
   restent donc en Archivo et le reste retombe sur la Noto (Archivo n'a pas de
   cyrillique : l'ordre vaut aussi pour le russe). JetBrains Mono n'a que le latin
   et le cyrillique : la Noto la suit aussi, sinon les libellés mono tombaient sur
   une police système à chasse fixe. Le <link> Google Fonts de la Noto est injecté
   par le build, page par page. :lang(zh) couvre zh-Hans (préfixe). */
:root:lang(ru){--font-script:"Noto Sans"}
:root:lang(zh){--font-script:"Noto Sans SC"}
:root:lang(ja){--font-script:"Noto Sans JP"}
:root:lang(ko){--font-script:"Noto Sans KR"}
:root:lang(hi){--font-script:"Noto Sans Devanagari"}
:root:lang(bn){--font-script:"Noto Sans Bengali"}
:root:lang(ar),:root:lang(ur){--font-script:"Noto Sans Arabic"}
:root:is(:lang(ru),:lang(zh),:lang(ja),:lang(ko),:lang(hi),:lang(bn),:lang(ar),:lang(ur)){
  --font-display:"Archivo Black", var(--font-script), system-ui, sans-serif;
  --font-body:"Archivo", var(--font-script), system-ui, sans-serif;
  --font-mono:"JetBrains Mono", var(--font-script), ui-monospace, monospace}

body.theme-core { --accent:var(--snare); }
body.theme-ultra { --accent:var(--kick); }
body.theme-systemes { --accent:var(--tom); }
body.theme-abyss { --accent:var(--uv); }
