/* ==========================================================================
   Warm Paper — canonical design tokens
   Ported from tonnage-and-trade/db/docs/style/visual_tokens.css and extended
   for a multi-article web property. This is the single source of truth for
   color, type, and spacing. Do not fork these values into component files.
   ========================================================================== */

:root {
  color-scheme: light;

  /* -- surface & ink -- */
  --paper: #fcfbf9;        /* warm background — never pure white */
  --paper-raised: #ffffff; /* cards / raised surfaces sit just above paper */
  --ink: #1b1b1a;          /* data + body text · 16.7:1 on paper (AAA) */
  --ink-quiet: #6f6c66;    /* secondary numbers, captions, annotation */

  /* -- structure — all quiet, all erasable-looking -- */
  --rule: rgba(0, 0, 0, 0.15);  /* header rules, doc-box divider */
  --hair: rgba(0, 0, 0, 0.06);  /* whisper row separators */
  --grid: rgba(0, 0, 0, 0.08);  /* barely-there chart gridlines */
  --band: #e7e6e0;              /* normal-range field behind sparklines */

  /* -- accents — meaning, not decoration; used sparingly -- */
  --accent: #b0221b;    /* WARM: current value / endpoint / negative / flag */
  --accent-2: #2c6fbb;  /* COOL: secondary series / positive / low–high */

  /* -- semantic aliases — components use these so meaning stays explicit -- */
  --signal-current: var(--accent);
  --signal-selected: var(--accent);
  --signal-negative: var(--accent);
  --signal-positive: var(--accent-2);
  --signal-secondary: var(--accent-2);
  --signal-low: var(--accent-2);
  --signal-high: var(--accent);

  /* -- type: serif for reading, sans for data -- */
  --font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --font-data: Inter, "Helvetica Neue", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-num: Inter, ui-monospace, "SF Mono", monospace;

  /* -- measure & rhythm -- */
  --content-width: 72rem;   /* full site container */
  --reading-width: 42rem;   /* the narrow reading measure */
  --wide-width: 58rem;      /* wider exhibits within an article */

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;

  --chart-line: 1.25px;
  --export-chart-line: 2px;

  --radius: 3px;   /* Tufte-minimal: barely-there corners, no drama */
}
