/* Axira manual design tokens. Dark is the default; data-theme="light" on <html> switches.
   Every colour used anywhere in the manual must be one of these variables. */
:root, [data-theme="dark"] {
  --page: #0f1012;
  --sidebar: #151618;
  --panel: #1a1a1a;
  --panel-raised: #242424;
  --panel-hover: #2a2a2a;
  --bezel: #0a0a0a;
  --bezel-edge: #3a3a3a;
  --line: #2e2e2e;
  --line-strong: #6e6e6e;
  --ink: #f2f2f2;
  --ink-body: #dcdcdc;
  --ink-muted: #b0b0b0;
  --ink-faint: #8c8c8c;
  --accent: #01d9fc;
  --accent-text: #01d9fc;
  --on-accent: #000000;
  --accent-tint: #01d9fc1f;
  --focus: #01d9fc;
  --key-face: #2a2a2a;
  --key-edge: #000000;
  --key-ink: #e6e6e6;
  --key-on: #5cff57;
  --key-on-ink: #000000;
  --key-selected: #4aa3ff;
  --key-selected-ink: #000000;
  --msg-error: #8b3a42;
  --msg-error-fill: #2c1d20;
  --msg-error-ink: #f0a8b1;
  --msg-safety: #ff3333;
  --msg-safety-fill: #331b1e;
  --msg-safety-ink: #ff8f8f;
  --msg-warning: #ffb74d;
  --msg-warning-fill: #2e2717;
  --msg-warning-ink: #ffc977;
  --msg-general: #808080;
  --msg-general-fill: #262626;
  --msg-general-ink: #c8c8c8;
  --msg-success: #4caf50;
  --msg-success-fill: #1b2a1c;
  --msg-success-ink: #8fd992;
  --msg-setup: #ff7a18;
  --msg-setup-fill: #2e1c10;
  --msg-setup-ink: #ffab6b;
  --shadow-panel: 0 1px 0 #ffffff08 inset, 0 8px 24px #00000066;
  --shadow-key: 0 1px 0 #ffffff14 inset, 0 2px 0 #000000;
}
[data-theme="light"] {
  --page: #dde2e9;
  --sidebar: #e9edf2;
  --panel: #f7f8fa;
  --panel-raised: #ffffff;
  --panel-hover: #eef1f5;
  --bezel: #1c1d20;
  --bezel-edge: #3a3a3a;
  --line: #cfd5de;
  --line-strong: #7c8594;
  --ink: #0f172a;
  --ink-body: #1f2937;
  --ink-muted: #475569;
  --ink-faint: #5d6b7e;
  --accent: #1f6feb;
  --accent-text: #0b4fcc;
  --on-accent: #ffffff;
  --accent-tint: #1f6feb1a;
  --focus: #0b4fcc;
  --key-face: #ffffff;
  --key-edge: #b6bdc9;
  --key-ink: #1f2937;
  --key-on: #15803d;
  --key-on-ink: #ffffff;
  --key-selected: #1f6feb;
  --key-selected-ink: #ffffff;
  --msg-error: #8b1e2e;
  --msg-error-fill: #f9e9ec;
  --msg-error-ink: #7a1a28;
  --msg-safety: #c81e1e;
  --msg-safety-fill: #fdeceb;
  --msg-safety-ink: #a11414;
  --msg-warning: #b45309;
  --msg-warning-fill: #fff5e0;
  --msg-warning-ink: #8a4108;
  --msg-general: #64748b;
  --msg-general-fill: #edf0f4;
  --msg-general-ink: #334155;
  --msg-success: #15803d;
  --msg-success-fill: #e7f6ec;
  --msg-success-ink: #14612f;
  --msg-setup: #ea580c;
  --msg-setup-fill: #fff1e6;
  --msg-setup-ink: #9a3412;
  --shadow-panel: 0 1px 2px #0f172a14, 0 6px 18px #0f172a0f;
  --shadow-key: 0 1px 0 #ffffff inset, 0 2px 0 #b6bdc9;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --sidebar-width: 304px;
  --measure: 72ch;
  --content-max: 1080px;
  --topbar-height: 56px;
  --font-sans: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-display: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Cascadia Mono", "Cascadia Code", Consolas, "SF Mono", ui-monospace, Menlo, monospace;
}
.display { font-family: var(--font-display); font-size: 44px; line-height: 48px; font-weight: 600; letter-spacing: -0.01em; }
.h1 { font-family: var(--font-display); font-size: 34px; line-height: 40px; font-weight: 600; }
.h2 { font-family: var(--font-display); font-size: 26px; line-height: 32px; font-weight: 600; }
.h3 { font-family: var(--font-display); font-size: 20px; line-height: 28px; font-weight: 600; }
.h4 { font-family: var(--font-display); font-size: 16px; line-height: 24px; font-weight: 600; }
.body { font-family: var(--font-sans); font-size: 16px; line-height: 26px; font-weight: 400; }
.body-sm { font-family: var(--font-sans); font-size: 14px; line-height: 22px; font-weight: 400; }
.caption { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 400; }
.eyebrow { font-family: var(--font-sans); font-size: 11.5px; line-height: 16px; font-weight: 700; letter-spacing: 0.14em; }
.key { font-family: var(--font-sans); font-size: 13.5px; line-height: 18px; font-weight: 600; }
.section-num { font-family: var(--font-mono); font-size: 14px; line-height: 20px; font-weight: 600; }
.step { font-family: var(--font-mono); font-size: 12.5px; line-height: 16px; font-weight: 700; }
.data { font-family: var(--font-mono); font-size: 14px; line-height: 22px; font-weight: 400; }

