:root{--paper:#fbf8f0;--ink:#2d2d2d;--navy:#1f3a5f;--gold:#b08a3c;--dim:#746e61;--line:#e4dccb;--soft:#f3eee1;--fsize:18px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:var(--fsize)/2 "Noto Serif CJK SC","Noto Serif SC","Songti SC",Georgia,serif}a{color:var(--navy);text-underline-offset:4px}a:hover{color:var(--gold)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button,.btn{display:inline-block;border:1px solid var(--gold);border-radius:7px;background:transparent;color:var(--navy);font:14px/1.5 system-ui,"Microsoft YaHei",sans-serif;padding:10px 15px;text-decoration:none}button:hover,.btn:hover{background:var(--soft)}.solid{background:var(--navy)!important;color:var(--paper)!important;border-color:var(--navy)!important}.wrap{max-width:780px;margin:auto;padding:1.6rem 1.3rem 5rem}.wide{max-width:1160px}.bar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:var(--paper);border-bottom:1px solid var(--line);padding:10px max(16px,calc((100% - 1120px)/2));font:13px/1.5 system-ui,"Microsoft YaHei",sans-serif}.bar a{text-decoration:none}.bar .tools{display:flex;gap:6px;flex-wrap:wrap}.bar button{padding:5px 9px;font-size:13px}.progress{position:fixed;z-index:40;top:0;left:0;height:3px;width:0;background:var(--gold)}.crumb,.label,.small{font-family:system-ui,"Microsoft YaHei",sans-serif;font-size:.8rem;color:var(--dim)}.label{color:var(--gold);letter-spacing:.12em}.hero{text-align:center;margin:1.8rem 0 3rem}.hero img{width:220px;max-width:65vw;height:auto;box-shadow:0 14px 30px #0003}.hero h1{font-size:2rem;color:var(--navy);line-height:1.4;margin:1.2rem 0 .6rem}.sub{color:var(--dim);font-size:1.05rem}.buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:1.5rem 0}h1,h2,h3{color:var(--navy);overflow-wrap:anywhere}h1{font-size:1.9rem;line-height:1.5}h2{font-size:1.55rem;line-height:1.65;margin:1rem 0 1.8rem}h3{font-size:1.15rem;margin:2.2rem 0 .8rem}p{margin:.9rem 0;text-align:justify;overflow-wrap:anywhere}.prose p{text-indent:2em}.prose .lead,.prose .small,.prose .reference,.prose .takeaway,.prose .label,.prose .caption{ text-indent:0}.chapter{margin:3.3rem 0 4rem;scroll-margin-top:90px}.chapter:target h2{color:var(--gold)}.part{margin:5rem 0 3rem;padding:2rem 1rem;border-top:2px solid var(--gold);border-bottom:1px solid var(--line);text-align:center}.part p{text-align:center;text-indent:0}.lead{font-size:1.08rem;color:var(--navy)}.reference{font-size:.85rem;color:var(--dim);line-height:1.8;word-break:break-word}.takeaway{border-block:1px solid var(--gold);padding:1rem 0;margin:2rem 0;color:var(--navy);text-indent:0!important}.check,.ledger{background:var(--soft);padding:1.1rem 1.3rem;border-left:3px solid var(--gold);border-radius:0 8px 8px 0;margin:2rem 0}.check h3{margin:.1rem 0 .7rem}.check p{text-indent:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.card{border:1px solid var(--line);border-radius:9px;padding:1rem 1.2rem;background:var(--soft);text-decoration:none;display:block;color:var(--ink)}.card b{display:block;color:var(--navy);font-size:1.05rem}.card p{font-size:.9rem;line-height:1.8}.card small{font-family:system-ui,sans-serif;color:var(--dim);font-size:.75rem}.toc{border-block:1px solid var(--line);padding:.8rem 0}.toc summary{cursor:pointer;color:var(--navy)}.toc a{display:block;text-decoration:none;padding:.15rem 0;font-size:.91rem;line-height:1.8}.toc .group{color:var(--gold);margin:.9rem 0 .3rem;font-weight:600}.readnav{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;padding:1.2rem 0;border-top:1px solid var(--line);font-size:.83rem}.readnav a{max-width:46%;text-decoration:none}figure{margin:2.3rem 0}figure img{display:block;width:100%;max-width:660px;height:auto;margin:auto;border-radius:4px}.caption{font-size:.85rem;color:var(--dim);line-height:1.8;margin:.8rem 0;text-align:justify}.footer{border-top:1px solid var(--line);padding-top:1.6rem;margin-top:3rem;font:13px/1.9 system-ui,sans-serif;color:var(--dim)}input[type=search]{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:16px}.hidden{display:none!important}[hidden]{display:none!important}.anchor{scroll-margin-top:90px}.split>*{min-width:0}.split{display:grid;grid-template-columns:1fr 330px;gap:25px;align-items:start}.nodepanel{position:sticky;top:80px;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:1.2rem}.nodepanel h2{margin:.4rem 0;font-size:1.35rem}.nodepanel p{font-size:.92rem;line-height:1.85}.nodepanel .buttons{justify-content:start}.tree{width:100%;height:auto;display:block}.tree text{font-family:system-ui,"Microsoft YaHei",sans-serif}.tree .trunk{fill:none;stroke:var(--gold);stroke-width:3}.tree .twig{fill:none;stroke:var(--line);stroke-width:1.4}.tree .n rect{fill:var(--paper);stroke:var(--gold);stroke-width:1}.tree .n text{fill:var(--navy);font-size:16px}.tree .n:hover rect,.tree .n.active rect{fill:var(--soft);stroke-width:3}.tree .n.dim{opacity:.18}.tree .root{fill:var(--navy)}.tree .roottext{fill:var(--paper);font-size:20px}.tree .branch{fill:var(--navy);font-size:18px;font-weight:bold}.tree .subbranch{fill:var(--dim);font-size:12px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:1rem 0}.filters button[aria-pressed=true]{background:var(--navy);color:var(--paper)}.notes textarea{width:100%;min-height:180px;padding:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:6px;font:16px/1.8 system-ui,sans-serif}.notes summary{cursor:pointer}.note-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.dark{--paper:#121518;--ink:#e3dfd6;--navy:#9fc0e6;--gold:#d9b45c;--dim:#9ea2a5;--line:#343a41;--soft:#1a1f24;color-scheme:dark}.landing{--paper:#0B0E12;--ink:#E6E4DE;--navy:#E6E4DE;--gold:#D9A441;--dim:#a1a8ae;--line:#2b333a;--soft:#11161B;color-scheme:dark}.landing .hero{display:grid;grid-template-columns:280px 1fr;gap:2.2rem;text-align:left;align-items:start}.landing .hero img{width:100%;max-width:280px}.landing .hero h1{margin:.1rem 0 .6rem;font-size:2.3rem}.landing .hero .buttons{justify-content:flex-start}.landing .solid{background:var(--gold)!important;color:#0B0E12!important}.landing h2,.landing h3,.landing a{color:var(--gold)}.landing .card b{color:var(--gold)}.meta{border-block:1px solid var(--line);padding:1rem 0;margin:1.4rem 0;font:14px/1.9 system-ui,sans-serif}.meta div{display:grid;grid-template-columns:70px 1fr;gap:14px}.meta b{font-weight:400;color:var(--dim)}.statement{border-left:3px solid var(--gold);padding-left:1rem;font-size:1.08rem}.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;border-block:1px solid var(--line);padding:1.5rem 0}.statrow b{display:block;font:2rem/1.2 Georgia,serif;color:var(--gold)}.statrow span{font-size:.8rem;color:var(--dim)}.reader{--paper:#ece7dc}.reader #canvas-wrap{padding:22px 10px 60px;text-align:center;overflow:auto;min-height:70vh}.reader canvas{box-shadow:0 8px 35px #0003;display:block;margin:auto;max-width:none}.reader .control{max-width:1200px;padding-inline:12px;margin:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reader input{width:64px;border:1px solid var(--line);padding:6px;background:var(--paper);color:var(--ink);font-size:15px}.reader select{max-width:310px;padding:7px;background:var(--paper);color:var(--ink);font-size:14px}.reader .status{font:13px/1.7 system-ui,sans-serif;text-align:center;margin:.6rem 1rem}.reader .bar{justify-content:center}.reader .pagecap{font-size:12px;color:var(--dim)}@media(max-width:850px){.split{grid-template-columns:1fr}.nodepanel{position:static}.landing .hero{grid-template-columns:230px 1fr;gap:1.4rem}.landing .hero h1{font-size:1.9rem}}@media(max-width:600px){body{--fsize:17px}.wrap{padding:1.2rem 1.1rem 4rem}.hero img{width:170px}.hero h1{font-size:1.7rem}.landing .hero{grid-template-columns:1fr}.landing .hero img{max-width:220px;margin:auto}.landing .hero h1{font-size:1.8rem}.landing .hero .buttons{justify-content:center}.statrow{grid-template-columns:repeat(2,1fr)}.bar{padding:9px 12px}.cards{grid-template-columns:1fr}.reader .bar{position:static}.reader select{max-width:250px}.tree .n text{font-size:18px}.treebox{overflow:auto}.tree{min-width:560px}.readnav a{max-width:100%}h2{font-size:1.35rem}.check{padding:.9rem 1rem}.part{padding:1.6rem .3rem}}@media print{.bar,.progress,.buttons,.notes{display:none}body{background:white;color:black;font-size:10.5pt}.wrap{max-width:none;padding:0}.chapter,.part{break-before:page}a{color:inherit;text-decoration:none}figure{break-inside:avoid}}
