/* Sunya research edition. Brand references are recorded in research/editorial/sunya-formatting.md. */
@font-face{font-family:'Integral CF';src:url('assets/fonts/IntegralCF-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Neue Montreal';src:url('assets/fonts/NeueMontreal-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Neue Montreal';src:url('assets/fonts/NeueMontreal-Medium.woff2') format('woff2');font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:'Neue Montreal';src:url('assets/fonts/NeueMontreal-Bold.woff2') format('woff2');font-weight:700 900;font-style:normal;font-display:swap}
:root{
 --publication-sans:'Neue Montreal','Helvetica Neue',Helvetica,Arial,sans-serif;
 --publication-serif:var(--publication-sans);
 --bg:#fafbfc;--surface:#fff;--surface-2:#f0f3f7;--surface-3:#eaf0fa;--surface-warm:#f5f5f1;
 --text:#111a2b;--text-muted:#536074;--border:#d9dfe8;--border-strong:#8c98a9;--rule:#111a2b;
 --accent:#255eeb;--accent-ink:#2558d5;--accent-soft:#eaf0ff;--focus:#255eeb;
 --fill-accent:#255eeb;--fill-accent-soft:#c4d4ff;--fill-info:#476796;
 --chart-strong:#255eeb;--chart-soft:#c4d4ff;--chart-grid:#d9dfe8;--chart-axis:#8c98a9;
 --inverse-bg:#111a2b;--on-inverse:#fff;--on-inverse-muted:#c8d1df;
 --ink:var(--text);--muted:var(--text-muted);--paper:var(--bg);--light:var(--surface-2);--line:var(--border);
 --blue:var(--accent);--atlas-ink:var(--text);--atlas-copper:var(--accent);--atlas-soft:var(--surface-2);
 --sunya-mono:'Courier New',Courier,monospace;
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
 --bg:#101622;--surface:#151e2e;--surface-2:#1e293b;--surface-3:#202e47;--surface-warm:#282820;
 --text:#f3f5fa;--text-muted:#b5c0d1;--border:#344157;--border-strong:#7b8da8;--rule:#c6d0e0;
 --accent:#a3bdff;--accent-ink:#b1c7ff;--accent-soft:#24365c;--focus:#a3bdff;
 --fill-accent:#4d75dc;--fill-accent-soft:#354e81;--chart-strong:#8eafff;--chart-soft:#354e81;--chart-grid:#344157;--chart-axis:#7b8da8;
 --inverse-bg:#e6edff;--on-inverse:#111a2b;--on-inverse-muted:#3d506d;
}}
:root[data-theme="dark"]{
 --bg:#101622;--surface:#151e2e;--surface-2:#1e293b;--surface-3:#202e47;--surface-warm:#282820;
 --text:#f3f5fa;--text-muted:#b5c0d1;--border:#344157;--border-strong:#7b8da8;--rule:#c6d0e0;
 --accent:#a3bdff;--accent-ink:#b1c7ff;--accent-soft:#24365c;--focus:#a3bdff;
 --fill-accent:#4d75dc;--fill-accent-soft:#354e81;--chart-strong:#8eafff;--chart-soft:#354e81;--chart-grid:#344157;--chart-axis:#7b8da8;
 --inverse-bg:#e6edff;--on-inverse:#111a2b;--on-inverse-muted:#3d506d;
}
body,button,input,select,textarea{font-family:var(--publication-sans)}
body{background:var(--bg);color:var(--text)}
::selection{background:var(--accent-soft);color:var(--text)}
.publication-masthead{border-bottom:1px solid var(--text);padding:25px 0 22px}
.publication-brand{display:flex;align-items:center;gap:23px;max-width:none;white-space:normal;text-decoration:none!important;color:var(--text)!important}
.publication-brand .sunya-wordmark,.brand .sunya-wordmark{font-family:'Integral CF',Arial,sans-serif;font-size:25px;font-weight:500;line-height:1;letter-spacing:0;padding:0;color:var(--text)}
.publication-brand .sunya-dot,.brand .sunya-dot{color:var(--accent);padding:0}
.publication-brand .sunya-report-name{border-left:1px solid var(--border-strong);padding:2px 0 2px 23px;color:var(--text-muted);font-size:14px;font-weight:400;line-height:1.35;letter-spacing:0;max-width:190px}
.brand .sunya-wordmark{font-size:21px}
.brand .sunya-rail-name{font-size:11px;line-height:1.5;letter-spacing:0;color:var(--text-muted)}
.publication-tools{gap:23px}
.publication-nav button[aria-current="page"],.publication-nav button.active{color:var(--accent)!important;border-bottom-color:var(--accent)!important}
.publication-nav button:hover,.publication-nav summary:hover{color:var(--accent)!important}
.hb-hero{padding-block:38px 35px;border-bottom:1px solid var(--border-strong)}
.hb-hero h1{font-size:clamp(40px,4.5vw,62px);line-height:1.04;letter-spacing:-.045em;font-weight:500;max-width:940px;margin:17px 0 22px}
.hb-eyebrow,.hb-start-label,.ri-kicker,.desk-edition,.report-overline{font-family:var(--sunya-mono);font-size:11px;letter-spacing:.045em;color:var(--text-muted)}
.hb-hero .hb-eyebrow{color:var(--accent-ink)}
.hb-hero>div>p{font-size:18px;line-height:1.55;max-width:700px}
.hb-scope{border-left:1px solid var(--border);padding-left:22px;padding-bottom:2px}
.hb-section-head h2{font-weight:500;letter-spacing:-.035em}
.hb-number{font-family:var(--sunya-mono);color:var(--accent-ink)}
.hb-primary{background:var(--accent-ink);color:var(--surface)!important;font-weight:500}
.hb-primary:hover{background:var(--text);color:var(--surface)!important}
.hb-source-link,.hb-text-links a{color:var(--accent-ink)!important}
.hb-map{border-top-color:var(--text)}
.hb-page .citation-mark{color:var(--accent-ink);border-bottom-color:var(--accent-ink)}
.citation-preview{font-family:var(--publication-sans)}
footer{border-top-color:var(--text)}
.sunya-footer{display:block;font:500 20px/1 'Integral CF',Arial,sans-serif;letter-spacing:0;color:var(--text);margin-bottom:13px}
.sunya-footer span{color:var(--accent)}
@media(max-width:750px){
 .publication-brand{gap:13px}.publication-brand .sunya-wordmark{font-size:21px}
 .publication-brand .sunya-report-name{padding-left:13px;font-size:12px;max-width:147px}
 .hb-hero{padding-block:26px}.hb-hero h1{font-size:clamp(36px,7.4vw,49px);line-height:1.07}
 .hb-hero>div>p{font-size:16px}.hb-scope{border-left:0;padding-left:0;padding-bottom:0}
 .hb-start-grid h3{font-size:23px}.hb-findings h3{font-size:24px}
}
@media(max-width:540px){
 .publication-masthead{gap:10px;padding-block:21px 18px}
 .publication-brand{gap:11px}.publication-brand .sunya-wordmark{font-size:21px;letter-spacing:0}
 .publication-brand .sunya-report-name{padding-left:11px;font-size:11px;max-width:113px}
 .publication-tools{gap:9px!important}.publication-tools .theme-toggle span{display:none}
 .publication-tools .global-find{font-size:12px}
}
@media(max-width:350px){
 .publication-brand .sunya-wordmark{font-size:21px}
 .publication-brand .sunya-report-name{max-width:93px;font-size:10px}
 .publication-brand{gap:9px}.publication-brand .sunya-report-name{padding-left:9px}
 .publication-tools{gap:6px!important}
}
@media print{
 :root{--text:#111a2b;--text-muted:#536074;--bg:#fff;--surface:#fff;--accent:#255eeb;--accent-ink:#2558d5}
 .publication-tools,.simple-nav{display:none!important}
 .publication-masthead{display:flex!important}
 .publication-brand .sunya-wordmark{font-size:25px}
 .publication-brand .sunya-report-name{font-size:11px}
}

.sunya-dot{display:none}
@media(max-width:540px){.citation-preview-close,.close,.global-find,.theme-toggle{min-height:44px;min-width:44px}.publication-nav button,.publication-nav summary{min-height:44px}}

.directory-compare{display:inline-flex;min-height:44px;align-items:center;color:var(--accent-ink);text-decoration:underline;text-underline-offset:4px;font-size:14px}

.runtime-status{position:fixed;z-index:10000;bottom:16px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:14px 18px;background:var(--inverse-bg);color:var(--on-inverse);border-radius:3px;box-shadow:0 4px 24px #0002;font-size:14px;line-height:1.5}.runtime-status[hidden]{display:none}.runtime-status a,.runtime-status button{color:inherit;text-decoration:underline;display:inline-block;margin:4px 8px 0 0;min-height:44px}.runtime-status button{background:transparent;border:0;cursor:pointer}
.citation-preview [data-citation-close]{min-height:44px;min-width:60px}

.desk-modes:has(.desk-more){display:flex;justify-content:space-between;align-items:center;overflow:visible;position:relative;gap:16px}.desk-more{position:relative;font-size:14px}.desk-more>summary{cursor:pointer;padding:14px 0;min-height:44px;box-sizing:border-box}.desk-more>div{position:absolute;right:0;top:100%;z-index:12;width:260px;max-width:calc(100vw - 40px);padding:12px 18px;background:var(--surface);border:1px solid var(--border);box-shadow:0 5px 20px #0001;display:grid}.desk-more>div button{white-space:normal;text-align:left;font-size:14px;min-height:44px;border:0}.desk-modes:has(.desk-more)>button{white-space:normal;text-align:left}
