/* Editorial engineering system. Light is default; existing token names remain compatible. */
:root {
 --bg:#F7F9FB; --surface:#FFFFFF; --ink:#14284B; --accent:#3F6286;
 --text:#2B3A52; --text-muted:#44566F; --band-pale:#E8EEF5; --border:#C9D6E3;
 --heading:var(--ink); --navy:#14284B; --on-navy:#FFFFFF; --button-bg:var(--ink); --button-text:#FFFFFF;
 --control-border:#3F6286; --font-heading:'Newsreader',Georgia,serif; --font-body:'Hanken Grotesk',Arial,sans-serif;
 --ab-font-heading:var(--font-heading); --ab-font-body:var(--font-body); --ab-font-mono:'Newsreader',Georgia,serif;
 --ab-type-sm:.875rem; --ab-type-base:clamp(1rem,.97rem + .15vw,1.0625rem); --ab-type-lead:clamp(1.125rem,1.05rem + .3vw,1.25rem);
 --ab-type-h1:clamp(2.625rem,1.8rem + 3vw,4.0625rem); --ab-type-h2:clamp(2rem,1.65rem + 1.5vw,2.5rem); --ab-type-h3:clamp(1.5rem,1.35rem + .6vw,1.75rem);
 --ab-leading-body:1.6; --ab-leading-heading:1.1; --ab-tracking-heading:-.02em;
 --ab-space-1:.25rem; --ab-space-2:.5rem; --ab-space-3:.75rem; --ab-space-4:1rem; --ab-space-6:1.5rem; --ab-space-8:2rem; --ab-space-12:3rem; --ab-space-16:4rem; --ab-space-24:6rem;
 --ab-radius-sm:8px; --ab-radius-md:8px; --ab-radius-pill:999px; --ab-shadow:none;
 --ab-content-wide:75rem; --ab-content-reading:65ch; --ab-target:44px;
 --ab-duration-fast:140ms; --ab-duration-normal:220ms; --ab-ease:ease-out;
 --ab-bg:var(--bg); --ab-surface:var(--surface); --ab-surface-raised:var(--band-pale); --ab-text:var(--text); --ab-text-muted:var(--text-muted);
 --ab-line:var(--border); --ab-control-line:var(--control-border); --ab-brand:var(--accent);
 --ab-link:var(--accent); --ab-link-hover:var(--heading); --ab-button-bg:var(--button-bg); --ab-button-hover:var(--accent); --ab-on-accent:var(--button-text);
 --ab-focus:var(--accent); --ab-focus-guard:var(--surface);
 --ab-verified-bg:transparent; --ab-verified-fg:var(--accent); --ab-assumed-bg:transparent; --ab-assumed-fg:var(--accent); --ab-untested-bg:transparent; --ab-untested-fg:var(--accent);
 --ab-domain-mechanical:var(--accent); --ab-domain-fluid:var(--accent); --ab-domain-electrical:var(--accent); --ab-domain-programming:var(--accent); --ab-domain-nuclear:var(--accent); --ab-domain-general:var(--accent);
 --ab-domain-mechanical-text:var(--accent); --ab-domain-fluid-text:var(--accent); --ab-domain-electrical-text:var(--accent); --ab-domain-programming-text:var(--accent); --ab-domain-nuclear-text:var(--accent); --ab-domain-general-text:var(--accent);
 --paper:var(--bg); --muted:var(--text-muted); --lime:var(--accent); --line:var(--border);
 color-scheme:light;
}
:root[data-ab-theme="dark"] {
 --bg:#0E1B33; --surface:#14284B; --text:#E8EEF5; --text-muted:#9DB7D3; --accent:#9DB7D3;
 --heading:#E8EEF5; --band-pale:#14284B; --border:#44566F; --control-border:#9DB7D3;
 --button-bg:#9DB7D3; --button-text:#14284B; color-scheme:dark;
}
@media(prefers-reduced-motion:reduce){:root{--ab-duration-fast:0ms;--ab-duration-normal:0ms}}
