
:root{--paper:#faf7ef;--soft:#f1eadc;--ink:#292722;--navy:#203a59;--gold:#ad883e;--line:#dfd2b6;--dim:#6b665d;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.95 "Noto Serif CJK SC","Songti SC","SimSun",serif}body.night{--paper:#141c23;--soft:#1e2a33;--ink:#e9e3d7;--navy:#e6d1a1;--gold:#c3a265;--line:#46505a;--dim:#aeb9bd;color-scheme:dark}a{color:var(--navy);text-underline-offset:.25em}button,input,select{font:inherit}button,.button{cursor:pointer;border:1px solid var(--line);background:transparent;color:var(--navy);border-radius:7px;padding:.45em .85em;text-decoration:none;font:15px/1.5 sans-serif}button:hover,.button:hover{background:var(--soft)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.bar{position:sticky;top:0;z-index:50;display:flex;gap:1em;align-items:center;flex-wrap:wrap;background:var(--paper);border-bottom:1px solid var(--line);padding:.65rem 1.2rem;font:14px/1.5 sans-serif}.bar a{white-space:nowrap;text-decoration:none}.bar .spacer{flex:1}.wrap{max-width:1120px;margin:auto;padding:2.5rem 1.4rem 5rem}.reading{max-width:820px}.eyebrow{font:12px/1.6 sans-serif;letter-spacing:.25em;color:var(--gold);text-indent:0}.hero{padding:2rem 0 3rem}.hero h1{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.5;color:var(--navy);margin:.5em 0}.subtitle{font-size:1.15rem;color:var(--gold)}.byline{font-size:1rem;color:var(--dim)}.hero-grid{display:grid;grid-template-columns:260px 1fr;gap:3rem;align-items:center}.cover{width:100%;max-width:260px;box-shadow:0 16px 45px #0003;border:1px solid var(--line)}.actions,.triad{display:flex;gap:.65rem;flex-wrap:wrap;margin:1.4rem 0}.primary{background:var(--navy);color:var(--paper);border-color:var(--navy)}.triad{display:grid;grid-template-columns:repeat(3,1fr)}.card{display:block;border:1px solid var(--line);padding:1.4rem;background:var(--soft);border-radius:10px;text-decoration:none}.card b{display:block;font-size:1.2rem;color:var(--navy)}.card span{display:block;font-size:.92rem;line-height:1.85;color:var(--dim);margin-top:.5em}h2,h3,h4{color:var(--navy);line-height:1.6;break-after:avoid}h2{font-size:1.65rem;margin:2rem 0 1rem}h3{font-size:1.2rem;margin:2.1rem 0 1rem}h4{font-size:1.05rem;margin:1.6rem 0 .6rem}p{margin:0 0 .9em;text-align:justify;text-indent:2em}.hero p,.card p,.intro p,.bio p,.caption,.byline,.eyebrow,.source-note,.part-title,.toc p,footer p,.practice p{ text-indent:0}.section{padding-top:2.5rem;margin-top:2.8rem;border-top:1px solid var(--line)}.chapter-num{font-size:3.3rem;font-weight:300;color:#c4aa77;line-height:1;letter-spacing:.08em}.chapter-heading{margin:.6rem 0 1.5rem}.part{padding:4.5rem 1.5rem;margin:4rem 0 1.2rem;text-align:center;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);background:var(--soft)}.part-title{font-size:1.8rem;color:var(--navy);text-align:center;letter-spacing:.1em;margin:0}.part .eyebrow{text-align:center}.toc{border:1px solid var(--line);padding:1.2rem 1.5rem;border-radius:9px;margin:1.8rem 0}.toc summary{cursor:pointer;font:600 17px/1.8 sans-serif;color:var(--navy)}.toc ol{padding-left:1.5em}.toc li{margin:.5rem 0;font-size:.95rem}.toc .page{float:right;margin-left:1rem;font-size:.85em;color:var(--dim)}.section figure{margin:1.6rem 0}.section figure img{display:block;max-width:100%;height:auto;margin:auto}.caption{font-size:.86rem;line-height:1.6;color:var(--dim);text-align:center;margin:.7rem 0 1.4rem}.table-wrap{overflow-x:auto;margin:1.5rem 0}table{width:100%;border-collapse:collapse;font-size:.84rem;line-height:1.65}th{background:var(--navy);color:var(--paper);text-align:left;padding:.7em;vertical-align:top}td{border:1px solid var(--line);padding:.7em;vertical-align:top}.note{border-left:3px solid var(--gold);background:var(--soft);padding:1rem 1.2rem;font-size:.92rem}.note p{margin:0;text-indent:0}.tools{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.tools input{min-width:12em;max-width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:.5em;font-size:.9rem}.hit{background:#f0ce73;color:#191919}.search-count{font:13px/1.5 sans-serif;color:var(--dim)}.source-note{font:13px/1.75 sans-serif;color:var(--dim);word-break:break-all}.bio{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem}.bio p{font-size:1rem}footer{margin-top:3rem;padding-top:1.8rem;border-top:1px solid var(--line);color:var(--dim);font-size:.85rem}.unit-jump{display:flex;gap:.8em;flex-wrap:wrap;margin-top:2rem;font:14px/1.6 sans-serif}.downloads{display:flex;gap:.6rem;flex-wrap:wrap}.progress{position:fixed;top:0;left:0;height:3px;background:var(--gold);z-index:70;width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lesson-card{padding:1.3rem 0;border-bottom:1px solid var(--line)}.lesson-card p{text-indent:0;font-size:.95rem}.tag{font:12px/1.5 sans-serif;letter-spacing:.06em;color:var(--gold)}
.reading{overflow-wrap:anywhere}.hero h1{text-wrap:balance}
@media(max-width:700px){.toc .page{float:none;display:block;margin:.2em 0 .6em;text-align:right}.hero .subtitle{text-wrap:balance}}
@media(max-width:700px){body{font-size:17px}.wrap{padding:1.4rem 1rem 3rem}.hero-grid{grid-template-columns:1fr;gap:1rem}.cover{max-width:190px;margin:auto}.hero-grid .cover{display:block}.hero{padding:.7rem 0 1.5rem}.triad{grid-template-columns:1fr}.bar{gap:.65em;padding:.6rem .8rem;font-size:12px}.bar .spacer{display:none}.section{padding-top:1.7rem;margin-top:2rem}.part{padding:3rem .7rem}.tools{width:100%}.tools input{min-width:0;flex:1}.table-wrap{font-size:.95em}.byline{font-size:.9rem}h2{font-size:1.45rem}.caption{font-size:.8rem}}@media print{.bar,.tools,.progress,.actions,.unit-jump{display:none}.wrap{max-width:none;padding:0}body{font-size:11pt;background:white;color:black}.section{break-before:page}.part{break-before:page}a{color:inherit}footer{display:none}}
