/* Data for Thought — shared design tokens (v0.1)
   One source of truth for brand, semantic, and pillar theming across the
   ecosystem (shell pages + dashboards as they migrate). Identity colors may
   vary by pillar/competition; meaning colors may not (see --evidence-*,
   --movement-*, --forecast-*). */

:root {
  /* Brand foundation (approved palette) */
  --brand-teal: #24466B;
  --brand-teal-light: #4A7BB0;
  --brand-sand: #E0A03C;
  --brand-sand-light: #EDB65C;
  --brand-paper: #EFF1EA;
  --brand-ink: #1B2420;

  /* Neutral interface grays (derived from paper/ink) */
  --text-primary: var(--brand-ink);
  --text-secondary: #56605B;
  --text-faint: #6B746E;
  --border-subtle: #D6DAD1;
  --border-strong: #B9BFB4;

  /* Surfaces */
  --page-background: var(--brand-paper);
  --surface-primary: #FFFFFF;
  --surface-secondary: #F7F8F3;

  /* Pillar accent defaults to the house sand; pages override via
     body[data-pillar] below. */
  --pillar-accent: var(--brand-sand);
  --pillar-accent-ink: #8A6A0A; /* AA-safe text version of the accent */
  --competition-accent: var(--pillar-accent);

  /* Semantic: evidence verdicts (Evidence Desk canon; light mode) */
  --evidence-solid: #0f7a6b;
  --evidence-mixed: #40609f;
  --evidence-overblown: #8a6a0a;
  --evidence-refuted: #b0402a;
  --status-reviewed: var(--brand-teal-light);
  --status-unreviewed: #77706a;

  /* Semantic: movement + forecast roles */
  --movement-positive: #0f7a6b;
  --movement-negative: #b0402a;
  --movement-neutral: #77706a;
  --forecast-market: #56605B;      /* neutral: market/consensus */
  --forecast-house-model: var(--brand-sand); /* the DfT signature */
  --forecast-external: #9AA3AC;    /* muted: external models */

  /* Type */
  --font-ui: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-editorial: 'Newsreader', 'Iowan Old Style', Palatino, Georgia, serif;

  /* Layout scale */
  --maxw: 1100px;
  --radius: 16px;
  --radius-small: 8px;
  --shadow-card: 0 1px 2px rgba(27, 36, 32, 0.06), 0 4px 16px rgba(27, 36, 32, 0.05);
  --header-rule: 4px;
}

/* Pillar identities (20% layer). Each sets the accent + a page tint. */
/* One warm canvas everywhere; pillars appear through accents only. */
body[data-pillar="claims"] {
  --pillar-accent: #23364e;
  --pillar-accent-ink: #23364e;
}
body[data-pillar="measures"] {
  --pillar-accent: #4C6B5C;
  --pillar-accent-ink: #4C6B5C;
}
body[data-pillar="games"] {
  /* Premier League plum — sand/yellow stays the homepage accent */
  --pillar-accent: #5B4B8A;
  --pillar-accent-ink: #5B4B8A;
  --page-background: var(--brand-paper);
}

/* Competition identities (10% layer) — used on the Games landing cards and
   available to dashboards as they adopt tokens. */
:root {
  /* Each sport's hub-card accent matches that sport's dashboard --accent, so the
     landing color previews the color the user lands on (owner call 2026-08-03).
     NWSL uses its brand crimson (--accent2 #8E0E2A) rather than its near-black
     chrome --accent, which reads better as a card accent. */
  --comp-nwsl: #8E0E2A;    /* NWSL crimson (dashboard brand) */
  --comp-epl: #3D195B;     /* EPL purple (dashboard --accent) */
  --comp-nfl: #013369;     /* NFL navy (dashboard --accent) */
  --comp-mlb: #2C6E49;     /* MLB green (dashboard --accent) */
  --comp-wnba: #E35205;    /* WNBA orange (dashboard --accent) */
  --comp-worldcup: #4C6B5C;/* sage + navy (archive; no live dashboard) */
}
