/* Hallmark tokens · axes: paper-band=light · display=roman-serif · accent-hue=warm(38°)
   McKinney Neuropsychology brand — warm paper, deep teal-green ink, terracotta accent —
   converted from frontend/src/index.css hex values to OKLCH. */

@font-face {
  font-family: "Newsreader";
  src: url("../fonts/Newsreader-var-latin.woff2") format("woff2");
  font-weight: 400 600;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light;

  /* ---- color ---- */
  --color-paper: oklch(95.8% 0.007 97.4);        /* #f2f1ec — page base */
  --color-sheet: oklch(100% 0 0);                /* #ffffff — bounded panels & figure mats ONLY */
  --color-ink: oklch(26.1% 0.026 203.9);         /* #14282a — all body text · 13.59:1 on paper */
  --color-muted: oklch(50.5% 0.024 203.9);       /* #55696b — secondary text · 5.13:1 */
  --color-accent: oklch(57.3% 0.154 37.8);       /* #c1502c — LARGE text / graphics / fills only: 4.17:1 on paper */
  --color-accent-text: oklch(51% 0.14 38.7);     /* #a6421f — body-size terracotta text · 5.43:1 */
  --color-focus: oklch(63.4% 0.159 37.7);        /* #d8613c — focus ring · 3.26:1 ≥ 3:1 */
  --color-tint: oklch(94.6% 0.018 48.5);         /* #f8eae3 — pale terracotta wash, sparing */
  --color-hairline: oklch(91.7% 0.005 67.8);     /* #e6e3e0 — every rule */
  --color-success: oklch(50.5% 0.084 138.2);     /* #4c7040 */
  --color-warning: oklch(50.8% 0.108 73.3);      /* #8a5a00 */
  --color-danger: oklch(48.2% 0.161 28.8);       /* #a62b22 */
  --color-on-accent: oklch(100% 0 0);            /* white on terracotta fill · 4.72:1 */
  --glow: oklch(57.3% 0.154 37.8 / 0.22);        /* the app's bloom glow */

  /* ---- type ---- */
  --font-display: "Newsreader", Georgia, "Times New Roman", serif; /* roman only — no italic headings */
  --font-body: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono: "Cascadia Mono", Consolas, ui-monospace, monospace;  /* verbatim machine truth only */

  --text-xs: 0.6875rem;    /* 11px — panel-label style only */
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-md: 1.25rem;
  --text-lg: 1.5625rem;
  --text-xl: 1.9531rem;
  --text-2xl: 2.4414rem;
  --text-3xl: 3.0518rem;
  --text-display: clamp(2.5rem, 4.5vw + 1rem, 4.5rem);

  --leading-display: 1.08;
  --leading-body: 1.55;
  --track-display: -0.015em;
  --track-caps: 0.08em;

  /* ---- space (4pt) ---- */
  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2.5rem;
  --space-xl: 4rem;
  --space-2xl: 6rem;
  --space-3xl: 9rem;
  --page-gutter: clamp(1rem, 5vw, 4rem);
  --measure: 65ch;
  --nav-h: 3.5rem;

  /* ---- motion ---- */
  --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-bloom: 400ms;

  /* ---- rules & radii ---- */
  --rule-hair: 1px;
  --rule-stage: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
}

/* ---- v2: dark palette (from frontend/src/index.css [data-theme="dark"]) — not shipped in v1.
   Enable with a prefers-color-scheme block + dark screenshot recaptures.
   --color-paper: oklch(20.6% 0.020 201.6);   #0c1a1b
   --color-sheet: oklch(24.6% 0.022 201.5);   #122425
   --color-ink: oklch(93.5% 0.006 186.7);     #e8ecea
   --color-muted: oklch(73.2% 0.021 194.7);   #9daeac
   --color-accent: oklch(67.1% 0.149 39.7);   #e0714a
   --color-hairline: oklch(32.9% 0.026 201.8);#23393a
   --color-tint: oklch(24.7% 0.023 51.5);     #2e211c
   --glow: oklch(67.1% 0.149 39.7 / 0.25);
---- */
