
:root{--ink:#1a1a1a;--mid:#555;--rule:#ddd;--accent:#1f3864;--maroon:#800000;
--bg:#fff;--soft:#f6f7f9}
*{box-sizing:border-box}
body{margin:0;font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",
Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
header.site{border-bottom:2px solid var(--accent);background:var(--soft)}
header.site .in{max-width:1080px;margin:0 auto;padding:18px 22px;display:flex;
flex-wrap:wrap;align-items:baseline;gap:14px}
header.site a.brand{font-weight:700;font-size:20px;color:var(--accent);
text-decoration:none}
header.site .tag{color:var(--mid);font-size:14px}
nav.top{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
nav.top a{color:var(--ink);text-decoration:none;font-size:14px}
nav.top a:hover,nav.top a[aria-current]{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:26px 22px 70px;display:grid;
grid-template-columns:250px 1fr;gap:38px}
@media(max-width:820px){.wrap{grid-template-columns:1fr}aside{position:static!important}}
aside{position:sticky;top:20px;align-self:start;font-size:14px}
aside h2{font-size:12px;letter-spacing:.08em;text-transform:uppercase;
color:var(--mid);margin:18px 0 6px}
aside ul{list-style:none;margin:0;padding:0}
aside li{margin:3px 0}
aside a{color:var(--ink);text-decoration:none}
aside a:hover{text-decoration:underline}
aside a.here{font-weight:700;color:var(--accent)}
main h1{font-size:29px;line-height:1.25;margin:0 0 6px}
main h2{font-size:21px;margin:34px 0 8px;color:var(--accent)}
main h3{font-size:17px;margin:24px 0 6px}
.kicker{color:var(--mid);font-size:14px;margin:0 0 22px}
p{margin:0 0 14px}
code{background:var(--soft);padding:1px 5px;border-radius:3px;
font:14px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
pre{background:var(--soft);border-left:3px solid var(--accent);padding:14px 16px;
overflow-x:auto;border-radius:3px}
pre code{background:none;padding:0;font-size:13.5px}
.tablewrap{overflow-x:auto;margin:0 0 18px}
table{border-collapse:collapse;width:100%;font-size:14.5px}
th,td{text-align:left;padding:7px 11px;border-bottom:1px solid var(--rule);
vertical-align:top}
th{border-bottom:2px solid var(--accent);font-size:13px;letter-spacing:.03em;
text-transform:uppercase;color:var(--mid)}
.figplaceholder{color:var(--maroon);font-style:italic;border-left:3px solid
var(--maroon);padding:8px 14px;background:#fdf6f6;margin:0 0 16px}
.callout{border:1px solid var(--rule);border-left:4px solid var(--accent);
background:var(--soft);padding:14px 18px;margin:0 0 20px;border-radius:3px}
.callout.warn{border-left-color:var(--maroon)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
gap:16px;margin:0 0 22px}
.card{border:1px solid var(--rule);border-radius:4px;padding:15px 17px}
.card h3{margin:0 0 5px;font-size:16px}
.card p{margin:0;color:var(--mid);font-size:14px}
.card a{color:var(--accent);text-decoration:none}
.card a:hover{text-decoration:underline}
.dl{list-style:none;padding:0;margin:0 0 18px}
.dl li{border-bottom:1px solid var(--rule);padding:8px 0;display:flex;
gap:12px;align-items:baseline;flex-wrap:wrap}
.dl .name{font-family:ui-monospace,Consolas,monospace;font-size:14px}
.dl .meta{color:var(--mid);font-size:13px;margin-left:auto}
figure{margin:0 0 22px}
figure img{max-width:100%;height:auto;border:1px solid var(--rule);
border-radius:3px}
figcaption{color:var(--mid);font-size:13px;margin-top:6px}
footer.site{border-top:1px solid var(--rule);color:var(--mid);font-size:13px}
footer.site .in{max-width:1080px;margin:0 auto;padding:22px}
a{color:var(--accent)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:10}
