
:root{color-scheme:light;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#14273c;background:#fcfdff}
*{box-sizing:border-box}body{margin:0;background:#fcfdff}a{color:#08718e}a:hover{text-decoration-thickness:2px}
header.site{background:#fff;border-bottom:1px solid #e5edf4;box-shadow:0 6px 16px #122b4310;position:sticky;top:0;z-index:12}
header.site .bar{max-width:1140px;margin:auto;padding:21px 23px;display:flex;align-items:center;gap:24px;justify-content:space-between}
.brand{font-size:23px;letter-spacing:-.05em;font-weight:850;color:#14233b;text-decoration:none}.brand span{color:#1480ec}.brand small{display:block;font-size:9px;letter-spacing:.2em;color:#71869b}
.nav{display:flex;gap:22px;font-size:14px;font-weight:650}.nav a{text-decoration:none;color:#2e4052}
article{max-width:1040px;margin:35px auto 70px;padding:0 22px}.bread{font-size:13px;color:#637286;margin-bottom:28px}
.deck{max-width:800px}.meta{font-size:12px;color:#247b99;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
h1{font-family:Georgia,serif;color:#111e38;font-weight:600;letter-spacing:-.03em;font-size:clamp(2.15rem,4.1vw,3.2rem);line-height:1.18;max-width:24ch;margin:18px 0}
.deck>p{font-size:1.1rem;color:#455b70;line-height:1.7;max-width:66ch}
.byline{color:#567087;font-size:13px;margin:20px 0}.cover{margin:35px 0 20px}.cover img{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 18px 42px #13294223}.cover figcaption,.graphic figcaption{font-size:12px;color:#647788;line-height:1.5;margin-top:10px}
.brief{background:#f1f7fa;border:1px solid #cfe1ec;border-left:4px solid #228fa6;padding:20px 26px;border-radius:6px;margin:27px 0}.brief>strong{font-size:12px;letter-spacing:.08em;color:#276e84}.brief p{font-size:16px;line-height:1.72;margin:8px 0 0}
/* Stable premium reading index: single readable column, numbered links, desktop & mobile.
   Avoid the default <ol> marker in a two-column grid (Safari overlap with long titles). */
.toc{max-width:790px;margin:35px auto 43px;padding:25px 0;border-top:1px solid #d7e3ea;border-bottom:1px solid #d7e3ea}
.toc>strong{display:block;margin:0 0 15px;font:600 clamp(1.35rem,2vw,1.6rem)/1.32 Georgia,"Iowan Old Style",serif;color:#142941;letter-spacing:-.015em}
.toc ol{display:grid;grid-template-columns:minmax(0,1fr);gap:0;list-style:none;counter-reset:toc-entry;margin:0;padding:0}
.toc li{display:block;min-width:0;margin:0;border-top:1px solid #e7eef3;counter-increment:toc-entry}
.toc li a{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:12px;align-items:start;min-width:0;padding:13px 7px;border-radius:6px;font:500 15px/1.54 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#28475f;text-decoration:none;overflow-wrap:break-word}
.toc li a::before{content:counter(toc-entry,decimal-leading-zero);font:750 12px/1.95 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;letter-spacing:.04em;color:#568197}
.toc li a:hover{background:#f0f7fa;color:#0b6586;text-decoration:none}
.toc li a:focus-visible{outline:2px solid #187b9c;outline-offset:2px;background:#f0f7fa}
@media(max-width:650px){.toc{margin:26px auto 34px;padding:18px 0}.toc li a{grid-template-columns:2rem minmax(0,1fr);gap:9px;padding:12px 4px;font-size:14.5px;line-height:1.5}}

.body{max-width:790px;margin:auto}.body>h2{font-family:Georgia,serif;color:#10233d;font-weight:600;line-height:1.27;font-size:clamp(1.45rem,2.5vw,2.03rem);letter-spacing:-.018em;margin:45px 0 15px;padding-top:23px;border-top:1px solid #dae5ea;scroll-margin-top:105px}
.body>p{font-size:16.6px;line-height:1.82;color:#354b5d;max-width:69ch;margin:0 0 17px}.body strong{color:#132d46}.graphic{margin:31px auto;max-width:100%}.graphic img{width:100%;height:auto;display:block;border-radius:12px}
.frame{max-width:100%;overflow-x:auto;border:1px solid #d5e5eb;border-radius:10px}.frame table{border-collapse:collapse;width:100%;min-width:610px;font-size:14px}.frame th{background:#102a46;color:#fff;padding:15px 14px;text-align:left}.frame td{padding:12px 14px;border-bottom:1px solid #d5e5eb;line-height:1.6;vertical-align:top}
.sources{max-width:790px;margin:30px auto;padding:23px;background:#f4f8fa;border:1px solid #dde8ed;border-radius:10px}.sources h2{font:600 25px Georgia;color:#10233d;margin-top:0}.sources p,.sources li{line-height:1.7;color:#43576b}
.faq{max-width:790px;margin:35px auto}.faq h2{font:600 30px Georgia}.faq details{border-bottom:1px solid #d9e5ec;padding:12px 0}.faq summary{font-weight:650;cursor:pointer}.faq p{line-height:1.75;color:#435c6e}
.footer{background:#0b2036;color:#c6d8e3;padding:30px;text-align:center;font-size:13px}
@media(max-width:650px){header.site .bar{padding:13px 17px}.nav{gap:13px;font-size:11px}.brand{font-size:17px}.brand small{font-size:6px}.toc ol{grid-template-columns:1fr}.deck>p{font-size:16px}.body>p{font-size:16px}article{padding:0 16px;margin-top:18px}.cover{margin-top:22px}}
