:root { color-scheme: light; --paper:#fbf8f3; --surface:#fff; --text:#29322f; --muted:#59635e; --accent:#245d8b; --line:#deded4; --note:#f5e8ce; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--text); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; font-size:17px; line-height:1.7; }
a { color:var(--accent); text-underline-offset:.2em; overflow-wrap:anywhere; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:5px; border-radius:2px; }
header, main, footer { max-width:960px; margin:0 auto; padding:28px 32px; }
header { border-bottom:1px solid var(--line); }
.brand { display:inline-flex; gap:16px; align-items:baseline; text-decoration:none; font-size:27px; font-weight:750; color:var(--text); }
.brand span { color:var(--muted); font-weight:400; font-size:15px; }
nav { display:flex; flex-wrap:wrap; gap:4px 22px; margin-top:20px; font-size:15px; }
nav a { padding:5px 0; }
.status { padding:18px 22px; background:var(--note); border:1px solid #d8bd84; border-radius:14px; font-size:15px; }
.status p { margin:5px 0 0; }
article { margin-top:30px; background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:34px; }
.eyebrow { margin:0 0 12px; color:var(--muted); font-size:13px; }
h1 { font-size:clamp(27px,4vw,38px); line-height:1.2; margin:0 0 26px; font-weight:700; overflow-wrap:anywhere; }
h2 { font-size:22px; line-height:1.35; margin:36px 0 12px; }
p { margin:0 0 18px; }
li { margin-bottom:12px; }
ul { padding-left:24px; }
.lead { font-size:21px; line-height:1.5; }
.document-list { list-style:none; padding:0; }
.document-list li { padding:15px 0; margin:0; border-bottom:1px solid var(--line); }
.hash { display:block; overflow-wrap:anywhere; color:var(--muted); font-size:12px; margin-top:6px; }
.downloads { font-size:14px; }
footer { display:flex; justify-content:space-between; gap:24px; color:var(--muted); font-size:14px; }
.skip { position:absolute; top:0; left:16px; transform:translateY(-150%); background:var(--surface); padding:10px; }
.skip:focus { transform:none; }
@media(max-width:560px) { header,main,footer { padding:20px 16px; } article { padding:22px 18px; margin-top:22px; } .status { padding:15px; } h2 { font-size:21px; } footer { display:block; } }
@media print { body { background:white; font-size:11pt; } header,footer,.downloads { display:none; } main { padding:0; max-width:none; } article { border:0; padding:0; } .status { border:1px solid black; background:white; } h2 { break-after:avoid; } a { color:inherit; } }
