:root{--bg:#f6f1e6;--paper:#fffdf8;--ink:#292b23;--muted:#6d705f;--line:#ded9c9;--green:#294b3d;--gold:#ab8041;--size:19px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,sans-serif}body.dark{--bg:#171f1a;--paper:#202922;--ink:#ece9de;--muted:#b5baa9;--line:#3d4a3e;--green:#a9c9b2;--gold:#d7b572}a{color:inherit;text-decoration:none}button,select,input{font:inherit;color:inherit}button,select{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:9px 12px;cursor:pointer}button:disabled{opacity:.45;cursor:default}button:hover,a:hover{color:var(--gold)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}header{min-height:88px;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px;background:var(--paper)}header>a:last-child{font-size:13px}.brand{font-size:16px;letter-spacing:2px;color:var(--green);font-weight:700}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px;color:var(--muted)}.layout{max-width:1480px;margin:auto;display:grid;grid-template-columns:280px 1fr}aside{padding:30px 22px;position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--line)}.aside-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:var(--muted)}#close-toc{display:none}.book-title{display:block;font-family:Georgia,serif;font-size:27px;margin:22px 0}nav a{display:block;padding:10px 12px;font-size:13px;line-height:1.6;border-left:2px solid transparent}nav a.active{border-color:var(--gold);background:var(--paper);color:var(--green);font-weight:650}.aside-note{font-size:12px;line-height:1.8;color:var(--muted);padding:25px 12px}main{padding:24px clamp(22px,5vw,80px);min-width:0;background:var(--paper)}.tools{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:20px;margin-bottom:34px;border-bottom:1px solid var(--line);font-size:12px}#menu{display:none}.chapter-meta,.eyebrow{font-size:10px;letter-spacing:2px;color:var(--gold);font-weight:650}h1{font-family:Georgia,serif;font-size:clamp(32px,4vw,46px);font-weight:400;line-height:1.2;max-width:750px;margin:18px 0 30px}h2{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.4}article{max-width:760px;margin:36px auto;font:var(--size)/1.95 Georgia,serif}article p{margin:0 0 1.1em}article h2{margin-top:2em}article blockquote{border-left:3px solid var(--gold);margin:24px 0;padding:5px 24px;font-style:italic}figure{margin:25px 0}figure img{display:block;max-width:100%;height:auto;margin:auto}.audio{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--bg);padding:18px;border-radius:8px;font-size:12px}.audio>div{margin-right:auto}.audio small{display:block;margin-top:4px;color:var(--muted)}.audio p{flex-basis:100%;margin:0;color:var(--muted)}.speaking{background:var(--bg);outline:2px solid var(--line);border-radius:5px}.chapter-nav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0;font-size:14px}.progress{font-size:11px;color:var(--muted)}progress{width:100%;height:5px;accent-color:var(--gold)}footer{border-top:1px solid var(--line);margin-top:60px;padding:25px 0;font-size:11px;color:var(--muted);line-height:2}.hero{padding:20px 0 45px}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center}.hero h1{font-size:clamp(48px,6vw,78px);margin:25px 0}.hero h1 em{color:var(--gold);font-weight:400}.intro{font:19px/1.8 Georgia,serif;color:var(--muted)}.hero p:not(.intro){font-size:12px;line-height:2}.primary,.secondary{display:inline-block;background:#294b3d;color:#fff;padding:14px 20px;border-radius:5px;margin:14px 8px 0 0;font-size:13px}.secondary{background:var(--bg);color:var(--green)}[hidden]{display:none!important}.cover{background:#294b3d;color:#eadab7;aspect-ratio:2/3;max-width:250px;width:100%;justify-self:center;box-shadow:12px 15px 30px #0002;outline:1px solid #ab8041;outline-offset:-14px;padding:32px;display:flex;align-items:center;justify-content:space-between;flex-direction:column;text-align:center;background-image:repeating-linear-gradient(45deg,transparent,transparent 12px,#ffffff04 12px,#ffffff04 13px)}.cover span{font-size:9px;letter-spacing:2px;line-height:2}.cover b{font:42px/1.15 Georgia,serif}.cover i{font:44px Georgia,serif;color:#d7b572}.facts{display:flex;gap:40px;border-block:1px solid var(--line);padding:24px 0}.facts b,.facts span{display:block}.facts b{font:25px Georgia,serif;color:var(--green)}.facts span{font-size:11px;color:var(--muted);margin-top:6px}.welcome{padding:25px 0;max-width:680px}.welcome p{font-size:14px;line-height:1.8;color:var(--muted)}.contents>div{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.contents a{font-size:13px;padding:15px 0;border-bottom:1px solid var(--line);line-height:1.6}dialog{width:min(700px,92vw);max-height:85vh;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);padding:25px}dialog::backdrop{background:#0008}.dismiss{float:right}dialog label{display:block;font-size:12px}input{width:100%;padding:14px;background:var(--bg);border:1px solid var(--line);border-radius:5px;margin-top:10px}#search-status{font-size:12px;color:var(--muted)}#results a{display:block;border-top:1px solid var(--line);padding:16px 0}#results p{font:15px/1.7 Georgia,serif}mark{background:#ead6a5;color:#292b23}@media(max-width:900px){.layout{grid-template-columns:1fr}aside{display:none;position:fixed;z-index:10;top:0;left:0;width:min(330px,90vw);background:var(--bg);box-shadow:0 0 0 100vmax #0007}aside.open{display:block}#menu,#close-toc{display:block}main{padding:20px 22px}.hero-grid{gap:25px}.cover{max-width:200px}}@media(max-width:560px){header{padding:18px 22px}.brand{font-size:12px}.brand small{font-size:8px}header>a:last-child{font-size:10px}.hero-grid{grid-template-columns:1fr}.cover{order:-1;max-width:160px;padding:24px}.cover b{font-size:30px}.cover i{font-size:26px}.cover span{font-size:7px}.hero{padding-top:5px}.eyebrow{text-align:center}.hero h1{font-size:50px}.facts{gap:22px}.facts b{font-size:21px}.contents>div{grid-template-columns:1fr}.audio>div{flex-basis:100%}article{line-height:1.85}.tools{margin-bottom:25px}.chapter-nav{font-size:12px}}

.cover-image{display:block;height:auto;padding:0;outline:none;object-fit:contain}
