/* Shared neutral material for public content and authentication. Scoped so the
   existing calculators, workspace, reports and isolated SLD app keep their UI. */
body:is(.page-auth,.page-public,.page-tool) {
 --bg:#e9e9e7;--bg-deep:#e2e2df;--bg-card:#f4f4f1;--bg-deepest:#d9d9d6;
 --ink:#262827;--ink-soft:#505451;--ink-mute:#5b605c;--ink-inverse:#fafaf8;
 --accent:#505451;--accent-bright:#505451;--clay-text:#505451;--clay-small:#505451;
 --rule:#26282718;--rule-strong:#26282730;--green:#38613b;--green-deep:#38613b;--fail:#a52c27;
 --glass:#ffffff73;--glass-edge:#ffffffd9;--glass-shadow:#24282415;
 --panel-glass:linear-gradient(145deg,#ffffffa3,#ffffff38 55%,#ffffff61);
 --panel-shadow:inset 0 1px 0 #fffffff2,inset 0 -1px 0 #ffffff66,0 10px 30px #2428240c;
 --sans:'Poppins','Poppins-fb',Arial,sans-serif;--serif:var(--sans);
 --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
 --amp-clay-text:var(--ink-soft);--copper:var(--ink);--copper-deep:var(--ink-soft);
 --hairline:var(--rule-strong);--ink-dim:var(--ink-soft);--ink-fade:var(--ink-mute);
 --input:var(--bg-card);--soft:var(--bg-deep);--btn-hover:#424743;
 margin:0;background:var(--bg);color:var(--ink);font:400 14px/1.75 var(--sans);overflow-wrap:anywhere;transition:none;
}
html[data-theme="night"] body:is(.page-auth,.page-public,.page-tool) {
 --bg:#202220;--bg-deep:#272a27;--bg-card:#303330;--bg-deepest:#393d39;
 --ink:#f1f3ee;--ink-soft:#c4cac2;--ink-mute:#afb7ac;--ink-inverse:#252925;
 --accent:#c4cac2;--accent-bright:#c4cac2;--clay-text:#c4cac2;--clay-small:#c4cac2;
 --rule:#ffffff16;--rule-strong:#ffffff30;--green:#a8cfab;--green-deep:#a8cfab;--fail:#ffaaa4;
 --glass:#41483e85;--glass-edge:#ffffff30;--glass-shadow:#00000036;
 --panel-glass:linear-gradient(145deg,#ffffff13,#ffffff05 55%,#ffffff0b);
 --panel-shadow:inset 0 1px 0 #ffffff29,inset 0 -1px 0 #ffffff09,0 12px 32px #0000001c;
 --btn-hover:#d2d7ce;
}
/* Change ink and its ground together: inherited background fades otherwise
   create a transient low-contrast interval when a person switches themes. */
html:is(.page-public-root,.page-auth-root,.page-tool-root){background:#e9e9e7;scroll-padding-top:110px;transition:none}
html[data-theme="night"]:is(.page-public-root,.page-auth-root,.page-tool-root){background:#202220}
:is(.page-auth,.page-public,.page-tool) *, :is(.page-auth,.page-public,.page-tool) *::before,
:is(.page-auth,.page-public,.page-tool) *::after{box-sizing:border-box}
:is(.page-auth,.page-public,.page-tool)::before{display:none}
:is(.page-auth,.page-public,.page-tool) :focus-visible{outline:2px solid var(--ink);outline-offset:4px}
:is(.page-auth,.page-public,.page-tool) :is(.topbar,.mobile-drawer,.site-footer){
 --chrome-bg:var(--bg-card);--chrome-deep:var(--bg-deep);--chrome-ink:var(--ink);
 --chrome-soft:var(--ink-soft);--chrome-muted:var(--ink-mute);--chrome-accent:var(--ink-soft);
 --chrome-rule:var(--rule);--chrome-rule-strong:var(--rule-strong);
}
:is(.page-auth,.page-public) .topbar{width:min(1100px,calc(100% - 32px));background:var(--glass);border-color:var(--glass-edge);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
:is(.page-auth,.page-public) .site-footer{background:transparent;border-top-color:var(--rule-strong)}
.page-public .frame{max-width:1120px;padding:0 40px 64px;margin-inline:auto}
.page-public.public-article .frame{max-width:1000px}
.page-public :is(.about-head,.doc-head){padding-top:64px}
.page-public h1{font:500 clamp(36px,5vw,64px)/1.12 var(--sans);letter-spacing:-.055em;text-transform:none;max-width:20ch}
.page-public h2,.page-public .section-head h2{font:500 clamp(24px,3vw,34px)/1.25 var(--sans);letter-spacing:-.035em;text-transform:none}
.page-public :is(h1,h2,h3) :is(.it,.strong){font:inherit;text-transform:none;letter-spacing:inherit;color:var(--ink-soft)}
.page-public .lede{font:400 16px/1.85 var(--sans);max-width:64ch}
.page-public .lede .a{font:inherit;text-transform:none;letter-spacing:0;color:var(--ink)}
.page-public .head-bottom{gap:32px;padding-top:28px}
.page-public :is(.chapter,.card-no,.col-label){font:400 10px/1.7 var(--mono);letter-spacing:.06em;color:var(--ink-mute)}
.page-public .chapter{padding-bottom:20px}
.page-public .chapter :is(.roman,.it){font:inherit;color:inherit}
.page-public .rule-double{display:none}
.page-public .section{padding-top:56px}
.page-public .section-head{padding-bottom:26px}
.page-public :is(.cards,.house-grid){border:0;background:transparent;gap:16px}
.page-public :is(.card,.house-cell,.lost-card){background:var(--panel-glass);border:1px solid var(--glass-edge);border-radius:24px;box-shadow:var(--panel-shadow);padding:28px}
.page-public .card-name{font:500 19px/1.4 var(--sans);text-transform:none;letter-spacing:-.02em}
.page-public .legal-section{padding-top:30px}
.page-public .legal-section p{max-width:76ch}
.page-public :is(.legal-section,.example-section,.entry) p{line-height:1.85}
.page-public :is(.cta-btn,.lost-actions a){font:500 12px/1.5 var(--sans);text-transform:none;letter-spacing:0;min-height:44px;border-radius:999px}
.page-public .mail-line a{font:400 clamp(20px,3vw,30px)/1.5 var(--sans);letter-spacing:-.02em;text-transform:none}
.page-public .entry h2{font:500 22px/1.4 var(--sans)}
.page-public .entry .when{color:var(--ink-soft)}
.page-public .tail a{text-decoration:underline;text-underline-offset:3px}
.page-public :is(table,pre){max-width:100%}
.page-public .public-table-scroll{overflow-x:auto;max-width:100%;margin-block:20px}
.page-public .public-table-scroll table{width:100%;margin:0}
.page-public .public-table-scroll:focus-visible{outline-offset:-2px}
.page-public .lost{max-width:1120px;margin-inline:auto;padding:64px 40px;gap:48px}
.page-public .lost h1{font-size:clamp(40px,5vw,64px)}
.page-public .lost-card h2{font-size:28px}
.page-public .lost :is(.lost-lede,.lost-asides p){font:400 14px/1.8 var(--sans)}
.page-public .lost .it{font:inherit;color:var(--ink-soft)}
.page-public .lost-path{overflow-wrap:anywhere;font-family:var(--mono)}
.page-public .skip-link{font:500 12px/1.5 var(--sans);text-transform:none;letter-spacing:0}
@media(max-width:760px){
 .page-public .frame{padding-inline:24px}.page-public :is(.about-head,.doc-head){padding-top:40px}
 .page-public .head-bottom{grid-template-columns:1fr;gap:24px}.page-public .lost{padding:40px 24px;grid-template-columns:1fr;gap:28px}
 .page-public .cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:460px){.page-public .frame,.page-public .lost{padding-inline:16px}.page-public :is(.cards--2,.cards--4){grid-template-columns:1fr}.page-public :is(.card,.house-cell,.lost-card){padding:22px}.page-public .ledger-row{grid-template-columns:1fr}}
@media(prefers-reduced-transparency:reduce){:is(.page-auth,.page-public) .topbar,.page-public :is(.card,.house-cell,.lost-card){background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){:is(.page-auth,.page-public,.page-tool) *{scroll-behavior:auto!important;transition:none!important}}
@media print{
 body.page-public{background:#fff;color:#000;font-size:10pt}
 .page-public .frame{max-width:none;padding:0}.page-public :is(.topbar,.site-footer,.skip-link,.mobile-drawer){display:none!important}
 .page-public :is(.about-head,.doc-head){padding-top:0}.page-public :is(h1,h2,h3,p,a,.lede,.chapter){color:#000}
 .page-public :is(.card,.house-cell){box-shadow:none;break-inside:avoid}.page-public .public-table-scroll{overflow:visible}
}

/* Article callouts must inherit the current screen type, not _shared's old serif. */
@media screen{
 .page-public .callout{font-family:var(--sans);border-radius:12px;background:var(--glass)}
 .page-public .callout.warn{border-left-color:var(--fail);background:color-mix(in srgb,var(--fail) 7%,var(--bg-card))}
}
