.offline-bar[data-v-327f433d]{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ff980033;border-bottom:1px solid rgba(255,152,0,.3);color:#ff9800;display:flex;font-size:11px;gap:6px;height:20px;justify-content:center;left:0;padding-top:env(safe-area-inset-top);pointer-events:none;position:fixed;right:0;top:0;z-index:899}:root.dark .offline-bar[data-v-327f433d]{color:#ffb74d}.offline-icon[data-v-327f433d]{animation:pulse-327f433d 2s ease-in-out infinite;font-size:11px}.offline-text[data-v-327f433d]{font-weight:500}@keyframes pulse-327f433d{0%,to{opacity:1}50%{opacity:.5}}.slide-down-enter-active[data-v-327f433d],.slide-down-leave-active[data-v-327f433d]{transition:transform .3s ease,opacity .3s ease}.slide-down-enter-from[data-v-327f433d],.slide-down-leave-to[data-v-327f433d]{opacity:0;transform:translateY(-100%)}.toc-btn[data-v-96789163]{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#e91e6326;border:1px solid rgba(233,30,99,.3);border-radius:50%;box-shadow:0 4px 12px #e91e6333;color:#e91e63;cursor:pointer;display:flex;font-size:24px;height:50px;justify-content:center;left:20px;position:fixed;top:calc(80px + env(safe-area-inset-top));transition:all .3s;width:50px;z-index:1001}:root.dark .toc-btn[data-v-96789163]{background:#e91e6333;border:1px solid rgba(233,30,99,.4);color:#f06292}.toc-btn[data-v-96789163]:hover{background:#e91e6340;box-shadow:0 4px 16px #e91e634d;transform:scale(1.1)}.toc-overlay[data-v-96789163]{background:#00000080;left:0;right:0;z-index:1002}.toc-overlay[data-v-96789163],.toc-sidebar[data-v-96789163]{bottom:0;position:fixed;top:0}.toc-sidebar[data-v-96789163]{background:var(--bg-secondary);box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;left:-320px;padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);transition:left .3s;width:300px;z-index:1003}.toc-sidebar.open[data-v-96789163]{left:0}.toc-header[data-v-96789163]{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px}.toc-header h3[data-v-96789163]{color:var(--text-primary);margin:0}.close-btn[data-v-96789163]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:30px;height:30px;padding:0;width:30px}.toc-list[data-v-96789163]{flex:1;overflow-y:auto;padding:10px}.toc-item[data-v-96789163]{background:var(--bg-primary);border:2px solid transparent;border-radius:8px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .2s}.toc-item[data-v-96789163]:hover{background:var(--bg-secondary);border-color:var(--border-color)}.toc-item.active[data-v-96789163]{background:#005a9c1a;border-color:#005a9c}.chapter-info[data-v-96789163]{display:flex;gap:10px;margin-bottom:10px}.chapter-icon[data-v-96789163]{font-size:20px;text-align:center;width:24px}.chapter-text[data-v-96789163]{flex:1}.chapter-title[data-v-96789163]{color:var(--text-primary);font-weight:700;margin-bottom:4px}.chapter-subtitle[data-v-96789163]{color:var(--text-secondary);font-size:14px}.chapter-progress[data-v-96789163]{align-items:center;display:flex;gap:10px}.progress-bar[data-v-96789163]{background:var(--border-color);border-radius:3px;flex:1;height:6px;overflow:hidden}.progress-fill[data-v-96789163]{background:#4caf50;height:100%;transition:width .3s}.progress-text[data-v-96789163]{color:var(--text-secondary);font-size:12px;min-width:35px;text-align:right}.search-btn[data-v-d4977a46]{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#4caf5026;border:1px solid rgba(76,175,80,.3);border-radius:50%;box-shadow:0 4px 12px #4caf5033;color:#4caf50;cursor:pointer;display:flex;font-size:24px;height:50px;justify-content:center;position:fixed;right:20px;top:calc(80px + env(safe-area-inset-top));transition:all .3s;width:50px;z-index:900}:root.dark .search-btn[data-v-d4977a46]{background:#4caf5033;border:1px solid rgba(76,175,80,.4);color:#81c784}.search-btn[data-v-d4977a46]:hover{background:#4caf5040;box-shadow:0 4px 16px #4caf504d;transform:scale(1.1)}.search-overlay[data-v-d4977a46]{background:#00000080;inset:0;position:fixed;z-index:1002}.search-panel[data-v-d4977a46]{background:var(--bg-primary);bottom:0;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);position:fixed;right:-400px;top:0;transition:right .3s;width:380px;z-index:1003}.search-panel.open[data-v-d4977a46]{right:0}.search-header[data-v-d4977a46]{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:10px;padding:20px}.search-input[data-v-d4977a46]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;color:var(--text-primary);flex:1;font-size:16px;outline:none;padding:10px 15px}.search-input[data-v-d4977a46]:focus{border-color:#4caf50}.close-btn[data-v-d4977a46]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:30px;height:30px;padding:0;width:30px}.search-results[data-v-d4977a46]{flex:1;overflow-y:auto;padding:10px}.no-results[data-v-d4977a46]{color:var(--text-secondary);padding:40px 20px;text-align:center}.result-item[data-v-d4977a46]{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .2s}.result-item[data-v-d4977a46]:hover{background:var(--bg-primary);border-color:#4caf50}.result-header[data-v-d4977a46]{align-items:center;display:flex;gap:10px;margin-bottom:8px}.chapter-tag[data-v-d4977a46]{background:#e3f2fd;border-radius:4px;color:#1976d2;font-size:12px;padding:2px 8px}.vocab[data-v-d4977a46]{color:var(--text-primary);font-weight:700}.result-content[data-v-d4977a46]{font-size:14px}.jp[data-v-d4977a46]{color:var(--text-primary);margin-bottom:4px}.cn[data-v-d4977a46]{color:var(--text-secondary)}[data-v-d4977a46] mark{background:#ffeb3b;border-radius:2px;padding:2px 4px}.player-panel[data-v-f28f8761]{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffffb3;border-top:1px solid rgba(0,0,0,.1);bottom:0;box-shadow:0 -2px 20px #0000001a;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:100}:root.dark .player-panel[data-v-f28f8761]{background:#1e1e1eb3;border-top:1px solid hsla(0,0%,100%,.1);box-shadow:0 -2px 20px #0000004d}.player-content[data-v-f28f8761]{margin:0 auto;max-width:800px;padding:12px 16px}.main-controls[data-v-f28f8761]{flex-wrap:wrap;gap:12px}.main-controls[data-v-f28f8761],button[data-v-f28f8761]{align-items:center;display:flex;justify-content:center}button[data-v-f28f8761]{border:none;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}button[data-v-f28f8761]:active{transform:scale(.95)}.btn-play[data-v-f28f8761]{background:#005a9ce6;border-radius:50%;box-shadow:0 2px 8px #005a9c4d;color:#fff;font-size:24px;height:56px;width:56px}:root.dark .btn-play[data-v-f28f8761]{background:#0078c8e6}.btn-play[data-v-f28f8761]:active{box-shadow:0 1px 4px #005a9c4d}.btn-skip[data-v-f28f8761]{background:#667eeae6;border-radius:50%;box-shadow:0 2px 6px #667eea4d;color:#fff;font-size:20px;height:44px;width:44px}:root.dark .btn-skip[data-v-f28f8761]{background:#788cf0e6}.btn-skip[data-v-f28f8761]:disabled{box-shadow:none;cursor:not-allowed;opacity:.4}.btn-skip[data-v-f28f8761]:active:not(:disabled){box-shadow:0 1px 3px #667eea4d}.btn-loop[data-v-f28f8761]{background:#f0f0f0e6;border:1px solid rgba(0,0,0,.1);border-radius:22px;color:var(--text-secondary);gap:6px;height:44px;padding:0 16px}:root.dark .btn-loop[data-v-f28f8761]{background:#3c3c3ce6;border:1px solid hsla(0,0%,100%,.1)}.btn-loop.active[data-v-f28f8761]{background:#4caf50e6;border-color:#4caf504d;box-shadow:0 2px 6px #4caf504d;color:#fff}:root.dark .btn-loop.active[data-v-f28f8761]{background:#4caf50}.btn-loop[data-v-f28f8761]:active{box-shadow:0 1px 3px #0003}.btn-eye-care[data-v-f28f8761]{background:#f0f0f0e6;border:1px solid rgba(0,0,0,.1);border-radius:50%;font-size:20px;height:44px;width:44px}:root.dark .btn-eye-care[data-v-f28f8761]{background:#3c3c3ce6;border:1px solid hsla(0,0%,100%,.1)}.btn-eye-care.active[data-v-f28f8761]{background:#4caf50e6;border-color:#4caf504d;box-shadow:0 2px 6px #4caf504d}:root.dark .btn-eye-care.active[data-v-f28f8761]{background:#4caf50}.eye-icon[data-v-f28f8761],.loop-icon[data-v-f28f8761]{align-items:center;display:flex;line-height:1}.loop-icon[data-v-f28f8761]{font-size:18px}.loop-text[data-v-f28f8761]{font-size:14px;font-weight:500;line-height:1;white-space:nowrap}@media(max-width:768px){.player-content[data-v-f28f8761]{padding:10px 12px}.main-controls[data-v-f28f8761]{gap:10px}.btn-play[data-v-f28f8761]{font-size:22px;height:52px;width:52px}.btn-skip[data-v-f28f8761]{font-size:18px;height:40px;width:40px}.btn-loop[data-v-f28f8761]{height:40px;padding:0 14px}.loop-icon[data-v-f28f8761]{font-size:16px}.loop-text[data-v-f28f8761]{font-size:13px}}@media(max-width:375px){.main-controls[data-v-f28f8761]{gap:8px}.btn-play[data-v-f28f8761]{font-size:20px;height:48px;width:48px}.btn-skip[data-v-f28f8761]{font-size:16px;height:38px;width:38px}.btn-loop[data-v-f28f8761]{height:38px;padding:0 12px}.loop-icon[data-v-f28f8761]{font-size:15px}.loop-text[data-v-f28f8761]{font-size:12px}}.cache-status[data-v-c478bfb4]{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff9;border-radius:20px;box-shadow:0 2px 8px #0000001a;left:50%;max-width:90vw;min-width:180px;padding:10px 16px;pointer-events:none;position:fixed;top:20px;transform:translate(-50%);z-index:1000}.status-checking[data-v-c478bfb4]{border-left:4px solid rgba(33,150,243,.8)}.status-caching[data-v-c478bfb4]{border-left:4px solid rgba(255,152,0,.8)}.status-complete[data-v-c478bfb4]{border-left:4px solid rgba(76,175,80,.8)}.status-offline[data-v-c478bfb4]{border-left:4px solid rgba(244,67,54,.8)}.status-content[data-v-c478bfb4]{align-items:center;display:flex;gap:10px}.icon[data-v-c478bfb4]{font-size:20px}.text[data-v-c478bfb4]{color:#333;font-size:14px;font-weight:500;text-shadow:0 1px 2px hsla(0,0%,100%,.8)}.progress[data-v-c478bfb4]{background:#e0e0e0;border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.progress-bar[data-v-c478bfb4]{background:#ff9800;height:100%;transition:width .3s}.settings-btn[data-v-d03f0ac9]{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ff98001f;border:1px solid rgba(255,152,0,.3);border-radius:50%;box-shadow:0 2px 8px #ff980026;color:#f57c00;cursor:pointer;display:flex;font-size:24px;height:50px;justify-content:center;position:fixed;right:20px;top:calc(20px + env(safe-area-inset-top));transition:all .3s;width:50px;z-index:900}:root.dark .settings-btn[data-v-d03f0ac9]{background:#ff98002e;border:1px solid rgba(255,152,0,.35);box-shadow:0 2px 8px #ff980040;color:#ffb74d}.settings-btn[data-v-d03f0ac9]:hover{background:#ff980033;box-shadow:0 4px 12px #ff980040;transform:scale(1.05)}:root.dark .settings-btn[data-v-d03f0ac9]:hover{background:#ff980047;box-shadow:0 4px 12px #ff980059}.settings-btn.hide-on-panel[data-v-d03f0ac9]{opacity:0;visibility:hidden}.settings-overlay[data-v-d03f0ac9]{background:#0006;inset:0;position:fixed;z-index:1002}:root.dark .settings-overlay[data-v-d03f0ac9]{background:#0009}.settings-panel[data-v-d03f0ac9]{background:var(--bg-primary);bottom:0;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);position:fixed;right:-350px;top:0;transition:right .3s;width:330px;z-index:1003}.settings-panel.open[data-v-d03f0ac9]{right:0}.settings-header[data-v-d03f0ac9]{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px}.settings-header h3[data-v-d03f0ac9]{color:var(--text-primary);margin:0}.close-btn[data-v-d03f0ac9]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:30px;height:30px;padding:0;transition:all .2s;width:30px}.close-btn[data-v-d03f0ac9]:hover{color:var(--text-primary);transform:scale(1.1)}.settings-content[data-v-d03f0ac9]{flex:1;overflow-y:auto;padding:20px}.setting-group[data-v-d03f0ac9]{margin-bottom:30px}.setting-group h4[data-v-d03f0ac9]{color:var(--text-primary);margin:0 0 15px}.theme-buttons[data-v-d03f0ac9]{display:flex;gap:10px}.theme-buttons button[data-v-d03f0ac9]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;flex:1;padding:10px;transition:all .2s}.theme-buttons button[data-v-d03f0ac9]:hover{background:#9c27b014;border-color:#9c27b080}:root.dark .theme-buttons button[data-v-d03f0ac9]:hover{background:#9c27b026}.theme-buttons button.active[data-v-d03f0ac9]{background:#9c27b0;border-color:#9c27b0;color:#fff}:root.dark .theme-buttons button.active[data-v-d03f0ac9]{background:#ab47bc;border-color:#ab47bc}.font-control[data-v-d03f0ac9]{align-items:center;display:flex;gap:15px;margin-bottom:10px}.font-control button[data-v-d03f0ac9]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:18px;height:40px;transition:all .2s;width:40px}.font-control button[data-v-d03f0ac9]:hover{background:#9c27b014;border-color:#9c27b080}:root.dark .font-control button[data-v-d03f0ac9]:hover{background:#9c27b026}.font-control span[data-v-d03f0ac9]{color:var(--text-primary);flex:1;font-weight:700;text-align:center}.preview[data-v-d03f0ac9]{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:15px;text-align:center}.preview.cn[data-v-d03f0ac9],.preview.jp[data-v-d03f0ac9]{color:var(--text-primary)}.font-buttons[data-v-d03f0ac9]{display:flex;flex-wrap:wrap;gap:10px}.font-buttons button[data-v-d03f0ac9]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;flex:1;min-width:80px;padding:10px;transition:all .2s}.font-buttons button[data-v-d03f0ac9]:hover:not(.unavailable){background:#9c27b014;border-color:#9c27b080}:root.dark .font-buttons button[data-v-d03f0ac9]:hover:not(.unavailable){background:#9c27b026}.font-buttons button.active[data-v-d03f0ac9]{background:#6a1b9a;border-color:#6a1b9a;color:#fff}.font-buttons button.active.unavailable[data-v-d03f0ac9]{background:#9c27b0d9;color:#fffffff2}:root.dark .font-buttons button.active[data-v-d03f0ac9]{background:#ab47bc;border-color:#ab47bc}.font-category[data-v-d03f0ac9]{margin-bottom:15px}.category-label[data-v-d03f0ac9]{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;margin-bottom:8px;opacity:.9}:root.dark .category-label[data-v-d03f0ac9]{opacity:.95}.font-buttons button.unavailable[data-v-d03f0ac9]{border-color:#0000001a;color:#0006;cursor:not-allowed;opacity:.6;position:relative}:root.dark .font-buttons button.unavailable[data-v-d03f0ac9]{border-color:#ffffff26;color:#ffffff59;opacity:.5}.font-buttons button.unavailable[data-v-d03f0ac9]:hover{background:var(--bg-secondary);border-color:#0000001a;transform:none}:root.dark .font-buttons button.unavailable[data-v-d03f0ac9]:hover{border-color:#ffffff26}.unavailable-badge[data-v-d03f0ac9]{font-size:12px;margin-left:4px}.platform-badge[data-v-d03f0ac9]{color:var(--text-secondary);display:block;font-size:10px;margin-left:4px;margin-top:2px}:root.dark .platform-badge[data-v-d03f0ac9]{opacity:.85}.font-preview[data-v-d03f0ac9]{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);display:flex;font-size:18px;justify-content:center;margin-bottom:15px;min-height:50px;padding:15px;text-align:center}.font-preview.jp[data-v-d03f0ac9]{letter-spacing:.05em}.font-preview.cn[data-v-d03f0ac9]{letter-spacing:.02em}.data-hint[data-v-d03f0ac9]{color:var(--text-secondary);font-size:12px;margin:-5px 0 10px}.export-buttons[data-v-d03f0ac9]{display:flex;flex-direction:column;gap:10px}.export-btn[data-v-d03f0ac9],.import-btn[data-v-d03f0ac9]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:12px;transition:all .2s}.export-btn[data-v-d03f0ac9]:hover{background:#9c27b01f;border-color:#9c27b0;color:#9c27b0}:root.dark .export-btn[data-v-d03f0ac9]:hover{background:#ab47bc33;border-color:#ab47bc;color:#ab47bc}.import-btn[data-v-d03f0ac9]{background:#4caf501f;border-color:#4caf50;color:#388e3c}:root.dark .import-btn[data-v-d03f0ac9]{background:#4caf5033;border-color:#66bb6a;color:#66bb6a}.import-btn[data-v-d03f0ac9]:hover{background:#4caf5033;border-color:#388e3c}:root.dark .import-btn[data-v-d03f0ac9]:hover{background:#4caf504d;border-color:#4caf50}.control-row[data-v-d03f0ac9]{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.control-row label[data-v-d03f0ac9]{color:var(--text-primary);font-size:14px}.mini-adjuster[data-v-d03f0ac9]{align-items:center;display:flex;gap:10px}.mini-adjuster button[data-v-d03f0ac9]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:16px;height:32px;padding:0;transition:all .2s;width:32px}.mini-adjuster button[data-v-d03f0ac9]:hover{background:#9c27b014;border-color:#9c27b080}:root.dark .mini-adjuster button[data-v-d03f0ac9]:hover{background:#9c27b026}.mini-adjuster span[data-v-d03f0ac9]{color:var(--text-primary);font-weight:700;min-width:45px;text-align:center}.color-buttons[data-v-d03f0ac9]{display:flex;flex-wrap:wrap;gap:8px}.color-btn[data-v-d03f0ac9]{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;flex:0 0 calc(50% - 4px);gap:8px;padding:8px;transition:all .2s}.color-btn[data-v-d03f0ac9]:hover{background:#9c27b014;border-color:#9c27b080}:root.dark .color-btn[data-v-d03f0ac9]:hover{background:#9c27b026}.color-btn.active[data-v-d03f0ac9]{background:#9c27b01f;border-color:#9c27b0}:root.dark .color-btn.active[data-v-d03f0ac9]{background:#ab47bc33;border-color:#ab47bc}.color-preview[data-v-d03f0ac9]{border:1px solid rgba(0,0,0,.15);border-radius:4px;height:20px;width:20px}:root.dark .color-preview[data-v-d03f0ac9]{border:1px solid hsla(0,0%,100%,.2)}*{box-sizing:border-box}*,body,html{margin:0;padding:0}body,html{height:100%;width:100%}:root{--bg-primary:#f9f9f9;--bg-secondary:#fff;--text-primary:#333;--text-secondary:#666;--border-color:#ddd;--furigana-color:#e53935;--jp-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--cn-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}:root.dark{--bg-primary:#1a1a1a;--bg-secondary:#2d2d2d;--text-primary:#e0e0e0;--text-secondary:#a0a0a0;--border-color:#404040;--furigana-color:#ff6b6b}body{color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;transition:color .3s;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}#app,body{background:transparent}#app{margin:0;min-height:100vh;min-height:-webkit-fill-available;padding:0}@supports (-webkit-touch-callout:none){#app{min-height:-webkit-fill-available}}
