:root{--bg: #f5f5f7;--fg: #1d1d1f;--accent: #b3392f;--accent-d: #8f2c24;--card: #ffffff;--border: #e3e3e6;--muted: #8a8a8e;--shadow: 0 1px 3px rgba(0, 0, 0, .08)}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--fg);font-size:14px}a{color:var(--accent);cursor:pointer}button{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;background:var(--accent);color:#fff;font-size:14px;transition:background .15s}button:hover{background:var(--accent-d)}button.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}button.ghost:hover{background:#b3392f14}button.danger{background:#d9534f}input,textarea,select{padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;width:100%;font-family:inherit;background:#fff}textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.container{max-width:960px;margin:0 auto;padding:24px 16px}.nav{display:flex;align-items:center;gap:4px;background:var(--card);border-bottom:1px solid var(--border);padding:0 12px;position:sticky;top:0;z-index:10}.nav .brand{font-weight:700;padding:14px 12px 14px 4px;color:var(--accent);white-space:nowrap}.nav .tabs{display:flex;gap:4px;flex:1;overflow-x:auto}.nav .tab{padding:14px 12px;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;font-size:14px}.nav .tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.nav .right{padding:8px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.grid{display:grid;gap:12px}.grid.cols2{grid-template-columns:repeat(2,1fr)}.grid.cols3{grid-template-columns:repeat(3,1fr)}.grid.auto{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.tiny-note{font-size:11px;margin:2px 0 10px}.shelf-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px;font-size:12px}.prog-line{color:var(--accent)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.muted{color:var(--muted)}.err{color:#b3392f;margin:8px 0}.empty{color:var(--muted);padding:24px;text-align:center}h2{margin:0 0 12px;font-size:18px}h3{margin:0 0 8px;font-size:15px}.book{cursor:pointer;transition:transform .1s}.book:hover{transform:translateY(-2px)}.book .cover{width:100%;height:200px;object-fit:cover;border-radius:8px;background:#eee}.book .cover-wrap{position:relative;height:200px}.book .cover-wrap .cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.book .cover-ph{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#eee;border-radius:8px;font-size:26px;font-weight:600;color:var(--muted);overflow:hidden}.book .title{margin-top:6px;font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book .author{font-size:12px;color:var(--muted)}.reader{max-width:720px;margin:0 auto;padding:24px 16px;line-height:1.9;font-size:16px}.reader p{margin:0 0 12px;text-indent:2em}.chapter-item{padding:10px 12px;border-bottom:1px solid var(--border);cursor:pointer}.chapter-item:hover{background:#b3392f0d}.chapter-item.active{color:var(--accent);font-weight:600}.badge{background:#eee;border-radius:999px;padding:2px 10px;font-size:12px;color:#555}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:#fff;border-radius:12px;padding:20px;width:92vw;max-width:720px;max-height:88vh;overflow:auto}.loading{color:var(--muted);padding:12px 0}.seg{display:flex;gap:4px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:4px;margin-bottom:12px}.seg button{flex:1;background:transparent;color:var(--muted);padding:8px 12px;border-radius:8px}.seg button.on{background:var(--accent);color:#fff}.chips{display:flex;gap:8px;overflow-x:auto;padding:10px 0 2px;-webkit-overflow-scrolling:touch}.chip{flex:0 0 auto;background:var(--card);color:var(--fg);border:1px solid var(--border);padding:6px 14px;border-radius:999px;font-size:13px;min-height:34px}.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}.result-meta{margin:10px 0;font-size:13px;color:var(--muted)}.search-wait{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:10px 0;font-size:13px}.sw-line{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.sw-time{color:var(--accent);font-variant-numeric:tabular-nums}.sw-sub{color:var(--muted);font-size:12px;margin-top:4px;line-height:1.5}.skeleton{pointer-events:none}.skeleton .sk-cover{height:200px;border-radius:8px;background:#eee;border:1px dashed var(--border)}.skeleton .sk-line{height:10px;margin-top:8px;background:#eee;border-radius:4px}.skeleton .sk-line.w70{width:70%}.skeleton .sk-line.w45{width:45%}.ok-line{color:#2f7d4f;margin:8px 0;font-size:13px}.warn-box{border:1px solid #e8c7a7;background:#fdf6ec;color:#8a5a1f;border-radius:10px;padding:10px 12px;margin:10px 0;font-size:12px}.warn-title{font-weight:600;margin-bottom:4px}details.warn-box>summary{cursor:pointer}.warn-items{margin-top:6px}.warn-item{line-height:1.5;word-break:break-word}.cover-btn{display:block;width:100%;padding:0;background:none;border:none}.cover-btn:hover{background:none}.clamp1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}button:disabled{opacity:.55;cursor:not-allowed}html[data-vp=sm] .container{padding:16px 12px 32px}html[data-vp=sm] .grid.cols2,html[data-vp=sm] .grid.cols3{grid-template-columns:1fr}html[data-vp=sm] .nav .brand{display:none}html[data-vp=sm] .nav{padding:0 8px}html[data-vp=sm] .nav .right{padding:8px 4px;gap:4px;align-items:center}html[data-vp=sm] .nav .right button{padding:8px}html[data-vp=sm] .nav .tabs::-webkit-scrollbar{display:none}html[data-vp=sm] .nav .tab{padding:12px 7px;font-size:13px}html[data-vp=sm] .modal{width:94vw;max-width:94vw;padding:14px;max-height:84vh}html[data-vp=sm] .batch-bar{top:44px}html[data-vp=sm] .rd-content:not(.paged){padding-left:16px;padding-right:16px}html[data-vp=sm] .rd-content.paged .rd-meta,html[data-vp=sm] .rd-content.paged .rd-chapter-title,html[data-vp=sm] .rd-content.paged .rd-p,html[data-vp=sm] .rd-content.paged .rd-navrow{padding-left:16px;padding-right:16px}html[data-vp=sm] .rd-bar{gap:4px;padding-left:4px;padding-right:4px}html[data-vp=sm] .rd-bar .rd-btn{padding:6px 7px;font-size:12px}html[data-device=mobile] .rd-bar .rd-btn,html[data-device=eink] .rd-bar .rd-btn{min-height:44px;min-width:44px}html[data-vp=sm] .rd-title{font-size:12px}html[data-device=mobile] button,html[data-device=eink] button{min-height:44px}html[data-device=mobile] .nav .tab{min-height:44px;display:flex;align-items:center}html[data-device=eink] .nav .tab{min-height:44px;display:-webkit-box;-webkit-box-align:center;-webkit-box-pack:center}html[data-device=mobile] input,html[data-device=mobile] select,html[data-device=mobile] textarea{font-size:16px}html[data-device=mobile] .sticky-actions,html[data-device=eink] .sticky-actions{padding-bottom:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}html[data-device=mobile] .container{min-height:0}html[data-device=desktop] .container{max-width:1100px}html[data-device=desktop] .rd-scroll.mode-paged{width:100%;max-width:780px;margin-left:auto;margin-right:auto}html[data-device=desktop] .grid.auto{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}html[data-device=desktop] .settings-wrap.settings-wrap{max-width:960px;grid-template-columns:1fr 1fr;align-items:start;margin:0 auto}html[data-device=desktop] .settings-wrap .sticky-actions{grid-column:1 / -1}html[data-device=desktop] .book .cover{height:220px}html[data-device=desktop] .nav .tab:hover{color:var(--accent);background:#b3392f0a}html[data-device=desktop] .card:hover{border-color:#cfcfd4}html[data-device=desktop] button:hover{filter:brightness(.95)}html[data-device=desktop] .cover-btn:hover{filter:none}html[data-device=desktop] .device-select{width:auto;min-width:92px;height:32px;padding:2px 6px;font-size:12px}html[data-vp=sm] .device-select{min-width:58px;width:58px;padding:2px;font-size:11px}.desk-only{display:none}html[data-device=desktop] .desk-only{display:block}kbd{display:inline-block;border:1px solid var(--border, #e3e3e6);border-radius:4px;padding:0 5px;font-size:11px;line-height:17px;font-family:ui-monospace,Menlo,monospace;background:var(--card, #fff)}html[data-device=eink]{background:#fff;color:#000}html[data-device=eink] *,html[data-device=eink] *:before,html[data-device=eink] *:after{transition:none!important;-webkit-transition:none!important;animation:none!important;-webkit-animation:none!important;transform:none!important;-webkit-transform:none!important;box-shadow:none!important;border-radius:0!important;background-image:none!important;text-shadow:none!important}html[data-device=eink],html[data-device=eink] body{background:#fff!important;color:#000!important}html[data-device=eink] a{color:#000;text-decoration:underline}html[data-device=eink] .nav,html[data-device=eink] .card,html[data-device=eink] .modal,html[data-device=eink] .seg,html[data-device=eink] .chip,html[data-device=eink] .warn-box,html[data-device=eink] .rd-root,html[data-device=eink] .rd-bar,html[data-device=eink] .panel,html[data-device=eink] .toc-drawer{background:#fff!important;color:#000!important;border-color:#000!important}html[data-device=eink] .nav{border-bottom:1px solid #000}html[data-device=eink] .nav .brand,html[data-device=eink] .nav .tab.active{color:#000!important}html[data-device=eink] .nav .tab.active{border-bottom-color:#000!important}html[data-device=eink] .nav{display:-webkit-box;-webkit-box-align:center}html[data-device=eink] .nav .tabs{display:-webkit-box;-webkit-box-flex:1}html[data-device=eink] .nav .right{display:-webkit-box;-webkit-box-align:center;-webkit-box-pack:end}html[data-device=eink] .nav .right>*{margin-left:8px}html[data-device=eink] .device-select{width:auto;min-width:104px;height:38px;padding:2px 6px}html[data-device=eink] .bar,html[data-device=eink] .meter>div{background:#000!important}html[data-device=eink] .meter{border-color:#000!important}html[data-device=eink] .kpi-label,html[data-device=eink] .bar-date{color:#333!important}html[data-device=eink] .pg-fill{background:#000!important}html[data-device=eink] .pg-track,html[data-device=eink] .gm-panel,html[data-device=eink] .gm-row{border-color:#000!important}html[data-device=eink] .book .cover-ph{background:#fff!important;color:#000!important;border:1px solid #000}html[data-device=eink] .batch-bar,html[data-device=eink] .toc-progress{background:#fff!important;border-color:#000!important}html[data-device=eink] .sel-lab{background:#fff;border:1px solid #000}html[data-device=eink] .new-badge{background:#000!important;color:#fff!important}html[data-device=eink] .batch-line progress{border:1px solid #000}html[data-device=eink] .replace-hint{color:#000!important;border:1px solid #000;background:#fff}html[data-device=eink] .row,html[data-device=eink] .shelf-meta,html[data-device=eink] .card-actions,html[data-device=eink] .rd-root,html[data-device=eink] .rd-bar,html[data-device=eink] .rd-meta,html[data-device=eink] .rd-navrow,html[data-device=eink] .rd-pager,html[data-device=eink] .rd-state,html[data-device=eink] .toc-drawer,html[data-device=eink] .toc-head,html[data-device=eink] .toc-tools,html[data-device=eink] .toc-row,html[data-device=eink] .batch-bar,html[data-device=eink] .modal-mask,html[data-device=eink] .seg,html[data-device=eink] .chips,html[data-device=eink] .sw-line,html[data-device=eink] .src-item{display:block!important}html[data-device=eink] .seg button,html[data-device=eink] .chip{display:inline-block}html[data-device=eink] .src-item input{display:inline-block;margin-right:8px}html[data-device=eink] .src-name,html[data-device=eink] .src-type,html[data-device=eink] .src-off{display:inline}html[data-device=eink] .batch-bar{position:static}html[data-device=eink] .detail-grid,html[data-device=eink] .detail-grid>div{display:block}html[data-device=eink] .detail-grid>div{margin-bottom:4px}html[data-device=eink] .modal-mask{position:static;background:#fff}html[data-device=eink] .modal{margin:12px auto;width:96%;max-width:96%;max-height:none}html[data-device=eink] .hist,html[data-device=eink] .retry-note,html[data-device=eink] .check-panel,html[data-device=eink] .val-box{background:#fff;border:1px solid #000;color:#000}html[data-device=eink] .retry-tag,html[data-device=eink] .check-row,html[data-device=eink] .val-box{color:#000}html[data-device=eink] .link-btn{display:inline-block;color:#000;text-decoration:underline;background:transparent!important}html[data-device=eink] .hist-word,html[data-device=eink] .hist-del{background:transparent!important;color:#000!important;border:0!important}html[data-device=eink] .cover-ph{display:block!important;text-align:center}html[data-device=eink] button,html[data-device=eink] input,html[data-device=eink] select,html[data-device=eink] textarea{background:#fff!important;color:#000!important;border:1px solid #000!important}html[data-device=eink] input[type=checkbox],html[data-device=eink] input[type=radio],html[data-device=eink] input[type=range]{accent-color:#000;background:#fff!important}html[data-device=eink] button:hover{background:#fff!important}html[data-device=eink] .seg button.on,html[data-device=eink] .chip.on,html[data-device=eink] .rd-btn.solid{background:#000!important;color:#fff!important}html[data-device=eink] .badge{background:#fff;color:#000;border:1px solid #000;border-radius:0}html[data-device=eink] .muted,html[data-device=eink] .rd-muted,html[data-device=eink] .author,html[data-device=eink] .rd-meta{color:#333!important}html[data-device=eink] .book:hover{transform:none}html[data-device=eink] .book .cover{height:200px;background:#fff;border:1px solid #000}html[data-device=eink] .grid{display:block}html[data-device=eink] .grid>*{margin-bottom:12px}html[data-device=eink] .grid.auto{display:block}html[data-device=eink] .grid.auto:after{content:"";display:block;clear:both}html[data-device=eink] .grid.auto>*{float:left;width:32.3%;margin:0 1.5% 12px 0}html[data-device=eink] .grid.auto>*:nth-child(3n){margin-right:0}@media (max-width: 480px){html[data-device=eink] .grid.auto>*{width:48.7%;margin-right:2.6%}html[data-device=eink] .grid.auto>*:nth-child(3n){margin-right:2.6%}html[data-device=eink] .grid.auto>*:nth-child(2n){margin-right:0}}html[data-device=eink] .settings-wrap.settings-wrap{display:block;max-width:820px;margin:0 auto}html[data-device=eink] .settings-wrap.settings-wrap:after{content:"";display:block;clear:both}html[data-device=eink] .settings-wrap.settings-wrap>.card{float:left;width:48.5%;margin:0 3% 12px 0}html[data-device=eink] .settings-wrap.settings-wrap>.card:nth-child(2n){margin-right:0}html[data-device=eink] .settings-wrap .sticky-actions{float:none;clear:both;width:auto}html[data-device=eink] .warn-box{background:#fff;border:1px solid #000;color:#000}html[data-device=eink] .search-wait{background:#fff;border:1px solid #000}html[data-device=eink] .search-wait .sw-time{color:#000!important}html[data-device=eink] .skeleton .sk-cover,html[data-device=eink] .skeleton .sk-line{background:#fff;border:1px dashed #000}html[data-device=eink] .spinner,html[data-device=eink] .dim-layer{display:none}html[data-device=eink] .panel-mask{background:#fff}html[data-device=eink] .toc-mask{display:none}html[data-device=eink] .toc-drawer{width:100%;max-width:none;border-right:0}html[data-device=eink] .toc-row{border-bottom:1px solid #000}html[data-device=eink] .toc-row.active{color:#000;background:#000;color:#fff}html[data-device=eink] .rd-scroll{width:100%;max-width:800px;margin:0 auto}html[data-device=eink] .rd-content{font-family:Georgia,Songti SC,SimSun,Times New Roman,serif}html[data-device=eink] .rd-p{line-height:1.85}html[data-device=eink] .rd-chapter-title{font-weight:700}html[data-device=eink] .rd-pager{border:1px solid #000;background:#fff}html[data-device=eink] .rd-pager .rd-btn{border:0!important}html[data-device=eink] .auto-pill{background:#000;color:#fff;border:1px solid #000}html[data-device=eink] .rd-toast{background:#000;color:#fff}html[data-device=eink] .gm-panel{-webkit-transform:translate(-50%,-50%)!important;transform:translate(-50%,-50%)!important}html[data-device=eink] .rd-toast{-webkit-transform:translateX(-50%)!important;transform:translate(-50%)!important}html[data-device=eink] body{font-size:16px}html[data-device=eink] .nav .brand{font-size:18px}html[data-device=eink] .nav .tab{font-size:16px}html[data-device=eink] .card{padding:20px}html[data-device=eink] h2{font-size:20px}html[data-device=eink] h3{font-size:17px}html[data-device=eink] .book .title{font-size:16px}html[data-device=eink] .book .author,html[data-device=eink] .shelf-meta{font-size:14px}html[data-device=eink] .tiny-note{font-size:13px}html[data-device=eink] input,html[data-device=eink] select,html[data-device=eink] textarea,html[data-device=eink] button{font-size:15px}.eink-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:27;background:#fff;display:none;pointer-events:none}.eink-flash.on{display:block}.export-modal.svelte-t8pv45{max-width:520px}.exp-name.svelte-t8pv45{margin:4px 0 10px;font-size:15px;font-weight:600;word-break:break-word}.exp-line.svelte-t8pv45{margin:6px 0;font-size:13px;font-variant-numeric:tabular-nums}.exp-progress.svelte-t8pv45{display:flex;align-items:center;gap:8px;margin:10px 0;font-size:13px}.exp-spin.svelte-t8pv45{flex:0 0 auto;width:14px;height:14px;border:2px solid var(--border, #e3e3e6);border-top-color:var(--accent, #b3392f);border-radius:50%;animation:svelte-t8pv45-expSpin .8s linear infinite}@keyframes svelte-t8pv45-expSpin{to{transform:rotate(360deg)}}html[data-device=eink] .exp-spin.svelte-t8pv45{display:none}html[data-device=eink] .ok-line.svelte-t8pv45,html[data-device=eink] .err.svelte-t8pv45{color:#000!important}.pg-track.svelte-m02c1x.svelte-m02c1x{height:6px;margin-top:6px;border:1px solid var(--border);border-radius:3px;overflow:hidden}.pg-fill.svelte-m02c1x.svelte-m02c1x{height:100%;background:#333}.group-select.svelte-m02c1x.svelte-m02c1x{margin-top:8px;width:100%;font-size:12px;padding:6px 8px;min-height:34px}.gm-mask.svelte-m02c1x.svelte-m02c1x{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:40}.gm-panel.svelte-m02c1x.svelte-m02c1x{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:41;width:min(560px,calc(100% - 24px));max-height:min(640px,calc(100% - 40px));overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:0 12px 40px #0000002e}.batch-bar.svelte-m02c1x.svelte-m02c1x{border:1px solid var(--border);border-radius:8px;background:var(--card);padding:10px 12px;margin:0 0 10px}.batch-line.svelte-m02c1x.svelte-m02c1x{margin:0 0 8px;line-height:1.9}.batch-line.svelte-m02c1x.svelte-m02c1x:last-child{margin-bottom:0}.batch-line.svelte-m02c1x>.svelte-m02c1x{margin:4px 6px 0 0}.batch-line.svelte-m02c1x strong.svelte-m02c1x{margin-right:6px}.batch-line.svelte-m02c1x .mini.svelte-m02c1x{padding:6px 10px;font-size:12px}.batch-group.svelte-m02c1x.svelte-m02c1x{width:auto;min-width:116px;display:inline-block;padding:6px 8px;vertical-align:middle}.batch-line.svelte-m02c1x progress.svelte-m02c1x{width:100%;height:10px;margin-top:6px;display:block}.toc-progress.svelte-m02c1x.svelte-m02c1x{border:1px solid var(--border);border-radius:8px;background:var(--card);padding:10px 12px;margin:0 0 10px}.toc-list.svelte-m02c1x.svelte-m02c1x,.fail-list.svelte-m02c1x.svelte-m02c1x{margin:6px 0 0;padding-left:20px;font-size:12px}.toc-list.svelte-m02c1x li.svelte-m02c1x,.fail-list.svelte-m02c1x li.svelte-m02c1x{line-height:1.5;word-break:break-word}.fail-list.svelte-m02c1x.svelte-m02c1x{color:#b3392f}.pager.svelte-m02c1x.svelte-m02c1x{margin:14px 0 4px;text-align:center}.pager.svelte-m02c1x button.svelte-m02c1x{margin:0 4px}.card.book.svelte-m02c1x.svelte-m02c1x{position:relative}.sel-lab.svelte-m02c1x.svelte-m02c1x{position:absolute;top:8px;left:8px;z-index:2;background:var(--card);border:1px solid var(--border);border-radius:6px;padding:2px 6px;font-size:11px}.sel-lab.svelte-m02c1x input.svelte-m02c1x{width:auto;margin:0 4px 0 0;vertical-align:middle}.sel-lab.svelte-m02c1x span.svelte-m02c1x{vertical-align:middle}.new-badge.svelte-m02c1x.svelte-m02c1x{position:absolute;top:6px;right:6px;min-width:20px;padding:2px 5px;background:#b3392f;color:#fff;border-radius:10px;font-size:11px;line-height:16px;text-align:center}.gm-row.svelte-m02c1x.svelte-m02c1x{padding:10px 0;border-top:1px solid var(--border)}.gm-name.svelte-m02c1x.svelte-m02c1x{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.gm-row.svelte-m02c1x .row.svelte-m02c1x{gap:6px}.gm-row.svelte-m02c1x input.svelte-m02c1x{flex:1;min-width:0}.card-actions.svelte-m02c1x.svelte-m02c1x{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.card-actions.svelte-m02c1x button.svelte-m02c1x{white-space:nowrap}.card-actions.svelte-m02c1x .read-btn.svelte-m02c1x{flex:1 1 100%}.card-actions.svelte-m02c1x .mini.svelte-m02c1x{flex:0 1 auto;padding:8px 12px;font-size:13px}.search-scope.svelte-165cva8.svelte-165cva8{margin-top:8px}.scope-hint.svelte-165cva8.svelte-165cva8{margin:6px 0 0;font-size:12px}.scope-report.svelte-165cva8.svelte-165cva8{margin:8px 0;font-size:13px;font-variant-numeric:tabular-nums}.hist.svelte-165cva8.svelte-165cva8{margin-top:8px;padding:8px 10px;border:1px solid var(--border, #e3e3e6);border-radius:8px;background:var(--card, #fff)}.hist-head.svelte-165cva8.svelte-165cva8{font-size:12px;margin-bottom:6px}.hist-head.svelte-165cva8 .link-btn.svelte-165cva8{float:right}.hist-item.svelte-165cva8.svelte-165cva8{display:inline-block;margin:0 6px 6px 0;border:1px solid var(--border, #e3e3e6);border-radius:6px;background:var(--card, #fff)}.hist-word.svelte-165cva8.svelte-165cva8{background:transparent;color:var(--fg, #1d1d1f);border:0;padding:5px 8px;font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-word.svelte-165cva8.svelte-165cva8:hover{background:#b3392f14}.hist-del.svelte-165cva8.svelte-165cva8{background:transparent;color:var(--muted, #666);border:0;padding:5px 8px;font-size:12px}.link-btn.svelte-165cva8.svelte-165cva8{background:transparent;color:var(--accent);border:0;padding:2px 6px;font-size:12px;text-decoration:underline}.link-btn.svelte-165cva8.svelte-165cva8:hover{background:transparent}.retry-note.svelte-165cva8.svelte-165cva8{margin:8px 0;padding:8px 10px;border:1px solid #e8c7a7;border-radius:8px;background:#fdf6ec;color:#8a5a1f;font-size:12px}.retry-tag.svelte-165cva8.svelte-165cva8{display:inline-block;padding:0 6px;border:1px solid var(--accent);border-radius:999px;font-size:11px;color:var(--accent)}.src-list.svelte-165cva8.svelte-165cva8{margin-top:8px;max-height:38vh;overflow:auto;border:1px solid var(--border, #e3e3e6);border-radius:8px;background:var(--card, #fff)}.src-item.svelte-165cva8.svelte-165cva8{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 10px;border-bottom:1px solid var(--border, #e3e3e6);font-size:13px;cursor:pointer}.src-item.svelte-165cva8.svelte-165cva8:last-child{border-bottom:0}.src-item.off.svelte-165cva8.svelte-165cva8{opacity:.55;cursor:not-allowed}.src-item.svelte-165cva8 input.svelte-165cva8{width:18px;height:18px;flex:0 0 auto}.src-name.svelte-165cva8.svelte-165cva8{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.src-type.svelte-165cva8.svelte-165cva8{flex:0 0 auto;font-size:11px;padding:1px 6px;border:1px solid var(--border, #e3e3e6);border-radius:10px;color:var(--muted, #666)}.src-off.svelte-165cva8.svelte-165cva8{flex:0 0 auto;font-size:11px;color:var(--muted, #666)}html[data-device=mobile] .src-item.svelte-165cva8.svelte-165cva8{min-height:44px}.rd-root.svelte-cxnbtl.svelte-cxnbtl{--rd-bg:#faf9f6;--rd-fg:#202124;--rd-muted:#7c7c80;--rd-panel:#ffffff;--rd-border:#e6e3dc;--rd-accent:#b3392f;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;background:var(--rd-bg);color:var(--rd-fg);font-family:system-ui,-apple-system,PingFang SC,Microsoft YaHei,serif}.theme-dark.svelte-cxnbtl.svelte-cxnbtl{--rd-bg:#15171b;--rd-fg:#c9ccd1;--rd-muted:#8b9096;--rd-panel:#1e2127;--rd-border:#2c313a;--rd-accent:#d8756b}.theme-sepia.svelte-cxnbtl.svelte-cxnbtl{--rd-bg:#f5eeda;--rd-fg:#4a3b2a;--rd-muted:#8d7a5f;--rd-panel:#fbf5e6;--rd-border:#e3d7bb;--rd-accent:#9a6b3f}.rd-bar.svelte-cxnbtl.svelte-cxnbtl{position:relative;z-index:22;display:flex;align-items:center;gap:6px;padding:calc(env(safe-area-inset-top) + 6px) 8px 6px;background:var(--rd-panel);border-bottom:1px solid var(--rd-border);flex:0 0 auto}.rd-title.svelte-cxnbtl.svelte-cxnbtl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:14px;text-align:center}.rd-btn.svelte-cxnbtl.svelte-cxnbtl{background:transparent;color:var(--rd-fg);border:1px solid var(--rd-border);border-radius:8px;padding:7px 12px;font-size:13px;min-height:38px;white-space:nowrap}.rd-btn.svelte-cxnbtl.svelte-cxnbtl:hover{background:var(--rd-border)}.rd-btn.solid.svelte-cxnbtl.svelte-cxnbtl{background:var(--rd-accent);color:#fff;border-color:var(--rd-accent)}.rd-btn.svelte-cxnbtl.svelte-cxnbtl:disabled{opacity:.4}.rd-scroll.svelte-cxnbtl.svelte-cxnbtl{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;position:relative;user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}.rd-scroll.mode-paged.svelte-cxnbtl.svelte-cxnbtl{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.rd-scroll.mode-paged.svelte-cxnbtl.svelte-cxnbtl::-webkit-scrollbar{display:none}.rd-content.svelte-cxnbtl.svelte-cxnbtl{margin:0 auto;padding:18px 18px calc(24px + env(safe-area-inset-bottom));user-select:text;-webkit-user-select:text}.rd-content.paged.svelte-cxnbtl.svelte-cxnbtl{will-change:transform,opacity;backface-visibility:hidden}.rd-content.paged.svelte-cxnbtl .rd-meta.svelte-cxnbtl,.rd-content.paged.svelte-cxnbtl .rd-chapter-title.svelte-cxnbtl,.rd-content.paged.svelte-cxnbtl .rd-p.svelte-cxnbtl,.rd-content.paged.svelte-cxnbtl .rd-navrow.svelte-cxnbtl{padding-left:18px;padding-right:18px}.rd-content.paged.svelte-cxnbtl .rd-meta.svelte-cxnbtl{padding-top:18px}.rd-content.paged.svelte-cxnbtl .rd-navrow.svelte-cxnbtl{margin-bottom:18px}.flip-next.svelte-cxnbtl.svelte-cxnbtl{animation:svelte-cxnbtl-rdFlipNext .32s ease}.flip-prev.svelte-cxnbtl.svelte-cxnbtl{animation:svelte-cxnbtl-rdFlipPrev .32s ease}@keyframes svelte-cxnbtl-rdFlipNext{0%{opacity:.4;transform:perspective(1100px) rotateY(7deg) translate(16px)}to{opacity:1;transform:none}}@keyframes svelte-cxnbtl-rdFlipPrev{0%{opacity:.4;transform:perspective(1100px) rotateY(-7deg) translate(-16px)}to{opacity:1;transform:none}}.rd-meta.svelte-cxnbtl.svelte-cxnbtl{font-size:12px;color:var(--rd-muted);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}.dot.svelte-cxnbtl.svelte-cxnbtl{opacity:.6}.replace-hint.svelte-cxnbtl.svelte-cxnbtl{font-size:12px;color:var(--rd-muted);border:1px solid var(--rd-border, #ccc);border-radius:6px;padding:4px 8px;margin:0 0 14px}.rd-chapter-title.svelte-cxnbtl.svelte-cxnbtl{font-size:1.25em;line-height:1.5;margin:0 0 16px;font-weight:600}.rd-p.svelte-cxnbtl.svelte-cxnbtl{margin:0 0 .85em;text-indent:2em;word-break:break-word}.rd-img.svelte-cxnbtl.svelte-cxnbtl{display:block;margin:.8em 0;text-align:center;break-inside:avoid;page-break-inside:avoid}.rd-img.svelte-cxnbtl img.svelte-cxnbtl{display:block;margin:0 auto;max-width:100%;height:auto;border-radius:4px}.rd-content.paged.svelte-cxnbtl .rd-img.svelte-cxnbtl{padding-left:18px;padding-right:18px}.rd-img-ph.svelte-cxnbtl.svelte-cxnbtl{display:block;padding:18px 12px;border:1px dashed var(--rd-border);color:var(--rd-muted);font-size:13px;text-align:center}.rd-img-err.svelte-cxnbtl.svelte-cxnbtl{margin-top:4px;font-size:12px;word-break:break-all}.rd-img-ph.svelte-cxnbtl .rd-btn.svelte-cxnbtl{margin-top:10px}html[data-device=mobile] .rd-img.svelte-cxnbtl img.svelte-cxnbtl{width:100%}html[data-device=eink] .rd-img.svelte-cxnbtl img.svelte-cxnbtl{display:block;width:92%;max-width:100%;height:auto}.rd-navrow.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:8px;margin-top:28px;padding-top:16px;border-top:1px solid var(--rd-border)}.rd-navrow.svelte-cxnbtl .rd-btn.svelte-cxnbtl{flex:1}.rd-state.svelte-cxnbtl.svelte-cxnbtl{padding:48px 24px;text-align:center;color:var(--rd-muted);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:13px}.rd-state.slim.svelte-cxnbtl.svelte-cxnbtl{padding:20px}.rd-error.svelte-cxnbtl.svelte-cxnbtl{color:#c0392b;font-size:13px;margin:0}.theme-dark.svelte-cxnbtl .rd-error.svelte-cxnbtl{color:#e88}.rd-muted.svelte-cxnbtl.svelte-cxnbtl{color:var(--rd-muted)}.spinner.svelte-cxnbtl.svelte-cxnbtl{width:22px;height:22px;border:2px solid var(--rd-border);border-top-color:var(--rd-accent);border-radius:50%;animation:svelte-cxnbtl-spin .8s linear infinite}@keyframes svelte-cxnbtl-spin{to{transform:rotate(360deg)}}.dim-layer.svelte-cxnbtl.svelte-cxnbtl{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;pointer-events:none;z-index:21;transition:opacity .2s}.rd-pager.svelte-cxnbtl.svelte-cxnbtl{position:relative;z-index:23;flex:0 0 auto;align-self:center;display:flex;align-items:center;gap:8px;margin:4px auto 6px;margin-bottom:calc(6px + env(safe-area-inset-bottom));padding:5px 8px;background:var(--rd-panel);border:1px solid var(--rd-border);border-radius:999px;box-shadow:0 2px 10px #00000024;font-size:12px;color:var(--rd-muted)}.rd-pager.svelte-cxnbtl .rd-btn.svelte-cxnbtl{min-height:32px;padding:4px 10px;border:none}.pager-num.svelte-cxnbtl.svelte-cxnbtl{min-width:54px;text-align:center;font-variant-numeric:tabular-nums}.auto-pill.svelte-cxnbtl.svelte-cxnbtl{position:fixed;right:10px;bottom:calc(58px + env(safe-area-inset-bottom));z-index:24;background:var(--rd-accent);color:#fff;border:none;border-radius:999px;padding:8px 14px;font-size:12px;box-shadow:0 2px 10px #0003}.rd-toast.svelte-cxnbtl.svelte-cxnbtl{position:fixed;left:50%;bottom:calc(110px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:29;background:#000000c7;color:#fff;padding:8px 14px;border-radius:8px;font-size:13px;max-width:80vw;text-align:center}.toc-mask.svelte-cxnbtl.svelte-cxnbtl{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:25}.toc-drawer.svelte-cxnbtl.svelte-cxnbtl{position:fixed;top:0;left:0;bottom:0;width:86vw;max-width:380px;background:var(--rd-panel);color:var(--rd-fg);z-index:26;display:flex;flex-direction:column;padding-top:0;padding-top:env(safe-area-inset-top);box-shadow:2px 0 12px #0000002e}.toc-head.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:1px solid var(--rd-border);font-size:14px}.toc-tools.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:8px;padding:10px 12px;border-bottom:1px solid var(--rd-border)}.toc-tools.svelte-cxnbtl input.svelte-cxnbtl{flex:1;min-width:0;background:transparent;color:var(--rd-fg);border:1px solid var(--rd-border);padding:8px 10px;font-size:14px;border-radius:8px}.toc-list.svelte-cxnbtl.svelte-cxnbtl{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative}.toc-row.svelte-cxnbtl.svelte-cxnbtl{position:absolute;left:0;right:0;display:flex;align-items:center;gap:6px;width:100%;height:46px;text-align:left;padding:0 14px;overflow:hidden;background:transparent;color:var(--rd-fg);border:none;border-bottom:1px solid var(--rd-border);border-radius:0;font-size:14px}.toc-title.svelte-cxnbtl.svelte-cxnbtl{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.toc-row.svelte-cxnbtl.svelte-cxnbtl:hover{background:var(--rd-border)}.toc-row.active.svelte-cxnbtl.svelte-cxnbtl{color:var(--rd-accent);font-weight:600}.toc-row.vol.svelte-cxnbtl.svelte-cxnbtl{color:var(--rd-muted);font-weight:600}.pay-badge.svelte-cxnbtl.svelte-cxnbtl{flex:0 0 auto;min-width:18px;height:18px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;color:#fff;background:var(--rd-accent);border-radius:4px}.pay-badge.pay.svelte-cxnbtl.svelte-cxnbtl{background:var(--rd-muted)}.pay-both.svelte-cxnbtl.svelte-cxnbtl{flex:0 0 auto;font-size:10px;color:var(--rd-muted)}.pay-notice.svelte-cxnbtl.svelte-cxnbtl{position:relative;z-index:21;display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:6px 10px;font-size:13px;color:var(--rd-fg);background:var(--rd-panel);border-bottom:1px solid var(--rd-border)}.pay-notice.svelte-cxnbtl .pay-text.svelte-cxnbtl{flex:1;min-width:0}html[data-device=mobile] .pay-notice.svelte-cxnbtl .rd-btn.svelte-cxnbtl{min-height:44px;min-width:44px}html[data-device=eink] .pay-badge.svelte-cxnbtl.svelte-cxnbtl{min-width:0;height:auto;padding:0;background:none;border:none;border-radius:0;color:#000;font-weight:700}html[data-device=eink] .pay-badge.svelte-cxnbtl.svelte-cxnbtl:before{content:"["}html[data-device=eink] .pay-badge.svelte-cxnbtl.svelte-cxnbtl:after{content:"]"}html[data-device=eink] .pay-notice.svelte-cxnbtl.svelte-cxnbtl,html[data-device=eink] .pay-notice.svelte-cxnbtl .pay-text.svelte-cxnbtl{color:#000;background:#fff;border-color:#000}.panel-mask.svelte-cxnbtl.svelte-cxnbtl{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:28;display:flex;align-items:flex-end}.panel.svelte-cxnbtl.svelte-cxnbtl{width:100%;max-height:86vh;overflow-y:auto;background:var(--rd-panel);border-top-left-radius:16px;border-top-right-radius:16px;padding:14px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #0000002e}.panel-head.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:14px}.switch-panel.svelte-cxnbtl.svelte-cxnbtl{max-height:72vh;display:flex;flex-direction:column}.switch-list.svelte-cxnbtl.svelte-cxnbtl{overflow-y:auto;display:flex;flex-direction:column;gap:8px}.switch-item.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;gap:10px;border-top:1px solid var(--rd-border);padding-top:8px}.switch-main.svelte-cxnbtl.svelte-cxnbtl{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.switch-main.svelte-cxnbtl b.svelte-cxnbtl{font-size:14px}.panel-row.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0}.panel-row.svelte-cxnbtl>span.svelte-cxnbtl{font-size:13px;color:var(--rd-muted);flex:0 0 auto}.stepper.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;gap:10px}.stepper.svelte-cxnbtl .val.svelte-cxnbtl{min-width:40px;text-align:center;font-variant-numeric:tabular-nums}.slider-wrap.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.slider-wrap.svelte-cxnbtl input[type=range].svelte-cxnbtl{flex:1;min-width:80px;accent-color:var(--rd-accent);padding:0}.seg.small.svelte-cxnbtl.svelte-cxnbtl{margin:0;padding:3px;border:1px solid var(--rd-border);background:transparent}.seg.small.svelte-cxnbtl button.svelte-cxnbtl{background:transparent;color:var(--rd-fg);padding:4px 10px;min-height:30px;font-size:12px;border-radius:6px}.seg.small.svelte-cxnbtl button.on.svelte-cxnbtl{background:var(--rd-accent);color:#fff}.small-note.svelte-cxnbtl.svelte-cxnbtl{margin:10px 0 0;font-size:12px;line-height:1.6}.err-actions.svelte-cxnbtl.svelte-cxnbtl,.jump-actions.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:10px}.jump-panel.svelte-cxnbtl.svelte-cxnbtl{max-height:80vh;overflow-y:auto}.jump-num.svelte-cxnbtl.svelte-cxnbtl{width:76px;padding:6px 8px;border:1px solid var(--rd-border);border-radius:8px;background:var(--rd-panel);color:var(--rd-fg);font-size:14px;font-variant-numeric:tabular-nums}.eink-fixed.svelte-cxnbtl.svelte-cxnbtl{font-size:12px;color:var(--rd-muted)}.row-actions.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.bm-tools.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:8px;margin-bottom:4px}.bm-note.svelte-cxnbtl.svelte-cxnbtl{width:100%;margin:6px 0 2px;background:transparent;color:var(--rd-fg);border:1px solid var(--rd-border);border-radius:8px;padding:8px 10px;font-size:13px}.bm-note-text.svelte-cxnbtl.svelte-cxnbtl{font-size:12px;color:var(--rd-fg);white-space:pre-wrap;word-break:break-word}.bm-list.svelte-cxnbtl.svelte-cxnbtl{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow-y:auto}.bm-item.svelte-cxnbtl.svelte-cxnbtl{display:flex;align-items:center;gap:8px;border-top:1px solid var(--rd-border);padding-top:8px}.bm-main.svelte-cxnbtl.svelte-cxnbtl{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left;background:transparent;color:var(--rd-fg);border:none;padding:4px 0}.bm-main.svelte-cxnbtl strong.svelte-cxnbtl{font-size:14px}.bm-main.svelte-cxnbtl span.svelte-cxnbtl{font-size:12px}.bm-main.svelte-cxnbtl .bm-time.svelte-cxnbtl{font-size:11px}.bm-item.current.svelte-cxnbtl .bm-main.svelte-cxnbtl{border-left:3px solid var(--rd-accent);padding-left:8px}.bm-item.current.svelte-cxnbtl .bm-main strong.svelte-cxnbtl{font-weight:700}.search-box.svelte-cxnbtl.svelte-cxnbtl{display:flex;gap:8px;margin-bottom:4px}.search-box.svelte-cxnbtl input.svelte-cxnbtl{flex:1;min-width:0;background:transparent;color:var(--rd-fg);border:1px solid var(--rd-border);border-radius:8px;padding:8px 10px;font-size:14px}.search-summary.svelte-cxnbtl.svelte-cxnbtl{display:flex;flex-direction:column;gap:2px;margin:10px 0 6px;font-size:13px}.search-warn.svelte-cxnbtl.svelte-cxnbtl{border:1px solid var(--rd-border);border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.6}.search-hits.svelte-cxnbtl.svelte-cxnbtl{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow-y:auto}.search-hit.svelte-cxnbtl.svelte-cxnbtl{display:flex;flex-direction:column;gap:3px;text-align:left;background:transparent;color:var(--rd-fg);border:1px solid var(--rd-border);border-radius:8px;padding:8px 10px}.hit-title.svelte-cxnbtl.svelte-cxnbtl{font-weight:600;font-size:13px}.hit-snippet.svelte-cxnbtl.svelte-cxnbtl{font-size:12px;color:var(--rd-muted);line-height:1.5}.load-fail.svelte-70hazg.svelte-70hazg{padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--card);margin:16px}.load-fail.svelte-70hazg button.svelte-70hazg{margin-right:8px;margin-top:4px}
