/* Root-declared themes. Named artwork colours retain identity; interface roles change. */
.theme-toggle{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;padding:11px;border:1px solid var(--nav-line);background:transparent;color:var(--nav-ink);border-radius:50%}.theme-toggle svg{grid-area:1/1;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.theme-toggle:hover{border-color:var(--nav-ink)}
html[data-theme=dark] .theme-moon,html[data-theme=light] .theme-sun{display:none}.site-header{gap:20px}.site-nav{gap:20px}.site-brand{width:204px}.header-action{padding-inline:16px;gap:15px}
html[data-theme=dark] .nav-panel{background:#161d28;color:#eef2f6;border-color:#445363}html[data-theme=dark] .nav-panel a:hover{background:#293346;color:#fff}
@media(max-width:1399px){.site-header{padding:20px 28px}.menu-toggle{display:flex;margin-left:auto}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--nav-bg);padding:18px 28px 28px;border-bottom:1px solid var(--nav-line);align-items:stretch;flex-direction:column;gap:0;max-height:calc(100dvh - 95px);overflow:auto}.site-nav.is-open{display:flex}.site-nav>a,.nav-group summary{padding:14px 0;border-bottom:1px solid var(--nav-line)}.nav-panel{position:static;box-shadow:none;border:0;margin:0 0 10px}}
@media(max-width:680px){.site-header{padding:16px 20px;gap:12px}.site-brand{width:min(172px,43vw)}.menu-toggle{padding:9px 10px;font-size:13px;gap:8px}.theme-toggle{width:40px;flex-basis:40px;height:44px;padding:10px}.site-header .theme-toggle{border-radius:3px}.header-action{display:none}}
/* Signal: graphite and violet in dark; warm ivory and ink in light. */
html[data-theme=dark] .signal-theme{--sg-bg:#0b0e19;--sg-panel:#131725;--sg-alt:#111420;--sg-ink:#f2f2f6;--sg-muted:#b9becc;--sg-line:#394055;--sg-accent:#c1b1ff;--sg-on:#161126;--sg-hero:#080b16;--brand-filter:brightness(0) invert(1);--nav-bg:#080b16;--nav-ink:#f2f2f6;--nav-line:#394055;--accent:#c1b1ff;--accent-ink:#161126}
html[data-theme=light] .signal-theme{--sg-bg:#f7f6f2;--sg-panel:#fff;--sg-alt:#edebf3;--sg-ink:#191827;--sg-muted:#57576a;--sg-line:#c7c3d4;--sg-accent:#6240be;--sg-on:#fff;--sg-hero:#f7f6f2;--brand-filter:brightness(0);--nav-bg:#f7f6f2;--nav-ink:#191827;--nav-line:#c7c3d4;--accent:#6240be;--accent-ink:#fff}
.signal-theme{background:var(--sg-bg);color:var(--sg-ink);--focus:var(--sg-accent)}.signal-theme .signal-hero{background:var(--sg-hero);color:var(--sg-ink)}.signal-theme :is(.signal-category,.signal-lead,.signal-status,.signal-stage-detail p,.signal-figure figcaption,.signal-figure-head,.signal-thesis>p,.signal-system-intro p,.signal-record-copy>p:not(.signal-kicker),.signal-audience-intro>p:last-child,.signal-audience p[data-card-body],.signal-card p[data-card-body],.signal-card-meta,.signal-ledger-label,.signal-record-detail p,.signal-ledger figcaption){color:var(--sg-muted)}
.signal-theme :is(.signal-hero .signal-kicker,.signal-thesis .signal-kicker,.signal-record-copy .signal-kicker,.signal-audience-intro .signal-kicker,.signal-record-key,.signal-stage-detail strong,.signal-audience .signal-card-meta){color:var(--sg-accent)}.signal-theme :is(.signal-kicker>span,.signal-status i){background:var(--sg-accent)}.signal-theme .signal-stage{color:var(--sg-ink);background:linear-gradient(90deg,transparent,var(--sg-hero),transparent)}.signal-theme .signal-stage small{color:var(--sg-muted)}.signal-theme .signal-stage[aria-pressed=true],.signal-theme .signal-stage[aria-pressed=true] small{color:var(--sg-accent)}.signal-theme .signal-core{color:#fff}.signal-theme .signal-stage-detail,.signal-theme .signal-figure-head{border-color:var(--sg-line)}.signal-theme .signal-cosmos[data-stage="0"] [data-orbit="0"],.signal-theme .signal-cosmos[data-stage="1"] [data-orbit="1"],.signal-theme .signal-cosmos[data-stage="2"] [data-orbit="2"]{stroke:var(--sg-accent)}
.signal-theme .signal-lifecycle-line{background:var(--sg-alt);color:var(--sg-muted);border-color:var(--sg-line)}.signal-theme .signal-lifecycle-line i,.signal-theme .signal-link span{color:var(--sg-accent)}.signal-theme .signal-thesis{border-color:var(--sg-line)}.signal-theme .signal-card{background:var(--sg-panel);color:var(--sg-ink);border-color:var(--sg-line)}.signal-theme .signal-card-glyph{stroke:var(--sg-accent)}.signal-theme .signal-divider,.signal-theme .signal-audience .signal-divider{background:var(--sg-line)}.signal-theme .signal-card a{color:var(--sg-accent)}.signal-theme .signal-record{background:var(--sg-alt)}.signal-theme .signal-ledger{background:var(--sg-panel);border-color:var(--sg-line);box-shadow:8px 8px 0 var(--sg-line)}.signal-theme .signal-record-tabs,.signal-theme .signal-ledger figcaption{border-color:var(--sg-line)}.signal-theme .signal-record-tabs button[aria-pressed=true]{color:var(--sg-accent);background:var(--sg-alt);border-color:var(--sg-accent)}.signal-theme .signal-button{background:var(--sg-accent);color:var(--sg-on)}.signal-theme .signal-close{background:var(--sg-alt);color:var(--sg-ink);border-color:var(--sg-line)}.signal-theme .signal-close>.signal-kicker{color:var(--sg-accent)}.signal-theme .signal-close>p:not(.signal-kicker):not(.signal-status){color:var(--sg-muted)}.signal-theme .site-footer{background:var(--sg-bg);color:var(--sg-ink)}.signal-theme .footer-brand img{filter:var(--brand-filter)}.signal-theme :is(.footer-intro p,.footer-links a,.footer-boundary){color:var(--sg-muted)}.signal-theme .footer-links h2,.signal-theme .footer-boundary{border-color:var(--sg-line)}
/* Atlas: preserve cobalt artwork and give text surfaces an ink-mode palette. */
html[data-theme=dark][data-direction=atlas]{--at-paper:#0d1421;--at-ink:#edf1f8;--at-muted:#b8c3d4;--at-line:#3c4b60;--at-blue:#9cb4ff;--nav-bg:#0d1421;--nav-ink:#edf1f8;--nav-line:#3c4b60;--accent:#9cb4ff;--accent-ink:#0c1c3b;--brand-filter:brightness(0) invert(1)}
html[data-theme=dark] .atlas .at-system,html[data-theme=dark] .atlas .at-record{background:#131d2c}html[data-theme=dark] .atlas .at-record-label{background:#131d2c}html[data-theme=dark] .atlas .at-record-centre{color:#181c23}html[data-theme=dark] .atlas .at-card{border-color:var(--at-line)}html[data-theme=dark] .atlas .at-explore{background:#173da9}html[data-theme=dark] .atlas .at-button--solid{background:#9cb4ff;color:#0c1c3b!important}html[data-theme=dark] .atlas .at-button--light{color:#173da9!important}html[data-theme=dark] .atlas .footer-brand img{filter:brightness(0) invert(1)}
/* Connected: glacier paper surfaces with deep teal interface colours. */
html[data-theme=light] body.option-connected{--cc-ink:#142831;--cc-muted:#4b626d;--cc-faint:#4b6570;--cc-line:#b7cbd0;--cc-mint:#146c58;--cc-blue:#245d70;--nav-bg:#f1f7f6;--nav-ink:#142831;--nav-line:#b7cbd0;--accent:#146c58;--accent-ink:#fff;--brand-filter:brightness(0);background:#f1f7f6;color:#142831}
html[data-theme=light] .option-connected .site-header{background:#f1f7f6;color:#142831}html[data-theme=light] .option-connected .site-footer{background:#e5efed;color:#142831}html[data-theme=light] .option-connected .footer-brand img{filter:brightness(0)}html[data-theme=light] .option-connected :is(.footer-intro p,.footer-links a,.footer-boundary){color:#4b626d}html[data-theme=light] .option-connected :is(.footer-links h2,.footer-boundary){border-color:#b7cbd0}
html[data-theme=light] .connected :is(.cc-intro h1,.cc-card [data-card-heading],.cc-field-label){color:#142831}html[data-theme=light] .connected :is(.cc-hero-lead,.cc-card-kicker,.cc-card [data-card-body],.cc-flow-detail p,.cc-caption,.cc-inspector-top,.cc-inspector-tag,.cc-field-description,.cc-record-intro .cc-record-hint){color:#4b626d!important}html[data-theme=light] .connected .cc-text-link,html[data-theme=light] .connected .cc-card-link{color:#146c58!important}html[data-theme=light] .connected .cc-button--mint{color:#fff!important}html[data-theme=light] .connected .cc-button--mint:hover{background:#0c5546}html[data-theme=light] .connected .cc-card{background:#fff}html[data-theme=light] .connected .cc-card--audience{background:transparent}html[data-theme=light] .connected .cc-record{background:#e4efed;border-color:#b7cbd0}html[data-theme=light] .connected .cc-inspector{background:#fff;box-shadow:14px 14px 0 -1px #e4efed,14px 14px 0 0 #b7cbd0}html[data-theme=light] .connected .cc-record-tabs button{color:#4b626d}html[data-theme=light] .connected .cc-record-tabs button[aria-selected=true]{color:#146c58}html[data-theme=light] .connected .cc-record-source{color:#245d70;border-color:#7598a3}html[data-theme=light] .connected .cc-record-target{background:#d7eae3;color:#146c58;border-color:#7598a3}html[data-theme=light] .connected .cc-flow-node{color:#4b626d}html[data-theme=light] .connected .cc-flow-node.is-active{color:#146c58}html[data-theme=light] .connected .cc-flow-node::before{background:#f1f7f6}html[data-theme=light] .connected .cc-flow-lines{background:#0b1422;border-radius:2px}html[data-theme=light] .connected .cc-flow-node::after{background:#146c58}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
