:root {
  --color-canvas: oklch(13% 0.025 264);
  --color-canvas-deep: oklch(9% 0.022 264);
  --color-panel: oklch(18% 0.035 264);
  --color-panel-raised: oklch(23% 0.045 264);
  --color-panel-soft: oklch(27% 0.045 264);
  --color-rule: oklch(34% 0.055 264);
  --color-rule-strong: oklch(45% 0.07 264);
  --color-ink: oklch(96% 0.012 265);
  --color-ink-2: oklch(78% 0.025 265);
  --color-ink-3: oklch(63% 0.03 265);
  --color-accent: oklch(84% 0.17 86);
  --color-accent-strong: oklch(77% 0.18 78);
  --color-accent-ink: oklch(18% 0.035 264);
  --color-win: oklch(82% 0.17 164);
  --color-danger: oklch(68% 0.18 28);
  --color-focus: oklch(88% 0.16 90);
  --color-overlay: oklch(7% 0.02 264 / 84%);
  --color-shadow: oklch(4% 0.02 264 / 55%);
  --color-accent-wash: oklch(84% 0.17 86 / 12%);
  --color-win-wash: oklch(82% 0.17 164 / 12%);

  --font-display: "Trebuchet MS", "Arial Narrow", sans-serif;
  --font-body: "Segoe UI", Tahoma, sans-serif;
  --font-utility: "Lucida Console", Monaco, monospace;

  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;

  --text-xs: 0.72rem;
  --text-sm: 0.86rem;
  --text-md: 1rem;
  --text-lg: 1.16rem;
  --text-xl: clamp(1.35rem, 1.1rem + 1vw, 1.9rem);
  --text-2xl: clamp(1.8rem, 1.3rem + 2vw, 3rem);
  --text-display-s: clamp(2rem, 1.5rem + 2.7vw, 4rem);

  --radius-xs: 0.45rem;
  --radius-sm: 0.75rem;
  --radius-md: 1rem;
  --radius-lg: 1.35rem;
  --radius-pill: 999px;
  --rule-hair: 1px;
  --rule-strong: 2px;

  --dur-short: 120ms;
  --dur-medium: 220ms;
  --dur-long: 420ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  --sidebar-width: 17rem;
  --content-max: 92rem;
  --page-gutter: clamp(1rem, 3vw, 2rem);
}
