.progress-range{width:100%;accent-color:var(--epub-accent)}.chapter-state{overflow:hidden;text-overflow:ellipsis}
.flow-switch{display:flex;border:1px solid var(--line);border-radius:11px;padding:2px;background:var(--panel);flex:0 0 auto}.flow-switch button{height:36px;min-width:64px;border:0;border-radius:8px;background:transparent;padding:0 10px;color:var(--muted)}.flow-switch button.active{background:var(--chrome);box-shadow:0 1px 5px rgba(0,0,0,.10);font-weight:700;color:var(--active-text)}
.appearance-sheet{right:max(12px,var(--safe-r));top:calc(var(--safe-t) + 112px);width:min(420px,calc(100vw - var(--safe-l) - var(--safe-r)));display:grid;gap:12px}.toc-sheet{left:max(12px,var(--safe-l));top:calc(var(--safe-t) + 112px);width:min(420px,calc(100vw - var(--safe-l) - var(--safe-r)));max-height:min(68vh,620px);overflow:auto}.highlight-sheet{right:max(12px,var(--safe-r));top:calc(var(--safe-t) + 112px);width:min(330px,calc(100vw - var(--safe-l) - var(--safe-r)));display:grid;gap:11px}
.font-family-row{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:10px}.font-family-row label,.setting-label{font-size:12px;color:var(--muted);font-weight:650}.font-family-row select{height:40px;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--chrome);padding:0 10px}.font-row{display:grid;grid-template-columns:54px 1fr 54px;gap:8px;align-items:center}.font-row button{height:42px;border:1px solid var(--line);border-radius:11px;background:var(--chrome)}.font-value{text-align:center}.font-value>span{display:block;font-size:12px;color:var(--muted)}.font-value label{display:inline-flex;align-items:center;justify-content:center;gap:4px}.font-value input{appearance:textfield;-moz-appearance:textfield;width:48px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:center;font-size:20px;font-weight:750;outline:none;padding:1px 2px}.font-value input::-webkit-outer-spin-button,.font-value input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.font-value input:focus{border-bottom-color:var(--epub-accent)}.font-value small{font-size:11px;color:var(--muted)}.font-range{width:100%;accent-color:var(--epub-accent)}
.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.theme-choice{border:1px solid var(--line);border-radius:12px;background:var(--chrome);padding:7px 4px;display:grid;justify-items:center;gap:5px}.theme-choice.active{box-shadow:inset 0 0 0 2px var(--epub-accent)}.theme-preview{width:50px;height:44px;border-radius:9px;border:1px solid rgba(0,0,0,.13);display:grid;place-items:center;font:19px Georgia,serif}.paper-preview{background:#fbfaf6;color:#171717}.sepia-preview{background:#ead9b8;color:#241b13}.sage-preview{background:#dfe5d6;color:#1b2118}.night-preview{background:#080808;color:#eee}.theme-choice>span:last-child{font-size:11px}
.toc-list{display:grid}.toc-list button{border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:12px 7px;color:var(--text)}.toc-list button:last-child{border-bottom:0}.toc-list button:hover,.toc-list button:focus-visible{background:var(--epub-accent-soft);outline:none}
.highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.highlight-choice{min-height:54px;border:1px solid var(--line);border-radius:11px;background:var(--chrome);display:grid;place-items:center;gap:4px;padding:7px 4px;font-size:11px}.highlight-swatch{width:42px;height:18px;border-radius:6px;border:1px solid rgba(0,0,0,.12)}.swatch-yellow{background:#ffe36e}.swatch-green{background:#bfe7a7}.swatch-pink{background:#f8b6d2}.swatch-blue{background:#b9d9ff}.highlight-clear{height:40px;border:1px solid var(--line);border-radius:10px;background:var(--chrome);font-weight:650}.annotation-count{font-size:12px;color:var(--muted)}
.epub-nav-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0 10px}.epub-nav-tabs button{min-height:34px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted);font-weight:650}.epub-nav-tabs button.active{background:var(--epub-accent-soft);color:var(--active-text);border-color:var(--epub-accent)}.epub-nav-panel[hidden]{display:none!important}.epub-nav-empty{padding:18px 8px;color:var(--muted);font-size:12px;text-align:center}.epub-nav-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;border-bottom:1px solid var(--line);align-items:stretch}.epub-nav-open,.epub-nav-delete{border:0;background:transparent;color:var(--text)}.epub-nav-open{text-align:left;padding:10px 7px;display:grid;gap:3px}.epub-nav-open strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epub-nav-open small,.epub-search-result small{font-size:10px;color:var(--muted)}.epub-nav-delete{font-size:22px;color:var(--muted)}.epub-nav-open:hover,.epub-nav-open:focus-visible,.epub-nav-delete:hover,.epub-nav-delete:focus-visible{background:var(--epub-accent-soft);outline:none}.epub-search-row{display:grid;grid-template-columns:minmax(0,1fr) 36px 36px;gap:5px}.epub-search-row input{height:38px;border:1px solid var(--line);border-radius:10px;background:var(--chrome);color:var(--text);padding:0 10px;outline:none}.epub-search-row input:focus{border-color:var(--epub-accent)}.epub-search-row button,.epub-reading-back{border:1px solid var(--line);border-radius:9px;background:var(--chrome);color:var(--text)}.epub-search-status{min-height:25px;padding:7px 2px 4px;color:var(--muted);font-size:11px}.epub-search-results{display:grid;max-height:360px;overflow:auto}.epub-search-result{border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;padding:10px 7px;display:grid;gap:4px}.epub-search-result strong{font-size:12px}.epub-search-result span{font-size:11px;line-height:1.4;color:var(--muted)}.epub-search-result:hover,.epub-search-result:focus-visible,.epub-search-result.current{background:var(--epub-accent-soft);outline:none}.epub-reading-back{width:100%;min-height:36px;margin-top:8px;font-weight:650}.epub-reading-back:disabled{opacity:.45}.tool-btn.active#bookmarkBtn{background:var(--epub-accent-soft);box-shadow:inset 0 0 0 1px var(--epub-accent)}
@media(pointer:fine){.flow-switch button{height:28px;min-width:58px;font-size:12px}.appearance-sheet,.toc-sheet,.highlight-sheet{top:calc(var(--safe-t) + 94px)}}
@media(max-width:640px){.appearance-sheet,.toc-sheet,.highlight-sheet{top:auto;left:12px;right:12px;bottom:calc(48px + env(safe-area-inset-bottom));width:auto}.toc-sheet{max-height:58vh}.theme-grid{grid-template-columns:repeat(2,1fr)}.epub-search-results{max-height:30vh}}

@media(max-width:720px){.statusbar .chapter-state{max-width:40vw}}
