/* Hallmark · tokens · theme: custom "Calm Record" (option 3b, approved by Carson 2026-10-05; refs Mercury + Stripe Press)
 * paper oklch(98.6% 0.005 150) · accent oklch(37% 0.07 160) forest · display Newsreader 400 + body Public Sans + outlier IBM Plex Mono (record excerpts only)
 * axes: light / roman-serif / chromatic-green
 */
:root {
  --color-paper:      oklch(98.6% 0.005 150);
  --color-paper-2:    oklch(95.8% 0.009 140);
  --color-doc:        oklch(97.4% 0.016 88);   /* record-page paper */
  --color-rule:       oklch(87% 0.012 130);
  --color-rule-soft:  oklch(92% 0.01 130);
  --color-neutral:    oklch(58% 0.012 150);
  --color-muted:      oklch(42% 0.018 155);
  --color-ink:        oklch(22% 0.03 160);
  --color-accent:     oklch(37% 0.07 160);    /* forest: primary action */
  --color-accent-deep:oklch(29% 0.055 160);
  --color-accent-ink: oklch(98.6% 0.005 150);
  --color-accent-wash:oklch(94% 0.025 155);
  --color-brass:      oklch(66% 0.09 75);     /* highlighter, rules, focus */
  --color-brass-wash: oklch(90% 0.075 88);    /* highlighter ink */
  --color-against:    oklch(45% 0.14 28);
  --color-against-wash: oklch(93% 0.03 28);
  --color-missing:    oklch(50% 0.11 65);
  --color-focus:      oklch(60% 0.11 70);
  --color-shadow:     oklch(22% 0.03 160 / 0.12);
  --color-veil:       oklch(22% 0.03 160 / 0.55);

  --font-display: "Newsreader", ui-serif, Georgia, serif;
  --display-weight: 400;
  --display-track: -0.02em;
  --font-body:    "Public Sans", ui-sans-serif, system-ui, sans-serif;
  --font-outlier: "IBM Plex Mono", ui-monospace, monospace;

  --space-3xs: 0.25rem; --space-2xs: 0.5rem; --space-xs: 0.75rem;
  --space-sm: 1rem; --space-md: 1.5rem; --space-lg: 2rem;
  --space-xl: 3rem; --space-2xl: 5rem; --space-3xl: 9rem;

  --text-xs: 0.8125rem; --text-sm: 0.9375rem; --text-base: 1.0625rem;
  --text-md: 1.1875rem; --text-lg: 1.5rem; --text-xl: 2rem;
  --text-2xl: clamp(2.1rem, 3vw + 1rem, 3.5rem);
  --text-display-s: clamp(2.6rem, 5.4vw + 0.5rem, 5rem);
  --text-price: clamp(4.5rem, 7vw + 1rem, 7.5rem);

  --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);
  --dur-micro: 120ms; --dur-short: 220ms; --dur-long: 420ms; --dur-sweep: 700ms;

  --radius-sm: 3px; --radius-md: 8px; --radius-lg: 16px; --radius-xl: 20px;
  --rule: 1px solid var(--color-rule);
  --wrap: 1240px;
  --gutter: clamp(1rem, 4vw, 3rem);
}
