:root{--paper:#f7f5ef;--surface:#fffdf8;--reader:#dfe5df;--ink:#17251f;--muted:#617068;--green:#245642;--green2:#183e30;--coral:#c96f5d;--line:rgba(23,37,31,.15);--shadow:0 22px 60px rgba(22,46,36,.15);--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,'Segoe UI',sans-serif;color-scheme:light;scroll-behavior:smooth}*{box-sizing:border-box}[hidden]{display:none!important}html[data-theme=dark]{--paper:#111a16;--surface:#19251f;--reader:#202e28;--ink:#f2efe6;--muted:#b3bdb6;--green:#a7d0b8;--green2:#d5eadc;--coral:#ef9a86;--line:rgba(239,244,238,.15);--shadow:0 24px 65px rgba(0,0,0,.35);color-scheme:dark}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);overflow-x:hidden}button,a,input{font:inherit}button,.pill{min-height:44px}.skip-link{position:fixed;z-index:200;top:.5rem;left:.5rem;padding:.7rem;background:var(--ink);color:var(--paper);transform:translateY(-160%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.top-progress{position:fixed;z-index:110;inset:0 0 auto;height:3px}.top-progress span{display:block;width:4%;height:100%;background:var(--coral);transition:width .2s}.topbar{position:fixed;z-index:100;inset:0 0 auto;display:flex;height:72px;padding:0 max(1.25rem,calc((100vw - 1220px)/2));align-items:center;justify-content:space-between;transition:.25s}.topbar.scrolled{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:.65rem;color:inherit;text-decoration:none}.brand>span{display:grid;width:38px;aspect-ratio:1;place-items:center;border-radius:50% 50% 50% 15%;background:var(--green2);color:var(--paper);font:700 .75rem var(--serif)}nav{display:flex;align-items:center;gap:.3rem}nav a,nav button,.reader-controls button,.reader-controls a,.drawer button,.resume button{padding:.55rem .75rem;border:0;border-radius:9px;background:transparent;color:inherit;text-decoration:none;cursor:pointer}.pill{display:inline-flex;padding:.65rem 1.1rem;align-items:center;justify-content:center;border:1px solid var(--green);border-radius:999px;background:transparent;color:var(--green2);font-weight:700;text-decoration:none;cursor:pointer}.pill.primary,.topbar .pill{background:var(--green2);color:var(--paper)}.mobile-menu{display:none}.hero{position:relative;display:grid;min-height:min(760px,100svh);padding:clamp(6.5rem,10vw,9rem) max(1.5rem,calc((100vw - 1160px)/2)) 7rem;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(3rem,8vw,8rem);overflow:hidden}.hero:before{position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 78% 40%,color-mix(in srgb,var(--coral) 12%,transparent),transparent 28rem),linear-gradient(115deg,color-mix(in srgb,var(--green) 7%,transparent),transparent 55%);content:''}.eyebrow{margin:0 0 .8rem;color:var(--green);font-size:.74rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.035em}h1{max-width:710px;margin:0;font-size:clamp(3.2rem,6.6vw,6.4rem);line-height:.96}h2{margin:.1rem 0;font-size:clamp(2.2rem,4vw,4rem);line-height:1.05}.dek{max-width:620px;margin:1.5rem 0 .75rem;color:var(--muted);font:1.25rem/1.55 var(--serif)}.byline{color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.7rem}.facts{display:flex;padding:0;margin:2rem 0 0;gap:1.5rem;color:var(--muted);font-size:.82rem;list-style:none}.facts li+li:before{margin-right:1.5rem;color:var(--coral);content:'•'}.cover-stage{position:relative;display:grid;place-items:center;perspective:1000px}.cover-stage:after{position:absolute;z-index:-1;bottom:-2rem;width:74%;height:3rem;border-radius:50%;background:#15251d33;filter:blur(22px);content:''}.cover-stage img,.cover-skeleton{width:min(360px,72vw);max-height:calc(100svh - 150px);aspect-ratio:1600/2263;border-radius:4px 12px 12px 4px;box-shadow:var(--shadow);transform:rotateY(-10deg) rotateZ(1deg)}.cover-stage img{display:block;height:auto;object-fit:contain}.cover-skeleton{display:grid;place-items:center;background:linear-gradient(110deg,var(--green2),color-mix(in srgb,var(--green2) 82%,white));color:#fff}.cover-skeleton span{padding:1rem;text-align:center;font:italic 1.4rem var(--serif)}.reader-section{padding:6rem max(1rem,calc((100vw - 1240px)/2));background:color-mix(in srgb,var(--reader) 72%,var(--paper))}.section-head{display:flex;margin-bottom:1.5rem;align-items:end;justify-content:space-between;gap:2rem}.reading-status{display:grid;text-align:right;color:var(--muted)}.reading-status b{color:var(--green)}.reader{position:relative;display:grid;min-height:420px;place-items:center;border-radius:22px;background:var(--reader);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.reader-loading{width:min(480px,80%);padding:2rem;text-align:center}.skeleton{aspect-ratio:1600/2263;background:linear-gradient(90deg,var(--surface),color-mix(in srgb,var(--surface) 65%,var(--reader)),var(--surface));background-size:200%;animation:shimmer 1.4s infinite}.single-stage{width:100%;padding:clamp(1rem,3vw,2.5rem)}.page-scroll{max-width:100%;overflow:auto;text-align:center}.page-scroll>img{display:block;width:calc(100% * var(--zoom,1));max-width:none;height:auto;margin:auto;background:white;box-shadow:0 14px 42px #10261b33;transition:opacity .18s}.continuous{width:100%;padding:2rem}.continuous figure{max-width:820px;margin:0 auto 2rem}.continuous img{display:block;width:100%;height:auto;aspect-ratio:1600/2263;background:var(--surface);box-shadow:var(--shadow)}.continuous figcaption{text-align:center;color:var(--muted)}.online-fallback,.page-error{max-width:600px;padding:clamp(2rem,5vw,4rem);text-align:center}.online-fallback h3{margin:.2rem;font-size:2rem}.reader-controls{position:sticky;z-index:50;bottom:1rem;display:flex;width:max-content;max-width:calc(100% - 2rem);margin:-.2rem auto 0;padding:.45rem;align-items:center;justify-content:center;gap:.2rem;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:var(--shadow);overflow-x:auto}.reader-controls button:hover{background:var(--reader)}.reader-controls button:disabled{opacity:.35;cursor:not-allowed}.reader-controls form{display:flex;align-items:center;gap:.25rem}.reader-controls input{width:3.5rem;padding:.4rem;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:inherit}.divider{width:1px;height:28px;background:var(--line)}.shortcut-help{text-align:center;color:var(--muted);font-size:.76rem}.resume{display:flex;margin:0 0 1rem;padding:1rem 1.25rem;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.resume p{margin:0}.about{display:grid;padding:6rem max(1.5rem,calc((100vw - 1100px)/2));grid-template-columns:1.2fr 1fr;gap:3rem}.about>div:first-child p:last-child{max-width:650px;color:var(--muted)}dl{display:grid;grid-template-columns:1fr 1fr;gap:1rem}dt{color:var(--muted);font-size:.75rem;text-transform:uppercase}dd{margin:0}.about>.actions{grid-column:1/-1;margin:0}footer{display:flex;padding:2rem max(1.5rem,calc((100vw - 1160px)/2));align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);font-size:.85rem}footer p{margin:.2rem 0;color:var(--muted)}footer a{color:inherit}.scrim{position:fixed;z-index:120;inset:0;background:#08100db0}.drawer{position:fixed;z-index:130;inset:0 auto 0 0;width:min(430px,94vw);padding:1.5rem;overflow:auto;background:var(--surface);transform:translateX(-105%);transition:.2s}.drawer.open{transform:none}.drawer header{display:flex;align-items:start;justify-content:space-between}.drawer header button{font-size:1.6rem}.tabs{display:grid;margin:1.5rem 0;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.tabs button[aria-selected=true]{border-bottom:3px solid var(--coral)}.search-label{display:grid;gap:.3rem;color:var(--muted);font-size:.8rem}.search-label input{min-height:44px;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.drawer ol{padding:0;list-style:none}.drawer li button{display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left}.drawer li button[aria-current=page]{background:var(--reader);color:var(--green2);font-weight:800}.drawer small{color:var(--muted)}#thumbnailList{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}#thumbnailList button{display:block;padding:.3rem}#thumbnailList img{width:100%;aspect-ratio:1600/2263;object-fit:cover;background:var(--reader)}.toast{position:fixed;z-index:180;bottom:1rem;left:50%;margin:0;padding:.7rem 1rem;border-radius:99px;background:var(--ink);color:var(--paper);opacity:0;transform:translate(-50%,1rem);transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.print-only{display:none}@keyframes shimmer{to{background-position:-200%}}
@media(max-width:800px){.cover-stage img,.cover-skeleton{max-height:56svh;transform:rotateY(-4deg)}.topbar{height:64px}.mobile-menu{display:block;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:inherit}.topbar nav{position:absolute;top:64px;right:1rem;display:none;width:min(280px,calc(100vw - 2rem));padding:.7rem;align-items:stretch;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.topbar nav.open{display:flex}.topbar nav>*{text-align:center}.hero{min-height:auto;padding-top:7rem;grid-template-columns:1fr;text-align:center}.hero-copy{display:grid;justify-items:center}.cover-stage{grid-row:1}.facts{justify-content:center;flex-wrap:wrap}.section-head{align-items:start}.reader-controls{position:relative;bottom:auto;width:100%;max-width:100%;margin:.7rem 0;flex-wrap:wrap}.reader-controls .divider{display:none}.shortcut-help{display:none}.about{grid-template-columns:1fr}.resume,footer{align-items:stretch;flex-direction:column}.resume>div{display:flex;flex-wrap:wrap}.continuous{padding:1rem}}
@media(max-width:450px){h1{font-size:clamp(2.7rem,14vw,4rem)}.hero{padding-inline:1rem}.facts{gap:.5rem 1rem}.facts li+li:before{display:none}.section-head{gap:.5rem}.reading-status{font-size:.8rem}.single-stage{padding:.7rem}.reader-controls form label,#fitWidth,#fullscreenButton,#readerToc{display:none}.about{padding-block:4rem}dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body>*:not(.print-only){display:none!important}.print-only{display:block;padding:2cm;color:#000}.print-only h1{font-size:28pt}.print-only a{color:#000;text-decoration:underline}@page{margin:2cm}}
