/* Shared layout and readable content styles. */
:root{color-scheme:light;--bg:#fff;--surface:#f3f8fc;--line:#dce5ec;--text:#253444;--muted:#596b7b;--blue:#0e6eb8;--deep:#09528c;--width:1000px}
*{box-sizing:border-box}
html{scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.85 system-ui,-apple-system,"Segoe UI","Malgun Gothic",sans-serif;word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--blue);text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{color:var(--deep)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
img,svg{max-width:100%;height:auto}
img{display:block}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{color:#172d41;line-height:1.4;letter-spacing:-.04em}
h1{font-size:clamp(30px,4.5vw,46px)}
h2{font-size:clamp(25px,3.1vw,32px)}
h3{font-size:21px}
p+p{margin-top:17px}
strong{font-weight:750}
.wrap{width:min(var(--width),calc(100% - 40px));margin-inline:auto}
.narrow{max-width:800px}
.skip-link{position:absolute;left:20px;top:-100px;z-index:3;background:var(--blue);color:#fff;padding:10px 20px}
.skip-link:focus{top:12px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}
.site-header img{width:200px}
.site-header nav{display:flex;gap:24px;font-size:15px}
.site-header nav a{text-decoration:none}
.eyebrow{color:var(--blue);font-size:12px;letter-spacing:.12em;font-weight:750;text-transform:uppercase}
.lede{color:#42586a;font-size:19px;line-height:1.9}
.byline{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--muted);font-size:13px;margin-top:22px}
.byline a{color:var(--muted)}
.section{padding:52px 0;border-top:1px solid var(--line)}
.section-heading{margin-bottom:24px}
.section-heading .eyebrow{margin-bottom:10px}
.section p,.prose p{max-width:79ch}
.source{font-size:13px;color:var(--muted);line-height:1.75;margin-top:12px}
.note{padding:22px 26px;border-left:3px solid var(--blue);background:var(--surface);margin:26px 0}
.note p{font-size:16px}
.data-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.7;table-layout:fixed;margin:26px 0 12px}
.data-table caption{text-align:left;font-size:13px;color:var(--muted);margin-bottom:10px}
.data-table th,.data-table td{border-bottom:1px solid var(--line);padding:16px 14px;text-align:left;vertical-align:top}
.data-table thead th{background:var(--blue);color:#fff;font-weight:650}
.data-table tbody th{font-weight:650}
.details-list{border-top:1px solid var(--line);margin-top:28px}
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{cursor:pointer;font-weight:700;font-size:18px;padding-right:15px}
details p{margin:16px 0 0;padding-left:18px;color:var(--muted);font-size:16px}
.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;padding-top:32px;font-size:13px;color:var(--muted)}
.page-heading{padding:36px 0 40px}
.page-heading .eyebrow{margin-bottom:14px}
.page-heading .lede{margin-top:24px}
.prose{padding-bottom:64px}
.prose section{margin-top:42px}
.prose h2{margin-bottom:18px}
.prose h3{margin:30px 0 12px}
.prose ul,.prose ol{padding-left:24px}
.prose li+li{margin-top:12px}
.sources{border-top:1px solid var(--line);padding-top:30px;font-size:14px;color:var(--muted)}
.sources h2{font-size:23px;color:var(--text)}
.site-footer{border-top:1px solid var(--line);padding:30px 0 36px;color:var(--muted);font-size:13px;background:#f7f7f7}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.footer-inner nav{display:flex;gap:20px;flex-wrap:wrap}
.footer-inner a{text-decoration:none}
.plain-link{display:inline-block;margin-top:20px}
code{font-family:ui-monospace,Consolas,monospace;font-size:.9em;overflow-wrap:anywhere}
@media(max-width:600px){body{font-size:16px;line-height:1.8}.wrap{width:calc(100% - 32px)}.site-header{padding:23px 0;gap:12px}.site-header img{width:155px}.site-header nav{font-size:13px;gap:15px}.section{padding:38px 0}.lede{font-size:17px}.data-table{font-size:13px}.data-table th,.data-table td{padding:13px 8px}.note{padding:18px}.page-heading{padding:28px 0 30px}.byline{font-size:12px}.footer-inner{display:block}.footer-inner nav{margin-top:12px}.page-heading h1{font-size:30px}}