/* ---- Diagram tokens: concept diagrams (images/diagrams) ---- */
:root, [data-theme="dark"] {
  --dg-1: #01d9fc;  --dg-1-tint: #01d9fc26;   /* primary series / accent        */
  --dg-2: #ff9f43;  --dg-2-tint: #ff9f4326;   /* second series (e.g. Y2)         */
  --dg-3: #5cd65c;  --dg-3-tint: #5cd65c24;   /* good / target / "correct"       */
  --dg-4: #b18cff;  --dg-4-tint: #b18cff26;   /* third series                    */
  --dg-5: #ff6b6b;  --dg-5-tint: #ff6b6b24;   /* bad / fault / too much          */
  --dg-bg: #111214;
}
[data-theme="light"] {
  --dg-1: #0b6bcb;  --dg-1-tint: #0b6bcb1f;
  --dg-2: #c2410c;  --dg-2-tint: #c2410c1c;
  --dg-3: #15803d;  --dg-3-tint: #15803d1c;
  --dg-4: #6d28d9;  --dg-4-tint: #6d28d91c;
  --dg-5: #b91c1c;  --dg-5-tint: #b91c1c1a;
  --dg-bg: #ffffff;
}

/* ---- App parameter-screen SVG palette (CP_PB.UI/Icons/ParameterImages).
   Dark = the colours the SVGs are authored in; light = the same remap the app applies
   (ParametersViewModel.DarkToLightSvgPalette). ---- */
:root, [data-theme="dark"] {
  --sv-000000: #000000; --sv-222222: #222222; --sv-222244: #222244; --sv-1a1a2e: #1a1a2e; --sv-111122: #111122;
  --sv-0a0a1a: #0a0a1a; --sv-0d1b2a: #0d1b2a; --sv-ffffff: #ffffff; --sv-cccccc: #cccccc; --sv-aaaaaa: #aaaaaa;
  --sv-999999: #999999; --sv-888888: #888888; --sv-666666: #666666; --sv-555555: #555555; --sv-444444: #444444;
  --sv-333333: #333333; --sv-333355: #333355; --sv-444466: #444466; --sv-00ff00: #00ff00; --sv-00bfff: #00bfff;
  --sv-00ddff: #00ddff; --sv-00aaff: #00aaff; --sv-ffff00: #ffff00; --sv-ffaa00: #ffaa00; --sv-ff8800: #ff8800;
  --sv-ff4444: #ff4444; --sv-ff6666: #ff6666; --sv-6666ff: #6666ff; --sv-ffd700: #ffd700;
}
[data-theme="light"] {
  --sv-000000: #ffffff; --sv-222222: #e2e8f0; --sv-222244: #dbeafe; --sv-1a1a2e: #e0e7ff; --sv-111122: #eef2ff;
  --sv-0a0a1a: #f1f5f9; --sv-0d1b2a: #e2e8f0; --sv-ffffff: #0f172a; --sv-cccccc: #334155; --sv-aaaaaa: #475569;
  --sv-999999: #475569; --sv-888888: #64748b; --sv-666666: #475569; --sv-555555: #475569; --sv-444444: #334155;
  --sv-333333: #334155; --sv-333355: #94a3b8; --sv-444466: #94a3b8; --sv-00ff00: #15803d; --sv-00bfff: #0284c7;
  --sv-00ddff: #0891b2; --sv-00aaff: #2563eb; --sv-ffff00: #ca8a04; --sv-ffaa00: #c2410c; --sv-ff8800: #c2410c;
  --sv-ff4444: #b91c1c; --sv-ff6666: #dc2626; --sv-6666ff: #4338ca; --sv-ffd700: #ca8a04;
}
