:root { color-scheme: light; --paper:#f8f1e8; --ink:#211322; --accent:#a43829; --line:#d6c9bd; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:17px/1.7 system-ui,sans-serif; }
a { color:var(--accent); text-underline-offset:4px; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.skip-link { position:absolute; top:-100px; background:white; padding:12px; z-index:5; }
.skip-link:focus { top:0; }
.reader-nav { display:flex; justify-content:space-between; gap:16px; padding:18px clamp(16px,4vw,64px); background:var(--ink); font-size:.9rem; }
.reader-nav a { color:var(--paper); }
.reader { max-width:1200px; margin:0 auto; padding:48px 24px 80px; }
.reader-prose { max-width:900px; }
.reader-sheet { max-width:1500px; }
.document-heading { margin-bottom:36px; }
.eyebrow { margin:0 0 12px; text-transform:uppercase; letter-spacing:.12em; color:var(--accent); font-size:.75rem; font-weight:700; }
h1 { font:400 clamp(2rem,4vw,3.4rem)/1.15 Georgia,serif; letter-spacing:-.025em; margin:0; overflow-wrap:anywhere; }
h2 { font-size:1.5rem; margin:36px 0 18px; }
.prose { background:#fffaf5; padding:clamp(20px,4vw,48px); border:1px solid var(--line); overflow-wrap:anywhere; }
.prose p { margin:0 0 1.5em; }
.prose p:last-child { margin-bottom:0; }
.reader-note { color:#645360; font-size:.95rem; }
.table-scroll { overflow-x:auto; border:1px solid var(--line); background:#fffaf5; }
table { border-collapse:collapse; text-align:left; width:100%; font-size:.92rem; }
.ratios { min-width:1000px; }
.variables { min-width:570px; }
th,td { padding:16px; border-bottom:1px solid var(--line); vertical-align:top; }
thead th { background:var(--ink); color:white; }
tbody th { font-weight:600; }
.number { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.group th { background:#eaded1; font-size:.95rem; }
.ratios th:first-child { min-width:160px; }
.ratios td:last-child { min-width:300px; }
.document-page { margin:0 0 32px; }
figcaption { color:#645360; font-size:.85rem; margin:12px 0; }
.document-page img { display:block; width:100%; height:auto; background:white; border:1px solid var(--line); }
.document-page a { display:block; }
details { padding:12px 0; }
summary { cursor:pointer; font-size:.85rem; color:var(--accent); width:fit-content; }
pre { white-space:pre-wrap; overflow-wrap:anywhere; font:1rem/1.7 system-ui,sans-serif; padding:16px; background:#fffaf5; }
@media(max-width:600px) { .reader { padding:30px 16px 48px; } .reader-nav { flex-wrap:wrap; font-size:.8rem; } th,td { padding:12px; } }
@media print { body { background:white; } .reader-nav,.skip-link,.reader-note,details { display:none; } .reader { max-width:none; padding:0; } .document-page { break-after:page; } .document-page:last-child { break-after:auto; } .table-scroll { overflow:visible; } }
