
/* 中文阅读字体统一优先苹方和微软雅黑，长表格仅在自身区域横向滚动。 */
:root{--paper:#f8f6f0;--white:#fffefa;--ink:#253d3d;--body:#343d3b;--muted:#76817a;--rule:#dedfd5;--accent:#326f61;--soft:#edf1e7;--reading-size:20px;--ui:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--body);font-family:var(--ui);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{border:1px solid var(--rule);background:transparent;color:var(--ink);border-radius:4px;padding:7px 11px}button:hover{background:var(--soft)}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}.rail{position:fixed;inset:0 auto 0 0;width:266px;padding:36px 27px 24px;background:#f1f1e8;border-right:1px solid var(--rule);display:flex;flex-direction:column;z-index:30}.book-label{font-family:var(--ui);font-size:23px;font-weight:600;letter-spacing:.08em;color:var(--ink)}.book-subtitle{font-size:11px;color:var(--muted);margin:9px 0 27px;letter-spacing:.08em}.nav-heading{font-size:10px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px}.rail nav{flex:1;overflow:auto;padding-right:5px;scrollbar-width:thin}.rail nav a{display:block;font-size:12px;line-height:1.65;color:#63736b;padding:5px 0 5px 12px;border-left:2px solid transparent}.rail nav a:hover{color:var(--accent);text-decoration:none}.rail nav a.is-active{border-color:var(--accent);color:var(--accent);font-weight:600}.rail nav .nav-level-2{font-size:13px;font-weight:600;color:var(--ink);padding-top:16px}.rail nav .nav-level-3{font-size:11px;padding-left:19px}.rail-footer{font-size:11px;color:var(--muted);margin-top:24px;border-top:1px solid var(--rule);padding-top:16px}.progress-track{height:2px;background:#d9ded3;margin-top:11px}.progress-track i{display:block;background:var(--accent);height:100%;width:0;transition:width .15s}.progress-label{display:flex;justify-content:space-between}.workspace{margin-left:266px}.toolbar{height:70px;position:sticky;top:0;z-index:20;background:#f8f6f0f5;backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);padding:0 38px;display:flex;justify-content:flex-end;gap:20px;align-items:center;font-size:12px}.reading-tools{display:flex;align-items:center;gap:6px;flex-shrink:0}.reading-tools button{padding:6px 8px;font-size:11px}.reading-tools .divider{height:14px;width:1px;background:var(--rule);margin:0 5px}.menu-button{display:none}.reading-shell{max-width:990px;padding:0 58px 90px;margin:auto}.hero{padding:62px 0 35px;border-bottom:1px solid var(--ink)}.hero .eyebrow{font-size:11px;letter-spacing:.18em;color:var(--accent);margin:0 0 31px}.hero .chapter-index{font-family:var(--ui);font-size:19px;color:var(--muted);margin:0 0 14px}.hero h1{font-family:var(--ui);font-weight:500;color:var(--ink);margin:0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:28px;row-gap:8px}.hero .year{font-family:var(--ui);font-size:88px;line-height:1.06;font-weight:400;letter-spacing:-.05em}.hero .chapter-name{font-size:39px;letter-spacing:.035em}.download-row{padding:18px 0 0;display:flex;align-items:center;gap:20px;font-size:11px;color:var(--muted)}.download-row a{border-bottom:1px solid #b9c7b5;padding-bottom:3px}.article{font-family:var(--ui);font-size:var(--reading-size);line-height:1.95;letter-spacing:.015em;overflow-wrap:anywhere}.article p{margin:0 0 1.05em;text-align:justify;text-indent:2em}.article p.continued{text-indent:0}.article h2,.article h3,.article h4{color:var(--ink);font-family:var(--ui);font-weight:600;scroll-margin-top:105px}.article h2{font-size:1.32em;line-height:1.6;margin:42px 0 29px;padding-top:6px}.article h3{font-size:1.09em;line-height:1.7;margin:35px 0 20px}.article h4{font-size:1em;line-height:1.7;margin:0 0 18px}.article sup{font-family:var(--ui);font-size:11px;vertical-align:super;padding:0 2px}.page-marker{display:flex;align-items:center;gap:16px;margin:34px 0 25px;font-family:var(--ui);font-size:10px;color:var(--muted);user-select:none}.page-marker span{height:1px;background:var(--rule);flex:1}.page-marker button{border:0;padding:1px 0 1px 8px;font-size:10px;color:var(--muted)}.page-marker b{font-weight:400;color:var(--accent);margin-left:3px}.figure-block{margin:32px 0 40px;padding:23px 22px 19px;border:1px solid var(--rule);background:var(--white);scroll-margin-top:94px}.figure-block figcaption{font-size:15px;font-family:var(--ui);line-height:1.65;color:var(--ink);font-weight:500;margin-bottom:20px;letter-spacing:0}.image-button{border:0;padding:0;background:transparent;display:block;width:100%;line-height:0;border-radius:0;cursor:zoom-in}.image-button:hover{background:transparent}.image-button img{display:block;width:100%;height:auto}.article .redraw-note{font-family:var(--ui);font-size:10px;line-height:1.7;color:#8b7965;margin:11px 0 0;text-indent:0;letter-spacing:0}.figure-transcript{margin-top:20px;border-top:1px solid var(--rule);padding-top:13px;font-family:var(--ui);font-size:12px;line-height:1.85;letter-spacing:0}.figure-transcript summary{color:var(--accent);font-size:12px;cursor:pointer;margin-bottom:11px}.figure-transcript p{font-size:12px;text-indent:0;text-align:left;margin:8px 0}.figure-source{font-family:var(--ui);font-size:10px;color:var(--muted);line-height:1.8!important;text-indent:0!important;text-align:left!important;margin:14px 0 0!important;letter-spacing:0}.table-scroll{overflow:auto;overscroll-behavior-inline:contain;max-width:100%;margin:15px 0 6px}.table-scroll table{border-collapse:collapse;min-width:100%;font-family:var(--ui);font-size:12px;line-height:1.75;letter-spacing:0}.table-scroll th,.table-scroll td{text-align:left;padding:10px 12px;border-bottom:1px solid #e6e8df;vertical-align:top;min-width:52px}.table-scroll th{color:var(--ink);font-weight:500;background:#f1f4eb;white-space:nowrap}.table-scroll td:first-child{color:var(--ink)}.figure-transcript .table-scroll td:last-child{font-variant-numeric:tabular-nums}.book-table{margin:30px 0}.book-table h4{font-size:15px;font-family:var(--ui)}.article .table-unit{font-size:11px;font-family:var(--ui);color:var(--muted);text-align:right;text-indent:0;margin-bottom:5px}.column-box{margin:35px 0;padding:26px 28px 12px;background:#edf0e4;border-left:3px solid #8ca78a;scroll-margin-top:90px}.column-box h4{font-size:17px;line-height:1.8;color:#4f6953}.column-box p{font-size:.88em}.footnote{border-top:1px solid var(--rule);padding-top:15px;margin:25px 0 18px;scroll-margin-top:100px}.footnote p{font-size:12px!important;font-family:var(--ui);line-height:1.8!important;text-indent:0!important;color:var(--muted);text-align:left!important}.end-mark{text-align:center;color:#9ba696;letter-spacing:1em;font-size:16px;margin-top:35px}.toast{position:fixed;bottom:25px;left:calc(50% + 133px);transform:translateX(-50%);color:white;background:var(--ink);padding:10px 20px;font-size:12px;border-radius:5px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:70}.toast.visible{opacity:1}.source-dialog,.zoom-dialog{border:1px solid var(--rule);background:var(--paper);color:var(--ink);padding:0;box-shadow:0 20px 90px #18372b30;border-radius:7px;max-width:calc(100vw - 36px);max-height:calc(100vh - 36px)}dialog::backdrop{background:#1931299c;backdrop-filter:blur(3px)}.source-dialog{width:1200px;height:88vh}.dialog-toolbar{height:63px;padding:12px 18px;border-bottom:1px solid var(--rule);display:flex;gap:9px;align-items:center}.dialog-toolbar h2{font-size:14px;margin:0 11px 0 0;white-space:nowrap}.dialog-toolbar select{padding:7px 10px;background:var(--white);border:1px solid var(--rule);font-size:11px;max-width:265px;color:var(--ink)}.dialog-toolbar button{font-size:12px;padding:6px 10px}.dialog-toolbar .close-dialog{margin-left:auto;font-size:18px;line-height:1}.source-layout{display:grid;grid-template-columns:1.15fr 1fr;height:calc(100% - 63px);min-height:0}.source-image{overflow:auto;background:#e5e6dd;padding:20px}.source-image img{display:block;width:100%;height:auto}.raw-panel{overflow:auto;padding:25px 23px}.raw-panel h3{font-size:12px;font-weight:500;color:var(--accent);margin:0 0 18px}.raw-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--ui);font-size:16px;line-height:1.9;margin:0;color:#48554c}.zoom-dialog{width:95vw;height:91vh}.zoom-view{height:calc(100% - 63px);overflow:auto;text-align:center;display:flex;align-items:flex-start;justify-content:center;padding:20px;background:#edece5}.zoom-view img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;margin:auto}.zoom-view.actual{display:block}.zoom-view.actual img{max-width:none;max-height:none;margin:0 auto}.mobile-scrim{display:none}.noscript{font-size:12px;color:#8b6a45;margin:20px 0}
/* 原图对照置于图下右侧，保留可见焦点与足够的点击区域。 */
.figure-actions{display:flex;justify-content:flex-end;margin-top:5px;font-family:var(--ui);letter-spacing:0}
.figure-original-toggle{border:0;border-radius:0;padding:6px 0;min-height:30px;background:transparent;color:var(--muted);font-size:11px;line-height:1.6}
.figure-original-toggle:hover{background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
/* 全书章名常驻列表，小节由原生折叠控件展开；目录滚动不传递到正文。 */
.rail{min-height:0}.rail>.book-label,.rail>.book-subtitle,.rail>.nav-heading,.rail>.rail-footer{flex-shrink:0}
.rail .book-toc{position:relative;min-height:0;overscroll-behavior:contain;padding-block:2px 12px}
.toc-chapter{margin:0 0 3px}.toc-chapter-row{display:flex;align-items:flex-start;gap:1px;list-style:none;cursor:pointer;border-radius:3px}
.toc-chapter-row::-webkit-details-marker{display:none}.toc-chapter-row:hover{background:#e9ecdf}
.chapter-chevron{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:34px;font-size:20px;line-height:1;color:var(--muted);transition:transform .15s}
.toc-chapter[open]>.toc-chapter-row .chapter-chevron{transform:rotate(90deg)}
.rail .toc-chapter-row .toc-chapter-link{flex:1;min-width:0;padding:7px 4px 7px 0;border:0;font-size:12px;line-height:1.7;font-weight:400;overflow-wrap:anywhere}
.toc-chapter.is-current>.toc-chapter-row{background:#e3e9dc}.rail .toc-chapter-link[aria-current="page"]{color:var(--accent);font-weight:600}
.toc-sections{margin:1px 0 10px 11px;padding-left:12px;border-left:1px solid var(--rule)}
.rail .toc-sections a{padding:5px 4px 5px 9px;font-size:11px;line-height:1.7;font-weight:400}
.rail .toc-sections .nav-level-2{font-weight:500;color:var(--ink)}.rail .toc-sections .nav-level-3{padding-left:17px;font-size:10px}
@media(min-width:1500px){.reading-shell{max-width:1040px;padding-inline:65px}.toolbar{padding-inline:65px}}
@media(max-width:1150px){.rail{width:235px;padding-inline:22px}.workspace{margin-left:235px}.reading-shell{padding-inline:36px}.toolbar{padding-inline:26px;gap:12px}.hero .chapter-name{font-size:33px}.hero .year{font-size:76px}.reading-tools button{padding:6px}.reading-tools .copy-label{display:none}.toast{left:calc(50% + 117px)}}
@media(max-width:900px){.rail{transform:translateX(-100%);transition:transform .2s;width:270px;z-index:60}.workspace{margin-left:0}.menu-button{display:block;border:0;font-size:16px;padding:4px 8px}.toolbar{padding-inline:14px;gap:8px;justify-content:space-between}.menu-open .rail{transform:translateX(0)}.menu-open .mobile-scrim{display:block;position:fixed;inset:0;background:#19312970;z-index:50;border:0;border-radius:0}.reading-shell{max-width:850px;padding-inline:32px}.hero{padding-top:47px}.toast{left:50%}}
@media(max-width:600px){:root{--reading-size:18px}.toolbar{height:60px}.reading-tools{gap:2px}.reading-tools .divider{margin-inline:3px}.reading-tools .copy-button{display:none}.reading-shell{padding:0 21px 60px}.hero{padding:34px 0 25px}.hero .eyebrow{font-size:9px;margin-bottom:25px;letter-spacing:.14em}.hero .chapter-index{font-size:15px}.hero h1{gap:10px;display:block}.hero .year{display:block;font-size:70px}.hero .chapter-name{display:block;font-size:31px;margin-top:13px}.download-row{gap:16px;flex-wrap:wrap;font-size:10px}.article{line-height:1.94}.article h2{font-size:1.25em;margin-top:30px}.article h3{font-size:1.08em}.figure-block{padding:15px 12px}.figure-block figcaption{font-size:13px}.figure-transcript{font-size:11px}.figure-transcript p{font-size:11px}.table-scroll table{font-size:11px}.table-scroll th,.table-scroll td{padding:8px}.column-box{padding:21px 17px 8px}.column-box h4{font-size:15px}.page-marker{margin-top:27px}.source-dialog{height:94vh;max-width:calc(100vw - 14px);max-height:calc(100vh - 14px)}.dialog-toolbar{padding:9px;gap:5px;height:58px}.dialog-toolbar h2{font-size:12px;margin-right:2px}.dialog-toolbar select{font-size:10px;width:160px;padding:7px 4px}.dialog-toolbar button{padding:6px}.source-layout{height:calc(100% - 58px);display:block;overflow:auto}.source-image{overflow:visible;padding:12px}.raw-panel{overflow:visible;padding:20px}.raw-panel pre{font-size:15px}.zoom-dialog{max-width:calc(100vw - 12px);width:97vw}.zoom-dialog .dialog-toolbar h2{overflow:hidden;text-overflow:ellipsis;max-width:45vw}.zoom-view{padding:8px}}
/* 窄屏对照窗口优先留足页码选择和关闭按钮的空间。 */
@media(max-width:600px){.source-dialog .dialog-toolbar h2{display:none}.source-dialog .dialog-toolbar select{min-width:0;flex:1;width:auto;max-width:260px}.source-dialog .dialog-toolbar button{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.rail,.toolbar,.download-row,.page-marker,.figure-actions,.redraw-note,.toast,dialog,.mobile-scrim,.skip-link{display:none!important}.workspace{margin:0}.reading-shell{max-width:none;padding:0}.hero{padding:0 0 20px}.hero .year{font-size:45px}.hero .chapter-name{font-size:30px}.hero .eyebrow,.hero .chapter-index{margin-block:8px}.article{font-size:11pt;line-height:1.75}.figure-block{break-inside:avoid;padding:12px;margin:18px 0}.figure-block img{max-height:145mm;object-fit:contain}.figure-transcript{font-size:9pt}.table-scroll{overflow:visible}.table-scroll table{font-size:9pt}.column-box{break-inside:avoid}.footnote p{font-size:8pt!important}body{background:white}.source-page{break-before:auto}}

/* 相邻章节与总目录沿用统一阅读版式。 */
.chapter-pagination{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--rule);margin-top:50px;padding-top:25px;font-size:11px}.chapter-pagination a{color:var(--muted)}.chapter-pagination strong{display:block;font-size:13px;line-height:1.8;color:var(--ink);font-weight:500;margin-top:7px}.chapter-pagination a:last-child{text-align:right}.article .ocr-lines p{font-family:var(--ui);font-size:12px;line-height:1.9;text-indent:0;text-align:left;white-space:pre-wrap}.index-main{max-width:1120px;margin:auto;padding:65px 65px 90px}.index-main .hero{padding-top:15px}.index-main .hero h1{display:block}.book-title{display:block;font-size:58px;letter-spacing:.08em}.book-years{font-family:var(--ui);font-size:37px;color:var(--muted);font-weight:400;display:block;margin-top:24px}.index-section{margin-top:45px}.index-section h2{font-size:13px;font-weight:500;letter-spacing:.1em;color:var(--muted);padding-bottom:15px;border-bottom:1px solid var(--rule)}.book-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.book-entry{display:flex;align-items:baseline;gap:20px;border-bottom:1px solid var(--rule);padding:18px 0;color:var(--ink)}.book-entry:hover{text-decoration:none;color:var(--accent)}.entry-year{font-family:var(--ui);font-size:25px;min-width:58px}.entry-title{font-family:var(--ui);font-size:16px;line-height:1.8}.index-home{font-size:11px;color:var(--accent)}
@media(max-width:600px){.index-main{padding:30px 22px 60px}.book-title{font-size:37px}.book-years{font-size:29px}.book-grid{grid-template-columns:1fr}.entry-title{font-size:16px}.chapter-pagination{gap:20px}.hero .chapter-name{overflow-wrap:anywhere;text-wrap:balance}}
@media print{.chapter-pagination{display:none}.figure-transcript:not([open]){display:none}}
