.reader-body{--ink:#173831;--green:#08685b;--line:#c2d3cb;--cream:#f5f3ec;--gold:#8c521b}
.reader-body *{box-sizing:border-box}
.reader-body{font-size:18px;scroll-behavior:smooth}
.reader-body{margin:0;background:var(--cream);color:var(--ink);font:1rem/1.7 system-ui,-apple-system,sans-serif}
.reader-body nav{display:flex;justify-content:space-between;gap:20px;max-width:1080px;margin:auto;padding:22px 30px;border-bottom:1px solid var(--line)}
.reader-body a{color:#005e52;text-underline-offset:.2em;overflow-wrap:anywhere}
.reader-body a:focus-visible{outline:3px solid #a14d11;outline-offset:4px}
.reader-body .skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:3}
.reader-body .skip:focus{top:10px}
.reader-body main{max-width:1080px;margin:auto;padding:0 30px 50px}
.reader-body .hero{padding:45px 0 30px;max-width:900px}
.reader-body h1{font-size:clamp(2rem,4.7vw,3.3rem);line-height:1.16;letter-spacing:-.03em;margin:12px 0 24px}
.reader-body h2{font-size:1.6rem;line-height:1.25;margin:0 0 18px}
.reader-body h3{font-size:1.3rem;line-height:1.3}
.reader-body h4{font-size:1.06rem;line-height:1.4;margin:12px 0}
.reader-body p{margin:0 0 18px}
.reader-body .lead{font-size:1.2rem;line-height:1.6}
.reader-body .kicker{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--green)}
.reader-body main>section{padding:30px 0;border-top:1px solid var(--line)}
.reader-body li{margin:8px 0}
.reader-body ul,.reader-body ol{padding-left:1.4rem}
.reader-body .visual{background:#fff;margin:26px 0;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.reader-body .figure-head{padding:23px 25px 6px;background:#e5efe9}
.reader-body .figure-head h3{margin:0 0 14px}
.reader-body .scope{padding:15px 25px;margin:0;font-size:.88rem;font-weight:650;color:var(--gold)}
.reader-body .nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:8px 25px 25px}
.reader-body .node{position:relative;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:6px;padding:15px;background:#fafcf9;min-width:0;overflow-wrap:anywhere}
.reader-body .node p{font-size:.92rem;margin:0}
.reader-body .node-index{display:inline-grid;place-items:center;background:#dcebe3;color:var(--green);border-radius:50%;width:30px;height:30px;font-weight:700}
.reader-body .process .nodes,.reader-body .timeline .nodes{display:block;max-width:860px;margin:auto}
.reader-body .process .node,.reader-body .timeline .node{margin:0 0 22px 13px;border-left:4px solid var(--green)}
.reader-body .process .node:not(:last-child)::after,.reader-body .timeline .node:not(:last-child)::after{content:'↓';position:absolute;bottom:-28px;left:17px;color:var(--green);font-size:24px}
.reader-body .role .nodes{grid-template-columns:repeat(2,minmax(0,1fr))}
.reader-body .comparison .nodes{grid-template-columns:repeat(2,minmax(0,1fr))}
.reader-body .document .nodes{grid-template-columns:repeat(2,minmax(0,1fr))}
.reader-body .visual>p:not(.scope){padding:0 25px}
.reader-body .visual>ul{margin:10px 25px 22px}
.reader-body figcaption{padding:20px 25px;border-top:1px solid var(--line);font-size:.83rem;background:#f6f7f3}
.reader-body .citation{font-size:.86rem}
.reader-body .review{background:#fff0d8;padding:25px;border-left:5px solid var(--gold);margin:25px 0}
.reader-body .sources li{padding-bottom:10px;font-size:.9rem}
.reader-body .sources small{display:block;color:#48645a}
.reader-body .amount{display:block;font-size:1.75rem;font-weight:750;line-height:1.3;margin:15px 0}
.reader-body .bar{height:18px;background:#e1e6df;border:1px solid #405d4d;margin:12px 0}
.reader-body .bar span{display:block;height:100%;background:#08685b}
.reader-body .unknown{background:#fff1d7;border:1px dashed #8c521b;padding:5px 8px;display:inline-block;font-weight:650}
.reader-body .worksheet{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 25px}
.reader-body .worksheet label{display:block;font-size:.9rem}
.reader-body input,.reader-body textarea{width:100%;font:inherit;color:inherit;padding:9px;background:#fff;border:1px solid #60796c;border-radius:4px}
.reader-body textarea{min-height:100px}
.reader-body footer{padding:25px;text-align:center;border-top:1px solid var(--line);font-size:.85rem}
.reader-body strong{font-weight:720}
@media(max-width:650px){.reader-body{font-size:17px}
.reader-body nav{padding:18px}
.reader-body main{padding:0 18px 35px}
.reader-body .hero{padding-top:30px}
.reader-body h2{font-size:1.4rem}
.reader-body .nodes,.reader-body .role .nodes,.reader-body .comparison .nodes,.reader-body .document .nodes,.reader-body .worksheet{grid-template-columns:1fr}
.reader-body .figure-head{padding:20px 18px 5px}
.reader-body .scope{padding:14px 18px}
.reader-body .nodes{padding:6px 18px 20px}
.reader-body .visual>p:not(.scope){padding:0 18px}
.reader-body figcaption{padding:18px}
.reader-body .worksheet{margin:18px}
.reader-body .node p{font-size:1rem}
}
@media print{.reader-body{font-size:11pt}
.reader-body{background:white}
.reader-body nav,.reader-body .skip,.reader-body footer{display:none}
.reader-body main{max-width:none;padding:0}
.reader-body .hero{padding:0}
.reader-body .visual{break-inside:auto}
.reader-body .node{break-inside:avoid}
.reader-body .worksheet{display:block}
.reader-body .worksheet label{margin:15px 0}
.reader-body h1{font-size:26pt}
.reader-body a{color:inherit}
.reader-body .bar{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.reader-body .node-copy{font-size:.92rem}
.reader-body .routes .nodes{grid-template-columns:repeat(2,minmax(0,1fr))}
.reader-body .routes .node:first-child{grid-column:1/-1}
.reader-body .routes .node-index{display:none}
.reader-body .alternatives .node:nth-last-child(2)::after{content:none}
.reader-body .alternatives .node:last-child{border-left-color:var(--gold);background:#fff6e7;margin-top:35px}
.reader-body .worksheet-fields{padding:0 25px 20px}
.reader-body .worksheet-fields fieldset{border:1px solid var(--line);border-radius:6px;margin:18px 0;padding:12px;min-width:0}
.reader-body .worksheet-fields legend{font-weight:700;padding:0 6px}
.reader-body .worksheet-fields .worksheet{margin:6px 0}
.reader-body .worksheet-fields textarea{min-height:76px}
@media(max-width:650px){.reader-body .node-copy{font-size:1rem}
.reader-body .routes .nodes{grid-template-columns:1fr}
.reader-body .worksheet-fields{padding:0 18px 18px}
}
@media print{.reader-body .worksheet-fields fieldset{break-inside:avoid}
.reader-body .worksheet-fields textarea{height:72px;min-height:72px}
.reader-body .worksheet-fields .worksheet{display:grid;grid-template-columns:1fr 1fr}
}
