:root{color-scheme:dark}.screen{display:flex;align-items:center;justify-content:center;height:100vh;flex-direction:column;gap:12px;padding:24px;text-align:center}.screen .spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.2);border-top-color:#4aa3ff;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.player-root{position:fixed;inset:0;background:#000;overflow:hidden;touch-action:manipulation}.player-root video{width:100%;height:100%;object-fit:contain;background:#000;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.overlay{position:absolute;inset:0;pointer-events:none}.watermark{position:absolute;padding:6px 10px;font-size:12px;font-weight:600;letter-spacing:.3px;color:#ffffff8c;text-shadow:0 1px 4px rgba(0,0,0,.8),0 0 1px #000;background:#0000002e;border-radius:6px;white-space:nowrap;transition:top .8s ease,left .8s ease,right .8s ease,bottom .8s ease,opacity .8s ease;mix-blend-mode:screen;pointer-events:none}.controls{position:absolute;left:0;right:0;bottom:0;padding:14px 16px 22px;background:linear-gradient(to top,#000000d1,#0000);pointer-events:auto;transition:opacity .2s ease,transform .2s ease}.controls.hidden{opacity:0;transform:translateY(6px);pointer-events:none}.row{display:flex;align-items:center;gap:10px}.time{font-variant-numeric:tabular-nums;font-size:12px;opacity:.85;min-width:78px}.btn{appearance:none;border:none;background:transparent;color:#fff;font-size:20px;padding:8px 10px;border-radius:8px;cursor:pointer;pointer-events:auto}.btn:active{background:#ffffff14}.btn.fullscreen{margin-left:auto;font-size:18px}.seek{flex:1;-webkit-appearance:none;appearance:none;height:4px;border-radius:4px;background:#ffffff40;outline:none}.seek::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#4aa3ff;cursor:pointer}.seek::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#4aa3ff;cursor:pointer;border:none}.title-bar{position:absolute;top:0;left:0;right:0;padding:12px 16px;background:linear-gradient(to bottom,#000000bf,#0000);font-size:14px;font-weight:600;opacity:.9;pointer-events:none;transition:opacity .2s ease}.title-bar.hidden{opacity:0}.center-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:auto}.center-play button{width:72px;height:72px;border-radius:50%;border:none;background:#0000008c;color:#fff;font-size:28px;cursor:pointer}.buffer-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:#00000059;pointer-events:none}.buffer-overlay .spinner{width:44px;height:44px;border:3px solid rgba(255,255,255,.2);border-top-color:#4aa3ff;border-radius:50%;animation:spin .9s linear infinite}.buffer-label{font-size:13px;opacity:.85;letter-spacing:.3px}.err{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}.tap-zone{position:absolute;top:0;bottom:0;width:50%;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.tap-zone--left{left:0}.tap-zone--right{right:0}.seek-burst{position:absolute;top:0;bottom:0;width:50%;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:burst .55s ease-out forwards}.seek-burst--l{left:0;background:radial-gradient(ellipse at left center,rgba(255,255,255,.14) 0%,transparent 65%)}.seek-burst--r{right:0;background:radial-gradient(ellipse at right center,rgba(255,255,255,.14) 0%,transparent 65%)}.seek-burst__label{color:#fff;font-size:15px;font-weight:600;background:#00000073;padding:8px 14px;border-radius:20px;letter-spacing:.3px}@keyframes burst{0%{opacity:0}25%{opacity:1}to{opacity:0}}.speed-wrap{position:relative;display:inline-flex}.btn.speed-toggle{font-size:13px;font-weight:600;padding:6px 10px;min-width:40px;text-align:center}.speed-menu{position:absolute;bottom:calc(100% + 6px);right:0;background:#141414f0;border-radius:10px;padding:4px 0;min-width:120px;pointer-events:auto;box-shadow:0 6px 18px #0009;border:1px solid rgba(255,255,255,.08);z-index:2}.speed-menu button{display:block;width:100%;padding:8px 14px;font-size:13px;background:transparent;color:#fff;border:none;text-align:left;cursor:pointer}.speed-menu button.active{background:#4aa3ff38;color:#bcdcff}.speed-menu button:hover{background:#ffffff14}.reader-root{position:fixed;inset:0;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:background .3s ease}.reader-page-container{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.reader-page-img{max-width:100%;max-height:100%;object-fit:contain;-webkit-user-drag:none;pointer-events:none}.reader-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}.reader-btn-retry{appearance:none;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;padding:8px 20px;border-radius:8px;cursor:pointer;font-size:14px}.reader-btn-retry:active{background:#ffffff1a}.reader-tap-left,.reader-tap-right{position:absolute;top:60px;bottom:80px;width:30%;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;z-index:1}.reader-tap-left{left:0}.reader-tap-right{right:0}.reader-topbar{position:absolute;top:0;left:0;right:0;z-index:10;padding:10px 14px;background:linear-gradient(to bottom,rgba(0,0,0,.8),transparent);display:flex;align-items:center;justify-content:space-between;gap:8px;transition:opacity .25s ease,transform .25s ease}.reader-topbar.hidden{opacity:0;transform:translateY(-8px);pointer-events:none}.reader-topbar-title{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;color:#fff}.reader-topbar-actions{display:flex;gap:2px;flex-shrink:0}.reader-icon-btn{appearance:none;border:none;background:transparent;color:#fff;font-size:18px;padding:6px 8px;border-radius:6px;cursor:pointer;min-width:32px;text-align:center}.reader-icon-btn:active{background:#ffffff1a}.reader-icon-btn.active{color:#4aa3ff}.reader-bottombar{position:absolute;bottom:0;left:0;right:0;z-index:10;padding:10px 16px 20px;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);transition:opacity .25s ease,transform .25s ease}.reader-bottombar.hidden{opacity:0;transform:translateY(8px);pointer-events:none}.reader-nav-row{display:flex;align-items:center;gap:8px}.reader-nav-btn{appearance:none;border:none;background:#ffffff1a;color:#fff;font-size:22px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.reader-nav-btn:disabled{opacity:.3;cursor:default}.reader-nav-btn:active:not(:disabled){background:#fff3}.reader-seek{flex:1;-webkit-appearance:none;appearance:none;height:4px;border-radius:4px;background:#ffffff40;outline:none}.reader-seek::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#4aa3ff;cursor:pointer}.reader-seek::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#4aa3ff;cursor:pointer;border:none}.reader-page-info{text-align:center;font-size:12px;color:#fffc;margin-top:6px;font-variant-numeric:tabular-nums}.reader-note-indicator{color:#ffeb3b}.reader-sidebar{position:absolute;top:0;right:0;bottom:0;width:min(300px,85vw);background:#141414f5;z-index:20;display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.08);animation:slideIn .2s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.reader-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08);font-size:15px;font-weight:600;color:#fff}.reader-sidebar-body{flex:1;overflow-y:auto;padding:8px 0}.reader-sidebar-empty{padding:24px 16px;text-align:center;opacity:.5;font-size:13px;color:#fff}.reader-sidebar-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;font-size:13px;color:#fff;border-bottom:1px solid rgba(255,255,255,.04)}.reader-sidebar-item:active{background:#ffffff0f}.reader-sidebar-item.active{background:#4aa3ff1f}.reader-sidebar-label{opacity:.6}.reader-sidebar-delete{appearance:none;border:none;background:transparent;color:#fff;font-size:16px;padding:4px 8px;cursor:pointer;opacity:.5}.reader-sidebar-delete:active{opacity:1}.reader-note-add{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.reader-note-add-label{font-size:12px;opacity:.6;margin-bottom:6px;color:#fff}.reader-note-textarea{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0d;color:#fff;font-size:13px;resize:none;font-family:inherit}.reader-note-textarea::placeholder{color:#ffffff4d}.reader-note-save{appearance:none;margin-top:8px;padding:8px 16px;border-radius:8px;border:none;background:#4aa3ff;color:#fff;font-size:13px;font-weight:600;cursor:pointer;width:100%}.reader-note-save:disabled{opacity:.4;cursor:default}.reader-note-save:active:not(:disabled){background:#3990e6}.note-item{flex-direction:column;align-items:flex-start;gap:4px}.reader-note-page{font-size:11px;opacity:.5}.reader-note-text{font-size:13px;word-break:break-word}.reader-settings-section{padding:16px;border-bottom:1px solid rgba(255,255,255,.06)}.reader-settings-label{font-size:12px;opacity:.5;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;color:#fff}.reader-theme-picker{display:flex;gap:8px}.reader-theme-btn{flex:1;appearance:none;border:2px solid transparent;border-radius:10px;padding:10px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;font-weight:600}.reader-theme-btn.active{border-color:#4aa3ff}.reader-theme-dark-btn{background:#1a1a1a;color:#fff}.reader-theme-light-btn{background:#f5f5f0;color:#222}.reader-theme-sepia-btn{background:#f4ecd8;color:#5b4636}.reader-quick-jump{display:flex;gap:8px}.reader-jump-btn{flex:1;appearance:none;border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff;padding:8px;border-radius:8px;font-size:13px;cursor:pointer}.reader-jump-btn:active{background:#ffffff0f}.reader-settings-info{font-size:12px;opacity:.5;line-height:1.6;color:#fff}.reader-theme-light .reader-topbar-title,.reader-theme-light .reader-page-info,.reader-theme-light .reader-sidebar-body,.reader-theme-light .reader-settings-info,.reader-theme-light .reader-settings-label,.reader-theme-light .reader-note-add-label,.reader-theme-light .reader-sidebar-empty{color:#222}.reader-theme-light .reader-sidebar{background:#f5f5f0f7;border-left-color:#0000001a}.reader-theme-light .reader-sidebar-header{color:#222;border-bottom-color:#00000014}.reader-theme-light .reader-sidebar-item{color:#222;border-bottom-color:#0000000a}.reader-theme-light .reader-note-textarea{background:#0000000a;color:#222;border-color:#0000001f}.reader-theme-light .reader-note-textarea::placeholder{color:#0000004d}.reader-theme-light .reader-jump-btn{color:#222;border-color:#00000026}.reader-theme-light .reader-icon-btn{color:#333}.reader-theme-light .reader-icon-btn.active{color:#4aa3ff}.reader-theme-light .reader-nav-btn{background:#00000014;color:#222}.reader-theme-light .reader-sidebar-delete{color:#333}.reader-theme-sepia .reader-topbar-title,.reader-theme-sepia .reader-page-info,.reader-theme-sepia .reader-sidebar-body,.reader-theme-sepia .reader-settings-info,.reader-theme-sepia .reader-settings-label,.reader-theme-sepia .reader-note-add-label,.reader-theme-sepia .reader-sidebar-empty{color:#5b4636}.reader-theme-sepia .reader-sidebar{background:#f4ecd8f7;border-left-color:#5b46361f}.reader-theme-sepia .reader-sidebar-header{color:#5b4636;border-bottom-color:#5b46361a}.reader-theme-sepia .reader-sidebar-item{color:#5b4636;border-bottom-color:#5b46360f}.reader-theme-sepia .reader-note-textarea{background:#5b46360f;color:#5b4636;border-color:#5b463626}.reader-theme-sepia .reader-note-textarea::placeholder{color:#5b46364d}.reader-theme-sepia .reader-jump-btn{color:#5b4636;border-color:#5b463633}.reader-theme-sepia .reader-icon-btn{color:#7a5a3a}.reader-theme-sepia .reader-icon-btn.active{color:#4aa3ff}.reader-theme-sepia .reader-nav-btn{background:#5b46361a;color:#5b4636}.reader-theme-sepia .reader-sidebar-delete{color:#7a5a3a}.library-root{min-height:100vh;padding:16px;box-sizing:border-box;background:#000;color:#fff}.library-header{margin-bottom:16px}.library-title{margin:0 0 4px;font-size:22px;font-weight:700}.library-count{font-size:13px;opacity:.5}.library-search-wrap{margin-bottom:16px}.library-search{width:100%;box-sizing:border-box;padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#fff;font-size:14px;outline:none}.library-search::placeholder{color:#ffffff4d}.library-search:focus{border-color:#4aa3ff}.library-empty{text-align:center;padding:40px 16px;opacity:.5;font-size:14px}.library-grid{display:flex;flex-direction:column;gap:10px}.library-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#ffffff0a;border-radius:12px;cursor:pointer;border:1px solid rgba(255,255,255,.06);transition:background .15s ease}.library-card:active{background:#ffffff14}.library-card-icon{font-size:32px;flex-shrink:0}.library-card-body{flex:1;min-width:0}.library-card-title{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-card-meta{font-size:12px;opacity:.5;margin-top:3px}.library-card-progress{display:flex;align-items:center;gap:8px;margin-top:6px}.library-progress-bar{flex:1;height:3px;border-radius:2px;background:#ffffff1f;overflow:hidden}.library-progress-fill{height:100%;background:#4aa3ff;border-radius:2px;transition:width .3s ease}.library-progress-text{font-size:11px;opacity:.5;font-variant-numeric:tabular-nums}.library-card-arrow{font-size:20px;opacity:.3;flex-shrink:0}
