/* NCH brand tokens v1.0 — compiled from BRAND.md §3 (signed 2026-08-14).
   Source of truth: brand/BRAND.md. Do not hand-edit values here without updating BRAND.md.
   Contrast ratios computed 2026-08-14; role restrictions are load-bearing (see §3 table). */

:root {
  /* Color — Marine on bone */
  --nch-ink: #14384A;         /* primary text; dark ground. 11.10:1 on bone */
  --nch-blue: #215B8F;        /* actions, links. 6.36:1 on bone; white on it 7.10:1 */
  --nch-slate: #4F78A0;       /* secondary/large text, light-ground ʻokina. 4.15:1 — large text/UI ONLY */
  --nch-bone: #F6F2EA;        /* light ground */
  --nch-bone-raised: #FDFBF6; /* raised surfaces */
  --nch-sand: #F5D9A8;        /* dark-ground accent; ʻokina on ink. 9.07:1 on ink */
  --nch-clay: #B65C32;        /* occasional warm accent. 4.12:1 bone — large sizes ONLY */
  --nch-line: #E5DECF;        /* hairlines on light */
  --nch-ok: #2E5E3E;   --nch-ok-bg: #E6EFE3;
  --nch-warn: #8A4A2B; --nch-warn-bg: #F4E4D7;
  /* steel #6B9CC3 is RETIRED for text/buttons (2.93:1). Do not reintroduce. */

  /* Ground-adaptive ʻokina (light default) */
  --nch-okina: var(--nch-slate);

  /* Type — System B */
  --nch-font-display: "Newsreader", "Iowan Old Style", Georgia, serif;   /* 500, 650. Headlines + long-form body (400) */
  --nch-font-ui: "Schibsted Grotesk", "Avenir Next", "Helvetica Neue", sans-serif; /* 400, 500, 600. Standfirsts (roman!), UI, labels */
  /* data numerals: Schibsted tabular figures (book gate 2026-08-14); no mono role */

  /* Layout */
  --nch-shell: 1180px;
  --nch-measure: 720px;
  --nch-radius: 3px;          /* 2–4px; pills only for status */
  --nch-space: 4px;           /* compose in 8px increments */

  /* Motion */
  --nch-ease: cubic-bezier(0.23, 1, 0.32, 1);
  --nch-dur-fast: 140ms;
  --nch-dur: 200ms;

  /* Imagery grade */
  --nch-photo-filter: saturate(0.94) sepia(0.09) contrast(1.02);
}

/* Dark ground: ink surface, bone text, sand ʻokina */
[data-ground="dark"] {
  --nch-okina: var(--nch-sand);
}
