.reader-body{color-scheme:light;--ink:#152b37;--teal:#006f70;--pale:#e8f3f0;--line:#a9c7bf;--gold:#8d4f00}
.reader-body *{box-sizing:border-box}
.reader-body{margin:0;background:#f8faf7;color:var(--ink);font:18px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.reader-body main{max-width:1060px;margin:auto;padding:2.8rem 2rem 4rem}
.reader-body nav{max-width:1060px;margin:auto;padding:1rem 2rem;text-align:right}
.reader-body h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.13;max-width:900px;letter-spacing:-.03em}
.reader-body h2{font-size:1.7rem;line-height:1.25;margin-top:3rem}
.reader-body h3{line-height:1.35}
.reader-body .lead{font-size:1.25rem;max-width:850px}
.reader-body .eyebrow{display:block;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;font-weight:700;color:var(--teal)}
.reader-body a{color:#075d91;text-decoration-thickness:2px;text-underline-offset:3px;overflow-wrap:anywhere}
.reader-body a:focus-visible,.reader-body summary:focus-visible{outline:3px solid #a25b00;outline-offset:4px}
.reader-body .skip{position:absolute;left:.5rem;top:-100px;background:#fff;padding:.8rem;z-index:9}
.reader-body .skip:focus{top:.5rem}
.reader-body .notice{border-left:5px solid var(--gold);padding:1rem 1.4rem;background:#fff4de;margin:2rem 0}
.reader-body p{max-width:88ch}
.reader-body figure{margin:1.8rem 0;padding:1.5rem;background:white;border:1px solid var(--line);border-radius:14px}
.reader-body figure h3,.reader-body figure h1{margin-top:0;font-size:1.45rem}
.reader-body figure .scope{font-size:.9rem;font-weight:600;color:#53605a}
.reader-body .flow,.reader-body .map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:0;list-style:none;counter-reset:steps}
.reader-body .flow li,.reader-body .map li{min-width:0;border:1px solid var(--line);border-top:4px solid var(--teal);padding:1rem;background:var(--pale)}
.reader-body .flow li{counter-increment:steps}
.reader-body .flow li .eyebrow:before{content:counter(steps) " · "}
.reader-body .map li:nth-child(3){background:#fff4de;border-top-color:var(--gold)}
.reader-body .flow strong,.reader-body .map strong{display:block;line-height:1.4}
.reader-body .flow p,.reader-body .map p{font-size:.94rem;margin-bottom:0}
.reader-body figcaption{font-size:.86rem;line-height:1.55;margin-top:1.2rem;border-top:1px solid var(--line);padding-top:.9rem}
.reader-body details{margin-top:1rem}
.reader-body summary{cursor:pointer;font-size:.95rem}
.reader-body details p{font-size:.95rem}
.reader-body .allocation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.4rem 1rem;border-top:1px solid var(--line);padding:1rem 0}
.reader-body .allocation p{font-size:.95rem;margin:0}
.reader-body .bar{height:1rem;background:#edf0e7;border:1px solid var(--line)}
.reader-body .bar span{display:block;height:100%;background:var(--teal)}
.reader-body .source{border-top:1px solid var(--line);padding:.5rem 0}
.reader-body .source h3{font-size:1rem}
.reader-body .source p{font-size:.9rem;margin:.3rem 0}
.reader-body li{margin:.5rem 0}
.reader-body footer{font-size:.85rem}
@media(max-width:700px){.reader-body{font-size:17px}
.reader-body main{padding:1.5rem 1rem 3rem}
.reader-body nav{padding:.7rem 1rem}
.reader-body .flow,.reader-body .map{grid-template-columns:1fr}
.reader-body figure{padding:1rem}
.reader-body .allocation{grid-template-columns:1fr}
.reader-body .bar{max-width:100%}
.reader-body h2{font-size:1.5rem}
}
@media print{.reader-body{background:#fff}
.reader-body main{padding:0}
.reader-body nav,.reader-body .skip{display:none}
.reader-body details>p{display:block}
.reader-body figure{break-inside:avoid}
.reader-body a{color:#000}
}
