:root{--paper:#fff;--ink:#252b28;--muted:#69726d;--green:#286b59;--line:#dce2de;--wash:#f4f6f3;--highlight:#f0e7bb;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:"PingFang SC","Microsoft YaHei",sans-serif;--reading-font:var(--serif);--reading-size:19px;--reading-line:1.95;--vvh:100dvh;--page-gutter:clamp(24px,7.5vw,48px);color-scheme:light;font-synthesis:none}
*{box-sizing:border-box}html{background:var(--paper);scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:15px}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button{border:0;cursor:pointer;color:inherit;background:none}a{color:var(--green);text-decoration:none}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}button, a{touch-action:manipulation}svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}[hidden]{display:none!important}h1,h2,h3{font-family:var(--serif);font-weight:600;text-wrap:pretty}input,textarea{color:var(--ink);background:var(--paper)}
.topbar{height:64px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:0;position:sticky;top:0;background:var(--paper);z-index:10;max-width:760px;margin:auto}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink)}.book-title{font-family:var(--serif);font-size:18px;min-height:44px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-button[aria-pressed=true]{color:var(--green)}#bookmark[aria-pressed=true] svg{fill:var(--green);stroke:var(--green)}
#reader{max-width:696px;margin:0 auto;padding:39px var(--page-gutter) 160px}.eyebrow{font-size:12px;letter-spacing:.06em;color:var(--muted);line-height:1.7;margin-bottom:14px}h1{font-size:34px;line-height:1.35;letter-spacing:.03em;outline:none}.english-title{margin-top:7px;font:16px/1.6 Georgia,"Times New Roman",serif;color:var(--muted)}.article-meta{display:flex;align-items:center;gap:7px;margin-top:17px;flex-wrap:wrap;font-size:12px;color:var(--muted);min-height:32px}.meta-dot{color:var(--muted)}#summary-toggle{font-size:12px;color:var(--green);margin-left:auto;min-height:44px;padding:0 0 0 12px;display:flex;gap:7px;align-items:center}#summary-toggle span{font-size:16px}#summary{margin:11px 0 0;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;line-height:1.85;color:var(--muted)}
.prose{margin-top:27px;font-family:var(--reading-font);font-size:var(--reading-size);line-height:var(--reading-line);overflow-wrap:break-word;line-break:strict}.prose p{margin:0 0 1.25em;text-align:justify}.prose em{font-style:normal}.prose>p:first-child:has(>em:only-child){color:var(--muted);font-size:.93em;margin-bottom:1.65em}.prose strong{font-weight:600}.prose h2,.prose h3{font-size:1.2em;margin:1.8em 0 .8em;line-height:1.6}.prose ul,.prose ol{padding-left:1.5em}.prose blockquote{margin:1.3em 0;padding:0 1em;color:var(--muted)}.prose [lang=en]{font-family:Georgia,"Times New Roman",serif;text-align:left;hyphens:auto;line-height:1.8}.prose.lang-en{font-family:Georgia,"Times New Roman",serif;line-height:1.8}.prose.lang-en p{text-align:left}.prose mark{color:inherit;background:var(--highlight);padding:1px 0;border-radius:1px;cursor:pointer}.prose mark.has-note{text-decoration:underline;text-decoration-color:#a59859;text-underline-offset:5px}.translation-notice{font:13px/1.7 var(--sans);color:var(--muted);padding:12px 0;margin-bottom:22px}.chapter-navigation{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.chapter-navigation button{text-align:left;padding:0;min-height:66px}.chapter-navigation button:last-child{text-align:right}.chapter-navigation span{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}.chapter-navigation strong{display:block;font-family:var(--serif);font-size:17px;line-height:1.5;font-weight:500;color:var(--green)}.chapter-end{text-align:center;color:var(--muted);font-family:var(--serif);font-size:14px;letter-spacing:.08em;margin:34px 0 0}
.reader-dock{position:fixed;bottom:0;left:50%;transform:translateX(-50%);background:var(--paper);z-index:15;width:100%;max-width:760px;padding:0 18px env(safe-area-inset-bottom,0px);border-top:1px solid var(--line)}.progress-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;font-size:12px;letter-spacing:.02em;color:var(--muted);padding:0 6px}.progress-track{height:1px;background:var(--line);margin:0 6px}.progress-track>div{height:1px;background:var(--green);width:0}.tools{display:grid;grid-template-columns:repeat(4,1fr);padding:6px 0 7px}.tools button{display:flex;flex-direction:column;align-items:center;gap:5px;min-height:52px;justify-content:center;padding:4px 0}.tools button>span{position:relative;font-size:12px;line-height:1.2}.tools button:hover,.tools button[aria-expanded=true]{color:var(--green)}.note-dot{position:absolute;right:-7px;top:1px;width:4px;height:4px;background:var(--green);border-radius:50%}.focus-mode .topbar{transform:translateY(-100%);position:fixed;left:0;right:0}.focus-mode #reader{padding-top:39px}.focus-return{position:fixed;right:max(18px,calc((100vw - 700px)/2));bottom:calc(22px + env(safe-area-inset-bottom));z-index:15;border:1px solid var(--line);background:var(--paper);width:44px;height:44px;min-height:44px;min-width:44px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%}.focus-return svg{width:18px}
#sheet{padding:0;border:1px solid var(--line);border-bottom:0;color:var(--ink);background:var(--paper);width:min(100%,560px);max-width:100%;max-height:calc(var(--vvh) - 22px);position:fixed;inset:auto 0 var(--keyboard,0px);margin:0 auto;border-radius:18px 18px 0 0;overflow:hidden;overscroll-behavior:contain}#sheet[open]{display:flex;flex-direction:column}#sheet::backdrop{background:rgba(26,34,29,.28)}body:has(#sheet[open]){overflow:hidden}.sheet-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;padding:16px 15px 12px 24px;border-bottom:1px solid var(--line)}.sheet-header h2{font-size:25px;line-height:1.4}.sheet-body{padding:20px 24px calc(26px + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.sheet-body h3{font-size:19px;margin:22px 0 12px}.sheet-body p{line-height:1.8}.sheet-intro{color:var(--muted);font-size:13px;margin-bottom:18px}.search-field{width:100%;min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:4px;font-size:15px;appearance:none;margin:3px 0 10px}.toc-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}.toc-head img{width:52px;height:76px;object-fit:contain}.toc-head strong{display:block;font-family:var(--serif);font-size:19px;margin-bottom:7px}.toc-head span{font-size:12px;color:var(--muted)}.toc-group{font-size:12px;letter-spacing:.05em;color:var(--muted);padding:22px 0 8px}.toc-item{display:flex;align-items:baseline;gap:12px;min-height:48px;padding:12px 0;border-bottom:1px solid var(--line);width:100%;text-align:left;font-family:var(--serif);font-size:17px;line-height:1.5}.toc-item .num{font:12px var(--sans);min-width:17px;color:var(--muted)}.toc-item .toc-name{flex:1}.toc-item .toc-status{font:12px var(--sans);color:var(--green);white-space:nowrap}.toc-item.current{color:var(--green);font-weight:600}.toc-item svg{width:13px;height:15px}.empty{padding:27px 0;text-align:center;color:var(--muted);font-size:14px;line-height:1.85}.option{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:17px 0;border-bottom:1px solid var(--line);text-align:left}.option strong{display:block;font-size:16px;font-weight:500}.option small{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:5px}.option .check{width:24px;color:var(--green)}.option.selected strong{color:var(--green)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 23px}.setting-label{font-size:14px;flex-shrink:0}.size-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:4px}.size-control button{width:56px;height:44px;font-family:Georgia,serif;font-size:21px}.size-control span{min-width:47px;text-align:center;font-size:13px;color:var(--muted)}.segments{display:flex;gap:5px}.segments button{border:1px solid var(--line);border-radius:3px;min-height:44px;min-width:65px;padding:5px 12px;font-size:13px}.segments .selected{border-color:var(--green);background:var(--wash);color:var(--green)}.themes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:26px}.themes button{padding:10px 5px;border:1px solid var(--line);border-radius:4px;font-size:13px;min-height:65px;display:flex;align-items:center;justify-content:center;gap:8px}.themes button.selected{border-color:var(--green);color:var(--green)}.theme-swatch{width:21px;height:21px;border:1px solid #c4c7c2;border-radius:50%}.text-action{color:var(--green);min-height:44px;padding:9px 0;font-size:14px}.wide{width:100%;text-align:center}.subtle{color:var(--muted)}.primary{color:var(--paper);background:var(--green);min-height:46px;padding:11px 21px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center}.note-editor{resize:vertical;min-height:125px;max-height:32vh;line-height:1.8;width:100%;border:1px solid var(--line);border-radius:4px;padding:12px;outline-offset:1px;font-size:16px}.quote-preview{margin:0 0 17px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:16px/1.85 var(--serif);color:var(--muted);max-height:150px;overflow:auto;white-space:pre-wrap}.editor-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px}.note-card{padding:17px 0;border-bottom:1px solid var(--line)}.note-card button{display:block;padding:0;width:100%;text-align:left}.note-card .note-quote{font:16px/1.8 var(--serif);max-height:90px;overflow:hidden}.note-card .note-content{font-size:14px;margin-top:9px;white-space:pre-wrap;overflow-wrap:anywhere}.note-card .note-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:12px;line-height:1.5;gap:15px}.book-summary{display:flex;gap:23px;align-items:center;margin:5px 0 24px}.book-summary img{width:112px;height:164px;object-fit:contain}.book-summary h3{font-size:28px;margin:0 0 12px;line-height:1.4}.book-summary p{font-size:13px;color:var(--muted)}.book-description{font-family:var(--serif);font-size:17px;line-height:1.9!important;margin-bottom:22px}.seek{width:100%;accent-color:var(--green);margin:22px 0;min-height:30px}.seek-label{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.progress-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:20px;padding-top:10px}.progress-nav button{min-height:44px;color:var(--green)}.selection-tools{position:fixed;z-index:25;display:flex;background:var(--ink);color:var(--paper);padding:3px;border-radius:7px;box-shadow:0 3px 13px #0002}.selection-tools button{padding:8px 17px;min-height:44px;font-size:14px}.selection-tools button+button{border-left:1px solid #ffffff30}.toast{position:fixed;left:50%;bottom:145px;transform:translateX(-50%);z-index:100;background:var(--ink);color:var(--paper);padding:11px 20px;border-radius:5px;font-size:13px;max-width:calc(100vw - 36px);text-align:center;pointer-events:none}.located{animation:locate 1.4s ease-out}@keyframes locate{0%,55%{background:var(--highlight)}100%{background:transparent}}
html[data-theme=warm]{--paper:#f4f0e6;--ink:#38362e;--muted:#716d61;--green:#466b52;--line:#dcd6c8;--wash:#ece7da;--highlight:#e7d9a2}html[data-theme=night]{--paper:#202723;--ink:#e0e5df;--muted:#abb7ae;--green:#9fc9af;--line:#3d4b42;--wash:#303d34;--highlight:#514c31;color-scheme:dark}
@media(min-width:700px){#reader{padding:52px var(--page-gutter) 170px}.topbar{padding:0 30px;height:72px}.reader-dock{border-left:1px solid var(--line);border-right:1px solid var(--line);padding-left:45px;padding-right:45px}h1{font-size:38px}.prose{margin-top:34px}#sheet{border:1px solid var(--line);border-radius:12px;inset:0;margin:auto;max-height:min(80dvh,780px);height:fit-content}.sheet-body{padding-bottom:26px}}
@media(max-width:359px){#reader{padding:30px var(--page-gutter) 155px}h1{font-size:31px}.article-meta{gap:5px}#summary-toggle{padding-left:7px}.sheet-body{padding-left:20px;padding-right:20px}.segments button{min-width:55px;padding:5px 9px}.setting-row{gap:8px}.selection-tools button{padding-left:15px;padding-right:15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
/* R02-A keeps the reading surface; the refinements live in the tools. */
html{overflow-anchor:none}#reader{padding-bottom:calc(var(--dock-height,112px) + 54px)}
.return-place{display:flex;align-items:center;color:var(--green)}.return-place #return-reading{display:flex;align-items:center;gap:9px;text-align:left;min-height:44px;min-width:0;flex:1;font-size:12px;padding:0 6px}.return-place #return-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sheet-body{min-height:0}.sheet-footer{padding:14px 24px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-shrink:0;background:var(--paper)}.sheet-footer .editor-actions{margin:0}.sheet-footer .wide{margin-top:7px}.sheet-footer .primary{min-width:132px}
#sheet[data-panel=toc]{height:min(760px,calc(var(--vvh) - 22px))}#sheet[data-panel=toc] .sheet-body{padding:0;display:flex;flex-direction:column;overflow:hidden;flex:1}.toc-fixed{padding:19px 24px 0;flex-shrink:0}.toc-head{margin-bottom:13px}.toc-head img{width:40px;height:58px}.toc-head strong{font-size:18px;margin-bottom:5px}.toc-search-wrap{position:relative}.toc-search-wrap .search-field{padding-right:42px;margin-bottom:0;font-size:16px}.toc-search-wrap input::-webkit-search-cancel-button{display:none}#clear-toc{position:absolute;right:2px;top:4px;width:42px;height:44px;color:var(--muted);font-size:22px}#toc-items{padding:0 24px calc(24px + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;outline:none}.toc-item.current{position:relative}.toc-item.current:before{content:"";position:absolute;left:-12px;top:17px;bottom:17px;width:2px;background:var(--green)}
#sheet[data-panel=editor]{max-height:calc(var(--vvh) - 12px)}#sheet[data-panel=editor] .sheet-body{padding-bottom:14px}.editor-source{font-size:12px;color:var(--muted);display:flex;gap:15px;justify-content:space-between;margin-bottom:10px}.editor-source>span{white-space:nowrap}.quote-preview{max-height:130px;line-height:1.8;font-size:16px;margin-bottom:20px}.editor-label{display:block;font-size:13px;margin-bottom:10px;color:var(--muted)}.note-editor{min-height:132px;max-height:none;height:clamp(110px,20dvh,180px);resize:none}.draft-state{font-size:11px;color:var(--muted);margin-top:8px;min-height:20px}.draft-card{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;width:100%;padding:18px 0;border-bottom:1px solid var(--line);color:var(--green)}.draft-card>span:first-child{min-width:0}.draft-card small{font-size:11px;color:var(--muted);display:block;margin-bottom:7px}.draft-card strong{font-size:14px;line-height:1.6;font-weight:400;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.draft-card>span:last-child{font-size:12px;white-space:nowrap}.note-card .note-locate{font-size:12px;color:var(--green);width:auto;min-height:44px;margin-top:4px}.keyboard-open #sheet[data-panel=editor] .quote-preview{max-height:64px;margin-bottom:12px;padding:8px 0}.keyboard-open #sheet[data-panel=editor] .sheet-body{padding-top:12px}.keyboard-open .sheet-footer{padding-top:10px;padding-bottom:10px}.keyboard-open .note-editor{height:110px;min-height:90px}
@media(min-width:700px){#sheet[data-panel=toc]{height:min(80dvh,780px)}#sheet[data-panel=editor]{max-height:calc(var(--vvh) - 32px)}}
@media(max-height:550px){#sheet[data-panel=editor] .quote-preview{max-height:65px;padding:7px 0;margin-bottom:10px}#sheet[data-panel=editor] .sheet-body{padding-top:10px}.note-editor{min-height:90px;height:100px}.sheet-header{padding-top:8px;padding-bottom:8px}.sheet-header h2{font-size:23px}.toc-head{display:none}.toc-fixed{padding-top:10px}}
#toc-items{scrollbar-width:thin;scrollbar-color:var(--line) transparent}
@media(max-width:699px){html{scrollbar-width:none}html::-webkit-scrollbar{display:none}}

#loading{position:fixed;inset:0;background:var(--paper);z-index:200;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:center;padding:30px;text-align:center;line-height:1.8}#loading a,#loading button{min-height:44px;color:var(--green)}

/* Settings share one quiet label/control rhythm, with deeper mark controls on demand. */
#sheet[data-panel=settings] .sheet-body{padding-top:10px;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
#sheet[data-panel=settings] .setting-row{min-height:62px;margin:0;gap:12px}
#sheet[data-panel=settings] .size-control{border:0;background:var(--wash);border-radius:7px}
#sheet[data-panel=settings] .size-control button{width:52px}
#sheet[data-panel=settings] .segments{gap:4px}
#sheet[data-panel=settings] .segments button{border-color:transparent;border-radius:6px;color:var(--muted)}
#sheet[data-panel=settings] .segments .selected{color:var(--green);background:var(--wash);border-color:var(--line)}
.paper-options{display:flex;align-items:center;gap:7px}
.paper-options button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:7px 8px;font-size:12px;color:var(--muted);border-radius:6px}
.paper-options button[aria-pressed=true]{color:var(--green)}
.paper-chip{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;flex-shrink:0;border-radius:50%;background:var(--chip-color);border:1px solid #929b9460;color:#286b59;font-size:13px;line-height:1}
.paper-options button[aria-pressed=true] .paper-chip{outline:1px solid var(--green);outline-offset:3px}
.paper-options [data-theme=night] .paper-chip{color:#e0e5df}
.quick-marks{display:flex;align-items:center;gap:4px;min-width:0}
.quick-marks button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;height:44px;padding:0;border:1px solid transparent;border-radius:6px}
.quick-marks button[aria-pressed=true]{border-color:var(--green);background:var(--wash)}
.quick-marks [data-quick-sample]{font:20px/1.4 var(--serif);pointer-events:none}
.settings-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}
.settings-focus{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 17px;border-radius:24px;background:var(--wash);color:var(--green);font-size:14px}
.settings-focus svg{width:18px;height:18px}
.settings-reset{color:var(--muted);border-radius:50%}.settings-reset svg{width:20px;height:20px}
@media(hover:hover){.settings-reset:hover,.paper-options button:hover{color:var(--green);background:var(--wash)}}
@media(max-width:359px){.quick-marks{gap:1px}.quick-marks button{flex-basis:38px}.paper-options{gap:5px}.paper-options button{padding-left:7px;padding-right:7px}}

/* Source editions share semantic HTML. Presentation never changes paragraph keys. */
.edition-label{font:12px/1.8 var(--sans);color:var(--muted);margin-bottom:14px;letter-spacing:.04em}
.chapter-ornament{display:block;width:112px;height:45px;margin:18px 0 8px;object-fit:contain}
.book-edition .prose{margin-top:32px}
.book-edition .prose em{font-style:italic;font-synthesis:style}
.book-edition .prose sup{font: .7em/0 var(--sans);vertical-align:super}
.book-edition .footnote-ref{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:28px;vertical-align:baseline;line-height:1;color:var(--green);text-indent:0}
.book-edition .prose .footnote{border-top:1px solid var(--line);margin-top:3em;padding-top:1.4em;color:var(--muted);font:15px/1.85 Georgia,"Times New Roman",var(--serif);overflow-wrap:anywhere}
.book-edition .footnote::before{content:'本章注释';display:block;font:13px/1.7 var(--sans);letter-spacing:.1em;margin-bottom:1.3em}
.book-edition .footnote hr{display:none}.book-edition .footnote ol{padding-left:1.6em}
.book-edition .prose .footnote p{text-align:left;text-indent:0;margin-bottom:1em}
.book-edition .footnote-backref{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;text-indent:0}
.book-footnote{font:17px/1.9 Georgia,"Times New Roman",var(--serif);overflow-wrap:anywhere}.book-footnote p{margin:0 0 1em}.book-footnote em{font-style:italic}.book-footnote img{display:block;max-width:100%;height:auto;margin:1em auto}
/* Robertson's outlined notes need their original width to keep source type legible. */
body[data-book="library/source-361"] :is(.book-footnote,.footnote) a:has(>img[src$=".svg"]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-361"] :is(.book-footnote,.footnote) a>img[src$=".svg"]{max-width:none;width:auto;height:auto;margin:.6em 0}
@media(max-width:700px){body[data-book="library/source-361"] .book-footnote:has(img[src$=".svg"])::before{content:"原书图注可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
body[data-book="library/source-361"] .prose a:has(>img[alt^="原书索引："]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-361"] .prose a>img[alt^="原书索引："]{max-width:none;width:auto;height:auto;margin:1em 0}
@media(max-width:700px){body[data-book="library/source-361"] .prose p:has(>a>img[alt^="原书索引："])::before{content:"原书索引可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
/* Leviticus notes are outlined source SVGs; keep their type readable without altering the originals. */
body[data-book="library/source-330"] :is(.book-footnote,.footnote) a:has(>img[src$=".svg"]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-330"] :is(.book-footnote,.footnote) a>img[src$=".svg"]{max-width:none;width:auto;height:auto;margin:.6em 0}
@media(max-width:700px){body[data-book="library/source-330"] .book-footnote:has(img[src$=".svg"])::before{content:"原书图注可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
body[data-book="library/source-330"] .prose blockquote a:has(>img[src$=".svg"]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-330"] .prose blockquote a>img[src$=".svg"]{max-width:none;width:auto;height:auto;margin:.6em 0}
@media(max-width:700px){body[data-book="library/source-330"] .prose blockquote:has(img[src$=".svg"])::before{content:"原书引文可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
.book-footnote table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1em 0;font-size:16px;line-height:1.65}
.book-footnote table :is(th,td){padding:.2em .8em .45em 0;text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal;hyphens:none}
.prose img{display:block;max-width:100%;height:auto;margin:1.5em auto}.prose figure{margin:1.6em 0}.prose figcaption{font:.8em/1.7 var(--sans);color:var(--muted);text-align:center}
body[data-book="library/source-330"] .prose a:has(>img[alt^="原书图表："]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-330"] .prose a>img[alt^="原书图表："]{max-width:none;width:auto;height:auto;margin:1em 0}
@media(max-width:700px){body[data-book="library/source-330"] .prose p:has(>a>img[alt^="原书图表："])::before{content:"原书图表可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
body[data-book="library/source-330"] .prose a:has(>img[alt^="原书索引："]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-330"] .prose a>img[alt^="原书索引："]{max-width:none;height:auto;margin:1em 0}
@media(max-width:700px){body[data-book="library/source-330"] .prose p:has(>a>img[alt^="原书索引："])::before{content:"点击索引可查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}
.prose .source-bibliography p{text-align:left;text-indent:0;font-family:Georgia,"Times New Roman",var(--serif);line-height:1.8}
.trial-end{text-align:center;font:16px/2 var(--serif);margin:2.6em 0 0;color:var(--muted)}.trial-end a{display:inline-block;font:13px/1.8 var(--sans);padding:14px 0}
.book-edition[data-presentation=book] .chapter-heading{padding-top:12px}
.book-edition[data-presentation=book] h1{font-size:44px;letter-spacing:.12em;font-weight:500}
.book-edition[data-presentation=book] .prose>p{text-indent:2em;margin-bottom:.8em}
.book-edition[data-presentation=book] .prose>h2{font-size:1.12em;font-weight:500;letter-spacing:.12em;text-align:center;margin:2.6em 0 1.2em}
.book-edition[data-presentation=book] .prose blockquote{font-family:"Kaiti SC","STKaiti","KaiTi",var(--reading-font);font-size:1.04em;line-height:var(--reading-line);color:color-mix(in srgb,var(--ink) 83%,var(--paper));margin:1.8em 0 2em;padding:0 .5em;border:0}
.book-edition[data-presentation=book] .prose blockquote p{text-indent:2em;margin:0}
.book-edition[data-presentation=book] .prose blockquote p+p{margin-top:.8em}
.book-edition[data-presentation=book] .prose>blockquote:first-child{margin-top:.8em}
.book-edition .prose blockquote cite{display:block;text-align:right;text-indent:0;font: .8em/1.8 var(--sans);color:var(--muted);margin-top:.7em}
.book-edition[data-presentation=book] .prose strong{font-family:var(--sans);font-size:.96em;font-weight:600}
[data-theme=night] .chapter-ornament{filter:brightness(1.5)}
@media(max-width:359px){.book-edition[data-presentation=book] h1{font-size:38px}.book-edition[data-presentation=book] .prose blockquote{padding:0}}

.prose img:is([alt="原书希腊语术语"],[alt="原书外文字词"]),.book-footnote img:is([alt="原书希腊语术语"],[alt="原书外文字词"]){display:inline-block;width:auto;max-width:100%;height:1.1em;margin:0 .1em;vertical-align:-.14em}
.prose img[alt="原书字形"],.book-footnote img[alt="原书字形"]{display:inline-block;width:auto;max-width:1.3em;height:1em;margin:0 .03em;vertical-align:-.1em}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00054.png"]{width:.27em;max-width:none;height:auto;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00059.png"]{width:.55em;max-width:none;height:auto;margin:0;vertical-align:baseline}
/* These source fragments are 3px high; 00053 has 74px of empty right padding. */
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00053.png"]{display:inline-block;width:.125em;max-width:none;height:.1875em;object-fit:cover;object-position:left;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00055.png"]{display:inline-block;width:auto;max-width:none;height:.1875em;margin:0;vertical-align:baseline}
/* Genesis 1–17: tiny source marks retain their ratio to the 16px MOBI text. */
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00010.png"]{height:.1875em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00011.png"]{height:.3125em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00013.png"]{height:.125em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img:is([src$="book-328-image00019.png"],[src$="book-328-image00020.png"]){height:.375em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00030.png"]{height:.125em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00035.png"]{height:.375em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00052.png"]{height:.1875em;margin:0;vertical-align:baseline}
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00055.png"]{height:.0625em;margin:0;vertical-align:baseline}
/* Image 29 has ink only in its first column; retain the source file, trim blank space in layout. */
body[data-book="library/source-328"] :is(.prose,.book-footnote) img[src$="book-328-image00029.png"]{width:.1875em;height:.1875em;object-fit:cover;object-position:left;margin:0;vertical-align:baseline}

/* Original English editions retain paragraph spacing and Latin typography. */
body[data-reading-template=english] h1{font-family:Georgia,"Times New Roman",serif;font-size:36px;line-height:1.25;letter-spacing:0;overflow-wrap:break-word}
body[data-reading-template=english] .prose.lang-en{line-break:auto;hyphens:auto}
body[data-reading-template=english] .prose.lang-en>p{margin-bottom:1.15em;text-indent:0}
/* These source indexes contain one term per paragraph; keep their rows compact. */
body[data-book="library/source-328"] .prose:is([data-article$="-070"],[data-article$="-071"],[data-article$="-072"],[data-article$="-073"],[data-article$="-074"],[data-article$="-075"])>p{margin-bottom:.25em}
body[data-book="library/source-328"] .prose[data-article$="-075"]>hr~p{margin-bottom:1.15em}
body[data-reading-template=english] .prose.lang-en :is(h2,h3){font-family:Georgia,"Times New Roman",serif;text-align:left;letter-spacing:0;line-height:1.4}
body[data-reading-template=english] .prose.lang-en em{font-style:italic}
body[data-reading-template=english] .prose.lang-en blockquote{font-family:Georgia,"Times New Roman",serif;font-size:.96em;line-height:1.8;padding:0 .8em;border-left:2px solid var(--line);margin:1.6em 0}
body[data-reading-template=english] .prose.lang-en blockquote p{text-indent:0;text-align:left}
body[data-reading-template=english] .prose.lang-en blockquote p:has(br){overflow-wrap:normal}
body[data-reading-template=english] .prose.lang-en table{width:100%;border-collapse:collapse}
body[data-reading-template=english] .prose.lang-en table{font-size:16px;line-height:1.6;margin:1.4em 0}
body[data-reading-template=english] .prose.lang-en table>tbody{display:table;min-width:100%;width:100%;border-collapse:collapse}
body[data-reading-template=english] .prose.lang-en table :is(th,td){overflow-wrap:normal;word-break:normal;hyphens:none}
body[data-reading-template=english] .prose.lang-en table:has(tr>:nth-child(5))::before{content:"左右滑动查看完整表格";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}
body[data-reading-template=english] .prose.lang-en table :is(th,td){vertical-align:top;text-align:left;padding:0 .6em .7em 0}
body[data-reading-template=english] .prose.lang-en table :is(th,td):first-child{white-space:nowrap;width:4.5em;hyphens:none}
body[data-reading-template=english] .prose.lang-en table:has(tr>:nth-child(3)) :is(th,td){min-width:5em}
body[data-reading-template=english] .prose.lang-en table:has(tr>:nth-child(3)) :is(th,td):first-child{white-space:normal;width:auto}
body[data-reading-template=english] .prose.lang-en table.comparison-table>tbody{table-layout:fixed}
body[data-reading-template=english] .prose.lang-en table.comparison-table :is(th,td):first-child{white-space:normal;width:50%}
body[data-reading-template=english] .prose.lang-en table.comparison-table :is(th,td)[colspan]{width:auto}
body[data-reading-template=english] .prose.lang-en table.comparison-table p{margin:0}
body[data-reading-template=english] .prose.lang-en table.comparison-table p+p{margin-top:.6em}

/* Ezekiel's paired verse columns reserve narrow space for verse numbers. */
body[data-book="library/source-336"] .prose.lang-en:is([data-article="book-336-en-chapters-094"],[data-article="book-336-en-chapters-095"],[data-article="book-336-en-chapters-096"],[data-article="book-336-en-chapters-097"],[data-article="book-336-en-chapters-098"],[data-article="book-336-en-chapters-099"])>table:first-of-type>tbody{table-layout:fixed}
body[data-book="library/source-336"] .prose.lang-en:is([data-article="book-336-en-chapters-094"],[data-article="book-336-en-chapters-095"],[data-article="book-336-en-chapters-096"],[data-article="book-336-en-chapters-097"],[data-article="book-336-en-chapters-098"],[data-article="book-336-en-chapters-099"])>table:first-of-type :is(th,td){min-width:0}
body[data-book="library/source-336"] .prose.lang-en:is([data-article="book-336-en-chapters-094"],[data-article="book-336-en-chapters-095"],[data-article="book-336-en-chapters-096"],[data-article="book-336-en-chapters-097"],[data-article="book-336-en-chapters-098"],[data-article="book-336-en-chapters-099"])>table:first-of-type :is(th,td):nth-child(odd){width:var(--verse-column,1.6em);white-space:nowrap}
body[data-book="library/source-336"] .prose.lang-en:is([data-article="book-336-en-chapters-094"],[data-article="book-336-en-chapters-095"],[data-article="book-336-en-chapters-096"],[data-article="book-336-en-chapters-097"],[data-article="book-336-en-chapters-098"],[data-article="book-336-en-chapters-099"])>table:first-of-type :is(th,td):nth-child(even){width:calc((100% - 2 * var(--verse-column,1.6em)) / 2)}
body[data-book="library/source-336"] .prose.lang-en:is([data-article="book-336-en-chapters-097"],[data-article="book-336-en-chapters-098"],[data-article="book-336-en-chapters-099"])>table:first-of-type{--verse-column:3.3em}

/* Luther volume 27: keep the freedom/service diagram in two clear columns. */
body[data-book="library/source-326"] .prose table.comparison-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:1.4em 0;font-size:.9em;line-height:1.6}
body[data-book="library/source-326"] .prose table.comparison-table>tbody{display:table;width:100%;table-layout:fixed}
body[data-book="library/source-326"] .prose table.comparison-table td{width:50%;padding:0 .65em .7em 0;vertical-align:top;text-align:left}

/* John keeps the source's quiet hierarchy, Kai scripture and unruled quotations. */
body[data-book="library/source-115"]{--john-kai:"Kaiti TC","BiauKai","DFKai-SB","KaiTi","Kaiti SC","STKaiti",var(--reading-font)}
body[data-book="library/source-115"] h1.has-source-passage{overflow-wrap:normal}
body[data-book="library/source-115"] .chapter-source-passage{display:block;margin-top:.55em;font-size:.58em;line-height:1.6;letter-spacing:.02em;font-weight:400}
body[data-book="library/source-115"] .source-section-passage{display:inline-block;max-width:100%;font-size:.85em;font-weight:400;letter-spacing:0;overflow-wrap:normal}
body.book-edition[data-book="library/source-115"] .prose>h2{font-size:1.2em;font-weight:650;line-height:1.55;margin:2.4em 0 .9em;letter-spacing:.02em}
body[data-book="library/source-115"] .prose>h3{font-size:1.08em;font-weight:600;line-height:1.6;margin:1.8em 0 .7em;letter-spacing:0}
body.book-edition[data-book="library/source-115"] .prose>.source-additional-heading{font-size:1.1em;letter-spacing:.08em;margin-top:3em}
body[data-book="library/source-115"] .prose>blockquote:has(>p>sup:not([id]):first-child){font-family:var(--john-kai);font-size:.9em;color:var(--ink);border:0;padding:0 .6em;margin:1.5em 0 1.8em}
body.book-edition[data-book="library/source-115"] .prose>blockquote:has(br){font-family:var(--john-kai);font-size:.95em;color:var(--ink);border:0;padding:0 .8em}
body[data-book="library/source-115"] .prose blockquote p:has(br){text-align:left;text-indent:0;overflow-wrap:normal}
body[data-book="library/source-115"] .prose blockquote:has(br)>p+p{margin-top:1em}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] strong{font-family:var(--john-kai);font-weight:400}

/* Keep reference abbreviations readable on narrow screens. */
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-012"] :is(h4,h5,h6){font-family:var(--reading-font);font-size:1em;font-weight:400;line-height:1.7;margin:.85em 0;letter-spacing:0}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-012"] h4{padding-left:.8em}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-012"] h5{padding-left:1.6em}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-012"] h6{padding-left:2.4em}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-002"] table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:16px;line-height:1.7}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-002"] table :is(th,td){vertical-align:top;text-align:left;padding:0 0 .8em;overflow-wrap:normal;word-break:normal}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-002"] table :is(th,td):first-child{white-space:nowrap;width:5.7em;padding-right:.8em}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] table{width:100%;table-layout:fixed;border-collapse:collapse;margin:1.2em 0;font-size:16px;line-height:1.7}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] table :is(th,td){vertical-align:top;text-align:left;padding:.3em .55em .65em 0;overflow-wrap:normal;word-break:normal;font-weight:400}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] table :is(th,td):nth-child(2){width:4.6em;white-space:nowrap}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] table :is(th,td):nth-child(3){width:5.9em;padding-right:0}
body[data-book="library/source-115"] .prose[data-article="book-115-zh-chapters-013"] table thead th{border-bottom:1px solid var(--line)}
body[data-book="library/source-121"] .prose table{width:100%;border-collapse:collapse}
body[data-book="library/source-121"] .prose table :is(th,td){vertical-align:top;text-align:left;padding:0 0 .7em;font-weight:400}
body[data-book="library/source-121"] .prose table :is(th,td):first-child{white-space:nowrap;width:5em;padding-right:.7em}

/* Poetic lines retain a shared left edge instead of prose indentation. */
body[data-book="library/source-121"] .prose blockquote p:has(br){text-indent:0;text-align:left;overflow-wrap:normal}
body[data-book="library/source-177"] .prose table{width:100%;border-collapse:collapse;margin:1.2em 0}
body[data-book="library/source-177"] .prose table :is(th,td){width:50%;padding:.4em .6em;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}

/* Source part headings precede the reading unit title, retaining notes and anchors. */
body[data-reading-template=english] .prose:has(>.chapter-heading){margin-top:0}
body[data-reading-template=english] .prose.lang-en>.source-parent-heading{font-size:18px;line-height:1.55;font-weight:400;color:var(--muted);margin:0 0 .8em}
.prose>.chapter-heading{margin:24px 0 27px}

/* 1 Peter: the appendix distinguishes preaching audiences with source Kai type. */
body[data-book="library/source-289"] .prose em[lang="zh-Hans"]{font-family:"Kaiti SC","STKaiti","KaiTi",serif;font-style:normal}
body[data-book="library/source-289"] .prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.2em 0;font-size:16px;line-height:1.7}
body[data-book="library/source-289"] .prose table :is(th,td){text-align:left;vertical-align:top;padding:.45em .65em;border-bottom:1px solid var(--line);overflow-wrap:normal;word-break:normal;hyphens:none}
body[data-book="library/source-289"] .prose table :is(th,td):first-child{white-space:nowrap}
body[data-book="library/source-289"] .prose table :is(th,td):nth-child(2){white-space:nowrap}
body[data-book="library/source-289"] .prose table :is(th,td):nth-child(3){min-width:14em}
@media(max-width:600px){body[data-book="library/source-289"] .prose table::before{content:"左右滑动查看表格";display:block;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.7em}}

/* Romans revised: preserve the publisher’s small study-guide marker inline. */
body[data-book="library/source-314"] .prose img[src$="book-314-SG_icon.jpg"]{display:inline-block;margin:0 .25em 0 0;vertical-align:middle}
body[data-book="library/source-315"] .prose img[src$="book-315-SG_icon.jpg"]{display:inline-block;margin:0 .25em 0 0;vertical-align:middle}

body[data-book="library/source-316"] .prose img[src$="book-316-SG_icon.jpg"]{display:inline-block;margin:0 .25em 0 0;vertical-align:middle}

/* Keep Colossians glyph fragments on one source scale, including accented letters. */
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"]{margin:0}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="5"]{height:0.2083em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="7"]{height:0.2917em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="8"]{height:0.3333em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="11"]{height:0.4583em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="12"]{height:0.5em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="13"]{height:0.5417em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="14"]{height:0.5833em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="15"]{height:0.625em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="18"]{height:0.75em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="19"]{height:0.7917em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="20"]{height:0.8333em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="21"]{height:0.875em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="22"]{height:0.9167em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="23"]{height:0.9583em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="24"]{height:1em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="26"]{height:1.0833em}
body[data-book="library/source-273"] :is(.prose,.book-footnote) img[alt="原书字形"][height="27"]{height:1.125em}

body[data-book="library/source-273"] .prose table.comparison-table>thead{display:table;width:100%;table-layout:fixed}

/* Luther volume 1: keep the printed price table's columns visually distinct. */
body[data-book="library/source-322"] .prose table{width:100%;table-layout:fixed;border-collapse:collapse;margin:1.3em 0;font-size:18px;line-height:1.7}
body[data-book="library/source-322"] .prose table :is(th,td){padding:.45em .7em .45em 0;text-align:left;vertical-align:top;font-weight:400;border-bottom:1px solid var(--line);overflow-wrap:normal;word-break:normal}
body[data-book="library/source-322"] .prose table :is(th,td):first-child{width:65%}

/* Confessions: printed variant dots distinguish the hymn translations. */
body[data-book="library/source-327"] .prose u{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-skip-ink:none;text-underline-offset:.25em}
body[data-book="library/source-327"] .prose blockquote:has(br) p{text-indent:0}
body[data-book="library/source-327"] .prose .source-signatures p{text-align:left}

/* NICOT review 09: source-size accents remain inline; preserve the original linked images. */
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"]:is([src="assets/book-329-00058.png"],[src="assets/book-329-00190.png"]){display:inline-block;width:auto;max-width:none;height:.1875em;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00057.png"]{display:inline-block;width:auto;max-width:none;height:.125em;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"]:is([src="assets/book-329-00056.png"],[src="assets/book-329-00060.png"]){display:inline-block;width:auto;max-width:none;height:.0625em;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00088.png"]{display:inline-block;width:auto;max-width:none;height:.25em;margin:0;vertical-align:baseline}

/* NICOT review 10: keep the source three-pixel accent inline at accent size. */
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00082.png"]{display:inline-block;width:auto;max-width:none;height:.1875em;margin:0;vertical-align:baseline}

/* NICOT review 11: source accents stay small; the two comparison tables remain legible. */
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00084.png"]{display:inline-block;width:auto;max-width:none;height:.25em;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src="assets/book-329-00217.png"]{display:inline-block;width:auto;max-width:none;height:.375em;margin:0;vertical-align:baseline}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00230.png"]{display:block;width:min(100%,334px);max-width:100%;height:auto;margin:.5em auto}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00231.png"]{display:block;width:min(100%,338px);max-width:100%;height:auto;margin:.5em auto}

/* NICOT review 13: enlarge the original genealogy tables within the note panel. */
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00246.png"]{display:block;width:min(100%,338px);max-width:100%;height:auto;margin:.5em auto}
body[data-book="library/source-329"] :is(.prose,.book-footnote) img[src="assets/book-329-00247.png"]{display:block;width:min(100%,356px);max-width:100%;height:auto;margin:.5em auto}

/* Genesis 18–50 indexes contain one entry per paragraph. */
body[data-book="library/source-329"] .prose:is([data-article$="-143"],[data-article$="-144"],[data-article$="-145"],[data-article$="-146"],[data-article$="-147"],[data-article$="-148"])>p{margin-bottom:.25em}
body[data-book="library/source-329"]:has(.prose[data-article$="-147"]) #article-title{font-size:clamp(24px,7.6vw,36px)}


body[data-book="library/source-331"] .prose a:has(>img[alt^="原书图表："]){display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-book="library/source-331"] .prose a>img[alt^="原书图表："]{max-width:none;width:auto;height:auto;margin:1em 0}
@media(max-width:700px){body[data-book="library/source-331"] .prose p:has(>a>img[alt^="原书图表："])::before{content:"原书图表可横向滑动，点击查看原图";display:block;font:12px/1.7 var(--sans);color:var(--muted);margin-bottom:12px}}

/* Isaiah 40–66: retain the scale of tiny MOBI glyph fragments (16px source text).
   Image 14 has one faint ink column followed by 74 blank columns. */
body[data-book="library/source-335"] :is(.prose,.book-footnote) img[src$="book-335-image00013.png"]{height:.25em;margin:0;vertical-align:baseline}
body[data-book="library/source-335"] :is(.prose,.book-footnote) img:is([src$="book-335-image00018.png"],[src$="book-335-image00019.png"]){height:.1875em;margin:0;vertical-align:baseline}
body[data-book="library/source-335"] :is(.prose,.book-footnote) img[alt="原书微小字形"][src$="book-335-image00014.png"]{display:inline-block;width:.125em;max-width:none;height:.1875em;object-fit:cover;object-position:left;margin:0;vertical-align:baseline}
/* Remaining 2–4px source accents, first encountered in Isaiah 48–49. */
body[data-book="library/source-335"] :is(.prose,.book-footnote) img:is([src$="book-335-image00015.png"],[src$="book-335-image00016.png"]){width:auto;max-width:none;height:.125em;margin:0;vertical-align:baseline}
body[data-book="library/source-335"] :is(.prose,.book-footnote) img[src$="book-335-image00017.png"]{width:auto;max-width:none;height:.25em;margin:0;vertical-align:baseline}
body[data-book="library/source-335"] :is(.prose,.book-footnote) img[src$="book-335-image00027.png"]{width:auto;max-width:none;height:.1875em;margin:0;vertical-align:baseline}

/* Hosea: transcribed two-column outlines, chronology, and poetic parallels. */
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en table{display:table;width:100%;table-layout:fixed}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en table>tbody{display:table-row-group;width:auto;min-width:0}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en table :is(th,td){white-space:normal;overflow-wrap:anywhere;border-bottom:1px solid var(--line);padding:.45em .55em .45em 0}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en table :is(th,td):first-child{white-space:normal;width:34%}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en[data-article$="-005"] table :is(th,td):first-child{width:62%}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en[data-article$="-004"] table:last-of-type :is(th,td):first-child{width:50%}
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en[data-article$="-006"] table :is(th,td):first-child{width:6em}

/* Hosea 4: keep the MT / LXX comparison in two balanced columns. */
body[data-book="library/source-337"][data-reading-template=english] .prose.lang-en[data-article$="-020"] table:first-of-type :is(th,td):first-child{width:50%}

/* Hubbard Ruth: keep the original seven-level outline readable on phones. */
body[data-book="library/source-342"] .prose[data-article$="-033"] ul{list-style:none;padding-left:.35em;margin:.35em 0}
body[data-book="library/source-342"] .prose[data-article$="-033"]>ul{padding-left:0}
body[data-book="library/source-342"] .prose[data-article$="-033"] li>p{margin-bottom:.35em}

/* Tsumura 1 Samuel: retain six outline levels with room for mobile text. */
body[data-book="library/source-343"] .prose[data-article$="-038"] ul{list-style:none;padding-left:.35em;margin:.35em 0}
body[data-book="library/source-343"] .prose[data-article$="-038"]>ul{padding-left:0}
body[data-book="library/source-343"] .prose[data-article$="-038"] li>p{margin-bottom:.35em}

/* Tsumura 2 Samuel: preserve outline labels with a mobile reading width. */
body[data-book="library/source-344"] .prose[data-article$="-014"] ul{list-style:none;padding-left:.35em;margin:.35em 0}
body[data-book="library/source-344"] .prose[data-article$="-014"]>ul{padding-left:0}
body[data-book="library/source-344"] .prose[data-article$="-014"] li>p{margin-bottom:.35em}

/* Harrington Ezra–Nehemiah: retain five outline levels without squeezing phone text. */
body[data-book="library/source-345"] .prose[data-article$="-049"] ul{list-style:none;padding-left:.35em;margin:.35em 0}
body[data-book="library/source-345"] .prose[data-article$="-049"]>ul{padding-left:0}
body[data-book="library/source-345"] .prose[data-article$="-049"] li>p{margin-bottom:.35em}

/* Hartley Job: keep the seven-level printed outline readable on a phone. */
body[data-book="library/source-346"] .prose[data-article$="-016"] ul{list-style:none;padding-left:.35em;margin:.35em 0}
body[data-book="library/source-346"] .prose[data-article$="-016"]>ul{padding-left:0}
body[data-book="library/source-346"] .prose[data-article$="-016"] li>p{margin-bottom:.35em}
body[data-book="library/source-346"] .prose[data-article$="-014"] table:has(th)::before{content:"左右滑动查看完整表格";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}

/* 1 Samuel 20: keep lunar-calendar dates and times legible within each table. */
body[data-book="library/source-343"] .prose[data-article="book-343-en-chapters-105"] table>tbody{min-width:660px}
body[data-book="library/source-343"] .prose[data-article="book-343-en-chapters-105"] table :is(th,td){padding:.3em .8em .7em 0;border-bottom:1px solid var(--line)}
@media(max-width:720px){body[data-book="library/source-343"] .prose[data-article="book-343-en-chapters-105"] table::before{content:"左右滑动查看完整表格";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}}
/* Ecclesiastes: keep the long all-capital autobiographical headings readable on phones. */
body[data-book="library/source-347"]:has(.prose[data-article$="-029"],.prose[data-article$="-030"]) #article-title{font-size:clamp(24px,7.2vw,36px)}

/* Source-364: keep verse lines and stanzas readable on a phone. */
body[data-book="library/source-364"][data-reading-template=king][data-presentation=book] .prose blockquote:has(br){font-size:.92em;padding:0 .25em}
body[data-book="library/source-364"][data-reading-template=king][data-presentation=book] .prose blockquote:has(br)>p{text-indent:0;text-align:left;padding-inline-start:0}

/* Source-365: preserve the source's two-column comparison and heading rules. */
body[data-book="library/source-365"] .prose.lang-en table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.9em;line-height:1.6;border-bottom:1px solid var(--line)}
body[data-book="library/source-365"] .prose.lang-en table>tbody{display:table;table-layout:fixed;width:100%}
body[data-book="library/source-365"] .prose.lang-en table :is(th,td){width:50%;text-align:left;padding:.4em .65em;vertical-align:top}
body[data-book="library/source-365"] .prose.lang-en table th{font-weight:600;border-bottom:1px solid var(--line)}
body[data-book="library/source-365"]:has(.prose.lang-en) #article-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,8.2vw,42px);letter-spacing:.025em;overflow-wrap:anywhere}
body[data-book="library/source-365"][data-reading-template=king][data-presentation=book] .prose.lang-en blockquote{font-family:Georgia,"Times New Roman",serif;font-size:.94em;letter-spacing:0;line-height:1.8}
body[data-book="library/source-365"][data-reading-template=king][data-presentation=book] .prose.lang-en blockquote p{text-indent:0;padding-inline-start:0;letter-spacing:0;text-align:left}

/* Book370: retain the embedded Hebrew word within its original sentence. */
body[data-book="library/source-370"] .prose img[src="assets/book-370-p1031-word1.png"]{display:inline-block;width:auto;max-width:none;height:1.35em;margin:0 .12em;vertical-align:-.2em}

/* Book372, chapters 8–9: keep adjacent table columns distinct on phones. */
body[data-book="library/source-372"] .prose:is([data-article$="-011"],[data-article$="-012"]) table{display:table;width:100%;table-layout:fixed;border-collapse:collapse;margin:1.3em 0;font-size:.85em;line-height:1.65}
body[data-book="library/source-372"] .prose:is([data-article$="-011"],[data-article$="-012"]) table :is(th,td){padding:.4em .5em .4em 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere;word-break:normal}
/* Ezekiel 34, Table14: keep verse numbers beside two readable text columns. */
body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type>tbody{table-layout:auto;min-width:560px}
body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type td:nth-child(odd){width:1.8em;min-width:0;white-space:nowrap}
body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type td:nth-child(even){width:calc(50% - 1.8em);min-width:0}
body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type th[colspan]{width:50%}
body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type p{margin:0}
@media(max-width:600px){body[data-book="library/source-350"] .prose[data-article$="-062"]>table:first-of-type::before{content:"左右滑动查看完整表格";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}}
body[data-book="library/source-372"][data-presentation=book] .prose:is([data-article$="-014"],[data-article$="-015"],[data-article$="-016"]) p{text-align:left;text-indent:0;padding-inline-start:0;letter-spacing:0;font-family:Georgia,"Times New Roman",var(--serif)}
body[data-book="library/source-372"] .prose:is([data-article$="-010"],[data-article$="-011"],[data-article$="-012"]) blockquote p{text-align:left}
/* Calvin: reference lists retain natural spacing between Latin words. */
body[data-book="library/source-373"][data-presentation=book] .prose:is([data-article$="-001"],[data-article$="-003"]) p{text-align:left;text-indent:0;padding-inline-start:0;letter-spacing:0}

/* Calvin's bibliography and bilingual name index: keep entries together and natural word spacing. */
body[data-book="library/source-373"][data-presentation=book] .prose:is([data-article$="-090"],[data-article$="-091"]) p{text-align:left;text-indent:0;padding-inline-start:0;letter-spacing:0}
body[data-book="library/source-373"] .prose[data-article$="-090"] .source-bibliography{margin:1.1em 0}
body[data-book="library/source-373"] .prose[data-article$="-090"] .source-bibliography p{margin:.15em 0;line-height:1.65}
body[data-book="library/source-373"] .prose[data-article$="-090"] .source-bibliography p:not(:first-child){padding-inline-start:1em}
body[data-book="library/source-373"] .prose[data-article$="-091"] p{margin:.4em 0}

/* Book326: retain both printed Hebrew words inline when font fallback is blank. */
body[data-book="library/source-326"] .prose img[src^="assets/book-326-p366-hebrew-"]{display:inline-block;width:auto;max-width:none;height:1.25em;margin:0 .12em;vertical-align:-.2em}

/* Ezekiel 40-48: retain the printed verse/text pairs and readable Torah columns. */
body[data-book="library/source-350"] .prose[data-article$="-087"]>table:nth-of-type(2)>tbody{min-width:680px}
body[data-book="library/source-350"] .prose[data-article$="-087"]>table:nth-of-type(2) th[colspan]{width:auto}
body[data-book="library/source-350"] .prose[data-article$="-087"]>table:nth-of-type(2) p{margin:0 0 .4em}
body[data-book="library/source-350"] .prose[data-article$="-090"]>table:nth-of-type(2)>tbody{table-layout:auto;min-width:840px}
body[data-book="library/source-350"] .prose[data-article$="-097"]>table:nth-of-type(2)>tbody{table-layout:auto;min-width:560px}
body[data-book="library/source-350"] .prose:is([data-article$="-090"],[data-article$="-097"])>table:nth-of-type(2) td:nth-child(odd){width:1.8em;min-width:0;white-space:nowrap}
body[data-book="library/source-350"] .prose[data-article$="-090"]>table:nth-of-type(2) td:nth-child(even){width:calc((100% - 5.4em) / 3);min-width:0}
body[data-book="library/source-350"] .prose[data-article$="-097"]>table:nth-of-type(2) td:nth-child(even){width:calc((100% - 3.6em) / 2);min-width:0}
body[data-book="library/source-350"] .prose[data-article$="-090"]>table:nth-of-type(2) th[colspan]{width:33.333%}
body[data-book="library/source-350"] .prose[data-article$="-097"]>table:nth-of-type(2) th[colspan]{width:50%}
body[data-book="library/source-350"] .prose:is([data-article$="-090"],[data-article$="-097"])>table:nth-of-type(2) p{margin:0}
@media(max-width:600px){body[data-book="library/source-350"] .prose[data-article$="-097"]>table:nth-of-type(2)::before{content:"左右滑动查看完整表格";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}}

/* Explicitly marked, deeply nested source outlines keep their hierarchy on phones. */
.prose ul.source-outline,.prose ul.source-outline ul{list-style:none;margin:.35em 0;padding-left:.55em}.prose ul.source-outline{padding-left:0}.prose ul.source-outline li{margin:.35em 0}

/* Zechariah's sign-act table keeps short verse ranges on one line. */
body[data-book="library/source-356"] .prose[data-article$="-109"] table td>span:not([id]){white-space:nowrap}


body[data-book="library/source-51"] .prose [lang=en]{letter-spacing:0;line-break:auto}
body[data-book="library/source-51"][data-presentation=book] .prose blockquote[lang=en]{font-family:Georgia,"Times New Roman",serif;font-size:.95em;letter-spacing:0;line-height:1.8}
body[data-book="library/source-51"][data-presentation=book] .prose blockquote[lang=en] p{font-family:inherit;text-indent:0;text-align:left;letter-spacing:0;padding-inline-start:0}
body[data-book="library/source-51"] .prose [lang=en] em{font-style:italic}
body[data-book="library/source-51"]:has(.prose.lang-en) #article-title{font-family:Georgia,"Times New Roman",serif;letter-spacing:.01em}
body[data-book="library/source-51"][data-presentation=book] .prose :is(h2,h3)[lang=en]{font-family:Georgia,"Times New Roman",serif;text-align:left;letter-spacing:.015em;line-height:1.5}

/* Prayer: retain the Chinese book style, with readable English headings and verse. */
body[data-book="library/source-89"]:has(.prose.lang-en) #article-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,8.2vw,42px);letter-spacing:.015em;overflow-wrap:anywhere}
body[data-book="library/source-89"] .prose [lang=en]{letter-spacing:0;line-break:auto}
body[data-book="library/source-89"][data-presentation=book] .prose>p[lang=en]{text-indent:0}
body[data-book="library/source-89"][data-presentation=book] .prose blockquote[lang=en]{font-family:Georgia,"Times New Roman",serif;font-size:.96em;letter-spacing:0;line-height:1.8}
body[data-book="library/source-89"][data-presentation=book] .prose blockquote[lang=en] p{font-family:inherit;text-indent:0;padding-inline-start:0;letter-spacing:0;text-align:left}
body[data-book="library/source-89"] .prose [lang=en] em{font-style:italic}
body[data-book="library/source-89"][data-presentation=book] .prose :is(h2,h3,h4)[lang=en]{font-family:Georgia,"Times New Roman",serif;text-align:left;letter-spacing:.015em;line-height:1.5}

/* The Unfolding Mystery: English chapters, questions and Scripture quotations. */
body[data-book="library/source-77"]:has(.prose.lang-en) #article-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,8.2vw,42px);letter-spacing:.015em;overflow-wrap:anywhere}
/* Book 172 keeps its Chinese setting and uses compact English chapter titles. */
body[data-book="library/source-172"]:has(.prose.lang-en) #article-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,8.2vw,42px);letter-spacing:.015em;line-height:1.35;overflow-wrap:break-word}
body[data-book="library/source-172"] .prose [lang=en]{letter-spacing:0;line-break:auto}
body[data-book="library/source-172"][data-presentation=book] .prose>p[lang=en]{text-indent:0}
body[data-book="library/source-172"] .prose [lang=en] em{font-style:italic}
body[data-book="library/source-172"][data-presentation=book] .prose :is(h2,h3,h4)[lang=en]{font-family:Georgia,"Times New Roman",serif;text-align:left;letter-spacing:.015em;line-height:1.5}
body[data-book="library/source-172"] .prose[data-article$="-084"] table{display:block;max-width:100%;overflow-x:auto}
body[data-book="library/source-172"] .prose[data-article$="-084"] tbody{display:table;min-width:560px;width:100%}
body[data-book="library/source-172"] .prose[data-article$="-084"] td:last-child{white-space:nowrap;hyphens:none;overflow-wrap:normal}
@media(max-width:600px){body[data-book="library/source-172"] .prose[data-article$="-084"] table::before{content:"Swipe horizontally to view reference numbers.";display:block;position:sticky;left:0;font:12px/1.6 var(--sans);color:var(--muted);margin-bottom:.8em}}
body[data-book="library/source-77"] .prose [lang=en]{letter-spacing:0;line-break:auto}
body[data-book="library/source-77"][data-presentation=book] .prose>p[lang=en]{text-indent:0}
body[data-book="library/source-77"][data-presentation=book] .prose blockquote[lang=en]{font-family:Georgia,"Times New Roman",serif;font-size:.96em;letter-spacing:0;line-height:1.8}
body[data-book="library/source-77"][data-presentation=book] .prose blockquote[lang=en] p{font-family:inherit;text-indent:0;padding-inline-start:0;letter-spacing:0;text-align:left}
body[data-book="library/source-77"] .prose [lang=en] em{font-style:italic}
body[data-book="library/source-77"][data-presentation=book] .prose :is(h2,h3,h4)[lang=en]{font-family:Georgia,"Times New Roman",serif;text-align:left;letter-spacing:.015em;line-height:1.5}
