/* DeductIQ — generated from tokens.json */
:root, [data-theme="light"] {
  --paper: #f3f0e8;
  --paper-raised: #fbfaf6;
  --paper-sunk: #e8e4d9;
  --line: #d9d4c7;
  --line-strong: #8a8478;
  --ink: #141613;
  --ink-muted: #5a5d55;
  --on-ink: #f3f0e8;
  --signal: #ff5b1f;
  --on-signal: #141613;
  --signal-text: #b23a0c;
  --signal-soft: #ffe2d3;
  --proof: #1f5a40;
  --proof-soft: #dceadf;
  --on-proof: #f3f0e8;
  --danger: #b42318;
  --danger-soft: #fbe1dc;
  --focus: #141613;
  --shadow-lift: 0 1px 0 rgba(20,22,19,0.05), 0 12px 32px -16px rgba(20,22,19,0.28);
}

[data-theme="dark"] {
  --paper: #121411;
  --paper-raised: #1b1e1a;
  --paper-sunk: #0b0d0a;
  --line: #2b2f29;
  --line-strong: #6e7369;
  --ink: #f1eee6;
  --ink-muted: #a4a79d;
  --on-ink: #121411;
  --signal: #ff6a33;
  --on-signal: #141613;
  --signal-text: #ff8d5e;
  --signal-soft: #3b1d10;
  --proof: #86cfa6;
  --proof-soft: #15301f;
  --on-proof: #121411;
  --danger: #ff8b7e;
  --danger-soft: #3a1714;
  --focus: #f1eee6;
  --shadow-lift: 0 1px 0 rgba(0,0,0,0.4), 0 16px 40px -18px rgba(0,0,0,0.7);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --paper: #121411;
    --paper-raised: #1b1e1a;
    --paper-sunk: #0b0d0a;
    --line: #2b2f29;
    --line-strong: #6e7369;
    --ink: #f1eee6;
    --ink-muted: #a4a79d;
    --on-ink: #121411;
    --signal: #ff6a33;
    --on-signal: #141613;
    --signal-text: #ff8d5e;
    --signal-soft: #3b1d10;
    --proof: #86cfa6;
    --proof-soft: #15301f;
    --on-proof: #121411;
    --danger: #ff8b7e;
    --danger-soft: #3a1714;
    --focus: #f1eee6;
    --shadow-lift: 0 1px 0 rgba(0,0,0,0.4), 0 16px 40px -18px rgba(0,0,0,0.7);
  }
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-20: 80px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --font-sans: "Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;
}

.display-xl { font-family: var(--font-sans); font-size: 76px; line-height: 0.95; font-weight: 700; letter-spacing: -0.035em; }
.display { font-family: var(--font-sans); font-size: 48px; line-height: 1; font-weight: 700; letter-spacing: -0.03em; }
.heading { font-family: var(--font-sans); font-size: 28px; line-height: 32px; font-weight: 600; letter-spacing: -0.02em; }
.title { font-family: var(--font-sans); font-size: 17px; line-height: 24px; font-weight: 600; letter-spacing: -0.01em; }
.lead { font-family: var(--font-sans); font-size: 20px; line-height: 30px; font-weight: 400; }
.body { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 400; }
.small { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 400; }
.figure-xl { font-family: var(--font-mono); font-size: 44px; line-height: 48px; font-weight: 500; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.figure { font-family: var(--font-mono); font-size: 15px; line-height: 20px; font-weight: 500; font-variant-numeric: tabular-nums; }
.label { font-family: var(--font-mono); font-size: 11px; line-height: 16px; font-weight: 500; letter-spacing: 0.08em; font-variant-numeric: tabular-nums; text-transform: uppercase; }
