:root{--paper:#faf8f2;--ink:#203b46;--muted:#667378;--teal:#286f71;--line:#dedfd5;--soft:#f0f1e8;--white:#fffefa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}a:focus-visible,summary:focus-visible{outline:3px solid #cc8c44;outline-offset:5px}img{max-width:100%;height:auto}.wrap{max-width:1160px;margin:auto;padding-left:38px;padding-right:38px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1160px)/2 + 38px));border-bottom:1px solid var(--line);gap:25px;background:var(--paper)}.brand{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:650;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--ink);color:var(--paper);border-radius:3px;font:600 15px Georgia,serif}.topbar nav{display:flex;gap:26px;font-size:14px;white-space:nowrap}.skip{position:fixed;left:16px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:1.15fr 1fr;min-height:650px;align-items:center;gap:65px;padding-top:66px;padding-bottom:72px}.eyebrow,.section-label{font-size:14px;letter-spacing:.12em;color:var(--teal);margin:0 0 24px;font-weight:600}.hero h1{font-size:clamp(42px,4.7vw,64px);line-height:1.24;letter-spacing:.025em;font-weight:650;margin:0 0 24px}.hero h1 span{display:block;font-size:25px;line-height:1.6;font-weight:450;letter-spacing:.06em;margin-top:16px}.hero-desc{font-size:18px;line-height:1.95;color:var(--muted);margin:0 0 22px}.author{font-size:16px;margin-bottom:30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:30px;padding:12px 20px;font-size:15px;border:1px solid var(--ink);border-radius:3px;transition:background .15s}.button.primary{background:var(--ink);color:white}.button.primary:hover{background:var(--teal)}.button.secondary:hover{background:var(--soft)}.edition{font-size:13px;color:var(--muted);margin-top:18px}.cover-scene{position:relative;display:flex;align-items:center;flex-direction:column;padding-top:12px}.cover-halo{position:absolute;width:110%;height:83%;background:#e9ebe0;border-radius:48% 48% 4px 4px;bottom:52px;z-index:-1}.book-cover{width:290px;max-width:84%;border-radius:1px 4px 4px 1px;box-shadow:3px 3px 0 #dbd7c8,7px 7px 0 #e7e3d9,14px 20px 36px #233a4228;transform:rotate(-3deg)}.cover-caption{font-size:13px;letter-spacing:.14em;color:var(--muted);margin-top:30px}.intro{border-top:1px solid var(--line);display:grid;grid-template-columns:220px 1fr;gap:35px;padding-top:65px;padding-bottom:70px}.intro h2,.section-heading h2,.resources h2{font-size:30px;font-weight:550;line-height:1.5;margin:0 0 22px}.intro p:not(.section-label){color:#506169;margin:0 0 20px;max-width:750px}.text-link{display:inline-block;font-size:15px;border-bottom:1px solid var(--teal);padding-bottom:3px;margin-top:8px}.contents{padding-top:54px;padding-bottom:74px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading .section-label{margin-bottom:10px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);margin-bottom:6px}.chapter-list{border-top:1px solid var(--ink)}.chapter-row{display:grid;grid-template-columns:60px 1fr 24px;gap:22px;align-items:start;padding:27px 6px;border-bottom:1px solid var(--line);transition:background .15s}.chapter-row:hover{background:#f0f1e7}.chapter-number{font:italic 30px Georgia,serif;color:#708c86;padding-top:4px}.chapter-row h3,.appendix-row h3{font-size:20px;font-weight:550;line-height:1.6;margin:0 0 4px}.chapter-row p,.appendix-row p{font-size:14px;color:var(--muted);margin:0;line-height:1.8}.row-arrow{font-size:24px}.appendix-row{display:grid;grid-template-columns:60px 1fr 24px;gap:22px;background:var(--soft);padding:26px 20px;margin-top:26px;border-radius:3px;align-items:start}.appendix-row>span:first-child{font-size:15px;padding-top:4px}.resources{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding-top:56px;padding-bottom:65px;border-top:1px solid var(--line)}.resources p:not(.section-label){color:var(--muted)}.resources .section-label{margin-bottom:12px}.resource-links a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.resource-links a:first-child{border-top:1px solid var(--line)}.resource-links small{display:block;color:var(--muted);font-size:13px}.about{padding-top:28px;padding-bottom:45px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.about p{margin:12px 0}.about a{text-decoration:underline;text-underline-offset:3px}.footer{border-top:1px solid var(--line);padding:24px max(32px,calc((100vw - 1160px)/2 + 38px));display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.reader-layout{max-width:1370px;margin:auto;display:grid;grid-template-columns:270px minmax(0,850px);gap:62px;padding:45px 38px 75px;justify-content:center}.sidebar{position:sticky;top:24px;height:calc(100vh - 48px);overflow:auto;font-size:14px;padding-right:12px;scrollbar-width:thin}.sidebar summary{cursor:pointer;list-style-position:outside;font-size:14px;font-weight:650;margin:12px 0 16px}.sidebar nav{display:grid;gap:2px}.sidebar nav a{padding:7px 10px;line-height:1.7;border-left:2px solid transparent}.sidebar nav a[aria-current]{background:#e9eee6;border-left-color:var(--teal);color:var(--teal);font-weight:600}.section-nav{border-top:1px solid var(--line);margin-top:25px;padding-top:8px}.toc ul{padding:0;list-style:none}.toc a{display:block;padding:5px 9px;color:var(--muted)}.toc a:hover{color:var(--teal)}.reading{min-width:0}.reading-meta{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);padding:8px 0 28px;border-bottom:1px solid var(--line);margin-bottom:38px}.reading h1{font-size:34px;font-weight:600;line-height:1.55;letter-spacing:.015em;margin:0 0 38px}.reading article{font-family:"Songti SC","Noto Serif CJK SC","Source Han Serif SC",Georgia,serif;font-size:19px;line-height:1.95;color:#263d44;overflow-wrap:break-word}.reading article h1,.reading h2,.reading h3,.reading h4{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.reading h2{font-size:27px;line-height:1.55;margin:62px 0 26px;padding-top:18px;border-top:1px solid var(--line);font-weight:600}.reading h3{font-size:21px;line-height:1.6;margin:35px 0 15px;font-weight:600}.reading h4{font-size:19px;margin:24px 0 12px}.reading p{margin:0 0 1.35em}.reading article a{color:var(--teal);text-decoration:underline}.reading strong{font-weight:700;color:#153c46}.reading code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82em;background:#eef0e8;padding:2px 5px;border-radius:3px;overflow-wrap:anywhere}.reading pre{overflow:auto;background:#edf0e9;padding:22px 25px;border:1px solid #e0e5db;border-left:3px solid #548b86;line-height:1.7;margin:25px 0 30px;border-radius:3px;tab-size:4}.reading pre code{background:transparent;padding:0;font-size:15px;overflow-wrap:normal}.reading figure{margin:36px 0;padding:18px;background:var(--white);border:1px solid #e6e6dc;border-radius:3px;text-align:center}.reading figure img{display:block;max-height:650px;object-fit:contain;margin:auto}.reading figcaption{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:var(--muted);font-size:14px;line-height:1.7;padding-top:16px}.reading .table-scroll{overflow:auto;max-width:100%;margin:25px 0 30px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;font-size:15px;line-height:1.75}.reading table{border-collapse:collapse;width:100%;min-width:450px}.reading th,.reading td{padding:11px 14px;border:1px solid var(--line);text-align:left}.reading th{background:var(--soft);font-weight:600}.reading td{background:#fffefa}.arithmatex{overflow-x:auto;max-width:100%}span.arithmatex{overflow:visible}mjx-container[display=true]{padding:8px 0;overflow-x:auto;max-width:100%}.reading blockquote{border-left:3px solid #62908a;padding:6px 22px;margin:25px 0;background:var(--soft)}.reading blockquote p:last-child{margin-bottom:0}.pager{display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid var(--line);margin-top:65px;padding-top:25px;font-size:16px}.pager a:last-child{text-align:right}.pager small{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.reader-note{font-size:13px;color:var(--muted);margin-top:30px!important}.reader-note a{text-decoration:underline}.back-top{position:fixed;right:18px;bottom:22px;border:1px solid var(--line);background:var(--paper);width:38px;height:38px;display:grid;place-items:center;font-size:20px;border-radius:50%}.error-page{min-height:65vh;padding-top:100px}.error-page h1{font-size:36px}@media(min-width:1450px){.reader-layout{gap:82px}}@media(max-width:960px){.topbar{padding:0 24px}.topbar nav{gap:18px}.hero{gap:32px;min-height:580px}.hero h1{font-size:45px}.hero h1 span{font-size:21px}.book-cover{width:245px}.intro{grid-template-columns:160px 1fr}.reader-layout{grid-template-columns:220px minmax(0,1fr);gap:28px;padding:28px 24px 60px}.reading article{font-size:18px}.reading h1{font-size:29px}.sidebar{font-size:13px}.resources{gap:40px}}@media(max-width:720px){html{scroll-padding-top:18px}.wrap{padding-left:24px;padding-right:24px}.topbar{height:auto;min-height:74px;flex-wrap:wrap;padding:17px 22px;gap:12px}.brand{font-size:14px;gap:9px}.brand-mark{width:28px;height:28px;font-size:13px}.topbar nav{font-size:13px;gap:24px}.hero{grid-template-columns:1fr;gap:40px;padding-top:46px;padding-bottom:48px}.hero h1{font-size:48px}.hero h1 span{font-size:22px}.hero-desc{font-size:16px}.hero .eyebrow{font-size:13px}.hero-actions{gap:10px}.button{gap:20px;padding:11px 15px;font-size:14px}.cover-scene{max-width:340px;margin:auto;width:100%}.cover-halo{width:100%}.book-cover{width:235px}.intro{grid-template-columns:1fr;gap:0;padding-top:42px;padding-bottom:42px}.intro .section-label{margin-bottom:18px}.intro h2,.section-heading h2,.resources h2{font-size:25px}.intro p:not(.section-label){font-size:15px}.contents{padding-top:40px;padding-bottom:45px}.section-heading{display:block}.section-heading>p{margin-top:15px}.chapter-row{grid-template-columns:36px 1fr 18px;gap:13px;padding:24px 0}.chapter-number{font-size:24px}.chapter-row h3,.appendix-row h3{font-size:18px}.chapter-row p,.appendix-row p{font-size:13px}.appendix-row{grid-template-columns:1fr 18px;gap:8px;padding:20px}.appendix-row>span:first-child{grid-column:1/-1;color:var(--teal)}.resources{grid-template-columns:1fr;gap:18px;padding-top:40px;padding-bottom:40px}.resources p:not(.section-label){font-size:15px}.about{font-size:13px}.footer{padding:23px 24px;display:block}.footer span{display:block;margin-bottom:7px}.reader-layout{display:block;padding:20px 21px 45px}.sidebar{position:static;height:auto;overflow:visible;padding:0;margin-bottom:30px;border-bottom:1px solid var(--line)}.sidebar summary{padding:8px 0;margin:0 0 6px}.sidebar details{margin:0;padding:5px 0}.sidebar .section-nav{border-top:1px solid var(--line)}.sidebar nav{padding-bottom:12px}.reading-meta{margin-bottom:28px;padding-bottom:20px}.reading h1{font-size:28px;margin-bottom:28px}.reading article{font-size:18px;line-height:1.95}.reading h2{font-size:24px;margin-top:44px}.reading h3{font-size:20px}.reading pre{padding:17px;max-width:100%;margin-left:0}.reading pre code{font-size:14px}.reading figure{margin:28px 0;padding:9px}.reading figcaption{font-size:12px;padding:12px 4px 3px}.pager{font-size:14px;gap:20px}.back-top{right:10px;bottom:10px;width:32px;height:32px}.reading .table-scroll{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.topbar,.sidebar,.pager,.back-top,.footer,.reader-note{display:none}.reader-layout{display:block;padding:0}.reading article{font-size:11pt}.reading h1{font-size:22pt}.reading figure,.reading pre,.reading table{break-inside:avoid}body{background:white}}
.chapter-contents{margin:40px 0 15px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.chapter-contents .section-label{font-size:14px;margin-bottom:12px}.reading .chapter-contents a{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:17px;line-height:1.65}.reading .chapter-contents a:first-of-type{border-top:1px solid var(--line)}.section-nav nav a{font-size:13px}.reading-meta a{max-width:85%}

.analytics-link{border:0;padding:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.analytics-choice{position:fixed;z-index:100;bottom:18px;left:50%;transform:translateX(-50%);width:min(740px,calc(100% - 32px));padding:18px 22px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 5px 30px #173c4626;font:14px/1.7 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.analytics-choice[hidden],[data-analytics-settings][hidden]{display:none!important}.analytics-choice p{margin:0 0 12px}.analytics-choice a,.privacy-page a{text-decoration:underline;text-underline-offset:3px}.analytics-choice>div{display:flex;gap:12px;justify-content:flex-end}.analytics-choice button{font:inherit;cursor:pointer;border:1px solid var(--teal);color:var(--ink);background:transparent;padding:7px 18px;border-radius:4px}.analytics-choice button:last-child{background:var(--ink);color:white}.analytics-choice button:focus-visible,.analytics-link:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.privacy-page{max-width:850px;padding-top:55px;padding-bottom:70px;font-size:17px;line-height:1.9}.privacy-page h1{font-size:32px}.privacy-page h2{font-size:22px;margin-top:35px}.privacy-date{font-size:14px;color:var(--muted)}@media(max-width:720px){.analytics-choice{padding:14px 16px;bottom:12px;font-size:13px}.privacy-page{font-size:16px}.privacy-page h1{font-size:27px}}@media print{.analytics-choice{display:none!important}}
