/* design-tokens.css — the canonical Finclus design language. One source of truth for colour,
   evidence state, funding lane, type, radius, shadow and motion. Linked by index.html, dpr.html
   and brain.html so the SPA, the DPR Studio and the expert page all speak the same language.
   Values mirror the existing palette — linking this changes nothing visually, it centralises. */
:root {
  /* brand + neutrals */
  --brand: #15803d; --brand-2: #22c55e; --brand-dark: #0f5c2e; --brand-soft: #dcfce7; --brand-tint: #f0fdf4; --rail: #bfe6cd;
  --accent: #1d4ed8; --accent-soft: #dbeafe; --saffron: #f26722; --saffron-soft: #fff1e8;
  --ink: #16231d; --body: #334036; --muted: #5d6b62; --faint: #8a978d;
  --bg: #f6faf7; --surface: #f7f8fa; --card: #ffffff; --line: #e5ece7; --line-2: #eef3ef;

  /* evidence-state language — the trust colours, identical wherever a figure appears */
  --ev-fact: #15803d;    --ev-fact-bg: #e7f6ec;     /* VERIFIED / SOURCE-BACKED / USER-PROVIDED */
  --ev-calc: #1d4ed8;    --ev-calc-bg: #e6eefe;     /* CALCULATED */
  --ev-est: #b45309;     --ev-est-bg: #fbf1e3;      /* ESTIMATED */
  --ev-assume: #9a6a24;  --ev-assume-bg: #f7f0e2;   /* ASSUMPTION */
  --ev-unknown: #64748b; --ev-unknown-bg: #eef2f6;  /* MISSING / not established */
  --ev-ceil: #be123c;    --ev-ceil-bg: #fdeaea;     /* "Maximum — not guaranteed" */

  /* funding-lane language — the at-a-glance "what kind of support is this" */
  --lane-loan: #1d4ed8;      --lane-loan-bg: #dbeafe;
  --lane-subsidy: #15803d;   --lane-subsidy-bg: #dcfce7;
  --lane-both: #0f5c2e;      --lane-both-bg: #dcfce7;
  --lane-guarantee: #b45309; --lane-guarantee-bg: #fef3c7;
  --lane-none: #6b7280;      --lane-none-bg: #eef2f7;

  /* radius scale (Kowalski shape lock) */
  --r-sm: 10px; --r-md: 14px; --r-lg: 18px; --r-xl: 24px; --r-pill: 999px;
  /* shadow scale */
  --shadow-sm: 0 1px 2px rgba(16,24,40,.04), 0 2px 6px rgba(16,24,40,.05);
  --shadow-md: 0 10px 30px -18px rgba(20,40,28,.35);
  --shadow-lift: 0 22px 44px -24px rgba(21,128,61,.38);
  /* motion */
  --motion-fast: 120ms; --motion: 200ms; --motion-slow: 400ms;
  --ease-out: cubic-bezier(.23,1,.32,1); --ease-io: cubic-bezier(.77,0,.175,1); --ease-drawer: cubic-bezier(.32,.72,0,1);
  /* type */
  --font-disp: 'Bricolage Grotesque', system-ui, sans-serif;
  --font-sans: 'Mulish', system-ui, -apple-system, sans-serif;
  /* space scale */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px; --space-12: 48px;
}

/* Evidence-state badge — one component, one meaning, everywhere a figure is shown. */
.ev-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 10.5px; font-weight: 800;
  letter-spacing: .02em; border-radius: var(--r-sm); padding: 2px 8px; line-height: 1.5; white-space: nowrap; }
.ev-badge.fact    { color: var(--ev-fact);    background: var(--ev-fact-bg); }
.ev-badge.calc    { color: var(--ev-calc);    background: var(--ev-calc-bg); }
.ev-badge.est     { color: var(--ev-est);     background: var(--ev-est-bg); }
.ev-badge.assume  { color: var(--ev-assume);  background: var(--ev-assume-bg); }
.ev-badge.unknown { color: var(--ev-unknown); background: var(--ev-unknown-bg); }
.ev-badge.ceil    { color: var(--ev-ceil);    background: var(--ev-ceil-bg); }

/* Funding-lane badge — the at-a-glance kind of support, on every scheme card. */
.lane { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800;
  border-radius: var(--r-sm); padding: 4px 9px; line-height: 1.4; }
.lane svg { width: 14px; height: 14px; }
.lane.loan      { color: var(--lane-loan);      background: var(--lane-loan-bg); }
.lane.subsidy   { color: var(--lane-subsidy);   background: var(--lane-subsidy-bg); }
.lane.both      { color: var(--lane-both);      background: var(--lane-both-bg); }
.lane.guarantee { color: var(--lane-guarantee); background: var(--lane-guarantee-bg); }
.lane.none      { color: var(--lane-none);      background: var(--lane-none-bg); }
