/* ============================================================
   GenBox — jetons de design
   Source unique des couleurs, rayons, typo et espacements.
   Ardoise chaude + violet (action) + terracotta (argent).
   ============================================================ */

:root {
  /* ---- Surfaces : la teinte 295 est portée dans TOUS les gris à très
     faible intensité — c'est ce qui rend l'ardoise chaude sans la colorer. */
  --bg:          oklch(0.115 0.008 295);
  --void:        oklch(0.145 0.010 295);
  --base:        oklch(0.185 0.012 295);
  --raised:      oklch(0.225 0.014 295);
  --hover:       oklch(0.265 0.016 295);
  --line:        oklch(0.305 0.018 295);
  --line-soft:   oklch(0.255 0.014 295);

  /* ---- Texte */
  --tx:          oklch(0.945 0.006 300);
  --tx2:         oklch(0.720 0.012 300);
  --tx3:         oklch(0.545 0.014 300);

  /* ---- Accents : même luminosité (0.68) et même intensité (0.145),
     seule la teinte change. Ils cohabitent sans que l'un écrase l'autre. */
  --violet:      oklch(0.680 0.145 305);
  --violet-hi:   oklch(0.780 0.130 305);
  --violet-dim:  oklch(0.480 0.110 305);
  --violet-tint: color-mix(in oklab, var(--violet) 16%, var(--base));
  --violet-txt:  oklch(0.860 0.075 305);

  --terra:       oklch(0.680 0.145 45);
  --terra-dim:   oklch(0.480 0.110 45);
  --terra-tint:  color-mix(in oklab, var(--terra) 16%, var(--base));
  --terra-txt:   oklch(0.820 0.090 45);

  --ok:          oklch(0.680 0.145 155);
  --ok-tint:     color-mix(in oklab, var(--ok) 14%, var(--base));
  --ok-txt:      oklch(0.820 0.090 155);

  --warn:        oklch(0.680 0.145 75);
  --warn-tint:   color-mix(in oklab, var(--warn) 14%, var(--base));
  --warn-txt:    oklch(0.830 0.090 75);

  --danger:      oklch(0.640 0.170 25);
  --danger-tint: color-mix(in oklab, var(--danger) 14%, var(--base));
  --danger-txt:  oklch(0.760 0.130 25);

  /* ---- Rayons */
  --r-xs: 5px;
  --r-sm: 8px;
  --r:    12px;
  --r-lg: 18px;
  --r-full: 999px;

  /* ---- Typo : deux familles. Le mono est réservé aux valeurs machine
     (coûts, modèles, dimensions, durées) — l'œil apprend à les repérer. */
  --ui:   "Instrument Sans", ui-sans-serif, system-ui, "Segoe UI", sans-serif;
  --mono: "JetBrains Mono", ui-monospace, "Cascadia Code", monospace;

  --fs-xs: 11px;
  --fs-sm: 12.5px;
  --fs:    14px;
  --fs-md: 15px;
  --fs-lg: 18px;
  --fs-xl: 24px;

  /* ---- Espacements */
  --s1: 4px;
  --s2: 8px;
  --s3: 12px;
  --s4: 16px;
  --s5: 22px;
  --s6: 30px;

  /* ---- Élévation */
  --shadow-sm: 0 2px 8px oklch(0.05 0 0 / 0.35);
  --shadow:    0 12px 32px oklch(0.05 0 0 / 0.45);
  --shadow-lg: 0 24px 64px oklch(0.05 0 0 / 0.55);

  /* ---- Chrome */
  --topbar-h: 54px;
  --side-w:   244px;
  --speed:    0.15s;
}

/* Respecte le réglage système : aucune animation imposée. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
