@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/DMSans-latin.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/InstrumentSerif-latin.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/InstrumentSerif-400-italic-latin.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/SpaceMono-latin.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/SpaceMono-700-latin.woff2)format("woff2")}:root{--bg:#fafbfe;--bg-dark:#0a0e1a;--surface:#fff;--surface-dark:#141a2e;--ink:#0d1b2a;--ink-dark:#e8edf5;--muted:#6b7f97;--muted-dark:#7b8da0;--line:#0d1b2a14;--line-dark:#e8edf524;--navy:#1e3a5f;--navy-dark:#93c5fd;--blue:#4f9cf7;--blue-dark:#60a5fa;--mint:#16a34a;--mint-dark:#6ee7b7;--warn:#d97706;--warn-dark:#fbbf24;--bad:#dc2626;--bad-dark:#fca5a5;--grad:linear-gradient(135deg, #1e3a5f 0%, #4f9cf7 100%);--grad-soft:linear-gradient(135deg, #1e3a5f14, #4f9cf714);--font-head:"Instrument Serif", ui-serif, Georgia, serif;--font-body:"DM Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"Space Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--radius:16px;--radius-sm:10px;--shadow:0 16px 40px -20px #0d1b2a38;--shadow-lg:0 32px 64px -28px #0d1b2a5c;--container:1140px;--focus:3px solid #4f9cf7}*,:before,:after{box-sizing:border-box;min-width:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:80px}html[data-theme=dark]{color-scheme:dark}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.68;transition:background .3s,color .3s;overflow-x:hidden}html[data-theme=dark] body{color:var(--ink-dark);background:var(--bg-dark)}h1,h2,h3,h4,.disp{font-family:var(--font-head);letter-spacing:-.01em;text-wrap:balance;margin:0 0 .5em;line-height:1.14}h1{font-size:clamp(1.9rem,4.5vw,3.2rem);font-weight:400}h2{margin-top:2.5em;font-size:clamp(1.4rem,3vw,2rem);font-weight:400}h3{margin-top:1.6em;font-size:1.15rem;font-weight:400}p{margin:0 0 1em}a{color:var(--blue);text-underline-offset:.15em;text-decoration-thickness:.08em}html[data-theme=dark] a{color:var(--blue-dark)}a:hover{text-decoration-thickness:.14em}strong{font-weight:700}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}code,kbd{font-family:var(--font-mono);background:color-mix(in srgb, var(--blue) 10%, transparent);border-radius:6px;padding:.1em .35em;font-size:.9em}img{max-width:100%;height:auto}.container{max-width:var(--container);margin:0 auto;padding:0 clamp(14px,4vw,26px)}.skip-link{z-index:1000;background:var(--ink);color:var(--bg);border-radius:0 0 8px;padding:12px 20px;font-weight:700;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}html[data-theme=dark] .skip-link{background:var(--ink-dark);color:var(--bg-dark)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:var(--focus);outline-offset:3px;border-radius:5px}button{font:inherit;color:inherit}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}html[data-theme=dark] .card{background:var(--surface-dark);border-color:var(--line-dark)}.lead{color:var(--muted);font-size:1.1rem}html[data-theme=dark] .lead{color:var(--muted-dark)}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 14px}html[data-theme=dark] th,html[data-theme=dark] td{border-bottom-color:var(--line-dark)}th{font-weight:600;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11.5px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.no-print{display:none!important}body{color:#000;background:#fff}}.amb{z-index:-2;pointer-events:none;background:radial-gradient(50% 40% at 10% 6%,#1e3a5f21,#0000 60%),radial-gradient(44% 36% at 94% 8%,#4f9cf71c,#0000 60%),radial-gradient(48% 38% at 78% 68%,#34d39917,#0000 62%);position:fixed;inset:0}header.site{z-index:90;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0}.hb{align-items:center;gap:14px;height:62px;display:flex}.brand{color:var(--ink);font-family:var(--font-body);white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.brand .mk{background:var(--grad);width:28px;height:28px;box-shadow:0 4px 12px -4px var(--navy);border-radius:9px;flex:none;place-items:center;display:grid}.brand .mk svg{width:15px;height:15px}nav.m{gap:20px;margin-left:auto;font-size:14px;font-weight:500;display:flex}nav.m a{color:var(--muted);text-decoration:none}nav.m a:hover{color:var(--navy)}html[data-theme=dark] nav.m a:hover{color:var(--navy-dark)}.tgl{border:1px solid var(--line);background:var(--surface);width:37px;height:37px;color:var(--ink);cursor:pointer;border-radius:11px;flex:none;place-items:center;transition:all .2s;display:grid}.tgl:hover{border-color:var(--blue);color:var(--blue)}.tgl svg{width:16px;height:16px}html[data-theme=light] .i-moon,html[data-theme=dark] .i-sun{display:none}@media (width<=860px){nav.m{display:none}.tgl{margin-left:auto}}.hero{text-align:center;padding:clamp(28px,5.5vw,52px) 0 6px}.tagpill{color:var(--navy);background:color-mix(in srgb, var(--blue) 10%, transparent);border:1px solid color-mix(in srgb, var(--blue) 22%, transparent);border-radius:99px;align-items:center;gap:8px;padding:6px 14px;font-size:12.5px;font-weight:600;display:inline-flex}html[data-theme=dark] .tagpill{color:var(--navy-dark)}.tagpill .dot{background:var(--blue);border-radius:50%;width:7px;height:7px;animation:2.4s infinite bp}@keyframes bp{0%,to{opacity:1}50%{opacity:.35}}.hero h1{max-width:18ch;margin:.4em auto .28em;font-size:clamp(2.05rem,6.3vw,3.7rem);font-weight:400}.hero h1 em{color:var(--navy);font-style:italic}html[data-theme=dark] .hero h1 em{color:var(--navy-dark)}.lede{max-width:62ch;color:var(--muted);margin:0 auto;font-size:clamp(1rem,2.2vw,1.14rem)}html[data-theme=dark] .lede{color:var(--muted-dark)}.meta{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-top:16px;font-size:12.5px;display:flex}.meta b{color:var(--ink);font-weight:600}.app{grid-template-columns:1fr 1fr;align-items:start;gap:18px;margin-top:24px;display:grid}@media (width<=960px){.app{grid-template-columns:1fr}}.pad{padding:clamp(17px,2.5vw,25px)}.ch{align-items:center;gap:10px;margin-bottom:15px;display:flex}.ch h2{font-family:var(--font-body);margin:0;font-size:1rem;font-weight:600}.ch .ic{background:color-mix(in srgb, var(--blue) 12%, transparent);width:28px;height:28px;color:var(--navy);border-radius:9px;flex:none;place-items:center;display:grid}.ch .ic svg{width:15px;height:15px}.row{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.row.one{grid-template-columns:1fr}@media (width<=520px){.row{grid-template-columns:1fr}}.f{flex-direction:column;gap:5px;display:flex}.f label{color:var(--ink);align-items:center;gap:6px;font-size:12.8px;font-weight:600;display:flex}.tip{border:1px solid var(--line);width:15px;height:15px;color:var(--muted);cursor:help;border-radius:50%;flex:none;place-items:center;font-size:9.5px;font-weight:700;display:inline-grid;position:relative}.tip:hover:after,.tip:focus:after{content:attr(data-tip);background:var(--ink);width:max-content;max-width:225px;color:var(--bg);z-index:40;text-align:left;box-shadow:var(--shadow);border-radius:9px;padding:8px 10px;font-size:11.5px;font-weight:500;line-height:1.45;position:absolute;bottom:132%;left:50%;transform:translate(-50%)}.ip{align-items:center;display:flex;position:relative}.ip .pre{color:var(--muted);pointer-events:none;font-size:14px;position:absolute;left:12px}.ip .suf{color:var(--muted);pointer-events:none;font-size:12.5px;position:absolute;right:13px}.c{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);appearance:none;border-radius:11px;padding:10px 12px;font-size:15px;font-weight:500;transition:all .18s}.c:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 24%, transparent);background:var(--surface);outline:none}.ip .pre~.c{padding-left:25px}.ip .suf~.c{padding-right:32px}select.c{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7f97' stroke-width='1.7' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.rail{position:sticky;top:74px}@media (width<=960px){.rail{position:static}}.res{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.hd{background:var(--grad);color:#fff;padding:clamp(17px,2.5vw,23px);position:relative;overflow:hidden}.hd:after{content:"";background:radial-gradient(70% 100% at 88% 0,#ffffff40,#0000 60%);position:absolute;inset:0}.hd .k{letter-spacing:.13em;text-transform:uppercase;opacity:.92;font-size:11px;font-weight:700;position:relative}.hd .v{font-family:var(--font-mono);letter-spacing:-.02em;margin:5px 0 1px;font-size:clamp(2.3rem,9vw,3.4rem);font-weight:400;line-height:1.05;position:relative}.hd .s{opacity:.95;font-size:13.5px;position:relative}.mini{gap:7px;margin-top:13px;display:flex;position:relative}.mini div{background:#ffffff2e;border:1px solid #ffffff42;border-radius:11px;flex:1;padding:8px 9px}.mini .l{text-transform:uppercase;letter-spacing:.06em;opacity:.92;font-size:10px}.mini .n{font-family:var(--font-mono);font-size:.96rem;font-weight:700}.waterfall{padding:16px clamp(14px,2.3vw,19px) 4px}.waterfall h3{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:11px;font-weight:700}.wfrow{align-items:center;gap:6px;margin-bottom:6px;display:flex}.wfrow .lbl{width:100px;color:var(--muted);text-align:right;flex:none;font-size:12.5px}.wfrow .bar{border-radius:6px;flex:1;align-items:center;height:24px;display:flex;position:relative;overflow:hidden}.wfrow .fill{border-radius:6px;height:100%;transition:width .7s cubic-bezier(.2,.7,.2,1)}.wfrow .val{font-family:var(--font-mono);color:var(--ink);font-size:11.5px;font-weight:700;position:absolute;right:8px}.wf-old .fill{background:#f871714d}.wf-new .fill{background:#34d39959}.saved{color:var(--mint);text-align:center;margin-top:8px;font-size:13.5px;font-weight:600}html[data-theme=dark] .saved{color:var(--mint-dark)}.lines{padding:6px clamp(14px,2.3vw,19px) 2px}.ln{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:8px 0;font-size:13.5px;display:flex}.ln .nm{color:var(--muted)}.ln .am{font-family:var(--font-mono);margin-left:auto;font-weight:700}.ln.good .am{color:var(--mint)}html[data-theme=dark] .ln.good .am{color:var(--mint-dark)}.ln.hi .am{color:var(--navy);font-size:14.5px}.ln:last-child{border-bottom:0}.ins{gap:8px;padding:12px clamp(14px,2.3vw,19px) 0;display:grid}.icard{border:1px solid var(--line);background:var(--bg);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.icard .em{flex:none;font-size:16px;line-height:1.3}.icard .t{font-size:12.5px;font-weight:700;font-family:var(--font-body);margin-bottom:2px}.icard .d{color:var(--muted);font-size:12.3px;line-height:1.5}.icard .d b{color:var(--ink);font-weight:700}.icard.good{border-color:color-mix(in srgb, var(--mint) 36%, transparent);background:color-mix(in srgb, var(--mint) 7%, transparent)}.icard.warn{border-color:color-mix(in srgb, var(--warn) 40%, transparent);background:color-mix(in srgb, var(--warn) 7%, transparent)}.icard.info{border-color:color-mix(in srgb, var(--blue) 30%, transparent);background:color-mix(in srgb, var(--blue) 6%, transparent)}.acts{flex-wrap:wrap;gap:7px;padding:15px clamp(14px,2.3vw,19px);display:flex}.btn{min-width:86px;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:11px;flex:auto;justify-content:center;align-items:center;gap:6px;padding:10px 11px;font-size:12.5px;font-weight:600;transition:all .18s;display:inline-flex}.btn:hover{border-color:var(--blue);color:var(--navy);transform:translateY(-1px)}.btn.pri{background:var(--grad);color:#fff;border-color:#0000}.btn.pri:hover{color:#fff;filter:brightness(1.08)}.btn svg{width:14px;height:14px}.fine{color:var(--muted);padding:0 clamp(14px,2.3vw,19px) 17px;font-size:11.3px;line-height:1.5}.quick-answer{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--navy);box-shadow:var(--shadow);margin:34px 0;padding:20px 22px}.quick-answer h2{font-family:var(--font-body);margin:0 0 8px;font-size:1.12rem;font-weight:600}.quick-answer p{margin:0}.toc{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin:34px 0 0;padding:18px 22px}.toc h2{font-family:var(--font-body);letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:11.5px;font-weight:700}.toc ol{columns:2;column-gap:24px;margin:0;padding-left:18px;font-size:14px}.toc li{break-inside:avoid;margin:4px 0}.toc a{color:var(--ink);text-decoration:none}.toc a:hover{color:var(--blue);text-decoration:underline}@media (width<=600px){.toc ol{columns:1}}article section{margin:44px 0}.kick{font-family:var(--font-body);letter-spacing:.13em;text-transform:uppercase;background:var(--grad);color:#0000;background-clip:text;margin:0 0 8px;font-size:11.5px;font-weight:700}article h2{max-width:24ch;margin:0 0 .55em;font-size:clamp(1.5rem,3.9vw,2.1rem);font-weight:400}article h3{font-family:var(--font-body);margin:1.6em 0 .35em;font-size:1.08rem;font-weight:600}article p{color:var(--ink);max-width:70ch;margin:0 0 1.02em}html[data-theme=dark] article p{color:var(--ink-dark)}article ul,article ol{max-width:70ch;padding-left:20px}article li{margin:7px 0}article strong{font-weight:700}.story{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin:22px 0;padding:20px 22px}.story .who{letter-spacing:.09em;text-transform:uppercase;color:var(--navy);margin-bottom:6px;font-size:11.5px;font-weight:700}.story p:last-child{margin-bottom:0}.callout{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--blue);margin:20px 0;padding:18px 20px}.callout.tip{border-left-color:var(--mint)}.callout.warn{border-left-color:var(--warn)}.callout h3{font-family:var(--font-body);margin:0 0 5px;font-size:1rem}.callout p:last-child{margin-bottom:0}.tw{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:20px 0;overflow-x:auto}td.n{font-family:var(--font-mono);text-align:right}tr:last-child td{border-bottom:0}.hl{color:var(--navy);font-weight:700}html[data-theme=dark] .hl{color:var(--navy-dark)}.faq details{border:1px solid var(--line);background:var(--surface);border-radius:13px;margin-bottom:8px;overflow:hidden}.faq summary{cursor:pointer;font-family:var(--font-body);align-items:center;gap:13px;padding:15px 17px;font-size:.97rem;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--navy);margin-left:auto;font-size:1.3rem;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq .a{max-width:70ch;padding:0 17px 16px}.faqgrp{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:24px 0 10px;font-size:12px;font-weight:700}.rel{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:11px;margin-top:18px;display:grid}.rel a{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:13px;padding:15px 17px;text-decoration:none;transition:all .2s;display:block}.rel a:hover{border-color:var(--blue);box-shadow:var(--shadow);transform:translateY(-2px)}.rel .t{font-family:var(--font-body);font-size:.92rem;font-weight:600}.rel .d{color:var(--muted);margin-top:2px;font-size:12.3px}footer.site{border-top:1px solid var(--line);color:var(--muted);margin:50px 0 0;padding:28px 0 40px;font-size:13.3px}footer.site h4{font-family:var(--font-body);color:var(--ink);margin:0 0 7px;font-size:12.5px}.fg{grid-template-columns:1.7fr 1fr 1fr;gap:24px;display:grid}@media (width<=760px){.fg{grid-template-columns:1fr}}footer.site ul{margin:0;padding:0;list-style:none}footer.site li{margin:4px 0}footer.site a{color:var(--muted);text-decoration:none}footer.site a:hover{color:var(--navy)}.disc{border-top:1px solid var(--line);color:var(--muted);max-width:88ch;margin-top:22px;padding-top:16px;font-size:12.3px}.sticky{z-index:80;padding:9px 14px calc(9px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--bg) 93%, transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line);display:none;position:fixed;bottom:0;left:0;right:0}.sticky .in{max-width:var(--container);align-items:center;gap:12px;margin:0 auto;display:flex}.sticky .l{color:var(--muted);font-size:11px}.sticky .a{font-family:var(--font-mono);color:var(--navy);font-size:1.1rem;font-weight:700}@media (width<=960px){.sticky.show{display:block}body{padding-bottom:66px}}.toast{opacity:0;pointer-events:none;z-index:300;background:var(--ink);color:var(--bg);border-radius:12px;padding:11px 18px;font-size:13px;font-weight:600;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,18px)}.toast.on{opacity:1;transform:translate(-50%)}.rise{opacity:0;animation:.72s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(15px)}.d1{animation-delay:50ms}.d2{animation-delay:.13s}.d3{animation-delay:.22s}@keyframes rise{to{opacity:1;transform:none}}@media print{.amb,header.site,.sticky,.acts,.ins,article,footer.site{display:none!important}body{color:#000;background:#fff}.res{box-shadow:none;border:1px solid #ccc}}.crumbs{margin-bottom:18px;font-size:12.5px}.crumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crumbs li{align-items:center;gap:6px;display:flex}.crumbs li+li:before{content:"/";color:var(--muted)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--navy)}.crumbs span[aria-current=page]{color:var(--ink);font-weight:600}
