/* COGNIX[WS] — generated from tokens.json by COGNIX[WS]; edit tokens.json, not this file */
:root, [data-theme="dark"] {
  --bg-base: #0e0e11;
  --bg-panel: #16161c;
  --bg-elevated: #1c1c23;
  --bg-hover: #202027;
  --border: #232329;
  --border-strong: #2c2c34;
  --canvas-pattern: #4a4a58;
  --control-line: #66667a;
  --text-primary: #ececf1;
  --text-secondary: #9b9ba7;
  --accent: #588dfa;
  --accent-soft: #588dfa29;
  --accent-fill: #2563eb;
  --on-accent: #fff;
  --ok: #63d297;
  --warn: #e5c07b;
  --warn-ink: var(--warn);
  --warn-soft: #e5c07b26;
  --on-warn: #16161c;
  --danger: #f7768e;
  --danger-ink: var(--danger);
  --remote: #7dcfff;
  --series-1: #3987e5;
  --series-2: #d95926;
  --series-3: #199e70;
  --series-4: #c98500;
  --series-5: #d55181;
  --series-6: #008300;
  --series-7: #9085e9;
  --series-8: #e66767;
  --series-other: #5d5d6a;
  --brand-mark-bg: #2563eb;
  --brand-mark-ring: #00000000;
  --ast-hue-1: #2563eb;
  --ast-hue-2: #7c3aed;
  --ast-hue-3: #0f766e;
  --ast-hue-4: #a21caf;
  --ast-hue-5: #15803d;
  --ast-hue-6: #0369a1;
  --ast-hue-7: #60708a;
  --ast-hue-8: #4d7c0f;
  --bg-frame: #08080a;
  --frame-hover: rgb(255 255 255 / .04);
  --frame-line: #1c1c22;
  --frame-sep: rgb(255 255 255 / .17);
  --tab-active: var(--bg-elevated);
  --site-ground: #05070d;
  --site-panel: rgba(10,13,22,.82);
  --site-line: rgba(148,163,184,.16);
  --site-text: #f4f6fa;
  --site-soft: #a9b1c2;
  --site-dim: #6b7385;
  --site-blue: #2563eb;
  --site-blue-hi: #5b8def;
  --site-ok: #34d399;
  --site-err: #fbbf24;
}
[data-theme="light"] {
  --bg-base: #f0f2f7;
  --bg-panel: #fbfcfe;
  --bg-elevated: #ffffff;
  --bg-hover: #e4e9f2;
  --border: #dde2ec;
  --border-strong: #b3bccd;
  --canvas-pattern: #a9b3c6;
  --control-line: #7d879a;
  --text-primary: #16181d;
  --text-secondary: #5b6472;
  --accent: #2563eb;
  --accent-soft: #2563eb1f;
  --accent-fill: var(--accent);
  --on-accent: #fff;
  --ok: #2e7d32;
  --warn: #a16207;
  --warn-ink: #854d0e;
  --warn-soft: #a1620724;
  --on-warn: #fff;
  --danger: #cf3b54;
  --danger-ink: #a8293f;
  --remote: #0e7490;
  --series-1: #2a78d6;
  --series-2: #eb6834;
  --series-3: #1baf7a;
  --series-4: #eda100;
  --series-5: #e87ba4;
  --series-6: #008300;
  --series-7: #4a3aa7;
  --series-8: #e34948;
  --series-other: #a7afbd;
  --brand-mark-bg: #2563eb;
  --brand-mark-ring: #00000000;
  --ast-hue-1: #2563eb;
  --ast-hue-2: #7c3aed;
  --ast-hue-3: #0f766e;
  --ast-hue-4: #a21caf;
  --ast-hue-5: #15803d;
  --ast-hue-6: #0369a1;
  --ast-hue-7: #60708a;
  --ast-hue-8: #4d7c0f;
  --bg-frame: #dfe4ed;
  --frame-hover: rgb(255 255 255 / .35);
  --frame-line: #c4cbda;
  --frame-sep: rgb(22 24 29 / .24);
  --tab-active: var(--bg-panel);
  --site-ground: #f7f8fa;
  --site-panel: #ffffff;
  --site-line: #dce1e9;
  --site-text: #151923;
  --site-soft: #596170;
  --site-dim: #6b7385;
  --site-blue: #2563eb;
  --site-blue-hi: #2563eb;
  --site-ok: #286046;
  --site-err: #fbbf24;
}
@media (prefers-color-scheme: light) {
  :root:not([data-theme]) {
    --bg-base: #f0f2f7;
    --bg-panel: #fbfcfe;
    --bg-elevated: #ffffff;
    --bg-hover: #e4e9f2;
    --border: #dde2ec;
    --border-strong: #b3bccd;
    --canvas-pattern: #a9b3c6;
    --control-line: #7d879a;
    --text-primary: #16181d;
    --text-secondary: #5b6472;
    --accent: #2563eb;
    --accent-soft: #2563eb1f;
    --accent-fill: var(--accent);
    --on-accent: #fff;
    --ok: #2e7d32;
    --warn: #a16207;
    --warn-ink: #854d0e;
    --warn-soft: #a1620724;
    --on-warn: #fff;
    --danger: #cf3b54;
    --danger-ink: #a8293f;
    --remote: #0e7490;
    --series-1: #2a78d6;
    --series-2: #eb6834;
    --series-3: #1baf7a;
    --series-4: #eda100;
    --series-5: #e87ba4;
    --series-6: #008300;
    --series-7: #4a3aa7;
    --series-8: #e34948;
    --series-other: #a7afbd;
    --brand-mark-bg: #2563eb;
    --brand-mark-ring: #00000000;
    --ast-hue-1: #2563eb;
    --ast-hue-2: #7c3aed;
    --ast-hue-3: #0f766e;
    --ast-hue-4: #a21caf;
    --ast-hue-5: #15803d;
    --ast-hue-6: #0369a1;
    --ast-hue-7: #60708a;
    --ast-hue-8: #4d7c0f;
    --bg-frame: #dfe4ed;
    --frame-hover: rgb(255 255 255 / .35);
    --frame-line: #c4cbda;
    --frame-sep: rgb(22 24 29 / .24);
    --tab-active: var(--bg-panel);
    --site-ground: #f7f8fa;
    --site-panel: #ffffff;
    --site-line: #dce1e9;
    --site-text: #151923;
    --site-soft: #596170;
    --site-dim: #6b7385;
    --site-blue: #2563eb;
    --site-blue-hi: #2563eb;
    --site-ok: #286046;
    --site-err: #fbbf24;
  }
}
:root {
  --chat-gutter: 24px;
  --slide-margin: 64px;
  --slide-gap: 32px;
  --slide-gap-sm: 16px;
  --radius-ctl: 8px;
  --radius-panel: 12px;
  --radius-site-ctl: 6px;
  --radius-pill: 999px;
  --radius-mark: 21.875%;
  --ctl-h: 36px;
  --chrome-h: 41px;
  --chat-col: 768px;
  --agent-tint-rest: 12%;
  --agent-tint: 14%;
  --agent-tint-hover: 20%;
  --agent-tint-press: 26%;
  --slide-w: 1280px;
  --slide-h: 720px;
  --motion-fast: 120ms;
  --motion-med: 220ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --font-code: "JetBrains Mono", "Fira Code", ui-monospace, "Cascadia Code", Menlo, monospace;
  --font-display: Geist, Arial, sans-serif;
  --font-label: "Geist Mono", ui-monospace, monospace;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;
  --font-sans: -apple-system, "Segoe UI", Inter, Roboto, sans-serif;
}
.type-fs-hero { font-family: var(--font-sans); font-size: 34px; line-height: 1.15; font-weight: 600; letter-spacing: -0.015em; }
.type-fs-kpi { font-family: var(--font-sans); font-size: 26px; line-height: 1.15; font-weight: 600; letter-spacing: -0.015em; }
.type-fs-title { font-family: var(--font-sans); font-size: 14px; }
.type-fs-body { font-family: var(--font-sans); font-size: 13px; }
.type-fs-label { font-family: var(--font-sans); font-size: 12px; }
.type-fs-micro { font-family: var(--font-sans); font-size: 11px; }
.type-mk-hero { font-family: var(--font-display); font-size: 84px; line-height: 1; font-weight: 600; letter-spacing: -0.04em; }
.type-mk-section { font-family: var(--font-display); font-size: 54px; line-height: 1.04; font-weight: 600; letter-spacing: -0.035em; }
.type-mk-closing { font-family: var(--font-display); font-size: 56px; line-height: 1.05; font-weight: 600; letter-spacing: -0.035em; }
.type-mk-lead { font-family: var(--font-display); font-size: 19px; line-height: 1.6; font-weight: 400; }
.type-mk-label { font-family: var(--font-label); font-size: 12px; line-height: 1.5; font-weight: 500; letter-spacing: 0.16em; }
.type-slide-display { font-family: var(--font-display); font-size: 68px; line-height: 1.02; font-weight: 600; letter-spacing: -0.04em; }
.type-slide-title { font-family: var(--font-display); font-size: 46px; line-height: 1.06; font-weight: 600; letter-spacing: -0.035em; }
.type-slide-lead { font-family: var(--font-display); font-size: 21px; line-height: 1.5; font-weight: 400; }
.type-slide-body { font-family: var(--font-display); font-size: 17px; line-height: 1.5; font-weight: 400; }
.type-slide-label { font-family: var(--font-label); font-size: 13px; line-height: 1.4; font-weight: 500; letter-spacing: 0.16em; }
.type-slide-stat { font-family: var(--font-display); font-size: 60px; line-height: 1; font-weight: 600; letter-spacing: -0.04em; }
.type-slide-caption { font-family: var(--font-label); font-size: 12px; line-height: 1.45; font-weight: 400; letter-spacing: 0.02em; }
@font-face { font-family: "Geist"; src: url("fonts/geist-latin.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("fonts/geist-mono-latin.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
