/* Veterans in Project Management — design tokens
   Source of truth: Design/build/tokens.md. Values are final and WCAG-checked.
   Mode: light (warm paper). Dark olive is structural only.
   PRD amendments applied: --measure 65ch; --warning/--error removed (no V1 states). */

:root {
  /* ---- Background / surface ---- */
  --bg-base:      #F1EDE1;  /* page background (warm paper) */
  --bg-surface:   #FAF7EC;  /* cards, players, raised blocks */
  --bg-sunken:    #E4DFCF;  /* wells, inset gutters, zebra */
  --bg-tint:      #F3E6DA;  /* accent-tinted callouts */
  --bg-ink:       #2B2E1E;  /* footer, cover art, player shell */
  --bg-ink-alt:   #3F4522;  /* olive-drab panels */

  /* ---- Text ---- */
  --text-primary:        #211F17;
  --text-secondary:      #47432F;
  --text-muted:          #6A6550;
  --text-inverse:        #F1EDE1;
  --text-inverse-muted:  #A7AD87;  /* sage, AA 5.93 on ink */

  /* ---- Accent (rust-orange, sparing) ---- */
  --accent:        #A54A1F;  /* links, buttons, small-text accent (AA) */
  --accent-hover:  #8C3E1A;
  --accent-active: #73321F;
  --accent-bright: #C05A28;  /* LARGE text & non-text only (AA-large) */

  /* ---- Border ---- */
  --border-subtle:  #DAD4C2;
  --border-default: #C4BDA6;
  --border-strong:  #8B8467;
  --border-accent:  #A54A1F;

  /* ---- Type families ---- */
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --font-sans: "IBM Plex Sans", system-ui, sans-serif;

  /* ---- Type scale (size / line-height) ---- */
  --t-display-size: 2.75rem; --t-display-lh: 1.06;  /* 44 · Mono 600 */
  --t-title-size:   2rem;    --t-title-lh:   1.12;  /* 32 · Mono 600 */
  --t-h2-size:      1.375rem;--t-h2-lh:      1.25;  /* 22 · Mono 600 */
  --t-h3-size:      1.125rem;--t-h3-lh:      1.3;   /* 18 · Mono 500 */
  --t-body-lg-size: 1.125rem;--t-body-lg-lh: 1.72;  /* 18 · Sans 400 (transcript) */
  --t-body-size:    1rem;    --t-body-lh:    1.65;  /* 16 · Sans 400 */
  --t-body-sm-size: 0.875rem;--t-body-sm-lh: 1.6;   /* 14 · Sans 400 */
  --t-caption-size: 0.8125rem;--t-caption-lh:1.5;   /* 13 · Sans 500 */
  --t-label-size:   0.75rem; --t-label-lh:   1.4;   /* 12 · Mono 600 caps 0.08em */
  --t-timestamp-size:0.8125rem;--t-timestamp-lh:1.4;/* 13 · Mono 500 tabular */

  --weight-regular: 400;
  --weight-medium:  500;
  --weight-semibold:600;
  --tracking-label: 0.08em;
  --measure: 65ch;         /* PRD amendment: transcript/body line length */
  --content-w: 720px;      /* episode content column cap */

  /* ---- Spacing (4px base) ---- */
  --space-3xs: 2px;  --space-2xs: 4px;  --space-xs: 8px;
  --space-sm: 12px;  --space-md: 16px;  --space-lg: 24px;
  --space-xl: 32px;  --space-2xl: 48px; --space-3xl: 64px; --space-4xl: 96px;

  /* ---- Radii / borders ---- */
  --radius-none: 0;   --radius-sm: 2px;  --radius-md: 4px;
  --border-w: 1px;    --border-w-strong: 2px;  --rule-accent: 3px;

  /* ---- Shadows (rare — prefer 1px border) ---- */
  --shadow-1: 0 1px 2px rgba(33,31,23,.08);
  --shadow-2: 0 3px 10px rgba(33,31,23,.10);

  /* ---- Motion ---- */
  --ease: cubic-bezier(0.2, 0, 0.1, 1);
  --dur-fast: 120ms; --dur: 200ms; --dur-slow: 320ms;
}
