/* Design tokens — transcribed from design-tokens.md. Keep names identical
   to that file so the two stay diffable. */
:root {
  /* Surfaces */
  --bg: oklch(0.17 0.012 265);
  --surface-1: oklch(0.19 0.013 265);
  --surface-2: oklch(0.195 0.013 265);
  --surface-2-hover: oklch(0.215 0.014 265);
  --surface-3: oklch(0.22 0.013 265);

  /* Borders */
  --border: oklch(0.28 0.014 265);
  --border-subtle: oklch(0.24 0.014 265);
  --border-strong: oklch(0.30 0.014 265);
  --border-control: oklch(0.32 0.014 265);
  --dot-idle: oklch(0.34 0.014 265);
  --stripe: oklch(0.25 0.013 265);

  /* Text */
  --text: oklch(0.96 0.005 265);
  --text-prose: oklch(0.84 0.008 265);
  --text-muted: oklch(0.74 0.012 265);
  --text-muted-2: oklch(0.70 0.012 265);
  /* --text-faint and --text-faintest are lifted from the design brief's
     0.58 / 0.52 (3.3-4.3:1 against --surface-1, below WCAG AA's 4.5:1 for
     the 11-13px labels they're used for) to 0.64 / 0.60, which clear 4.5:1
     with margin on every background they appear on while keeping the
     faint/faintest hierarchy — see phases/07-responsive-a11y-launch.md. */
  --text-faint: oklch(0.64 0.012 265);
  --text-faintest: oklch(0.60 0.012 265);

  /* Accent — acid lime */
  --accent: oklch(0.86 0.19 128);
  --accent-hover: oklch(0.93 0.16 128);
  --on-accent: oklch(0.19 0.03 265);
  --accent-border: oklch(0.40 0.10 128);
  --accent-border-soft: oklch(0.34 0.05 128);
  --accent-border-card: oklch(0.44 0.06 128);
  --accent-wash: oklch(0.20 0.02 128);

  /* Fonts */
  --font-sans: 'Public Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;

  /* Type scale */
  --h1-home-a: clamp(44px, 7.4vw, 92px);
  --h1-home-b: clamp(38px, 5.2vw, 62px);
  --h1-page: clamp(34px, 5vw, 52px);
  --h1-app-detail: clamp(30px, 4.4vw, 44px);
  --h1-policy: 34px;

  /* Layout */
  --container-max: 1140px;
  --container-prose-max: 760px;
  --container-about-max: 860px;
  --header-height: 68px;
}
