:root{color-scheme:light;--page:#f9f9f7;--surface:#fcfcfb;--text:#151515;--secondary:#55544f;--line:#deded7;--accent:#1962b4;--tint:#edf3fa}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--text:#f5f5f2;--secondary:#c3c2b7;--line:#383835;--accent:#80b6f6;--tint:#182432}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--page);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI","Hiragino Sans","Yu Gothic UI",sans-serif;line-height:1.9}
a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.skip{position:absolute;top:-100px;left:16px;background:var(--surface);padding:8px 16px}.skip:focus{top:10px}.top{height:4px;background:var(--accent)}.wrap{max-width:860px;margin:auto;padding:24px 20px 48px}
.site-header{border-bottom:1px solid var(--line);padding-bottom:18px}.brand{color:var(--text);font-weight:750;text-decoration:none;font-size:19px}.site-nav{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px;font-size:14px}.site-nav a{color:var(--secondary);text-decoration:none}.site-nav a[aria-current=page]{color:var(--accent);font-weight:700;text-decoration:underline}
.article-head{padding:38px 0 20px}.eyebrow{color:var(--accent);font-weight:700;font-size:12px;letter-spacing:.12em;margin:0 0 10px}h1{font-size:clamp(26px,4.5vw,36px);line-height:1.5;letter-spacing:-.025em;margin:0 0 16px}h2{font-size:22px;line-height:1.6;margin:0 0 14px}h3{font-size:17px;margin:24px 0 8px}p{margin:12px 0}.lead{font-size:17px;color:var(--secondary)}.meta,.note,figcaption{font-size:13px;color:var(--secondary)}.meta{margin-top:20px}.article-section{padding:28px 0;border-top:1px solid var(--line)}.article-section>p,.article-section>ul,.article-section>ol{max-width:72ch}li{margin:8px 0}ul,ol{padding-left:1.4em}
.takeaway{background:var(--tint);border-left:3px solid var(--accent);padding:16px 20px;margin:20px 0}.takeaway p:first-child{margin-top:0}.takeaway p:last-child{margin-bottom:0}.toc{padding:20px 24px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:8px 0 28px}.toc h2{font-size:15px;margin:0}.toc ol{margin:8px 0 0;font-size:14px}.formula{padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin:20px 0}.table-scroll:focus-visible{outline:2px solid var(--accent)}table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.7}caption{text-align:left;padding:12px 16px;font-weight:650}th,td{text-align:left;vertical-align:top;padding:12px 16px;border-top:1px solid var(--line)}thead th{background:var(--surface);font-size:13px}th{font-weight:650}.numbers th,.numbers td{white-space:nowrap;font-variant-numeric:tabular-nums}.numbers td{text-align:right}.numbers td:first-child{text-align:left}.boundary td{border-top:2px solid var(--accent)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.metric{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.metric strong{display:block;font-size:28px;line-height:1.5}.metric span{font-size:13px;color:var(--secondary)}figure{margin:24px 0}figure svg{width:100%;height:auto;display:block;background:var(--surface);border:1px solid var(--line);border-radius:8px}figcaption{margin-top:10px}.related{display:grid;grid-template-columns:1fr 1fr;gap:12px}.related a{display:block;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-decoration:none}.related span{display:block;color:var(--secondary);font-size:13px;margin-top:6px}.site-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;font-size:12px;color:var(--secondary)}.footer-links{display:flex;flex-wrap:wrap;gap:8px 18px}
@media(max-width:520px){.wrap{padding:18px 16px 32px}.article-head{padding-top:28px}.site-nav{gap:8px 16px}.metrics{gap:6px}.metric{padding:12px 8px}.metric strong{font-size:23px}.related{grid-template-columns:1fr}h2{font-size:20px}th,td{padding:10px 12px}.takeaway{padding:14px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.chart-scroll{overflow-x:auto}.chart-scroll svg{min-width:780px}.chart-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
