:root{--ink:#292522;--muted:#756b63;--paper:#f5f0e8;--panel:#fffaf2;--line:#ded4c8;--accent:#9b4937;--accent-dark:#6f2e26;--shadow:0 18px 50px rgba(49,34,25,.12)}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif}body{margin:0;min-width:18rem}.landing{max-width:74rem;margin:auto;padding:clamp(1.25rem,4vw,4rem)}.hero{display:grid;grid-template-columns:minmax(13rem,28rem) 1fr;gap:clamp(2rem,7vw,7rem);align-items:center;min-height:72vh}.cover{display:block;width:100%;height:auto;box-shadow:var(--shadow)}.hero-copy{max-width:31rem}.eyebrow{margin:0 0 .7rem;color:var(--accent);font:700 .72rem/1.2 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(3.8rem,10vw,8rem);font-weight:400;letter-spacing:.02em;line-height:.9}.lede{max-width:22rem;margin:1.8rem 0 2rem;color:var(--muted);font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.35}.button{display:inline-block;padding:.85rem 1.15rem;background:var(--accent);color:#fff;text-decoration:none;font:700 .82rem/1 system-ui,sans-serif;letter-spacing:.04em}.button:hover,.button:focus{background:var(--accent-dark)}.chapters{padding-top:clamp(2rem,8vw,7rem);max-width:56rem;margin:auto}.section-heading{display:flex;align-items:baseline;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem}.section-heading .eyebrow{margin-right:auto}.section-heading h2{font-size:2.2rem;font-weight:400;margin:0}.count{color:var(--muted);font:600 .75rem system-ui,sans-serif}.chapter-list{list-style:none;margin:0;padding:0}.chapter-list li{border-bottom:1px solid var(--line)}.chapter-list a{display:flex;align-items:baseline;gap:1rem;padding:1.05rem .3rem;color:var(--ink);text-decoration:none}.chapter-list a:hover,.chapter-list a:focus{color:var(--accent)}.chapter-number{color:var(--accent);font:700 .75rem system-ui,sans-serif;letter-spacing:.08em}.chapter-title{font-size:1.15rem}.reader-page{background:var(--paper)}.reader-header{display:flex;justify-content:space-between;align-items:center;max-width:58rem;margin:auto;padding:1.2rem clamp(1.25rem,4vw,3rem);border-bottom:1px solid var(--line)}.wordmark{color:var(--ink);font-size:1.25rem;text-decoration:none}.back-link{color:var(--accent);font:600 .75rem system-ui,sans-serif;text-decoration:none}.reader{max-width:46rem;margin:auto;padding:clamp(3rem,8vw,7rem) clamp(1.25rem,4vw,2rem) 7rem}.reader-meta{margin-bottom:3rem}.reader-meta .eyebrow{margin-bottom:1rem}.reader h1{margin:0;font-size:clamp(2.4rem,6vw,4.3rem);font-weight:400;line-height:1.04}.prose{font-size:clamp(1.08rem,1.6vw,1.24rem);line-height:1.85}.prose p{margin:0 0 1.35em}.reader-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.3rem;border-top:1px solid var(--line);font:600 .8rem system-ui,sans-serif}.reader-nav a{color:var(--accent);text-decoration:none}.loading,.error{color:var(--muted)}@media(max-width:44rem){.hero{grid-template-columns:minmax(0,17rem);justify-content:center;min-height:auto;padding:1rem 0 4rem}.hero-copy{text-align:center}.hero-copy .lede{margin-left:auto;margin-right:auto}.cover{max-width:17rem;margin:auto}.section-heading{gap:.5rem}.section-heading h2{font-size:1.8rem}.chapter-list a{padding:.95rem .1rem}.reader-header{padding-left:1rem;padding-right:1rem}}
.paper-bar{max-width:74rem;margin:auto;padding:1.15rem clamp(1.25rem,4vw,4rem) 0}
.paper-back{display:inline-flex;align-items:center;min-height:2.5rem;color:var(--accent);font:600 .75rem system-ui,sans-serif;letter-spacing:.04em;text-decoration:none}
.paper-back:hover,.paper-back:focus{color:var(--accent-dark);text-decoration:underline}
.paper-back::before{content:"\2039\00a0"}
.paper-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 1.5rem;max-width:74rem;margin:auto;padding:1.4rem clamp(1.25rem,4vw,4rem) 2.6rem;border-top:1px solid var(--line);color:var(--muted);font:400 .82rem/1.7 system-ui,sans-serif}
.paper-foot a{color:var(--muted);text-decoration:none}
.paper-foot a:hover,.paper-foot a:focus{color:var(--accent);text-decoration:underline}
.reader-links{display:flex;flex-wrap:wrap;gap:1.1rem}
.chapter-list li.loading,.chapter-list li.error{padding:1.05rem .3rem;color:var(--muted);font:400 .95rem system-ui,sans-serif}
.prose .notice{color:var(--muted);font-style:italic}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* night reading: the same tokens, re-pointed. No structural change. */
@media(prefers-color-scheme:dark){:root{--ink:#ece4d8;--muted:#a2968a;--paper:#14110f;--panel:#1b1714;--line:#322b24;--accent:#c96b53;--accent-dark:#e08a71;--shadow:0 18px 50px rgba(0,0,0,.55)}.button{color:#17110f}}
