
:root{--bg:#fbfbf8;--ink:#17201c;--muted:#627069;--accent:#176f52;--soft:#edf6f2;--line:#dfe6e2;--max:1120px;--measure:760px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}
a{color:var(--accent);text-underline-offset:3px}.site-header,.page,footer{max-width:var(--max);margin:auto;padding-left:28px;padding-right:28px}
.site-header{padding-top:26px;display:flex;justify-content:space-between}.site-title{font-weight:800}.site-nav a{margin-left:18px;color:var(--muted);text-decoration:none;font-size:.94rem}
.page{padding-top:72px;padding-bottom:100px}.book-cover{min-height:78vh;display:flex;flex-direction:column;justify-content:center;max-width:900px}
.kicker,.chapter-label{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem}
h1{font-size:clamp(3.4rem,8vw,7rem);line-height:.96;letter-spacing:-.065em;margin:18px 0 28px}.page-title{font-size:clamp(2.5rem,5vw,4.3rem)}
.subtitle,.lead{color:var(--muted);max-width:760px}.subtitle{font-size:clamp(1.25rem,2.5vw,1.8rem);line-height:1.45}.lead{font-size:1.25rem}
.byline{margin-top:48px}.byline strong{display:block;font-size:1.2rem}.release{margin-top:34px;color:var(--muted);font-size:.92rem}
.primary-link{display:inline-block;margin-top:28px;padding:11px 16px;border:1px solid var(--accent);border-radius:8px;text-decoration:none;font-weight:700;width:max-content}
.content{max-width:var(--measure)}.toc{max-width:850px;margin-top:44px}.toc-part{margin-top:52px}.toc-part h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.toc-item{display:grid;grid-template-columns:54px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.toc-number{color:var(--muted)}.toc-item a{color:var(--ink);text-decoration:none;font-weight:700}.toc-item p{margin:4px 0;color:var(--muted);font-size:.95rem}
.note{margin:32px 0;padding:18px 20px;background:var(--soft);border-radius:10px}.chapter-nav{margin-top:70px;display:flex;justify-content:space-between}.placeholder{color:var(--muted);font-style:italic}
footer{padding-bottom:48px;color:var(--muted);font-size:.9rem}
@media(max-width:720px){.site-header{flex-direction:column;gap:14px}.site-nav a{margin:0 14px 0 0}.toc-item{grid-template-columns:40px 1fr}.chapter-nav{flex-direction:column;gap:12px}}
