/*
  Perpex design tokens.
  This file is the ONLY place raw color literals may appear (enforced by
  scripts/gates.mjs). Every value below is sampled from brand/ assets —
  nothing here is invented.

  Provenance:
  - --bg-base: solid corner pixels (10,10) and (1990,1990) of
    "brand/LOGO PERPEX PNG.png" (opaque background variant, colortype 2).
  - --accent-*: k-means (k=5, 30 iterations, seed 0) over every pixel with
    alpha > 200 in "brand/LOGO PERPEX PNG...png" (colortype 6, RGBA mark).
    Each cluster centroid was snapped to the color of its nearest real pixel
    (not the averaged centroid itself) so every stop is an actual sampled
    pixel value:
      cluster 2 (n=59474) -> pixel (1149,1040) #01c16c
      cluster 4 (n=91548) -> pixel (1154,906)  #12e48b
      cluster 1 (n=76269) -> pixel (974,822)   #40f6a8
      cluster 0 (n=69643) -> pixel (970,712)   #77fbc2
      cluster 3 (n=44901) -> pixel (963,630)   #b1fcd9
*/

:root {
  --bg-base: #01160d;
  --bg-raised: #06231a;
  --bg-panel: #0a2c20;
  --border-subtle: #123526;

  --accent-deep: #01c16c;
  --accent-mid: #12e48b;
  --accent-bright: #40f6a8;
  --accent-pale: #77fbc2;
  --accent-mint: #b1fcd9;

  --text-primary: #eafff2;
  --text-secondary: #9fcbb5;
  --text-muted: #5f8571;

  --danger: #ff6b6b;

  --font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;

  --tap-min: 44px;

  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast: 120ms;
  --duration-base: 200ms;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --duration-fast: 0ms;
    --duration-base: 0ms;
  }
}
