.novel-reader{color:#27313b}
/* A nonmodal reading card: the prose keeps its original width and scroll. */
#reader-patrol-root[hidden]{display:none!important}
.patrol-launch{position:fixed;right:18px;bottom:18px;z-index:22;display:grid;place-items:center;width:56px;height:56px;min-height:56px;padding:0;border:1px solid #c4d0c8;border-radius:50%;background:#f8fbf8f2;color:#294c3d;box-shadow:inset 0 0 0 5px #e7eee8,0 4px 16px #203c3426;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.reader-patrol{position:fixed;right:18px;bottom:18px;z-index:22;display:flex;flex-direction:column;gap:5px;width:540px;max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);box-sizing:border-box;padding:8px 12px;background:#fffefb;border:1px solid #d8dfd8;border-radius:14px;box-shadow:0 7px 24px #273d3426;color:#273c34;overflow:hidden;font:14px/1.5 system-ui,-apple-system,"Microsoft YaHei",sans-serif}
.patrol-header{display:flex;align-items:center;gap:7px;flex:none;flex-wrap:wrap;min-height:34px;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.patrol-grip{display:grid;place-items:center;flex:none;width:24px;min-height:32px;padding:0;border:0;background:transparent;color:#8c9c91;font:22px/1 system-ui;cursor:grab;border-radius:5px}
.patrol-word{display:flex;align-items:center;gap:5px;min-width:0;max-width:100%}
.patrol-word strong{font:700 21px/1.3 Arial,"Microsoft YaHei",sans-serif;overflow-wrap:anywhere;min-width:0}
.patrol-word .word-audio{min-width:32px;width:32px;min-height:34px;height:34px;padding:3px;flex:none;cursor:pointer}
.patrol-tags{display:flex;align-items:center;gap:5px;flex-wrap:wrap;color:#728277;font-size:11px}
.patrol-tags .cefr-tag{padding:1px 5px;font-size:11px}
.patrol-pos{white-space:nowrap}
.patrol-progress{margin-left:auto;font:11px/1.4 Arial,sans-serif;color:#7f8f83;white-space:nowrap}
.patrol-collapse{width:32px;min-height:32px;padding:0;border:0;background:transparent;border-radius:6px;color:#708477;font:24px/1 system-ui;cursor:pointer;flex:none}
.patrol-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.patrol-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 14px;min-width:0;padding:0 2px}
.patrol-meaning{margin:0;font-size:15px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}
.patrol-forms{display:flex;align-items:baseline;gap:2px 11px;flex-wrap:wrap;min-width:0;color:#445a4c;font-size:12px;line-height:1.65;margin:0}
.patrol-form{display:inline;overflow-wrap:anywhere}.patrol-form>span:first-child{font-size:11px;color:#809082}.patrol-form.is-missing{color:#8e7b83}
.patrol-marks{display:flex;gap:7px;flex:none;margin-top:4px}
.patrol-marks button{flex:1;min-width:0;min-height:44px;border:1px solid transparent;border-radius:7px;color:#495249;font-size:14px;padding:7px 3px}
.patrol-marks [data-patrol-mark=known]{background:var(--word-known,#dce5c8)}
.patrol-marks [data-patrol-mark=fuzzy]{background:var(--word-fuzzy,#fff0c8)}
.patrol-marks [data-patrol-mark=unknown]{background:var(--word-unknown,#ecd8c4)}
.patrol-marks button[aria-pressed=true]{border-color:#657564;font-weight:700}
.patrol-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:none}
.reader-patrol .patrol-marks{display:flex;gap:5px;flex:1;min-width:195px;margin:0}
.reader-patrol .patrol-marks button{flex:1;min-width:0;min-height:40px;border:1px solid transparent;border-radius:7px;color:#495249;font-size:13px;padding:6px 5px}
.reader-patrol .patrol-marks [data-patrol-mark=known]{background:var(--word-known,#dce5c8)}
.reader-patrol .patrol-marks [data-patrol-mark=fuzzy]{background:var(--word-fuzzy,#fff0c8)}
.reader-patrol .patrol-marks [data-patrol-mark=unknown]{background:var(--word-unknown,#ecd8c4)}
.reader-patrol .patrol-marks button[aria-pressed=true]{border-color:#657564;font-weight:700}
.patrol-navigation{display:flex;align-items:center;gap:5px;flex:1;min-width:205px;margin:0}
.patrol-navigation button{flex:1;min-width:0;min-height:40px;border:0;background:transparent;border-radius:6px;color:#315d47;font-size:12px;padding:6px 2px;white-space:nowrap}
.patrol-navigation button:first-child{color:#77877a}.patrol-navigation button:last-child{font-weight:650}
.patrol-navigation button:hover:not(:disabled),.patrol-collapse:hover{background:#f0f4ef}
.reader-patrol button:disabled{opacity:.45;cursor:default}
.reader-patrol :is(button,select):focus-visible,.patrol-launch:focus-visible{outline:2px solid #567661;outline-offset:2px}
.patrol-status{font-size:10px;line-height:1.4;color:#859080;flex:none;margin:0;overflow-wrap:anywhere}.patrol-status:empty{display:none}.patrol-status.is-error{color:#a14931}
.patrol-empty{font-size:14px;line-height:1.8;color:#778076;padding:12px 2px}
.patrol-details{border-top:1px solid #e7ece5;margin:7px 0 3px;padding:7px 2px 0}.patrol-details section+section{margin-top:8px}
.patrol-details h3{font-size:11px;color:#7d8a7b;font-weight:500;margin:0 0 3px}.patrol-details p{font-size:13px;line-height:1.6;margin:2px 0;overflow-wrap:anywhere}.patrol-details p:not([lang]){color:#77818b}
.reader-word.is-patrol-target{outline:2px solid #887093;outline-offset:2px}
.is-dragging,.is-dragging .patrol-header,.is-dragging .patrol-grip{cursor:grabbing!important}
@media(max-width:700px){.reader-patrol,.patrol-launch{bottom:calc(76px + env(safe-area-inset-bottom,0px));right:12px}}
@media(max-width:480px){.reader-patrol{width:calc(100% - 20px);padding:8px 10px;gap:5px}.patrol-header{gap:5px}.patrol-word strong{font-size:19px}.patrol-grip{width:20px}.patrol-tags{gap:4px;font-size:10px}.patrol-tags .cefr-tag{font-size:10px}.patrol-footer{gap:3px}.reader-patrol .patrol-marks,.patrol-navigation{flex-basis:100%;min-width:0}.reader-patrol .patrol-marks button,.patrol-navigation button{min-height:42px}.patrol-progress{font-size:10px}.patrol-meaning{font-size:14px}}
.reader-toolbar {position:sticky;top:74px;z-index:12;display:flex;align-items:center;gap:20px;padding:12px 0;background:#f7f7f5;border-bottom:1px solid #e2e3df;}
.reader-book-name {flex:1;font-weight:600;}
.reader-book-picker {flex:1;display:flex;align-items:center;gap:10px;min-width:0;font-size:13px;color:#6c7480;}
.reader-book-picker select {min-height:44px;max-width:100%;width:min(330px,100%);padding:8px 12px;border:1px solid #d8dce1;border-radius:8px;background:#fff;color:#27313b;font-size:16px;font-weight:600;}
@media(max-width:700px){.reader-toolbar{flex-wrap:wrap;gap:10px;}.reader-book-picker{order:3;flex-basis:100%;}.reader-book-picker select{flex:1;width:0;}.reader-toolbar>.tool-button{margin-left:auto;}}
.reader-layout {display:grid;grid-template-columns:260px minmax(0,850px);gap:38px;max-width:1190px;margin:30px auto 80px;align-items:start;}
.reader-sidebar {position:sticky;top:173px;}
@media(min-width:1001px){.novel-reader:not(.original-reader) .reader-sidebar{max-height:calc(100dvh - 193px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:8px;}}
.reader-eyebrow {font-size:13px;letter-spacing:.07em;color:#7a818c;}
.reader-sidebar h1 {font-size:28px;line-height:1.5;margin:12px 0;}
.reader-blurb {font-size:15px;line-height:1.85;color:#747b85;}
.reader-count {font-size:13px;color:#876b31;}
.reader-sidebar nav {display:flex;flex-direction:column;margin:24px 0 18px;gap:5px;}
.reader-sidebar nav button {display:flex;gap:13px;text-align:left;padding:13px 12px;background:transparent;color:#616c79;border:0;border-radius:8px;min-height:46px;}
.reader-mobile-catalog {display:none;}
.reader-sidebar nav button span {font-size:12px;color:#9097a0;}
.reader-sidebar nav button.active {background:#e9eff7;color:#273f69;font-weight:700;}
.reader-paper {min-width:0;padding:34px 42px;background:#fff;border:1px solid #e4e6e8;border-radius:16px;box-shadow:0 7px 24px #1d35570a;}
.reader-paper-top {display:flex;justify-content:space-between;gap:14px;font-size:13px;color:#949aa4;margin-bottom:24px;}
.reader-controls {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.reader-gloss-setting{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 0;font-size:14px;color:#667064;cursor:pointer}
.reader-gloss-setting input{width:18px;height:18px;accent-color:#215b43;cursor:pointer}
.reader-gloss-setting:focus-within{outline:2px solid #215b43;outline-offset:4px;border-radius:4px}
.reader-controls .segmented button {font-size:14px;padding:10px 12px;min-height:44px;}
.reader-type-controls {display:flex;gap:4px;}
.reader-type-controls button {background:#f3f4f6;border:0;border-radius:8px;padding:9px 12px;font-size:15px;min-height:44px;}
.reader-hint {font-size:13px;color:#848b95;line-height:1.7;margin:14px 0 30px;}
.reader-section-heading {display:flex;align-items:baseline;gap:18px;border-top:1px solid #ecedf0;padding-top:27px;}
.reader-section-heading>span {color:#b3b8c0;font:italic 32px Georgia,serif;}
.reader-section-heading h2 {font-size:27px;margin:0 0 28px;line-height:1.55;}
.reader-prose {font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-size:var(--reader-size,22px);line-height:2.25;letter-spacing:.015em;overflow-wrap:anywhere;}
.reader-prose>p {margin:0 0 1.7em;scroll-margin-top:175px;}
.reader-word {display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:5px;padding:1px 5px;margin:0 3px;border:0;border-radius:5px;background:#edf1f7;border-bottom:2px solid #b3c0d3;font-size:1em;font-weight:600;line-height:1.75;color:#334764;text-align:left;vertical-align:baseline;max-width:100%;}
.reader-word small {font-size:.72em;font-weight:400;color:#78838e;}
.reader-word.mark-known {background:var(--word-known,#dce5c8);border-color:#b7c699;color:#40592f;}
.reader-word.mark-unknown {background:var(--word-unknown,#ecd8c4);border-color:#cfaa86;color:#6b503b;}
.reader-word.mark-fuzzy {background:var(--word-fuzzy,#fff0c8);border-color:#e2c576;color:#796328;}
.reader-word:hover {filter:brightness(.96);}
.reader-word.is-covered {min-width:84px;background:#f4f1ea;}
.reader-blank {color:#776b56;font-size:.88em;display:inline-flex;align-items:center;gap:14px;}
.reader-blank i {font-style:normal;font-size:13px;color:#a1947d;}
.reader-section-end {border-top:1px solid #e4e7eb;padding-top:24px;margin-top:28px;}
.reader-section-end>p {font-size:15px;color:#737e8a;line-height:1.8;}
.reader-word-list {margin-top:30px;border-top:1px solid #e4e7eb;padding-top:22px;scroll-margin-top:172px;}
.reader-word-list>summary {cursor:pointer;font-weight:700;font-size:18px;min-height:44px;}
.reader-word-list>summary span {font-size:13px;color:#9097a0;margin-left:12px;}
.reader-word-list .vocab-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 18px;}
.reader-word-list .vocab-card {min-height:248px;}
.reader-word-list .vocab-title h3 {font-size:22px;}
.reader-word-list .word-toolbar {padding:12px;gap:10px;}
.reader-word-list .word-tools {flex-wrap:wrap;}
.reader-word-list .segmented button {padding:9px;font-size:13px;}
.reader-card-tools {display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;}
.reader-card .word-mark-actions {flex-wrap:wrap;gap:6px;}
.reader-card .word-mark-actions button {min-height:44px;}
.reader-card.mark-known {background:#f3f7eb;}
.reader-card.mark-unknown {background:#fcf1e7;}
.reader-card.mark-fuzzy {background:#fff9e8;}
.reader-writing-modal textarea {font-size:25px;min-height:110px;}
.reader-writing-modal {max-height:calc(100dvh - 40px);}
.reader-writing-modal button[type="submit"] {min-height:48px;}
.reader-writing-modal .modal-close {width:44px;height:44px;}
.reader-answer-result {padding:18px;border-radius:12px;margin:22px 0;line-height:1.8;}
.reader-answer-result.correct {background:#eaf2e2;color:#386127;}
.reader-answer-result.wrong {background:#fff2df;color:#876231;}
.reader-answer-result small {display:block;}
.reader-card-mask {color:#929ba6;min-width:100px;}
/* A quick reading card and its archive share one dialog, without stacking modals. */
.reader-modal-open{overflow:hidden;scrollbar-gutter:stable}
.reader-card-backdrop{padding:20px;overflow:hidden}
.reader-card{position:relative;width:min(100%,560px);padding:20px;max-height:calc(100dvh - 40px);overflow:visible;border-radius:15px}
.reader-card [data-reader-card-layer][hidden]{display:none!important}
.reader-card .modal-close{position:absolute;top:10px;right:10px;float:none;min-width:44px;min-height:44px;background:#eef0f2;color:#626b77}
.reader-card-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;padding-right:44px}
.reader-card-heading h2{margin:0;font:700 26px/1.3 Arial,"Microsoft YaHei",sans-serif;color:#111;overflow-wrap:anywhere}
.reader-card-heading .word-audio{align-self:center;min-width:36px;min-height:36px}
.reader-card-heading .word-phonetic{font-size:14px}
.reader-card-meaning{font-size:20px;line-height:1.4;font-weight:650;margin:8px 0}
.reader-card-grammar{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-size:13px;line-height:1.5;margin:0 0 10px;color:#606975}
.reader-card-context{display:grid;gap:8px}
.reader-card-context section{background:#ffffffb3;border:1px solid #e8e9eb;border-radius:9px;padding:9px 12px}
.reader-card-context h3{font-size:12px;font-weight:500;color:#8a929b;margin:0 0 4px}
.reader-card-context p{font-size:16px;line-height:1.55;margin:3px 0;overflow-wrap:anywhere}
.reader-card-context .reader-card-translation{font-size:14px;color:#6e7884}
.reader-card-context .word-audio{vertical-align:middle;min-height:24px}
.reader-card .reader-card-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:3px 0}
.reader-card-tools>button{min-height:44px;margin:0;font-size:13px;padding:6px 4px}
.reader-card .reader-card-marks{display:flex;flex-wrap:nowrap;gap:8px;padding:0;border:0;margin:0}
.reader-card .reader-card-marks button{font-size:14px;min-height:44px;border:1px solid transparent;padding:9px 8px;border-radius:8px;color:#46515c}
.reader-card .reader-card-marks [data-mark=known]{background:var(--word-known,#dce5c8)}
.reader-card .reader-card-marks [data-mark=fuzzy]{background:var(--word-fuzzy,#fff0c8)}
.reader-card .reader-card-marks [data-mark=unknown]{background:var(--word-unknown,#ecd8c4)}
.reader-card .reader-card-marks button.active{border-color:#626c77;box-shadow:inset 0 0 0 1px #626c77;font-weight:700;color:#25303c}
.reader-archive-entry{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:44px;padding:11px 0 0;margin-top:8px;border:0;border-top:1px solid #e2e5e9;background:transparent;font-size:13px;color:#657286;text-align:left}
.reader-archive-entry:focus-visible,.reader-archive-header button:focus-visible{outline:2px solid #e56838;outline-offset:3px;border-radius:4px}
.reader-card.is-archive{height:min(760px,calc(100dvh - 40px));overflow:hidden}
.reader-card [data-reader-card-layer=archive]{display:flex;flex-direction:column;min-height:0;height:100%}
.reader-archive-header{flex:none;padding-right:44px;border-bottom:1px solid #e5e7eb;padding-bottom:12px}
.reader-archive-header button{min-height:44px;margin:0;color:#637185}
.reader-archive-header h2{font-size:23px;line-height:1.3;margin:5px 0}
.reader-archive-header p{font:600 16px/1.4 Arial,sans-serif;color:#6e7884;margin:0;overflow-wrap:anywhere}
.reader-archive-body{overflow:auto;overscroll-behavior:contain;min-height:0;padding:14px 5px 4px 0;flex:1;font-size:13px;color:#637080;line-height:1.65}
.reader-archive-summary{padding:11px 13px;border:1px solid #e4e7eb;border-radius:9px;background:#ffffffb3}
.reader-archive-summary strong{margin-left:12px;color:#3e4e64}
.reader-archive-summary p{margin:4px 0 0}
.reader-archive-dates{margin:12px 0}
.reader-archive-dates>div{display:grid;grid-template-columns:76px 1fr;gap:8px;padding:8px 0}
.reader-archive-dates dt{color:#8a939f}
.reader-archive-dates dd{margin:0;overflow-wrap:anywhere}
.reader-archive-dates dd span{display:block}
.reader-archive-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reader-archive-counts>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;background:#f4f6f8;border-radius:8px}
.reader-archive-counts b{color:#324862;font-size:17px}
.reader-archive-note{font-size:12px;color:#9099a4;margin:10px 0}
.reader-archive-sources h3{font-size:15px;color:#3e4e64;margin:18px 0 8px}
.reader-archive-sources ul{padding-left:18px;margin:0}
.reader-archive-sources li{margin:8px 0;overflow-wrap:anywhere}
.reader-archive-sources li small{display:block;color:#929ba7}
.reader-archive-sources summary{min-height:44px;padding:11px 0;cursor:pointer;font-size:13px}
@media(max-height:740px){.reader-card{padding:16px}.reader-card-heading h2{font-size:23px}.reader-card-context section{padding:7px 10px}.reader-card-context{gap:6px}.reader-card-meaning{font-size:18px;margin:6px 0}.reader-card-context p{font-size:15px;line-height:1.45}.reader-card-context .reader-card-translation{font-size:13px}.reader-card-grammar{margin-bottom:8px}.reader-card-tools>button{min-height:40px}.reader-archive-entry{margin-top:6px;min-height:44px}}
@media(max-width:1000px){.reader-layout{grid-template-columns:1fr;gap:16px;max-width:850px;}.reader-sidebar{position:static;}.reader-sidebar h1{font-size:26px;}.reader-sidebar>nav{display:none;}.reader-mobile-catalog{display:block;margin:12px 0;}.reader-mobile-catalog summary{cursor:pointer;padding:12px 14px;background:#e9eff7;border-radius:8px;min-height:44px;color:#273f69;font-size:14px;}.reader-mobile-catalog nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:10px 0;}.reader-sidebar nav button{font-size:13px;padding:10px;}.reader-sidebar .reader-blurb{display:none;}.reader-sidebar .reader-eyebrow{margin:0;}.reader-paper{padding:30px;}}
@media(max-width:700px){.reader-toolbar{top:61px;}}
@media(max-width:600px){.reader-toolbar{gap:7px;padding:10px 0;}.reader-book-name{font-size:12px;}.reader-toolbar .library-home-button{font-size:13px;padding:9px;}.reader-toolbar .tool-button{font-size:12px;padding:8px;}.reader-sidebar .reader-eyebrow{display:none;}.reader-sidebar h1{font-size:23px;margin:0 0 8px;}.reader-paper{padding:22px 18px;border-radius:12px;}.reader-layout{margin-top:18px;}.reader-paper-top{font-size:11px;}.reader-section-heading h2{font-size:22px;}.reader-prose{line-height:2.15;}.reader-word-list .vocab-grid{grid-template-columns:1fr;}.reader-controls .segmented button{font-size:13px;padding:9px;}.reader-prose>p{scroll-margin-top:130px;}}
.reader-shelf-tabs{display:flex;gap:4px;white-space:nowrap;background:#eef0eb;border-radius:9px;padding:4px}
.reader-shelf-tabs button{min-height:44px;border:0;border-radius:6px;padding:8px 12px;background:transparent;color:#637164;font-size:14px}
.reader-shelf-tabs button.active{background:#fff;color:#215b43;box-shadow:0 1px 4px #203c2810}
.original-prose{font-family:Georgia,"Times New Roman",serif;line-height:1.95;letter-spacing:.005em}
.original-prose .original-word{display:inline;margin:0;padding:0;border:0;border-radius:3px;background:transparent;color:inherit;font:inherit;line-height:inherit;text-align:inherit;vertical-align:baseline;cursor:pointer;white-space:normal}
.original-prose .original-word:hover{background:#edf1e7}
.original-prose .original-word.mark-known{background:var(--word-known,#dce5c8)}
.original-prose .original-word.mark-fuzzy{background:var(--word-fuzzy,#fff0c8)}
.original-prose .original-word.mark-unknown{background:var(--word-unknown,#ecd8c4)}
.original-word.is-lookup-target{outline:1.5px solid #48705c;outline-offset:2px}
.original-word:focus-visible{outline:2px solid #215b43;outline-offset:2px}
.original-chapter-end>p{margin-bottom:8px}
.original-chapter-end>.inline-link{min-height:44px;display:inline-block}
.original-chapter-end>.button-row{margin-top:24px}
.original-lookup{position:fixed;z-index:30;width:300px;max-width:calc(100vw - 24px);padding:15px 16px 10px;border:1px solid #d7dfd2;border-radius:12px;background:#fffdf7;color:#303b35;box-shadow:0 8px 30px #24372f20}
.original-lookup header{display:flex;align-items:center;gap:8px;padding-right:30px}
.original-lookup strong{font-size:21px;line-height:1.35;overflow-wrap:anywhere}
.original-lookup header .word-audio{min-width:44px;min-height:44px;flex-shrink:0}
.original-lookup>p{font-size:15px;line-height:1.6;margin:5px 0 12px}
.original-lookup-close{position:absolute;right:5px;top:5px;width:44px;height:44px;border:0;background:transparent;font-size:23px;color:#788477}
.original-lookup .patrol-marks button:nth-child(1){background:var(--word-known,#dce5c8)}
.original-lookup .patrol-marks button:nth-child(2){background:var(--word-fuzzy,#fff0c8)}
.original-lookup .patrol-marks button:nth-child(3){background:var(--word-unknown,#ecd8c4)}
.original-lookup footer{display:flex;align-items:center;gap:8px;min-height:44px}
.original-lookup footer>small{flex:1;color:#7d877d;font-size:11px}
.original-lookup footer button{font-size:13px;min-height:44px}
.original-lookup :is(button):focus-visible{outline:2px solid #215b43;outline-offset:2px}
.original-lookup button:disabled{opacity:.55}
@media(max-width:1200px){.original-reader .reader-sidebar>nav{display:none}.original-reader .reader-mobile-catalog{display:block}.original-reader .reader-layout{grid-template-columns:1fr;max-width:760px;gap:18px}.original-reader .reader-sidebar{position:static}.original-reader .reader-sidebar h1{font-size:26px}.original-reader .reader-sidebar .reader-blurb{margin-bottom:8px}.original-reader .reader-toolbar{flex-wrap:wrap;gap:8px}.original-reader .reader-book-picker{flex-basis:45%;order:3}}
@media(max-width:700px){.original-lookup{left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));width:auto}.original-reader .reader-book-picker{flex-basis:100%}.original-reader .reader-toolbar>.tool-button{margin-left:0}.reader-shelf-tabs button{padding:8px 10px}.original-prose{line-height:1.85}}
@media(prefers-reduced-motion:reduce){.original-reader{scroll-behavior:auto}}
/* Long originals keep their source volumes and short lookup cards. */
.reader-volume{border-bottom:1px solid #e4e8df;min-width:0}
.reader-volume>summary{padding:12px 8px;min-height:44px;cursor:pointer;color:#315843;font-size:15px;font-weight:600}
.reader-volume>summary small{font-weight:400;color:#839080;margin-left:8px}
.reader-volume>div{display:flex;flex-direction:column;gap:4px;max-height:45dvh;overflow:auto;overscroll-behavior:contain}
.reader-mobile-catalog nav:has(.reader-volume){display:block}
.reader-section-heading:has(>p){flex-wrap:wrap}
.reader-section-heading>p{flex-basis:100%;margin:0 0 0 50px;color:#899082;font-size:15px}
.original-modern-expression,.reader-modern-expression{display:grid;gap:3px;padding:8px 10px;margin:0 0 10px;background:#eef2e9;border-radius:7px}
.original-modern-expression small,.reader-modern-expression small{font-size:12px;line-height:1.45;color:#6e7d69}
.original-modern-expression span,.reader-modern-expression span{font-size:17px;line-height:1.4;color:#315843}
.reader-long-quote>summary{cursor:pointer;color:#687d6b;font-size:13px;min-height:32px}
.reader-long-quote[open] .reader-card-quote{max-height:22dvh;overflow:auto}
.original-source-notes{max-width:850px;margin:0 auto 50px;padding:20px;color:#687263}
.original-source-notes summary{min-height:44px;cursor:pointer}
.original-source-notes p{font:15px/1.7 Georgia,serif}
.original-reader .reader-mobile-catalog>summary{min-height:44px;display:flex;align-items:center;padding:10px 12px;background:#eef2e9;border-radius:8px;color:#315843;cursor:pointer;font-size:14px}
.reader-section-heading:has(>p){display:grid;grid-template-columns:auto 1fr;gap:4px 18px;margin-bottom:22px}
.reader-section-heading:has(>p) h2{margin-bottom:0}
.reader-section-heading>p{grid-column:2;margin:0;font-size:14px}

.original-prose .original-illustration{display:block;max-width:100%;width:auto;max-height:420px;height:auto;object-fit:contain;margin:24px auto;border-radius:4px}

/* Match the actual brand header height on desktop and mobile. */
.original-reader .reader-toolbar{top:var(--app-header-height,74px)}

/* The original-reader lookup stays a compact strip in both orientations. */
.original-reader .original-lookup{width:480px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:10px 12px 9px;border-radius:10px;left:auto;right:auto;bottom:auto;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 5px 20px #24372f20}
.original-reader .original-lookup[hidden]{display:none}
.original-reader .original-lookup header[data-original-drag]{touch-action:none;cursor:grab;padding-right:57px}
.original-reader .original-lookup.is-dragging{cursor:grabbing;user-select:none}
.original-reader .original-lookup-drag{flex:0 0 24px;width:24px;height:32px;border:0;padding:0;background:transparent;color:#829087;cursor:grab;touch-action:none;font-size:22px;line-height:1}
.original-reader .original-lookup header button:not(.original-lookup-drag){cursor:pointer;touch-action:manipulation}
.original-reader .original-lookup-reset{position:absolute;right:35px;top:3px;width:28px;height:32px;padding:0;border:0;background:transparent;color:#788477;font-size:20px}
.original-reader .original-lookup-reset[hidden]{display:none}
.original-reader .original-lookup header{display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px;padding-right:27px;min-width:0}
.original-reader .original-lookup strong{font-size:20px;line-height:1.25}
.original-reader .original-lookup header .word-audio{min-width:30px;min-height:30px;padding:0 2px;font-size:16px}
.original-reader .original-lookup-close{width:32px;height:32px;right:3px;top:3px;font-size:22px}
.original-reader .original-lookup .cefr-tag{font-size:10px;line-height:1.3;padding:2px 5px;margin:0}
.lookup-pos{font-size:11px;line-height:1.4;padding:2px 5px;background:#eef0eb;color:#5b665e;border-radius:4px}
.original-reader .original-lookup>.lookup-meaning{font-size:14px;line-height:1.45;margin:5px 0 6px}
.lookup-forms,.lookup-noun-forms{display:flex;flex-wrap:wrap;gap:3px 12px;color:#34453c;font:13px/1.4 Arial,"Microsoft YaHei",sans-serif;min-width:0}
.lookup-forms{margin:3px 0 7px}
.lookup-form{overflow-wrap:anywhere;min-width:0}
.lookup-form-label{color:#768078;font-size:11px}
.lookup-form.is-missing{color:#8c8176}
.original-reader .original-lookup .original-modern-expression{margin:4px 0 7px;padding:5px 7px;font-size:12px}
.original-reader .original-lookup footer{display:flex;align-items:center;justify-content:space-between;gap:5px 10px;flex-wrap:wrap;min-height:0;margin:0}
.original-reader .original-lookup .patrol-marks{display:flex;gap:6px;margin:0;padding:0;flex:0 0 auto}
.original-reader .original-lookup .patrol-marks button{flex:none;min-width:64px;min-height:44px;padding:6px 11px;border-radius:6px;font-size:13px;line-height:1.4;white-space:nowrap}
.lookup-secondary{display:flex;align-items:center;gap:7px;margin-left:auto;flex-wrap:wrap}
.original-reader .original-lookup footer .inline-link{min-height:36px;padding:4px 3px;font-size:12px}
.original-reader .original-lookup .lookup-secondary small{font-size:10px;color:#798276;line-height:1.4}
.lookup-secondary small:empty{display:none}
@media(max-width:480px){.original-reader .original-lookup{padding:9px 10px 8px}.original-reader .original-lookup strong{font-size:19px}.original-reader .original-lookup .patrol-marks button{min-width:54px;padding-left:8px;padding-right:8px}.lookup-forms,.lookup-noun-forms{font-size:12px}}
