/* R04: task-focused reading surfaces. Original book content and R24 modules are unchanged. */
:root{--reader-ui:#435d4b;--reader-paper:#fcfbf6;--reader-line:#dce2d5;--reader-muted:#58654f}
.reader-js-only{display:none!important}.reader-ready .reader-js-only{display:revert!important}.reader-ready .reading-tools,.reader-ready .page-controls,.reader-ready .reader-status,.reader-ready .search-feedback{display:flex!important}[hidden]{display:none!important}.reader-ready .reader-js-only[hidden]{display:none!important}
.multipage .reader-page-heading{padding:18px 0 24px;gap:24px;align-items:center}.multipage .reader-page-heading h1{font-size:clamp(24px,2.4vw,34px);line-height:1.42;max-width:950px;margin:8px 0 0}.reader-page-heading .eyebrow{margin:0}.reader-page-actions{flex-shrink:0}.page-read .breadcrumbs,.page-proofread .breadcrumbs{padding-top:20px}
.multipage .reader-panel{padding:0;overflow:visible;border-color:var(--reader-line);box-shadow:0 5px 22px #26352605}.multipage .reading-tools{padding:12px 18px;gap:10px;margin:0;border-bottom:1px solid var(--reader-line);background:var(--reader-paper);position:sticky;top:0;z-index:15;min-height:69px;align-items:center}.multipage .reading-tools .tool-button,.multipage .reader-settings>summary,.multipage .search button,.setting-actions .tool-button{min-width:44px;min-height:44px;padding:10px 13px;font-size:13px;line-height:1.5;border:1px solid var(--reader-line);background:#f6f8f0;color:#374f3d;border-radius:4px;white-space:nowrap}
.multipage .reading-tools .search{min-width:70px;max-width:420px;flex:1;margin:0;height:44px;border:1px solid var(--reader-line);background:white;border-radius:4px;padding:0;display:flex;align-items:stretch}.multipage .reading-tools .search input{font-size:14px;padding:10px 12px;width:100%;min-width:0;background:none;line-height:1.4}.multipage .search button{border:0;border-left:1px solid var(--reader-line);border-radius:0 3px 3px 0;margin:0}.reader-settings{position:relative;margin-left:auto}.reader-settings>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:center}.reader-settings>summary::-webkit-details-marker{display:none}.reader-settings[open]>summary{background:#3f5a48;color:white;border-color:#3f5a48}.settings-sheet{position:absolute;inset-inline-end:0;top:calc(100% + 9px);width:345px;max-width:calc(100vw - 30px);padding:20px;background:#fffef9;border:1px solid var(--reader-line);box-shadow:0 12px 35px #18301e25;border-radius:5px;z-index:22;font-size:13px}.settings-heading{display:flex;align-items:center;justify-content:space-between;font-size:17px;color:#364d3c}.settings-heading .book-cover{width:34px;height:47px;object-fit:contain}.multipage .settings-sheet .book-selectors{margin:16px 0;gap:12px}.settings-sheet .book-selectors label{font-size:12px;color:#55664e}.settings-sheet select{font-size:14px;min-height:44px;min-width:0}.setting-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.setting-actions output{min-width:28px;text-align:center;font-size:14px}.settings-sheet .edition{margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--reader-line);padding-top:12px;font-size:11px;line-height:1.7}.settings-sheet #sourceInfo{min-height:36px;padding:6px 0;color:#42593f;font-size:12px}
.reading-location{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 30px 0;font-size:12px;line-height:1.6;color:var(--reader-muted)}#currentChapter{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#currentPageLabel{white-space:nowrap;font-variant-numeric:tabular-nums}.multipage .reading-paper{background:var(--reader-paper);border:0;border-radius:0}.multipage .reading-content{padding:28px 42px 36px;max-width:47em;margin:auto;font-size:var(--reading-font,18px);line-height:1.9;word-break:normal;overflow-wrap:break-word;hyphens:none}.multipage .reading-content p{text-align:start;letter-spacing:normal;word-spacing:normal;hyphens:none;overflow-wrap:break-word;line-height:inherit;margin:0 0 1.25em}.multipage .reading-content h3{line-height:1.55;text-align:start}.multipage .reading-content[lang=zh],.multipage .reading-content[lang=ja]{line-height:2.05}.multipage .reading-content[dir=rtl]{font-size:calc(var(--reading-font,18px) + 2px);line-height:1.95;direction:rtl}.multipage .reading-content .paragraph{scroll-margin-top:100px}.page-read .reading-scroll{height:auto;max-height:none;min-height:320px;overflow:visible}.multipage .page-controls{margin:0;padding:17px 25px;border-top:1px solid var(--reader-line);background:var(--reader-paper);gap:12px}.multipage .page-controls button{min-height:44px;padding:8px 11px;font-size:13px}.multipage .page-controls input{width:66px;min-height:44px;font-size:14px;text-align:center}.multipage .reader-status{margin:0;padding:9px 25px;min-height:48px;font-size:12px;color:#58664f;gap:16px}.multipage .reader-status button{min-height:40px;padding:6px 10px;font-size:12px}.multipage .progress-track{margin:0;background:#dce5d5}.search-feedback{justify-content:space-between;gap:12px;padding:4px 18px;border-bottom:1px solid var(--reader-line);background:#f2f4e8;font-size:12px}.search-feedback>div{display:flex}.search-feedback button{min-height:44px;padding:7px 10px}.paragraph.action-hit{background:#fff1b5;outline:1px solid #baa560;outline-offset:5px;border-radius:2px}.paragraph-edit{min-width:28px;min-height:28px}.reading-layout.toc-collapsed{grid-template-columns:minmax(0,1fr)}.reading-layout.toc-collapsed>.contents-rail{display:none}.multipage .contents-rail{top:18px}.multipage .contents-rail .contents-panel{background:#fbfcf6;border-color:var(--reader-line);max-height:calc(100dvh - 36px)}.multipage #contentsItems button{flex:0 0 auto;height:auto;white-space:normal;min-height:44px;text-align:start;font-size:13px;line-height:1.65;padding:11px 13px;border-bottom:1px solid #e5e9de;color:#43513c;overflow-wrap:anywhere}.multipage #contentsItems button.current{background:#e3eddb;border-inline-start:3px solid #416747;color:#243f2b;font-weight:600}.multipage #contentsSearch{min-height:44px;font-size:14px}.multipage #closeContents{width:44px;height:44px;font-size:23px}.contents-dialog{padding:0;border:1px solid var(--reader-line);border-radius:9px;background:#fcfcf7;width:min(560px,calc(100vw - 28px));max-height:85dvh;box-shadow:0 24px 70px #182b2955}.contents-dialog::backdrop{background:#16291d80;backdrop-filter:blur(2px)}.multipage .contents-dialog .contents-panel{position:static!important;display:block;margin:0;padding:18px;box-shadow:none;max-height:80dvh;width:auto;border:0}.contents-dialog #contentsItems{max-height:calc(80dvh - 140px);overflow:auto;overscroll-behavior:contain}.contents-dialog .contents-heading{position:sticky;top:0;background:#fcfcf7;z-index:1}
.server-reading-nav{font-size:13px;padding:15px 22px;border-bottom:1px solid var(--reader-line);background:#f2f5e9}.server-reading-nav>nav{display:flex;justify-content:space-between;align-items:center;gap:12px}.server-reading-nav a{padding:9px 5px;display:inline-block;min-height:40px}.server-reading-nav details{margin-top:12px}.server-reading-nav summary{cursor:pointer;min-height:44px;padding:10px 0}.server-contents{display:flex;flex-direction:column;max-height:300px;overflow:auto}.reader-error{padding:18px 24px;border-top:1px solid #b5b79d;background:#f7f0db;color:#51452c;font-size:13px;line-height:1.8}.copy-fallback{width:100%;min-height:180px;padding:12px;font:14px/1.8 var(--sans);resize:vertical}
.proof-layout{grid-template-columns:minmax(0,1.35fr) minmax(380px,1fr);gap:24px}.proof-layout .contribution-panel{top:18px}.proof-layout .reading-scroll{height:min(70dvh,760px);min-height:380px}.proof-layout .reading-content{padding:25px 34px}.draft-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--reader-line);font-size:12px;line-height:1.7;color:#40593b}.draft-toolbar button,.draft-recovery button{font-size:12px;min-height:40px;white-space:nowrap;padding:8px}.draft-privacy{font-size:11px;line-height:1.8;color:#65715d;margin:10px 0 0}.draft-recovery{display:flex;flex-wrap:wrap;gap:10px}.contribution-panel textarea:disabled,.contribution-panel input:disabled{background:#f0f2ea;color:#727b6e;cursor:not-allowed}.contribution-panel textarea[readonly]{background:#f6f1e1}.my-note button{min-height:36px;margin:3px 8px 3px 0}.reader-focus .focus-exit{display:block!important}.focus-exit{display:none!important}.reader-focus .reader-settings{display:none}.reader-focus .reading-location{padding-top:12px}.reader-focus .reading-scroll{height:calc(100dvh - 190px)!important;overflow:auto!important}.reader-focus .reader-panel{padding:0!important}.reader-focus .reading-content{max-width:47em!important}.reader-focus .reader-page-heading,.reader-focus .contents-rail{display:none!important}
body[data-theme=night]{--reader-paper:#202d25;--reader-line:#50604d;--reader-muted:#c5ceb8}.multipage[data-theme=night] .reader-panel,.multipage[data-theme=night] .reading-paper,.multipage[data-theme=night] .reading-tools,.multipage[data-theme=night] .page-controls{background:var(--reader-paper);border-color:var(--reader-line)}.multipage[data-theme=night] .reading-content{color:#f1efdd}.multipage[data-theme=night] .reading-tools button,.multipage[data-theme=night] .reader-settings>summary,.multipage[data-theme=night] .settings-sheet,.multipage[data-theme=night] .settings-sheet button,.multipage[data-theme=night] .settings-sheet select{background:#2d3d30;color:#f0eedb;border-color:#6b7c61}.multipage[data-theme=night] .search,.multipage[data-theme=night] .search input{background:#27372c;color:#f0eedb}.multipage[data-theme=night] .settings-sheet label,.multipage[data-theme=night] .settings-heading,.multipage[data-theme=night] .edition,.multipage[data-theme=night] .reader-status,.multipage[data-theme=night] .reader-status button,.multipage[data-theme=night] .page-controls button{color:#d6dfc6}.multipage[data-theme=night] .page-controls input{background:#2b392e;color:#f0eedb;border-color:#6b7c61}.multipage[data-theme=night] .paragraph.action-hit{background:#514721;color:#fff4bf}.multipage[data-theme=night] .search-feedback{background:#2b3b2d;color:#e1e7d5}.multipage[data-theme=night] .search-feedback button{color:#e1e7d5}.multipage[data-theme=sage]{--reader-paper:#edf3e8;--reader-line:#cbd9c3}.multipage[data-theme=night] .reading-content mark,.multipage[data-theme=night] .reading-content [data-annotation-id]{color:#25301e}
.admin-unsaved{position:sticky;top:0;z-index:15;padding:11px 15px;background:#fff2c9;border:1px solid #b39d56;color:#594820;font-size:13px;line-height:1.7}.admin-page .wide-text{min-height:340px;font:15px/1.8 var(--sans)}.admin-page .admin-body button,.admin-page .admin-body input:not([type=checkbox]),.admin-page .admin-body select{min-height:42px}.admin-page .admin-row .danger{border-color:#9b6656}.card-meta,.version-status,.source-date,.results-caption{color:#56634c}.book-card .card-actions a{min-height:36px;display:inline-flex;align-items:center}.library-facts span{gap:12px}.entry-card strong{line-height:1.8}.multipage :focus-visible{outline:3px solid #96703b;outline-offset:3px}
@media(max-width:1150px){.proof-layout{grid-template-columns:minmax(0,1.15fr) minmax(330px,1fr)}.multipage .reading-content{padding-left:30px;padding-right:30px}}
@media(max-width:960px){.reading-layout{display:block}.contents-rail:has(.contents-panel[hidden]){display:none}.proof-layout{grid-template-columns:1fr}.proof-layout .contribution-panel{position:static}.multipage .reading-location{padding-left:24px;padding-right:24px}.multipage .reader-page-actions{max-width:none}.reader-page-heading h1{overflow-wrap:anywhere}}
@media(max-width:760px){.multipage .site-header{height:64px}.multipage .header.nav-open nav{top:63px}.page-read .page-main,.page-proofread .page-main{padding-left:12px;padding-right:12px}.page-read .breadcrumbs,.page-proofread .breadcrumbs{padding-top:16px;gap:8px;font-size:11px}.multipage .reader-page-heading{padding:14px 0 18px}.multipage .reader-page-heading h1{font-size:22px;line-height:1.45;margin:5px 0 11px}.reader-page-heading .eyebrow{font-size:9px}.multipage .reader-page-actions{gap:16px}.multipage .reader-page-actions .quiet{font-size:12px;min-height:28px;display:inline-flex;align-items:center}.multipage .reader-panel{padding:0}.multipage .reading-tools{padding:9px;gap:7px;min-height:62px}.multipage .reading-tools .tool-button,.multipage .reader-settings>summary{min-height:44px;padding:10px 11px}.multipage .reading-tools .search input{font-size:16px;padding:8px}.multipage .search button{font-size:12px;padding:8px}.settings-sheet{width:320px;max-width:calc(100vw - 38px);padding:17px}.multipage .settings-sheet select{font-size:16px}.multipage .reading-location{padding:12px 18px 0;font-size:11px}.multipage .reading-content,.page-read .reading-content{padding:23px 20px 28px;font-size:var(--reading-font,18px);max-width:100%}.multipage .reading-content p{margin-bottom:1.15em}.multipage .page-controls{padding:12px 10px;gap:5px}.multipage .page-controls button{font-size:12px;padding:8px}.multipage .page-controls input{width:54px}.multipage .reader-status{padding:7px 12px;font-size:11px;gap:8px}.contents-dialog{margin:auto auto 10px;max-height:88dvh;width:calc(100vw - 20px);border-radius:13px}.multipage .contents-dialog .contents-panel{max-height:83dvh;padding:15px}.contents-dialog #contentsItems{max-height:calc(83dvh - 135px)}.multipage #contentsSearch{font-size:16px}.draft-toolbar{flex-wrap:wrap}.search-feedback{padding:4px 10px;flex-wrap:wrap}.reader-focus .reading-tools{top:0}.reader-focus .reading-content{padding:24px 20px}.reader-focus .reading-scroll{height:calc(100dvh - 190px)!important}}
@media(max-width:360px){.multipage .reading-content,.page-read .reading-content{padding-left:16px;padding-right:16px}.multipage .reading-tools{gap:5px;padding:8px}.multipage .reading-tools .tool-button,.multipage .reader-settings>summary{padding-left:9px;padding-right:9px}.multipage .reader-status{flex-wrap:wrap}.settings-sheet{max-width:calc(100vw - 34px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Night reading includes navigation and proofreading chrome, not just the text paper. */
.multipage[data-theme=night]{--paper:#18251e;--white:#243229;--ink:#ecedda;--sub:#c3cfb8;--muted:#b6c4ad;--line:#52634f;--green:#c0d8b2;--sage:#304333;background:#18251e;color:#ecedda}
.multipage[data-theme=night] .site-header,.multipage[data-theme=night] .header.nav-open nav{background:#202e25;border-color:#52634f}
.multipage[data-theme=night] .site-header a,.multipage[data-theme=night] .site-header .brand strong,.multipage[data-theme=night] .menu-toggle,.multipage[data-theme=night] .reader-page-heading h1,.multipage[data-theme=night] .breadcrumbs,.multipage[data-theme=night] .reader-page-actions a{color:#e0e8d4}
.multipage[data-theme=night] .site-header .brand small,.multipage[data-theme=night] .reader-page-heading .eyebrow{color:#c3cfb7}.multipage[data-theme=night] .reader-page-actions .secondary{background:#2a3e2e;border-color:#72876a}.multipage[data-theme=night] .header.nav-open nav a.active{background:#354c38}
.multipage[data-theme=night] .contents-rail .contents-panel,.multipage[data-theme=night] .contents-dialog,.multipage[data-theme=night] .contents-dialog .contents-panel,.multipage[data-theme=night] .contents-dialog .contents-heading{background:#233329;color:#e2e9d6;border-color:#52634f}
.multipage[data-theme=night] #contentsItems button{color:#dce5cd;border-color:#465a43;background:transparent}.multipage[data-theme=night] #contentsItems button.current{color:#f1f3df;background:#3b533b;border-inline-start-color:#c5d9a8}.multipage[data-theme=night] #contentsSearch{background:#2b3e2e;color:#f0f1db;border-color:#718467}.multipage[data-theme=night] #closeContents,.multipage[data-theme=night] .contents-heading{color:#e2e9d6}
.multipage[data-theme=night] #sourceInfo,.multipage[data-theme=night] .settings-sheet .quiet{color:#e4ecd7;background:transparent}.multipage[data-theme=night] input::placeholder,.multipage[data-theme=night] textarea::placeholder{color:#bdc7b1;opacity:1}
.multipage[data-theme=night] .contribution-panel,.multipage[data-theme=night] .my-notes{background:#233329;border-color:#52634f;color:#e2e9d6}.multipage[data-theme=night] .contribution-panel h2,.multipage[data-theme=night] .contribution-panel label,.multipage[data-theme=night] .contribution-panel label small,.multipage[data-theme=night] .field-label,.multipage[data-theme=night] .panel-description,.multipage[data-theme=night] .draft-privacy,.multipage[data-theme=night] .contribution-foot,.multipage[data-theme=night] .contribution-panel .panel-heading p{color:#d3ddc6}
.multipage[data-theme=night] .contribution-panel textarea,.multipage[data-theme=night] .contribution-panel input{background:#2d3e30;border-color:#74876c;color:#f0f1dc}.multipage[data-theme=night] .contribution-panel .primary{background:#d1dfbc;color:#233a28}.multipage[data-theme=night] .draft-toolbar{background:#2a402f;border-color:#6c8263;color:#e0e8d1}.multipage[data-theme=night] .draft-toolbar button,.multipage[data-theme=night] .draft-actions button,.multipage[data-theme=night] .my-notes button{color:#e0e8d1;background:transparent}.multipage[data-theme=night] #quotedText{background:#e6dbad;color:#25331f}.multipage[data-theme=night] #contributionStatus{color:#d1e8bb}.multipage[data-theme=night] #contributionStatus.error{color:#ffc7b7}
.multipage[data-theme=night] .difference-preview,.multipage[data-theme=night] .my-note{background:#2b3e2e;color:#e4ead9;border-color:#52634f}.multipage[data-theme=night] .difference-preview del{color:#63261e;background:#f3d0c9}.multipage[data-theme=night] .difference-preview ins{color:#213d23;background:#d9eac8}.multipage[data-theme=night] .info-dialog{background:#26372b;color:#e8edda}.multipage[data-theme=night] .info-dialog button,.multipage[data-theme=night] .info-dialog a{color:#e8edda}
@media(prefers-reduced-motion:reduce){.multipage[data-theme] *{transition:none!important;animation:none!important}}
/* Explicit foreground/background pairs for the unchanged R24 annotation renderer. */
.multipage .difference-preview del{color:#733e31;background:#f5dfd9}

.multipage[data-theme=night] .reading-content .annotation-mark{background:#e2d493;color:#23301d}.multipage[data-theme=night] .reading-content .annotation-mark.selected{background:#f0d37b;color:#23301d}.multipage[data-theme=night] .reading-content .annotation-mark.resolved-mark{background:#c9dec4;color:#23301d}.reading-content .annotation-mark:focus-visible{outline:3px solid #946b25;outline-offset:3px}.multipage[data-theme=night] .reading-content .annotation-mark:focus-visible{outline-color:#f4edc2}
