#debug-toggle[data-v-f24ae144]{position:fixed;bottom:16px;left:16px;z-index:3000;background:#1e293b;color:#94a3b8;border:none;border-radius:6px;padding:6px 14px;cursor:pointer;font-size:12px;font-family:Courier New,monospace}#debug-toggle[data-v-f24ae144]:hover{background:#334155;color:#fff}#debug-panel[data-v-f24ae144]{display:none;position:fixed;bottom:48px;left:16px;width:min(700px,calc(100vw - 32px));height:320px;background:#0f172a;color:#e2e8f0;border-radius:10px;border:1px solid #334155;z-index:3000;font-family:Courier New,monospace;font-size:12px;box-shadow:0 8px 32px #0006;flex-direction:column;overflow:hidden}#debug-panel.open[data-v-f24ae144]{display:flex}#debug-header[data-v-f24ae144]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#1e293b;border-bottom:1px solid #334155}#debug-header span[data-v-f24ae144]{color:#94a3b8;font-size:11px}#debug-clear[data-v-f24ae144]{background:none;border:1px solid #475569;color:#94a3b8;border-radius:4px;padding:2px 8px;cursor:pointer;font-size:11px;font-family:Courier New,monospace}#debug-clear[data-v-f24ae144]:hover{background:#334155}#debug-log[data-v-f24ae144]{flex:1;overflow-y:auto;padding:8px 12px;line-height:1.6}.debug-line[data-v-f24ae144]{display:flex;gap:8px;white-space:pre-wrap;word-break:break-all}.debug-ts[data-v-f24ae144]{color:#64748b;flex-shrink:0}.debug-level[data-v-f24ae144]{flex-shrink:0;font-weight:600}.debug-msg[data-v-f24ae144]{flex:1}.offline-overlay[data-v-40effdf3]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.offline-content[data-v-40effdf3]{text-align:center;max-width:320px}.offline-icon[data-v-40effdf3]{font-size:64px;margin-bottom:var(--space-lg);animation:pulse-40effdf3 2s ease-in-out infinite}.offline-title[data-v-40effdf3]{font-size:var(--text-xl);font-weight:600;color:var(--text);margin-bottom:var(--space-sm)}.offline-desc[data-v-40effdf3]{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--space-lg)}.offline-retry-btn[data-v-40effdf3]{min-width:160px;padding:var(--space-sm) var(--space-lg);font-size:var(--text-base)}@keyframes pulse-40effdf3{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.fade-enter-active[data-v-40effdf3],.fade-leave-active[data-v-40effdf3]{transition:opacity .3s ease}.fade-enter-from[data-v-40effdf3],.fade-leave-to[data-v-40effdf3]{opacity:0}.update-overlay[data-v-dd2a871e]{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;align-items:center;justify-content:center;z-index:2000}.update-modal[data-v-dd2a871e]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xl);width:90%;max-width:360px;text-align:center}.update-icon[data-v-dd2a871e]{font-size:48px;margin-bottom:var(--space-md)}.update-title[data-v-dd2a871e]{font-size:var(--text-lg);font-weight:600;color:var(--text);margin-bottom:var(--space-sm)}.update-version[data-v-dd2a871e]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-md)}.update-changelog[data-v-dd2a871e]{font-size:var(--text-sm);color:var(--text);background:var(--surface-light);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-lg);text-align:left;white-space:pre-wrap}.update-actions[data-v-dd2a871e]{display:flex;gap:var(--space-sm);justify-content:center}.update-actions .btn[data-v-dd2a871e]{flex:1;max-width:140px}.login-page[data-v-becdf59a]{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--bg);position:relative}.theme-toggle-btn[data-v-becdf59a]{position:absolute;top:var(--space-md);right:var(--space-md);font-size:var(--text-xl);padding:var(--space-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;z-index:100}.theme-toggle-btn[data-v-becdf59a]:hover{transform:scale(1.1);border-color:var(--primary)}.login-card[data-v-becdf59a]{width:100%;max-width:400px;padding:var(--space-xl);background:var(--surface);border:1px solid var(--border);position:relative}.logo-container[data-v-becdf59a]{width:140px;height:140px;margin:0 auto var(--space-lg);background:var(--primary-light);border-radius:32px;display:flex;align-items:center;justify-content:center}.login-logo[data-v-becdf59a]{width:100px;height:100px;display:block;border-radius:24px}.login-title[data-v-becdf59a]{font-size:3rem;font-weight:900;text-align:center;margin-bottom:var(--space-sm);letter-spacing:.2em;position:relative;color:#fbbf24;text-shadow:2px 2px 0px #d97706,-1px -1px 0px #d97706,1px -1px 0px #d97706,-1px 1px 0px #d97706,4px 4px 8px rgba(217,119,6,.3)}[data-theme=dark] .login-title[data-v-becdf59a]{color:#e4e4e7;text-shadow:2px 2px 0px #3b82f6,-1px -1px 0px #3b82f6,1px -1px 0px #3b82f6,-1px 1px 0px #3b82f6,4px 4px 8px rgba(59,130,246,.3)}.login-subtitle[data-v-becdf59a]{font-size:var(--text-sm);text-align:center;margin-bottom:var(--space-lg);display:flex;align-items:center;justify-content:center;gap:var(--space-xs);text-shadow:2px 2px 4px rgba(0,0,0,.1)}.expbar-text[data-v-becdf59a]{font-weight:700;font-size:1.1rem;letter-spacing:.15em;color:var(--primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.dot[data-v-becdf59a]{color:var(--text-secondary);font-weight:300}.helper-text[data-v-becdf59a]{font-weight:400;color:var(--text-secondary);letter-spacing:.05em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.login-slogan[data-v-becdf59a]{font-size:1.25rem;font-weight:600;text-align:center;margin-bottom:var(--space-xl);color:var(--primary);letter-spacing:.1em;font-family:"Noto Serif SC","Source Han Serif SC",PingFang SC,serif;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.form-group[data-v-becdf59a]{display:flex;flex-direction:column;gap:var(--space-xs)}.form-label[data-v-becdf59a]{font-size:var(--text-sm);font-weight:500;color:var(--text)}.password-input-wrapper[data-v-becdf59a]{position:relative}.form-input[data-v-becdf59a]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base);transition:border-color .15s,box-shadow .15s,background .15s}.form-input[data-v-becdf59a]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.form-input[data-v-becdf59a]::placeholder{color:var(--text-secondary)}.password-toggle-btn[data-v-becdf59a]{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:16px;padding:2px}.button-group[data-v-becdf59a]{display:flex;flex-direction:column;gap:var(--space-sm)}.main-btn[data-v-becdf59a]{background:var(--primary-gradient);border:none;color:#fff;font-weight:700;transition:transform .15s,box-shadow .15s}.main-btn[data-v-becdf59a]:hover:not(:disabled){transform:translateY(-2px)}.login-btn[data-v-becdf59a]{background:var(--surface-light);border:1px solid var(--border);color:var(--primary);font-weight:600;transition:all .15s}[data-theme=dark] .login-btn[data-v-becdf59a]{background:var(--surface)}.login-btn[data-v-becdf59a]:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary)}.error-msg[data-v-becdf59a]{color:var(--danger);font-size:var(--text-sm);text-align:center}.login-page[data-v-a4112db4]{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--bg);position:relative}.theme-toggle-btn[data-v-a4112db4]{position:absolute;top:var(--space-md);right:var(--space-md);font-size:var(--text-xl);padding:var(--space-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;z-index:100}.theme-toggle-btn[data-v-a4112db4]:hover{transform:scale(1.1);border-color:var(--primary)}.login-card[data-v-a4112db4]{width:100%;max-width:400px;padding:var(--space-xl);background:var(--surface);border:1px solid var(--border)}.logo-container[data-v-a4112db4]{width:140px;height:140px;margin:0 auto var(--space-lg);background:var(--primary-light);border-radius:32px;display:flex;align-items:center;justify-content:center}.login-logo[data-v-a4112db4]{width:100px;height:100px;display:block;border-radius:24px}.login-title[data-v-a4112db4]{font-size:3rem;font-weight:900;text-align:center;margin-bottom:var(--space-sm);letter-spacing:.2em;position:relative;color:#fbbf24;text-shadow:2px 2px 0px #d97706,-1px -1px 0px #d97706,1px -1px 0px #d97706,-1px 1px 0px #d97706,4px 4px 8px rgba(217,119,6,.3)}[data-theme=dark] .login-title[data-v-a4112db4]{color:#e4e4e7;text-shadow:2px 2px 0px #3b82f6,-1px -1px 0px #3b82f6,1px -1px 0px #3b82f6,-1px 1px 0px #3b82f6,4px 4px 8px rgba(59,130,246,.3)}.login-subtitle[data-v-a4112db4]{font-size:var(--text-sm);text-align:center;margin-bottom:var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-xs);text-shadow:2px 2px 4px rgba(0,0,0,.1)}.expbar-text[data-v-a4112db4]{font-weight:700;font-size:1rem;letter-spacing:.15em;color:var(--primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.dot[data-v-a4112db4]{color:var(--text-secondary);font-weight:300}.helper-text[data-v-a4112db4]{font-weight:400;color:var(--text-secondary);letter-spacing:.05em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.login-slogan[data-v-a4112db4]{font-size:1.1rem;font-weight:600;text-align:center;margin-bottom:var(--space-lg);color:var(--primary);letter-spacing:.1em;font-family:"Noto Serif SC","Source Han Serif SC",PingFang SC,serif;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.form-group[data-v-a4112db4]{display:flex;flex-direction:column;gap:var(--space-xs)}.form-label[data-v-a4112db4]{font-size:var(--text-sm);font-weight:500;color:var(--text)}.password-input-wrapper[data-v-a4112db4]{position:relative}.form-input[data-v-a4112db4]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base);transition:border-color .15s,box-shadow .15s,background .15s}.form-input[data-v-a4112db4]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.form-input[data-v-a4112db4]::placeholder{color:var(--text-secondary)}.form-input-error[data-v-a4112db4]{border-color:var(--danger)}.form-input-error[data-v-a4112db4]:focus{border-color:var(--danger);box-shadow:0 0 0 3px #ef444433}.username-check-result[data-v-a4112db4]{font-size:var(--text-sm);margin-top:var(--space-xs)}.checking-text[data-v-a4112db4]{color:var(--text-secondary)}.available-text[data-v-a4112db4]{color:var(--success)}.error-text[data-v-a4112db4]{color:var(--danger)}.suggest-btn[data-v-a4112db4]{background:none;border:none;color:var(--primary);cursor:pointer;text-decoration:underline;font-size:var(--text-sm);padding:0;margin-left:4px}.suggest-btn[data-v-a4112db4]:hover{color:var(--primary-dark)}.password-toggle-btn[data-v-a4112db4]{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:16px;padding:2px}.button-group[data-v-a4112db4]{display:flex;flex-direction:column;gap:var(--space-sm)}.main-btn[data-v-a4112db4]{background:var(--primary-gradient);border:none;color:#fff;font-weight:700;transition:transform .15s,box-shadow .15s}.main-btn[data-v-a4112db4]:hover:not(:disabled){transform:translateY(-2px)}.login-btn[data-v-a4112db4]{background:var(--surface-light);border:1px solid var(--border);color:var(--primary);font-weight:600;transition:all .15s}[data-theme=dark] .login-btn[data-v-a4112db4]{background:var(--surface)}.login-btn[data-v-a4112db4]:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary)}.error-msg[data-v-a4112db4]{color:var(--danger);font-size:var(--text-sm);text-align:center}.spinner-wrapper[data-v-eb45f90c]{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-xl);gap:var(--space-sm)}.spinner[data-v-eb45f90c]{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-eb45f90c .7s linear infinite}.spinner-text[data-v-eb45f90c]{font-size:var(--text-sm);color:var(--text-secondary);margin:0}@keyframes spin-eb45f90c{to{transform:rotate(360deg)}}.bottom-tab-bar[data-v-415008a7]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;height:56px;padding-bottom:max(env(safe-area-inset-bottom),8px);background:var(--surface);border-top:1px solid var(--border);z-index:1000;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.tab-item[data-v-415008a7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:48px;min-height:48px;padding:4px 8px;border:none;background:none;cursor:pointer;color:var(--text-secondary);transition:color .2s ease;position:relative;-webkit-tap-highlight-color:transparent}.tab-item.active[data-v-415008a7]{color:var(--primary)}.tab-item.locked[data-v-415008a7]{opacity:.45;cursor:default}.tab-icon[data-v-415008a7]{font-size:22px;line-height:1;transition:transform .2s ease}.tab-item.active .tab-icon[data-v-415008a7]{transform:scale(1.1)}.tab-item:not(.locked):active .tab-icon[data-v-415008a7]{transform:scale(.9)}.tab-label[data-v-415008a7]{font-size:10px;font-weight:500;line-height:1}.tab-lock[data-v-415008a7]{position:absolute;top:0;right:4px;font-size:8px;line-height:1}.home-page[data-v-76f4f580]{padding-bottom:0}.welcome-section[data-v-76f4f580]{margin-bottom:var(--space-lg)}.welcome-top-row[data-v-76f4f580]{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.welcome-left[data-v-76f4f580]{flex:1;min-width:0}.theme-toggle-btn[data-v-76f4f580]{font-size:var(--text-xl);padding:var(--space-xs);background:none;border:none;cursor:pointer;transition:transform .2s ease;flex-shrink:0}.theme-toggle-btn[data-v-76f4f580]:active{transform:scale(1.1)}.welcome-text[data-v-76f4f580]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:2px}.welcome-slogan[data-v-76f4f580]{font-size:var(--text-sm);color:var(--primary);font-weight:500;margin:0}.recent-section[data-v-76f4f580]{margin-bottom:var(--space-lg)}.section-header[data-v-76f4f580]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.section-title[data-v-76f4f580]{font-size:var(--text-base);font-weight:700;color:var(--text);margin:0}.recent-list[data-v-76f4f580]{display:flex;flex-direction:column;gap:8px}.recent-card[data-v-76f4f580]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;transition:background .15s,transform .1s}.recent-card[data-v-76f4f580]:active{transform:scale(.98)}.recent-card.navigating[data-v-76f4f580]{opacity:.6;pointer-events:none}.recent-icon[data-v-76f4f580]{font-size:20px;flex-shrink:0}.recent-info[data-v-76f4f580]{flex:1;min-width:0}.recent-name[data-v-76f4f580]{font-size:var(--text-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-meta[data-v-76f4f580]{display:flex;align-items:center;gap:var(--space-sm);margin-top:2px}.recent-type[data-v-76f4f580],.recent-time[data-v-76f4f580]{font-size:var(--text-xs);color:var(--text-secondary)}.recent-chevron[data-v-76f4f580]{font-size:20px;color:var(--text-secondary);flex-shrink:0}.empty-state[data-v-76f4f580]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);text-align:center}.empty-icon[data-v-76f4f580]{font-size:64px;margin-bottom:var(--space-md)}.empty-title[data-v-76f4f580]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-sm)}.empty-desc[data-v-76f4f580]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.bottom-spacer[data-v-76f4f580]{height:80px}.courses-page[data-v-c4e476fb]{padding-bottom:0}.page-header[data-v-c4e476fb]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.page-title[data-v-c4e476fb]{font-size:var(--text-xl);font-weight:800;color:var(--text);margin:0}.add-btn[data-v-c4e476fb]{font-size:var(--text-sm);color:var(--primary);background:var(--primary-light);border:1px solid var(--primary);border-radius:var(--radius-sm);padding:6px 12px;cursor:pointer;font-weight:600;transition:background .2s}.add-btn[data-v-c4e476fb]:active{background:var(--primary);color:#fff}.filter-tabs[data-v-c4e476fb]{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filter-tabs[data-v-c4e476fb]::-webkit-scrollbar{display:none}.filter-tab[data-v-c4e476fb]{flex-shrink:0;padding:6px 16px;border-radius:20px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all .2s;white-space:nowrap}.filter-tab.active[data-v-c4e476fb]{background:var(--primary);color:#fff;border-color:var(--primary)}.groups[data-v-c4e476fb]{display:flex;flex-direction:column;gap:var(--space-lg)}.group-header[data-v-c4e476fb]{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.group-icon[data-v-c4e476fb]{font-size:18px}.group-label[data-v-c4e476fb]{font-size:var(--text-base);font-weight:700;color:var(--text)}.group-count[data-v-c4e476fb]{font-size:var(--text-xs);color:var(--text-secondary);margin-left:auto}.group-list[data-v-c4e476fb]{display:flex;flex-direction:column;gap:6px}.entry-card[data-v-c4e476fb]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;transition:background .15s,transform .1s}.entry-card[data-v-c4e476fb]:active{transform:scale(.98)}.entry-card.navigating[data-v-c4e476fb]{opacity:.6;pointer-events:none}.entry-info[data-v-c4e476fb]{flex:1;min-width:0}.entry-name[data-v-c4e476fb]{font-size:var(--text-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-meta[data-v-c4e476fb]{display:flex;align-items:center;gap:var(--space-sm);margin-top:4px}.shuffle-toggle[data-v-c4e476fb]{display:inline-flex;align-items:center;gap:4px}.shuffle-label[data-v-c4e476fb]{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.toggle-switch[data-v-c4e476fb]{position:relative;display:inline-block;width:36px;height:24px}.toggle-switch input[data-v-c4e476fb]{opacity:0;width:0;height:0}.toggle-slider[data-v-c4e476fb]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:24px}.toggle-slider[data-v-c4e476fb]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-c4e476fb]{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-c4e476fb]:before{transform:translate(12px)}.last-time[data-v-c4e476fb]{font-size:var(--text-xs);color:var(--text-secondary)}.entry-chevron[data-v-c4e476fb]{font-size:20px;color:var(--text-secondary);flex-shrink:0}.empty-state[data-v-c4e476fb]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);text-align:center;min-height:40vh}.empty-icon[data-v-c4e476fb]{font-size:64px;margin-bottom:var(--space-md)}.empty-title[data-v-c4e476fb]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-sm)}.empty-desc[data-v-c4e476fb]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.bottom-spacer[data-v-c4e476fb]{height:80px}.tree-item[data-v-621c3ec1]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;transition:transform .15s,background .15s;min-height:44px}.tree-item[data-v-621c3ec1]:active{transform:scale(.98)}.item-icon[data-v-621c3ec1]{font-size:1.25rem;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.item-body[data-v-621c3ec1]{flex:1;min-width:0}.item-name[data-v-621c3ec1]{font-size:var(--text-sm);font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-meta[data-v-621c3ec1]{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--text-secondary);margin-top:2px}.item-arrow[data-v-621c3ec1]{font-size:1.25rem;color:var(--text-secondary);flex-shrink:0}.tree-folder[data-v-6204be98]{width:100%}.folder-header[data-v-6204be98]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s;min-height:44px}.folder-header[data-v-6204be98]:hover{background:var(--surface-light)}.folder-header[data-v-6204be98]:active{opacity:.9}.folder-arrow[data-v-6204be98]{font-size:1rem;color:var(--text-secondary);transition:transform .2s;width:16px;text-align:center;flex-shrink:0}.folder-arrow.is-expanded[data-v-6204be98]{transform:rotate(90deg)}.folder-icon[data-v-6204be98]{font-size:1.25rem;flex-shrink:0}.folder-name[data-v-6204be98]{flex:1;font-size:var(--text-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-count[data-v-6204be98]{font-size:var(--text-xs);color:var(--text-secondary);background:var(--bg);padding:2px 8px;border-radius:10px;flex-shrink:0}.folder-children[data-v-6204be98]{padding-left:var(--space-md);border-left:2px solid var(--border);margin-left:var(--space-sm);margin-top:var(--space-xs);display:flex;flex-direction:column;gap:var(--space-xs)}.slide-enter-active[data-v-6204be98],.slide-leave-active[data-v-6204be98]{transition:all .2s ease;overflow:hidden}.slide-enter-from[data-v-6204be98],.slide-leave-to[data-v-6204be98]{opacity:0;max-height:0}.slide-enter-to[data-v-6204be98],.slide-leave-from[data-v-6204be98]{opacity:1;max-height:2000px}.videos-page[data-v-e9c10e45]{padding-bottom:0}.page-header[data-v-e9c10e45]{margin-bottom:var(--space-md)}.page-title[data-v-e9c10e45]{font-size:var(--text-xl);font-weight:800;color:var(--text);margin:0}.search-bar[data-v-e9c10e45]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:var(--space-md)}.search-icon[data-v-e9c10e45]{font-size:1rem;flex-shrink:0}.search-input[data-v-e9c10e45]{flex:1;border:none;outline:none;background:transparent;color:var(--text);font-size:var(--text-sm)}.search-input[data-v-e9c10e45]::placeholder{color:var(--text-secondary)}.search-clear[data-v-e9c10e45]{border:none;background:var(--surface-light);color:var(--text-secondary);font-size:.75rem;cursor:pointer;padding:2px 6px;border-radius:50%;flex-shrink:0}.tree-list[data-v-e9c10e45],.video-list[data-v-e9c10e45]{display:flex;flex-direction:column;gap:var(--space-xs)}.empty-state[data-v-e9c10e45]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);text-align:center;min-height:40vh}.empty-icon[data-v-e9c10e45]{font-size:64px;margin-bottom:var(--space-md)}.empty-title[data-v-e9c10e45]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-sm)}.empty-desc[data-v-e9c10e45]{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.bottom-spacer[data-v-e9c10e45]{height:80px}.bilibili-login-overlay[data-v-e6a37fc4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;display:flex;flex-direction:column;justify-content:flex-end}.bilibili-login-panel[data-v-e6a37fc4]{background:var(--bg);border-radius:20px 20px 0 0;max-height:60vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp-e6a37fc4 .3s ease}@keyframes slideUp-e6a37fc4{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bilibili-login-handle[data-v-e6a37fc4]{display:flex;justify-content:center;padding:10px 0 4px}.handle-bar[data-v-e6a37fc4]{width:36px;height:4px;background:var(--border);border-radius:2px}.bilibili-login-header[data-v-e6a37fc4]{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.bilibili-login-title[data-v-e6a37fc4]{font-size:18px;font-weight:600;color:var(--text);margin:0;flex:1;text-align:center}.bilibili-login-close[data-v-e6a37fc4]{width:32px;height:32px;border-radius:50%;border:none;background:var(--surface-light);color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bilibili-login-close[data-v-e6a37fc4]:active{background:var(--border)}.bilibili-login-body[data-v-e6a37fc4]{flex:1;padding:var(--space-lg) var(--space-md);display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.app-launch-area[data-v-e6a37fc4]{width:100%;display:flex;justify-content:center}.launch-status[data-v-e6a37fc4]{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-lg) 0;text-align:center}.launch-icon[data-v-e6a37fc4]{font-size:48px;margin-bottom:var(--space-xs)}.launch-text[data-v-e6a37fc4]{font-size:16px;font-weight:600;color:var(--text);margin:0}.launch-hint[data-v-e6a37fc4]{font-size:14px;color:var(--text-secondary);margin:0}.launch-btn[data-v-e6a37fc4]{margin-top:var(--space-md);padding:var(--space-sm) var(--space-xl);border-radius:var(--radius);border:none;background:var(--primary);color:#fff;font-size:15px;font-weight:500;cursor:pointer;transition:opacity .2s}.launch-btn[data-v-e6a37fc4]:active{opacity:.85}.status-success[data-v-e6a37fc4]{color:#22c55e}.qrcode-container[data-v-e6a37fc4]{display:flex;align-items:center;justify-content:center;min-height:200px}.qrcode-wrapper[data-v-e6a37fc4]{position:relative;width:180px;height:180px;padding:var(--space-sm);background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.qrcode-image[data-v-e6a37fc4]{width:100%;height:100%;object-fit:contain}.qrcode-overlay[data-v-e6a37fc4]{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;border-radius:var(--radius)}.overlay-text[data-v-e6a37fc4]{color:#fff;font-size:16px;font-weight:600}.qrcode-scanned .qrcode-image[data-v-e6a37fc4]{opacity:.5}.qrcode-expired .qrcode-image[data-v-e6a37fc4]{opacity:.3;filter:grayscale(100%)}.qrcode-loading[data-v-e6a37fc4]{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--text-secondary)}.loading-spinner[data-v-e6a37fc4]{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-e6a37fc4 .8s linear infinite}@keyframes spin-e6a37fc4{to{transform:rotate(360deg)}}.loading-text[data-v-e6a37fc4]{font-size:14px}.qrcode-error[data-v-e6a37fc4]{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--text-secondary)}.error-icon[data-v-e6a37fc4]{font-size:40px}.error-text[data-v-e6a37fc4]{font-size:14px;color:var(--text-secondary)}.status-container[data-v-e6a37fc4]{text-align:center}.status-text[data-v-e6a37fc4]{font-size:14px;margin:0}.status-waiting[data-v-e6a37fc4]{color:var(--text-secondary)}.status-scanned[data-v-e6a37fc4]{color:var(--primary);font-weight:500}.status-success[data-v-e6a37fc4]{color:#22c55e;font-weight:600}.status-expired[data-v-e6a37fc4]{color:var(--text-secondary)}.status-error[data-v-e6a37fc4]{color:#ef4444}.refresh-container[data-v-e6a37fc4]{margin-top:var(--space-xs)}.refresh-btn[data-v-e6a37fc4]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.refresh-btn[data-v-e6a37fc4]:active{background:var(--surface-light);transform:scale(.98)}.refresh-icon[data-v-e6a37fc4]{font-size:16px}.bilibili-login-enter-active[data-v-e6a37fc4],.bilibili-login-leave-active[data-v-e6a37fc4]{transition:opacity .25s ease}.bilibili-login-enter-from[data-v-e6a37fc4],.bilibili-login-leave-to[data-v-e6a37fc4]{opacity:0}.video-source-selector[data-v-ca7445ed]{padding:var(--space-lg);max-width:640px;margin:0 auto}.learn-header[data-v-ca7445ed]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);position:relative;flex-shrink:0}.learn-header .back-btn[data-v-ca7445ed]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);flex-shrink:0}.learn-header .title[data-v-ca7445ed]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;white-space:nowrap}.learn-header .header-right[data-v-ca7445ed]{width:60px}.header[data-v-ca7445ed]{margin-bottom:var(--space-xl);text-align:center}.video-name[data-v-ca7445ed]{font-size:1.25rem;font-weight:600;color:var(--text);margin:0 0 var(--space-sm) 0;line-height:1.4}.video-meta[data-v-ca7445ed]{display:flex;justify-content:center;gap:var(--space-lg);margin:0;color:var(--text-secondary);font-size:.875rem}.meta-item[data-v-ca7445ed]{display:inline-flex;align-items:center;gap:var(--space-xs)}.source-list[data-v-ca7445ed]{display:flex;flex-direction:column;gap:var(--space-md)}.source-card[data-v-ca7445ed]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;min-height:72px}.source-card[data-v-ca7445ed]:hover{background:var(--surface-light);border-color:var(--primary);transform:translateY(-1px)}.source-card[data-v-ca7445ed]:active{transform:translateY(0)}.source-card.is-active[data-v-ca7445ed]{border-color:var(--primary);background:var(--surface-light)}.source-card.is-expanded[data-v-ca7445ed]{flex-direction:column;align-items:stretch;cursor:default}.source-card.is-expanded[data-v-ca7445ed]:hover{transform:none;border-color:var(--border)}.card-icon[data-v-ca7445ed]{font-size:1.5rem;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:var(--radius-sm)}.card-content[data-v-ca7445ed]{flex:1;min-width:0}.card-title[data-v-ca7445ed]{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 var(--space-xs) 0}.card-desc[data-v-ca7445ed]{font-size:.875rem;color:var(--text-secondary);margin:0}.card-arrow[data-v-ca7445ed]{font-size:1.25rem;color:var(--text-secondary);flex-shrink:0}.file-input[data-v-ca7445ed]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.url-input-area[data-v-ca7445ed]{display:flex;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border)}.url-input[data-v-ca7445ed]{flex:1;padding:var(--space-sm) var(--space-md);font-size:.875rem;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color .2s}.url-input[data-v-ca7445ed]:focus{border-color:var(--primary)}.url-input[data-v-ca7445ed]::placeholder{color:var(--text-secondary)}.confirm-btn[data-v-ca7445ed]{padding:var(--space-sm) var(--space-lg);font-size:.875rem;font-weight:500;color:#fff;background:var(--primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .2s;white-space:nowrap}.confirm-btn[data-v-ca7445ed]:hover:not(:disabled){opacity:.9}.confirm-btn[data-v-ca7445ed]:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.video-source-selector[data-v-ca7445ed]{padding:var(--space-md)}.source-card[data-v-ca7445ed]{padding:var(--space-md);min-height:64px}.card-icon[data-v-ca7445ed]{width:36px;height:36px;font-size:1.25rem}.card-title[data-v-ca7445ed]{font-size:.9375rem}.card-desc[data-v-ca7445ed]{font-size:.8125rem}}.video-player-area[data-v-303caff5]{position:relative;width:100%;background:#000;display:flex;flex-direction:column}.video-wrapper[data-v-303caff5]{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.video-player-area.is-fullscreen[data-v-303caff5]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.video-player-area.is-fullscreen .video-wrapper[data-v-303caff5]{aspect-ratio:auto;height:100%}.fullscreen-exit-btn[data-v-303caff5]{position:absolute;top:12px;right:12px;z-index:60;width:40px;height:40px;border:none;border-radius:50%;background:#00000080;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.fullscreen-exit-btn[data-v-303caff5]:hover{background:#000c}.video-element[data-v-303caff5]{width:100%;height:100%;object-fit:contain;display:block;cursor:pointer;background:#000}.video-placeholder[data-v-303caff5]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666}.placeholder-icon[data-v-303caff5]{font-size:48px}.placeholder-text[data-v-303caff5]{font-size:14px;margin-top:8px;color:#888}.loading-overlay[data-v-303caff5]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3;z-index:50}.loading-spinner[data-v-303caff5]{width:48px;height:48px;border:3px solid var(--border, #334155);border-top-color:var(--primary, #818cf8);border-radius:50%;animation:spin-303caff5 .8s linear infinite}@keyframes spin-303caff5{to{transform:rotate(360deg)}}.loading-text[data-v-303caff5]{margin-top:12px;color:var(--text, #e2e8f0);font-size:14px}.subtitle-overlay[data-v-303caff5]{position:absolute;bottom:10%;left:16px;right:16px;text-align:center;pointer-events:none;z-index:10;display:flex;flex-direction:column;align-items:center;gap:0}@media(orientation:portrait){.is-fullscreen .subtitle-overlay[data-v-303caff5]{bottom:14%}}.subtitle-top[data-v-303caff5]{display:inline-block;padding:6px 16px;background:#000000a6;color:#fff;font-size:18px;font-weight:600;border-radius:8px 8px 0 0;line-height:1.6;max-width:100%}.subtitle-bottom[data-v-303caff5]{display:inline-block;padding:4px 16px 6px;background:#0000008c;color:gold;font-size:16px;border-radius:0 0 8px 8px;line-height:1.5;max-width:100%}.subtitle-bottom[data-v-303caff5]:only-child{border-radius:8px}.controls-wrapper[data-v-303caff5]{background:var(--surface, #1e293b);padding:8px 12px}.controls-overlay[data-v-303caff5]{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,#000c);padding:40px 12px 12px}.controls-bottom[data-v-303caff5]{background:var(--surface, #1e293b);border-top:1px solid var(--border, #334155)}.controls-row-1[data-v-303caff5]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.controls-row-2[data-v-303caff5]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fullscreen-right-actions[data-v-303caff5]{margin-left:auto;display:flex;align-items:center;gap:12px}.ctrl-btn[data-v-303caff5]{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border:none;border-radius:var(--radius-sm, 10px);background:#ffffff1a;color:#fff;font-size:16px;cursor:pointer;transition:all .15s}.ctrl-btn[data-v-303caff5]:hover{background:#fff3}.ctrl-btn[data-v-303caff5]:disabled{opacity:.5;cursor:not-allowed}.ctrl-btn.active[data-v-303caff5]{background:var(--primary, #818cf8);color:#fff}.play-btn[data-v-303caff5]{min-width:44px;font-size:18px}.time-display[data-v-303caff5]{font-size:13px;color:var(--text-secondary, #94a3b8);font-family:monospace;white-space:nowrap}.progress-bar[data-v-303caff5]{flex:1;height:6px;background:#fff3;border-radius:3px;cursor:pointer;position:relative}.progress-buffered[data-v-303caff5]{position:absolute;top:0;left:0;height:100%;background:#ffffff4d;border-radius:3px;pointer-events:none}.progress-played[data-v-303caff5]{position:absolute;top:0;left:0;height:100%;background:var(--primary, #818cf8);border-radius:3px;pointer-events:none}.progress-thumb[data-v-303caff5]{position:absolute;top:50%;width:14px;height:14px;background:#fff;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 2px 4px #0000004d}.volume-wrapper[data-v-303caff5]{display:flex;align-items:center;gap:4px}.volume-slider[data-v-303caff5]{width:60px;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff4d;border-radius:2px;cursor:pointer}.volume-slider[data-v-303caff5]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;background:#fff;border-radius:50%;cursor:pointer}.volume-pct[data-v-303caff5]{font-size:12px;color:var(--text-secondary, #94a3b8);min-width:32px}.menu-btn[data-v-303caff5]{font-size:13px}.subtitle-wrapper[data-v-303caff5],.quality-wrapper[data-v-303caff5]{position:relative}.dropdown-menu[data-v-303caff5]{position:absolute;bottom:100%;left:0;margin-bottom:8px;background:var(--surface, #1e293b);border:1px solid var(--border, #334155);border-radius:var(--radius-sm, 10px);min-width:140px;max-height:240px;overflow-y:auto;z-index:100}.menu-item[data-v-303caff5]{padding:8px 12px;color:var(--text, #e2e8f0);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px}.menu-item[data-v-303caff5]:hover{background:var(--surface-light, #334155)}.menu-item.active[data-v-303caff5]{color:var(--primary, #818cf8);background:#818cf81a}.menu-item.disabled[data-v-303caff5]{color:var(--text-secondary, #94a3b8);cursor:not-allowed}.menu-divider[data-v-303caff5]{height:1px;background:var(--border, #334155);margin:4px 0}.menu-header[data-v-303caff5]{padding:6px 12px;font-size:11px;color:var(--text-secondary, #94a3b8)}.check[data-v-303caff5]{color:var(--primary, #818cf8);font-weight:700}.unavailable-reason[data-v-303caff5]{font-size:11px;color:var(--text-secondary, #94a3b8)}.ai-tag[data-v-303caff5]{font-size:10px;padding:2px 4px;background:#a855f74d;color:#a855f7;border-radius:4px}.fullscreen-hint[data-v-303caff5]{position:absolute;bottom:20%;left:50%;transform:translate(-50%);padding:8px 16px;background:#0009;color:#fff;font-size:13px;border-radius:20px;pointer-events:none;opacity:.6}.fade-enter-active[data-v-303caff5],.fade-leave-active[data-v-303caff5]{transition:opacity .3s ease}.fade-enter-from[data-v-303caff5],.fade-leave-to[data-v-303caff5]{opacity:0}.slide-enter-active[data-v-303caff5],.slide-leave-active[data-v-303caff5]{transition:all .2s ease}.slide-enter-from[data-v-303caff5],.slide-leave-to[data-v-303caff5]{opacity:0;transform:translateY(10px)}.subtitle-card[data-v-d52fc864]{background-color:var(--bg-secondary, #1e293b);border-radius:12px;padding:12px 16px;margin:0;box-shadow:0 2px 8px #0003}.subtitle-card.empty[data-v-d52fc864]{display:flex;align-items:center;justify-content:center;min-height:100px}.empty-text[data-v-d52fc864]{color:var(--text-secondary, #94a3b8);font-size:var(--text-sm, 14px)}.original-text-area[data-v-d52fc864]{margin-bottom:8px}.furigana-text[data-v-d52fc864]{font-size:var(--text-lg, 18px);font-weight:600;color:var(--text-primary, #e2e8f0);line-height:1.8}.segment[data-v-d52fc864]{display:inline}.clickable-word[data-v-d52fc864]{cursor:pointer;transition:all .2s ease;border-radius:4px;padding:2px 4px;margin:-2px -4px}.clickable-word[data-v-d52fc864]:hover{background-color:var(--primary-alpha, rgba(129, 140, 248, .2));color:var(--primary, #818cf8)}.clickable-word ruby[data-v-d52fc864]{ruby-position:over}.clickable-word rt[data-v-d52fc864]{color:var(--text-secondary, #94a3b8);font-size:.6em}.plain-text[data-v-d52fc864]{font-size:var(--text-lg, 18px);font-weight:600;color:var(--text-primary, #e2e8f0);line-height:1.6;cursor:pointer;transition:all .2s ease;padding:4px;margin:-4px;border-radius:6px;position:relative}.plain-text[data-v-d52fc864]:hover{background-color:var(--bg-tertiary, #334155)}.plain-text.is-loading[data-v-d52fc864]{opacity:.7;pointer-events:none}.loading-indicator[data-v-d52fc864]{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-size:var(--text-sm, 14px);color:var(--text-secondary, #94a3b8);font-weight:400}.spinner[data-v-d52fc864]{display:inline-block;width:14px;height:14px;border:2px solid var(--border-color, #334155);border-top-color:var(--primary, #818cf8);border-radius:50%;animation:spin-d52fc864 .8s linear infinite}@keyframes spin-d52fc864{to{transform:rotate(360deg)}}.translation-area[data-v-d52fc864]{font-size:var(--text-base, 16px);color:var(--text-secondary, #94a3b8);line-height:1.5;padding-left:12px;border-left:3px solid var(--primary, #818cf8);margin-bottom:12px}.action-buttons[data-v-d52fc864]{display:flex;gap:10px;flex-wrap:wrap}.action-btn[data-v-d52fc864]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;border:1px solid var(--border-color, #334155);background-color:var(--bg-tertiary, #334155);color:var(--text-secondary, #94a3b8);font-size:var(--text-sm, 14px);cursor:pointer;transition:all .2s ease}.action-btn[data-v-d52fc864]:hover{background-color:var(--bg-hover, #475569);color:var(--text-primary, #e2e8f0);transform:translateY(-1px)}.action-btn.active[data-v-d52fc864]{background-color:var(--primary, #818cf8);border-color:var(--primary, #818cf8);color:#fff}.action-btn.active[data-v-d52fc864]:hover{background-color:var(--primary-hover, #6366f1);border-color:var(--primary-hover, #6366f1)}.btn-icon[data-v-d52fc864]{font-size:14px}.btn-text[data-v-d52fc864]{font-weight:500}.loop-btn.active .btn-icon[data-v-d52fc864]{animation:pulse-d52fc864 1.5s ease-in-out infinite}@keyframes pulse-d52fc864{0%,to{opacity:1}50%{opacity:.6}}.grammar-btn[data-v-d52fc864]:hover{background-color:var(--success-alpha, rgba(34, 197, 94, .2));border-color:var(--success, #22c55e);color:var(--success, #22c55e)}.play-btn[data-v-d52fc864]:hover{background-color:var(--primary-alpha, rgba(129, 140, 248, .2));border-color:var(--primary, #818cf8);color:var(--primary, #818cf8)}.subtitle-list-section[data-v-ee8c17c9]{display:flex;flex-direction:column;flex:1;min-height:0;border-top:1px solid var(--border);background:var(--bg)}.subtitle-header[data-v-ee8c17c9]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--surface-light);border-bottom:1px solid var(--border);flex-shrink:0}.header-title[data-v-ee8c17c9]{font-size:var(--text-sm);font-weight:600;color:var(--text)}.header-count[data-v-ee8c17c9]{font-size:var(--text-xs);color:var(--text-secondary)}.subtitle-list-container[data-v-ee8c17c9]{flex:1;overflow-y:auto;padding:var(--space-xs) 0}.subtitle-item[data-v-ee8c17c9]{min-height:44px;padding:var(--space-sm) var(--space-md);cursor:pointer;transition:background-color .2s ease,border-color .2s ease;border-left:3px solid transparent}.subtitle-item[data-v-ee8c17c9]:hover{background-color:var(--surface-light)}.subtitle-item.is-current[data-v-ee8c17c9]{background-color:var(--primary-light);border-left-color:var(--primary)}.subtitle-row[data-v-ee8c17c9]{display:flex;align-items:flex-start;gap:var(--space-sm)}.subtitle-index[data-v-ee8c17c9]{flex-shrink:0;font-size:var(--text-xs);color:var(--text-secondary);min-width:28px;text-align:right;line-height:1.5}.subtitle-text[data-v-ee8c17c9]{flex:1;font-size:var(--text-sm);color:var(--text);line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtitle-text-full[data-v-ee8c17c9]{flex:1;font-size:var(--text-sm);color:var(--text);line-height:1.5;word-break:break-word}.subtitle-time[data-v-ee8c17c9]{flex-shrink:0;font-size:var(--text-xs);color:var(--text-secondary);font-family:monospace;line-height:1.5}.play-once-btn[data-v-ee8c17c9]{flex-shrink:0;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:var(--surface-light);color:var(--text-secondary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;opacity:0}.subtitle-item:hover .play-once-btn[data-v-ee8c17c9]{opacity:1}.play-once-btn[data-v-ee8c17c9]:hover{background:var(--primary);color:#fff}.play-once-btn.active[data-v-ee8c17c9]{opacity:1;background:var(--primary);color:#fff}.subtitle-translation[data-v-ee8c17c9]{margin-top:var(--space-xs);margin-left:40px;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5;word-break:break-word}.subtitle-empty[data-v-ee8c17c9]{display:flex;align-items:center;justify-content:center;min-height:120px;font-size:var(--text-sm);color:var(--text-secondary)}.subtitle-list-container[data-v-ee8c17c9]::-webkit-scrollbar{width:6px}.subtitle-list-container[data-v-ee8c17c9]::-webkit-scrollbar-track{background:transparent}.subtitle-list-container[data-v-ee8c17c9]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.subtitle-list-container[data-v-ee8c17c9]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.grammar-overlay[data-v-60c956a6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;flex-direction:column;justify-content:flex-end}.grammar-panel[data-v-60c956a6]{background:var(--surface);border-radius:20px 20px 0 0;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp-60c956a6 .3s ease}@keyframes slideUp-60c956a6{0%{transform:translateY(100%)}to{transform:translateY(0)}}.grammar-handle[data-v-60c956a6]{display:flex;justify-content:center;padding:10px 0 4px}.handle-bar[data-v-60c956a6]{width:36px;height:4px;background:var(--border);border-radius:2px}.grammar-header[data-v-60c956a6]{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.grammar-title[data-v-60c956a6]{font-size:18px;font-weight:600;color:var(--text);margin:0}.grammar-close[data-v-60c956a6]{width:32px;height:32px;border-radius:50%;border:none;background:var(--surface-light);color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.grammar-close[data-v-60c956a6]:active{background:var(--border)}.grammar-body[data-v-60c956a6]{flex:1;overflow-y:auto;padding:16px 20px;padding-bottom:max(env(safe-area-inset-bottom),16px)}.quote-block[data-v-60c956a6]{margin-bottom:12px;padding:12px;background:var(--surface-light);border-radius:8px}.quote-label[data-v-60c956a6]{font-size:12px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.quote-content[data-v-60c956a6]{font-size:15px;line-height:1.7;color:var(--text)}.original-quote .quote-content[data-v-60c956a6]{font-size:16px}.translation-quote .quote-content[data-v-60c956a6]{font-size:14px;color:var(--text-secondary)}.divider[data-v-60c956a6]{height:1px;background:var(--border);margin:16px 0}.grammar-markdown[data-v-60c956a6] h1{font-size:var(--text-lg);font-weight:700;margin:16px 0 8px;color:var(--text)}.grammar-markdown[data-v-60c956a6] h2{font-size:var(--text-base);font-weight:700;margin:12px 0 6px;color:var(--text)}.grammar-markdown[data-v-60c956a6] h3{font-size:var(--text-sm);font-weight:600;margin:8px 0 4px;color:var(--text)}.grammar-markdown[data-v-60c956a6] p{margin:8px 0;line-height:1.7;color:var(--text)}.grammar-markdown[data-v-60c956a6] ul,.grammar-markdown[data-v-60c956a6] ol{padding-left:20px;margin:8px 0}.grammar-markdown[data-v-60c956a6] li{margin:4px 0;line-height:1.6;color:var(--text)}.grammar-markdown[data-v-60c956a6] code{background:var(--surface-light);padding:2px 6px;border-radius:4px;font-size:.9em}.grammar-markdown[data-v-60c956a6] blockquote{border-left:3px solid var(--primary);padding-left:12px;margin:8px 0;color:var(--text-secondary)}.grammar-markdown[data-v-60c956a6] ruby{font-size:var(--text-base)}.grammar-empty[data-v-60c956a6]{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-secondary);font-size:14px}.grammar-detail-enter-active[data-v-60c956a6],.grammar-detail-leave-active[data-v-60c956a6]{transition:opacity .25s ease}.grammar-detail-enter-from[data-v-60c956a6],.grammar-detail-leave-to[data-v-60c956a6]{opacity:0}.explainer-overlay[data-v-37968f5d]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;display:flex;flex-direction:column;justify-content:flex-end}.explainer-panel[data-v-37968f5d]{background:var(--bg);border-radius:20px 20px 0 0;max-height:65vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp-37968f5d .3s ease}@keyframes slideUp-37968f5d{0%{transform:translateY(100%)}to{transform:translateY(0)}}.explainer-handle[data-v-37968f5d]{display:flex;justify-content:center;padding:10px 0 4px}.handle-bar[data-v-37968f5d]{width:36px;height:4px;background:var(--border);border-radius:2px}.explainer-header[data-v-37968f5d]{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.explainer-title-area[data-v-37968f5d]{display:flex;align-items:baseline;gap:8px;min-width:0}.explainer-title[data-v-37968f5d]{font-size:20px;font-weight:700;color:var(--text);margin:0}.explainer-subtitle[data-v-37968f5d]{font-size:14px;color:var(--text-secondary);flex-shrink:0}.explainer-close[data-v-37968f5d]{width:32px;height:32px;border-radius:50%;border:none;background:var(--surface-light);color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.explainer-close[data-v-37968f5d]:active{background:var(--border)}.explainer-body[data-v-37968f5d]{flex:1;overflow-y:auto;padding:16px 20px 8px}.loading-spinner-sm[data-v-37968f5d]{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-37968f5d .8s linear infinite;flex-shrink:0}@keyframes spin-37968f5d{to{transform:rotate(360deg)}}.info-row[data-v-37968f5d]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.pos-badge[data-v-37968f5d]{font-size:11px;font-weight:600;background:var(--primary-light);color:var(--primary);padding:2px 8px;border-radius:4px;white-space:nowrap}.base-form[data-v-37968f5d]{font-size:13px;color:var(--text-secondary);font-style:italic}.translation-text[data-v-37968f5d]{font-size:15px;color:var(--text);font-weight:500}.section-label[data-v-37968f5d]{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;letter-spacing:.04em}.section-content[data-v-37968f5d]{font-size:14px;line-height:1.7;color:var(--text);margin:0}.related-grammar-section[data-v-37968f5d]{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.grammar-toggle-btn[data-v-37968f5d]{display:flex;align-items:center;gap:6px;border:none;background:none;color:var(--primary);font-size:14px;font-weight:600;cursor:pointer;padding:4px 0}.grammar-toggle-icon[data-v-37968f5d]{font-size:11px}.grammar-expand-content[data-v-37968f5d]{padding:10px 12px;background:var(--surface-light);border-radius:8px;margin-top:8px}.grammar-meaning[data-v-37968f5d]{font-size:14px;font-weight:500;color:var(--text)}.grammar-highlight[data-v-37968f5d]{font-size:15px;color:var(--text);margin-top:6px;padding:4px 8px;background:var(--bg);border-radius:4px;border:1px solid var(--border)}.grammar-explanation[data-v-37968f5d]{font-size:13px;color:var(--text-secondary);margin-top:6px;line-height:1.5}.ai-deep-section[data-v-37968f5d]{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.ai-deep-btn[data-v-37968f5d]{position:relative;width:100%;padding:12px 16px;border-radius:12px;border:none;background:linear-gradient(135deg,#6366f1,#3b82f6);color:#fff;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 12px #6366f14d;overflow:hidden}.ai-deep-btn[data-v-37968f5d]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.15),transparent 60%);pointer-events:none}.ai-deep-btn[data-v-37968f5d]:disabled{cursor:not-allowed;opacity:.85}.ai-deep-btn[data-v-37968f5d]:not(:disabled):active{transform:scale(.98);box-shadow:0 1px 6px #6366f140}.ai-deep-active[data-v-37968f5d]{border-radius:12px 12px 0 0}.ai-deep-label[data-v-37968f5d]{display:flex;align-items:center;gap:8px}.ai-deep-badge[data-v-37968f5d]{font-size:10px;font-weight:700;background:#ffffff40;padding:1px 6px;border-radius:4px;letter-spacing:.04em}.ai-deep-loading[data-v-37968f5d]{display:flex;align-items:center;gap:8px}.ai-deep-loading .loading-spinner-sm[data-v-37968f5d]{border-color:#ffffff4d;border-top-color:#fff}.context-error[data-v-37968f5d]{margin-top:8px;padding:8px 12px;background:#ef444414;border-radius:6px;font-size:13px;color:#ef4444;display:flex;align-items:center;justify-content:space-between}.retry-link[data-v-37968f5d]{border:none;background:none;color:var(--primary);font-size:13px;font-weight:600;cursor:pointer;padding:2px 6px}.context-result[data-v-37968f5d]{margin-top:8px;background:var(--surface-light);border-radius:0 0 12px 12px;padding:14px 16px;border-top:none}.context-explanation[data-v-37968f5d]{font-size:14px;line-height:1.7;color:var(--text)}.context-examples[data-v-37968f5d]{margin-top:12px}.example-item[data-v-37968f5d]{padding:6px 0;border-bottom:1px solid var(--border)}.example-item[data-v-37968f5d]:last-child{border-bottom:none}.example-original[data-v-37968f5d]{font-size:14px;color:var(--text);line-height:1.5}.example-usage[data-v-37968f5d]{font-size:12px;color:var(--text-secondary);margin-top:2px}.context-pitfalls[data-v-37968f5d]{margin-top:12px}.pitfall-item[data-v-37968f5d]{font-size:13px;line-height:1.6;color:var(--text);padding:4px 8px;background:#f59e0b14;border-radius:4px;margin-bottom:4px}.pitfall-item[data-v-37968f5d]:before{content:"⚠";margin-right:4px}.context-alternatives[data-v-37968f5d]{margin-top:12px}.alt-item[data-v-37968f5d]{display:flex;align-items:baseline;gap:8px;padding:4px 0;font-size:13px}.alt-expression[data-v-37968f5d]{font-weight:600;color:var(--text)}.alt-nuance[data-v-37968f5d]{color:var(--text-secondary)}.explainer-footer[data-v-37968f5d]{padding:12px 20px;padding-bottom:max(env(safe-area-inset-bottom),16px);border-top:1px solid var(--border);flex-shrink:0}.save-notebook-btn[data-v-37968f5d]{width:100%;padding:12px 20px;border-radius:12px;border:none;background:var(--primary);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.save-notebook-btn[data-v-37968f5d]:disabled{opacity:.6;cursor:not-allowed}.save-notebook-btn.saved[data-v-37968f5d]{background:var(--success);opacity:1}.save-notebook-btn[data-v-37968f5d]:not(:disabled):active{transform:scale(.98)}.explainer-enter-active[data-v-37968f5d],.explainer-leave-active[data-v-37968f5d]{transition:opacity .25s ease}.explainer-enter-from[data-v-37968f5d],.explainer-leave-to[data-v-37968f5d]{opacity:0}.slide-enter-active[data-v-37968f5d],.slide-leave-active[data-v-37968f5d]{transition:all .25s ease;overflow:hidden}.slide-enter-from[data-v-37968f5d],.slide-leave-to[data-v-37968f5d]{opacity:0;max-height:0}.slide-enter-to[data-v-37968f5d],.slide-leave-from[data-v-37968f5d]{max-height:500px}.subtitle-matcher[data-v-a9b89c6e]{min-height:100vh;background:var(--bg)}.matcher-header[data-v-a9b89c6e]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);position:relative}.matcher-header .back-btn[data-v-a9b89c6e]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs)}.matcher-header .title[data-v-a9b89c6e]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600}.matcher-header .header-right[data-v-a9b89c6e]{width:60px}.matcher-content[data-v-a9b89c6e]{padding:var(--space-lg);max-width:600px;margin:0 auto}.video-info[data-v-a9b89c6e]{text-align:center;margin-bottom:var(--space-xl)}.video-name[data-v-a9b89c6e]{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:var(--space-xs)}.video-duration[data-v-a9b89c6e]{font-size:var(--text-sm);color:var(--text-secondary)}.match-section[data-v-a9b89c6e]{background:var(--surface);border-radius:var(--radius);padding:var(--space-lg);margin-bottom:var(--space-lg)}.match-section h3[data-v-a9b89c6e]{font-size:var(--text-base);color:var(--text);margin:0 0 var(--space-md) 0}.form-row[data-v-a9b89c6e]{display:flex;gap:var(--space-md);margin-bottom:var(--space-md)}.form-group[data-v-a9b89c6e]{flex:1}.form-group.small[data-v-a9b89c6e]{flex:0 0 80px}.form-group label[data-v-a9b89c6e]{display:block;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.form-group input[data-v-a9b89c6e]{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--text-base);color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color .2s}.form-group input[data-v-a9b89c6e]:focus{border-color:var(--primary)}.search-btn[data-v-a9b89c6e]{width:100%;padding:var(--space-md);font-size:var(--text-base);font-weight:500;color:#fff;background:var(--primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .2s}.search-btn[data-v-a9b89c6e]:hover:not(:disabled){opacity:.9}.search-btn[data-v-a9b89c6e]:disabled{opacity:.5;cursor:not-allowed}.results-section[data-v-a9b89c6e]{background:var(--surface);border-radius:var(--radius);padding:var(--space-lg);margin-bottom:var(--space-lg)}.results-section h3[data-v-a9b89c6e]{font-size:var(--text-base);color:var(--text);margin:0 0 var(--space-md) 0}.results-list[data-v-a9b89c6e]{display:flex;flex-direction:column;gap:var(--space-sm)}.result-item[data-v-a9b89c6e]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--bg);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.result-item[data-v-a9b89c6e]:hover{border-color:var(--primary)}.result-item.is-selected[data-v-a9b89c6e]{border-color:var(--primary);background:var(--surface-light)}.result-main[data-v-a9b89c6e]{flex:1;min-width:0}.result-name[data-v-a9b89c6e]{font-size:var(--text-sm);font-weight:500;color:var(--text);margin-bottom:var(--space-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-meta[data-v-a9b89c6e]{display:flex;gap:var(--space-md);font-size:var(--text-xs);color:var(--text-secondary)}.result-score[data-v-a9b89c6e]{padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-sm)}.result-score.high[data-v-a9b89c6e]{background:var(--success);color:#fff}.result-score.medium[data-v-a9b89c6e]{background:var(--warning);color:#fff}.result-score.low[data-v-a9b89c6e]{background:var(--border);color:var(--text-secondary)}.no-results[data-v-a9b89c6e]{text-align:center;padding:var(--space-xl);color:var(--text-secondary)}.actions[data-v-a9b89c6e]{display:flex;gap:var(--space-md)}.primary-btn[data-v-a9b89c6e]{flex:1;padding:var(--space-md);font-size:var(--text-base);font-weight:500;color:#fff;background:var(--primary);border:none;border-radius:var(--radius-sm);cursor:pointer}.secondary-btn[data-v-a9b89c6e]{flex:1;padding:var(--space-md);font-size:var(--text-base);font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.video-player-page[data-v-f4cb2577]{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg);overflow:hidden}.video-player-page.is-fullscreen[data-v-f4cb2577]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#000}.top-bar[data-v-f4cb2577]{display:flex;align-items:center;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border);gap:8px;flex-shrink:0;min-height:44px}.top-bar-btn[data-v-f4cb2577]{padding:6px 12px;border:none;border-radius:var(--radius-sm);background:var(--surface-light);color:var(--text);font-size:14px;cursor:pointer;white-space:nowrap;transition:background .15s}.top-bar-btn.is-loading[data-v-f4cb2577]{opacity:.6;cursor:wait}.top-bar-btn[data-v-f4cb2577]:active{background:var(--border)}.top-bar-title[data-v-f4cb2577]{flex:1;font-size:var(--text-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-bar-actions[data-v-f4cb2577]{display:flex;gap:4px;flex-shrink:0}.no-subtitle-hint[data-v-f4cb2577]{text-align:center;padding:8px;color:var(--text-secondary);font-size:var(--text-sm)}.resume-prompt[data-v-f4cb2577]{display:flex;justify-content:center;padding:var(--space-md);background:var(--surface);border-bottom:1px solid var(--border)}.resume-content[data-v-f4cb2577]{display:flex;align-items:center;gap:var(--space-md);max-width:500px;width:100%}.resume-icon[data-v-f4cb2577]{font-size:28px}.resume-text[data-v-f4cb2577]{flex:1;min-width:0}.resume-title[data-v-f4cb2577]{font-size:var(--text-sm);font-weight:600;color:var(--text)}.resume-info[data-v-f4cb2577]{font-size:var(--text-xs);color:var(--text-secondary)}.resume-actions[data-v-f4cb2577]{display:flex;gap:var(--space-sm);flex-shrink:0}.resume-btn[data-v-f4cb2577]{padding:6px 14px;font-size:var(--text-sm);font-weight:500;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.resume-btn.primary[data-v-f4cb2577]{color:#fff;background:var(--primary)}.resume-btn.secondary[data-v-f4cb2577]{color:var(--text);background:var(--surface-light);border:1px solid var(--border)}.error-state[data-v-f4cb2577]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;color:var(--text-secondary);gap:var(--space-md)}.btn-secondary[data-v-f4cb2577]{padding:8px 20px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-light);color:var(--text);font-size:var(--text-sm);cursor:pointer}.music-page[data-v-8bc6017d]{padding-bottom:0}.page-header[data-v-8bc6017d]{margin-bottom:var(--space-md)}.page-title[data-v-8bc6017d]{font-size:var(--text-xl);font-weight:800;color:var(--text);margin:0}.empty-state[data-v-8bc6017d]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);text-align:center;min-height:60vh}.empty-icon-wrapper[data-v-8bc6017d]{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#fce7f3,#ede9fe);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-lg)}[data-theme=dark] .empty-icon-wrapper[data-v-8bc6017d]{background:linear-gradient(135deg,#5b1a3a,#2d1b69)}.empty-icon[data-v-8bc6017d]{font-size:48px;line-height:1}.empty-title[data-v-8bc6017d]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-sm)}.empty-desc[data-v-8bc6017d]{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7;margin-bottom:var(--space-lg)}.feature-preview[data-v-8bc6017d]{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-xl)}.preview-item[data-v-8bc6017d]{font-size:var(--text-sm);color:var(--text);padding:var(--space-sm) var(--space-md);background:var(--surface-light);border-radius:var(--radius-sm);border:1px solid var(--border)}.notify-btn[data-v-8bc6017d]{min-width:200px}.notify-btn.subscribed[data-v-8bc6017d]{background:var(--success);border-color:var(--success);cursor:default}.bottom-spacer[data-v-8bc6017d]{height:80px}.profile-page[data-v-fdc01db5]{padding-bottom:0;padding-top:var(--space-lg)}.user-card[data-v-fdc01db5]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);background:var(--primary-gradient);border-radius:var(--radius);margin-bottom:var(--space-lg)}.user-info[data-v-fdc01db5]{flex:1;min-width:0}.user-name-row[data-v-fdc01db5]{display:flex;align-items:baseline;gap:var(--space-sm);margin-bottom:6px;flex-wrap:wrap}.user-display-name[data-v-fdc01db5]{font-size:var(--text-xl);font-weight:700;color:#fff}.user-username[data-v-fdc01db5]{font-size:var(--text-sm);color:#ffffffb3}.user-tier[data-v-fdc01db5]{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:#ffffffd9}.upgrade-btn[data-v-fdc01db5]{padding:2px 12px;border-radius:12px;background:#ffffff4d;color:#fff;border:none;font-size:var(--text-xs);font-weight:600;cursor:pointer}.member-badge-icon[data-v-fdc01db5]{width:72px;height:72px;object-fit:contain;flex-shrink:0}.menu-group[data-v-fdc01db5]{margin-bottom:var(--space-md)}.menu-group-label[data-v-fdc01db5]{font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:0 var(--space-sm);margin-bottom:var(--space-xs)}.menu-list[data-v-fdc01db5]{background:var(--surface-light);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.menu-item[data-v-fdc01db5]{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border:none;background:none;color:var(--text);font-size:var(--text-base);cursor:pointer;transition:background .15s;text-align:left;-webkit-tap-highlight-color:transparent}.menu-item[data-v-fdc01db5]:active{background:var(--surface)}.menu-item[data-v-fdc01db5]:not(:last-child){border-bottom:1px solid var(--border)}.menu-icon[data-v-fdc01db5]{font-size:18px;flex-shrink:0;width:28px;text-align:center}.menu-label[data-v-fdc01db5]{flex:1}.menu-chevron[data-v-fdc01db5]{color:var(--text-secondary);font-size:20px;flex-shrink:0}.plan-item[data-v-fdc01db5]{padding:var(--space-sm) var(--space-md)}.plan-item[data-v-fdc01db5]:not(:last-child){border-bottom:1px solid var(--border)}.plan-row[data-v-fdc01db5]{display:flex;justify-content:space-between;align-items:center}.plan-label[data-v-fdc01db5]{color:var(--text);font-size:var(--text-sm)}.plan-input-group[data-v-fdc01db5]{display:flex;align-items:center;gap:6px}.plan-input[data-v-fdc01db5]{width:56px;padding:4px 6px;text-align:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-sm)}.plan-input[data-v-fdc01db5]:focus{outline:none;border-color:var(--primary)}.plan-unit[data-v-fdc01db5]{color:var(--text-secondary);font-size:var(--text-xs)}.plan-hint[data-v-fdc01db5]{font-size:11px;color:var(--text-secondary);padding:2px 0 0;opacity:.7}.plan-save-row[data-v-fdc01db5]{display:flex;align-items:center;gap:var(--space-sm);padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.plan-msg[data-v-fdc01db5]{font-size:var(--text-xs)}.plan-msg.error[data-v-fdc01db5]{color:var(--danger)}.plan-msg.success[data-v-fdc01db5]{color:var(--success)}.plan-divider[data-v-fdc01db5]{border-top:1px solid var(--border)}.reminder-controls[data-v-fdc01db5]{display:flex;align-items:center;gap:var(--space-sm)}.toggle-switch[data-v-fdc01db5]{position:relative;display:inline-block;width:48px;height:28px}.toggle-switch input[data-v-fdc01db5]{opacity:0;width:0;height:0}.toggle-slider[data-v-fdc01db5]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider[data-v-fdc01db5]:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-fdc01db5]{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-fdc01db5]:before{transform:translate(20px)}.theme-list[data-v-fdc01db5]{display:flex;gap:var(--space-sm);padding:var(--space-sm)}.theme-btn[data-v-fdc01db5]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-sm) var(--space-md);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;font-size:var(--text-xs);flex:1;color:var(--text)}.theme-btn.active[data-v-fdc01db5]{border-color:var(--primary);background:var(--primary-light)}.theme-icon[data-v-fdc01db5]{font-size:var(--text-lg)}.modal-overlay[data-v-fdc01db5]{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;align-items:center;justify-content:center;z-index:1000}.modal[data-v-fdc01db5]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xl);width:90%;max-width:400px}.modal-title[data-v-fdc01db5]{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-lg);color:var(--text)}.form-group[data-v-fdc01db5]{margin-bottom:var(--space-md)}.form-label[data-v-fdc01db5]{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text);margin-bottom:var(--space-xs)}.form-input[data-v-fdc01db5]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base);box-sizing:border-box}.form-input[data-v-fdc01db5]:focus{outline:none;border-color:var(--primary)}.form-actions[data-v-fdc01db5]{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-top:var(--space-lg)}.modal-error[data-v-fdc01db5]{color:var(--danger);font-size:var(--text-sm);text-align:center}.modal-success[data-v-fdc01db5]{color:var(--success);font-size:var(--text-sm);text-align:center}.bottom-spacer[data-v-fdc01db5]{height:80px}.audio-btn[data-v-3bb4337d]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--primary-light);color:var(--primary);font-size:var(--text-lg);transition:background-color .15s,transform .1s;border:1px solid var(--border);cursor:pointer}.audio-btn[data-v-3bb4337d]:active{transform:scale(.93)}.audio-btn.playing[data-v-3bb4337d]{background:var(--primary);color:#fff}.audio-btn.loading[data-v-3bb4337d]{opacity:.7;cursor:wait}.audio-btn.disabled[data-v-3bb4337d]{opacity:.35;cursor:not-allowed;background:var(--surface);color:var(--text-secondary);border-color:var(--border)}.loading-spinner[data-v-3bb4337d]{width:18px;height:18px;border:2px solid var(--primary-light);border-top-color:var(--primary);border-radius:50%;animation:spin-3bb4337d .6s linear infinite}@keyframes spin-3bb4337d{to{transform:rotate(360deg)}}.safe-html[data-v-54003da8] .jp{font-family:Noto Sans JP,Hiragino Sans,sans-serif;color:var(--primary)}.safe-html[data-v-54003da8] s{color:var(--text-secondary);text-decoration:line-through;opacity:.7}.word-card[data-v-2ab88af5]{text-align:center;padding:var(--space-xl) var(--space-lg)}.word-main[data-v-2ab88af5]{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-sm)}.word-pos[data-v-2ab88af5]{margin-top:var(--space-sm);margin-bottom:var(--space-xs)}.pos-tag[data-v-2ab88af5]{display:inline-block;padding:2px 8px;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.word-accent[data-v-2ab88af5]{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-sm)}.word-translation[data-v-2ab88af5]{font-size:var(--text-lg);color:var(--text);margin-top:var(--space-md)}.word-audio[data-v-2ab88af5]{display:flex;justify-content:center}.collapsible-area[data-v-2ab88af5]{display:flex;flex-direction:column;gap:var(--space-sm);text-align:left}.collapsible-section[data-v-2ab88af5]{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.collapsible-header[data-v-2ab88af5]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.collapsible-header[data-v-2ab88af5]:active{background:var(--primary-light)}.collapse-icon[data-v-2ab88af5]{font-size:10px;transition:transform .2s}.collapsible-body[data-v-2ab88af5]{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);font-size:var(--text-sm);line-height:1.6;color:var(--text);background:var(--bg)}.example-original[data-v-2ab88af5]{margin-bottom:var(--space-xs)}.example-translation[data-v-2ab88af5]{color:var(--text-secondary)}.review-card[data-v-eab58c0a]{text-align:center;padding:var(--space-xl) var(--space-lg)}.review-main[data-v-eab58c0a]{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-xl)}.review-kanji[data-v-eab58c0a]{font-size:var(--text-2xl);font-weight:700}.review-answer[data-v-eab58c0a]{margin-top:var(--space-md)}.pos-tag[data-v-eab58c0a]{display:inline-block;padding:2px 8px;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.review-accent[data-v-eab58c0a]{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-xs)}.review-translation[data-v-eab58c0a]{font-size:var(--text-lg);margin-top:var(--space-md)}.review-audio[data-v-eab58c0a]{display:flex;justify-content:center}.rate-prompt[data-v-eab58c0a]{color:var(--text-secondary);margin-bottom:var(--space-md);font-size:var(--text-base)}.rating-buttons[data-v-eab58c0a]{display:flex;gap:var(--space-md);justify-content:center}.rating-btn[data-v-eab58c0a]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .2s ease}.rating-btn[data-v-eab58c0a]:hover{background:var(--surface-light)}.rating-emoji[data-v-eab58c0a]{font-size:2rem}.rating-label[data-v-eab58c0a]{font-size:var(--text-sm);color:var(--text-secondary)}.next-section[data-v-eab58c0a]{display:flex;justify-content:center}.collapsible-area[data-v-eab58c0a]{display:flex;flex-direction:column;gap:var(--space-sm);text-align:left}.collapsible-section[data-v-eab58c0a]{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.collapsible-header[data-v-eab58c0a]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--surface);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.collapsible-header[data-v-eab58c0a]:active{background:var(--primary-light)}.collapse-icon[data-v-eab58c0a]{font-size:10px;transition:transform .2s}.collapsible-body[data-v-eab58c0a]{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);font-size:var(--text-sm);line-height:1.6;color:var(--text);background:var(--bg)}.example-original[data-v-eab58c0a]{margin-bottom:var(--space-xs)}.example-translation[data-v-eab58c0a]{color:var(--text-secondary)}.toast[data-v-f20c0376]{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 12px #00000026;font-size:var(--text-sm);z-index:9999;max-width:80vw;text-align:center;color:var(--text)}.toast-success[data-v-f20c0376]{background:var(--success-light);border-color:var(--success);color:#166534}.toast-error[data-v-f20c0376]{background:var(--danger-light);border-color:var(--danger);color:#991b1b}.toast-enter-active[data-v-f20c0376],.toast-leave-active[data-v-f20c0376]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-f20c0376],.toast-leave-to[data-v-f20c0376]{opacity:0;transform:translate(-50%) translateY(10px)}.word-learn-page[data-v-c849d944]{display:flex;flex-direction:column;min-height:100dvh;padding-bottom:0}.learn-header[data-v-c849d944]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);position:relative;flex-shrink:0}.learn-header .back-btn[data-v-c849d944]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);flex-shrink:0}.learn-header .title[data-v-c849d944]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;white-space:nowrap}.learn-header .header-right[data-v-c849d944]{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}.learn-header .count-label[data-v-c849d944]{color:var(--text-secondary)}.learn-header .count-value[data-v-c849d944]{color:var(--text);font-weight:500}.learn-content[data-v-c849d944]{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.learn-bottom-bar[data-v-c849d944]{flex-shrink:0;position:sticky;bottom:0;background:var(--bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border);padding:var(--space-md);padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.bottom-actions[data-v-c849d944]{display:flex;gap:var(--space-md);justify-content:center}.bottom-actions .btn[data-v-c849d944]{flex:1;max-width:160px}.bottom-rating[data-v-c849d944]{text-align:center}.rate-prompt[data-v-c849d944]{color:var(--text-secondary);margin-bottom:var(--space-sm);font-size:var(--text-sm)}.rating-buttons[data-v-c849d944]{display:flex;gap:var(--space-md);justify-content:center}.rating-btn[data-v-c849d944]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--surface-light);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .2s ease;flex:1;max-width:120px}.rating-btn[data-v-c849d944]:hover{background:var(--surface)}.rating-emoji[data-v-c849d944]{font-size:1.5rem}.rating-label[data-v-c849d944]{font-size:var(--text-xs);color:var(--text-secondary)}.empty-state[data-v-c849d944]{padding:var(--space-xl)}.empty-actions[data-v-c849d944]{display:flex;gap:var(--space-md);justify-content:center}.audio-cache-hint[data-v-c849d944]{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);color:var(--text-secondary)}.cache-spinner[data-v-c849d944]{display:inline-block;width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}.pattern-card[data-v-19b0eee6]{text-align:center;padding:var(--space-xl) var(--space-lg)}.pattern-main[data-v-19b0eee6]{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-sm)}.pattern-difficulty[data-v-19b0eee6]{margin-top:var(--space-sm);margin-bottom:var(--space-xs)}.difficulty-tag[data-v-19b0eee6]{display:inline-block;padding:2px 8px;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.pattern-translation[data-v-19b0eee6]{font-size:var(--text-lg);color:var(--text);margin-top:var(--space-md)}.pattern-examples[data-v-19b0eee6]{margin-top:var(--space-lg);text-align:left}.examples-label[data-v-19b0eee6]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-sm);font-weight:600}.example-item[data-v-19b0eee6]{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border)}.example-item[data-v-19b0eee6]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.example-original[data-v-19b0eee6]{font-size:var(--text-base);color:var(--text);font-weight:500}.example-translation[data-v-19b0eee6]{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.example-audio[data-v-19b0eee6]{display:flex;justify-content:flex-start}.pattern-audio[data-v-19b0eee6]{display:flex;justify-content:center}.learn-header[data-v-da0f3671]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);position:relative}.learn-header .back-btn[data-v-da0f3671]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);flex-shrink:0}.learn-header .title[data-v-da0f3671]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;white-space:nowrap}.learn-header .header-right[data-v-da0f3671]{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}.learn-header .count-label[data-v-da0f3671]{color:var(--text-secondary)}.learn-header .count-value[data-v-da0f3671]{color:var(--text);font-weight:500}.progress-section[data-v-da0f3671]{margin-bottom:var(--space-md)}.learn-actions[data-v-da0f3671]{display:flex;gap:var(--space-md);justify-content:center}.learn-actions .btn[data-v-da0f3671]{flex:1;max-width:160px}.review-card[data-v-da0f3671]{padding:var(--space-xl)}.pattern-main[data-v-da0f3671]{font-size:var(--text-2xl);font-weight:700;text-align:center;margin-bottom:var(--space-sm)}.pattern-translation[data-v-da0f3671]{font-size:var(--text-lg);color:var(--text);text-align:center;margin-top:var(--space-md)}.pattern-examples[data-v-da0f3671]{margin-top:var(--space-xl)}.examples-label[data-v-da0f3671]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-sm);font-weight:600}.example-item[data-v-da0f3671]{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border)}.example-item[data-v-da0f3671]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.example-original[data-v-da0f3671]{font-size:var(--text-base);color:var(--text);font-weight:500}.example-translation[data-v-da0f3671]{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.example-audio[data-v-da0f3671]{display:flex;justify-content:flex-start}.pattern-audio[data-v-da0f3671]{display:flex;justify-content:center}.rate-prompt[data-v-da0f3671]{color:var(--text-secondary);margin-bottom:var(--space-md);font-size:var(--text-base);text-align:center}.rating-buttons[data-v-da0f3671]{display:flex;gap:var(--space-md);justify-content:center}.rating-btn[data-v-da0f3671]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .2s ease}.rating-btn[data-v-da0f3671]:hover{background:var(--surface-light)}.rating-emoji[data-v-da0f3671]{font-size:2rem}.rating-label[data-v-da0f3671]{font-size:var(--text-sm);color:var(--text-secondary)}.next-section[data-v-da0f3671]{display:flex;justify-content:center}.empty-state[data-v-da0f3671]{padding:var(--space-xl)}.empty-actions[data-v-da0f3671]{display:flex;gap:var(--space-md);justify-content:center}.toast[data-v-da0f3671]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:var(--space-sm) var(--space-md);background:var(--surface);border-radius:var(--radius-sm);box-shadow:0 2px 8px #0000001a;font-size:var(--text-sm)}.toast.info[data-v-da0f3671]{background:var(--primary-light);color:var(--primary)}.toast.success[data-v-da0f3671]{background:#d4edda;color:#155724}.toast.error[data-v-da0f3671]{background:#f8d7da;color:#721c24}.page-header[data-v-c00e1e84]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);position:relative}.page-header .back-btn[data-v-c00e1e84]{flex:0 0 auto;font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);margin-left:calc(-1 * var(--space-xs))}.page-header .title[data-v-c00e1e84]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;white-space:nowrap}.page-header .header-right[data-v-c00e1e84]{width:60px}.section-title[data-v-f7d66182]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-f7d66182]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-row+.setting-row[data-v-f7d66182]{border-top:1px solid var(--border)}.setting-row+.setting-row-no-border[data-v-f7d66182]{border-top:none}.setting-row-no-border+.setting-row[data-v-f7d66182]{border-top:1px solid var(--border)}.setting-label[data-v-f7d66182]{color:var(--text);font-size:var(--text-base)}.setting-value[data-v-f7d66182]{color:var(--text-secondary);font-size:var(--text-base)}.setting-input-group[data-v-f7d66182]{display:flex;align-items:center;gap:6px}.form-input[data-v-f7d66182]{width:120px;padding:var(--space-xs) var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base)}.form-input[data-v-f7d66182]:focus{outline:none;border-color:var(--primary)}.error-msg[data-v-f7d66182]{color:var(--danger);font-size:var(--text-sm)}.success-msg[data-v-f7d66182]{color:var(--success);font-size:var(--text-sm)}.section-title[data-v-77e3376a]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-77e3376a]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-row+.setting-row[data-v-77e3376a]{border-top:1px solid var(--border)}.setting-label[data-v-77e3376a]{color:var(--text);font-size:var(--text-base)}.setting-input-group[data-v-77e3376a]{display:flex;align-items:center;gap:6px}.form-input-sm[data-v-77e3376a]{width:72px;padding:4px 8px;text-align:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base)}.form-input-sm[data-v-77e3376a]:focus{outline:none;border-color:var(--primary)}.setting-unit[data-v-77e3376a]{color:var(--text-secondary);font-size:var(--text-sm)}.setting-hint[data-v-77e3376a]{padding:4px 0 8px;font-size:var(--text-xs);color:var(--text-secondary);opacity:.8}.error-msg[data-v-77e3376a]{color:var(--danger);font-size:var(--text-sm);text-align:center}.success-msg[data-v-77e3376a]{color:var(--success);font-size:var(--text-sm);text-align:center}.section-title[data-v-a3df9ee0]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-a3df9ee0]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-action .setting-label[data-v-a3df9ee0],.setting-label[data-v-a3df9ee0]{color:var(--text);font-size:var(--text-base)}.modal-overlay[data-v-a3df9ee0]{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;align-items:center;justify-content:center;z-index:1000}.modal[data-v-a3df9ee0]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xl);width:90%;max-width:400px}.modal-title[data-v-a3df9ee0]{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-lg)}.form-group[data-v-a3df9ee0]{margin-bottom:var(--space-md)}.form-label[data-v-a3df9ee0]{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text);margin-bottom:var(--space-xs)}.form-input[data-v-a3df9ee0]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base)}.form-input[data-v-a3df9ee0]:focus{outline:none;border-color:var(--primary)}.form-actions[data-v-a3df9ee0]{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-top:var(--space-lg)}.error-msg[data-v-a3df9ee0]{color:var(--danger);font-size:var(--text-sm);text-align:center}.success-msg[data-v-a3df9ee0]{color:var(--success);font-size:var(--text-sm);text-align:center}.mb-sm[data-v-a3df9ee0]{margin-bottom:var(--space-sm)}.section-title[data-v-35476719]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-35476719]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.theme-row[data-v-35476719]{justify-content:center}.theme-toggle[data-v-35476719]{display:flex;gap:var(--space-sm)}.theme-btn[data-v-35476719]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);background:var(--surface-light);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;min-width:85px}[data-theme=dark] .theme-btn[data-v-35476719]{background:var(--surface)}.theme-btn[data-v-35476719]:hover{border-color:var(--primary);transform:translateY(-2px)}.theme-btn.active[data-v-35476719]{border-color:var(--primary);background:var(--primary-light)}.theme-icon[data-v-35476719]{font-size:var(--text-xl)}.theme-label[data-v-35476719]{font-size:var(--text-sm);font-weight:500;color:var(--text)}.web-theme-toggle[data-v-35476719]{justify-content:center;max-width:240px;margin:0 auto}.web-theme-toggle .theme-btn[data-v-35476719]{flex:0 0 auto;min-width:100px}.section-title[data-v-a13a3df6]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-a13a3df6]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-label[data-v-a13a3df6]{color:var(--text);font-size:var(--text-base)}.setting-value[data-v-a13a3df6]{color:var(--text-secondary);font-size:var(--text-base)}.cache-bar-wrapper[data-v-a13a3df6]{margin-bottom:8px}.cache-bar[data-v-a13a3df6]{height:8px;border-radius:4px;background:var(--border-color, #e9ecef);overflow:hidden}.cache-bar-fill[data-v-a13a3df6]{height:100%;border-radius:4px;background:var(--primary-gradient, linear-gradient(135deg, #0ea5e9, #3b82f6));transition:width .3s ease;min-width:2px}.cache-bar-text[data-v-a13a3df6]{font-size:12px;color:var(--text-secondary, #888);margin-top:6px}.section-title[data-v-227c971f]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-227c971f]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-action .setting-label[data-v-227c971f],.setting-label[data-v-227c971f]{color:var(--text);font-size:var(--text-base)}.debug-toggle-group[data-v-227c971f]{display:flex;align-items:center;gap:var(--space-sm)}.debug-status[data-v-227c971f]{font-size:var(--text-sm);color:var(--text-secondary)}.toggle-switch[data-v-227c971f]{position:relative;display:inline-block;width:50px;height:28px}.toggle-switch input[data-v-227c971f]{opacity:0;width:0;height:0}.toggle-slider[data-v-227c971f]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider[data-v-227c971f]:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-227c971f]{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-227c971f]:before{transform:translate(22px)}.section-title[data-v-0ec4a510]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-0ec4a510]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.setting-row+.setting-row[data-v-0ec4a510]{border-top:1px solid var(--border)}.setting-label[data-v-0ec4a510]{color:var(--text);font-size:var(--text-base)}.setting-value[data-v-0ec4a510]{color:var(--text-secondary);font-size:var(--text-base)}.section-title[data-v-a14470db]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.setting-row[data-v-a14470db]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.reminder-entry[data-v-a14470db]{flex-wrap:wrap;gap:var(--space-sm)}.reminder-controls[data-v-a14470db]{display:flex;align-items:center;gap:var(--space-md)}.reminder-toggle-label[data-v-a14470db]{font-size:var(--text-sm);color:var(--text)}.toggle-switch[data-v-a14470db]{position:relative;display:inline-block;width:50px;height:28px}.toggle-switch input[data-v-a14470db]{opacity:0;width:0;height:0}.toggle-slider[data-v-a14470db]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider[data-v-a14470db]:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-a14470db]{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-a14470db]:before{transform:translate(22px)}.tree-node[data-v-70f2ef31]{border-bottom:1px solid var(--border)}.tree-node[data-v-70f2ef31]:last-child{border-bottom:none}.node-content[data-v-70f2ef31]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;transition:background .2s}.node-content[data-v-70f2ef31]:hover:not(.node-disabled){background:var(--surface-light)}[data-theme=dark] .node-content[data-v-70f2ef31]:hover:not(.node-disabled){background:var(--surface)}.expand-btn[data-v-70f2ef31],.expand-placeholder[data-v-70f2ef31]{width:20px;text-align:center;color:var(--text-secondary);font-size:.8rem;flex-shrink:0}.checkbox-wrapper[data-v-70f2ef31]{display:inline-flex;align-items:center;flex-shrink:0}.custom-checkbox[data-v-70f2ef31]{width:20px;height:20px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.custom-checkbox.checked[data-v-70f2ef31]{background:var(--primary);border-color:var(--primary)}.custom-checkbox.checked[data-v-70f2ef31]:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.custom-checkbox.indeterminate[data-v-70f2ef31]{background:var(--primary-light);border-color:var(--primary)}.custom-checkbox.indeterminate[data-v-70f2ef31]:after{content:"–";color:var(--primary);font-size:16px;font-weight:700}.node-name[data-v-70f2ef31]{flex:1;font-weight:500;color:var(--text)}.node-count[data-v-70f2ef31]{color:var(--text-secondary);font-size:var(--text-sm);flex-shrink:0}.paid-tag[data-v-70f2ef31]{font-size:.9rem;flex-shrink:0}.node-children[data-v-70f2ef31]{background:#00000003}[data-theme=dark] .node-children[data-v-70f2ef31]{background:#ffffff03}.content-selector[data-v-3ba0f336]{display:flex;flex-direction:column;min-height:100vh}.content[data-v-3ba0f336]{flex:1;display:flex;flex-direction:column}.search-section[data-v-3ba0f336]{padding:var(--space-md)}.search-input[data-v-3ba0f336]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base)}.search-input[data-v-3ba0f336]:focus{outline:none;border-color:var(--primary)}.tree-section[data-v-3ba0f336]{flex:1;overflow-y:auto;max-height:50vh}.empty-state[data-v-3ba0f336]{text-align:center;padding:var(--space-xl)}.empty-icon[data-v-3ba0f336]{font-size:3rem;margin-bottom:var(--space-sm)}.empty-text[data-v-3ba0f336]{color:var(--text-secondary)}.tree-container[data-v-3ba0f336]{padding-bottom:var(--space-sm)}.summary-section[data-v-3ba0f336]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--surface-light);border-radius:var(--radius);border:1px solid var(--border)}.summary-text[data-v-3ba0f336]{font-size:var(--text-base);color:var(--text)}.quick-actions[data-v-3ba0f336]{display:flex;gap:var(--space-sm)}.quick-btn[data-v-3ba0f336]{background:var(--bg);color:var(--text);border:1px solid var(--border)}.quick-btn[data-v-3ba0f336]:hover:not(:disabled){background:var(--surface-light)}.quick-btn[data-v-3ba0f336]:disabled{opacity:.5;cursor:not-allowed}.save-section[data-v-3ba0f336]{margin-top:auto;padding-top:var(--space-md)}.selector-header[data-v-3ba0f336]{display:flex;align-items:center;justify-content:space-between;position:relative;flex-shrink:0}.selector-header .back-btn[data-v-3ba0f336]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);background:none;border:none;cursor:pointer;flex-shrink:0}.selector-header .title[data-v-3ba0f336]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;color:var(--text);white-space:nowrap}.selector-header .header-right[data-v-3ba0f336]{width:56px;flex-shrink:0}.card[data-v-3ba0f336]{background:var(--surface-light);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-md)}[data-theme=dark] .card[data-v-3ba0f336]{background:var(--surface)}.page-header[data-v-36e1a103]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);position:relative}.page-header .back-btn[data-v-36e1a103]{flex:0 0 auto;font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);margin-left:calc(-1 * var(--space-xs))}.page-header .title[data-v-36e1a103]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;white-space:nowrap}.page-header .header-right[data-v-36e1a103]{width:60px}.section-title[data-v-36e1a103]{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.loading-state[data-v-36e1a103]{display:flex;justify-content:center;align-items:center;min-height:200px}.loading-text[data-v-36e1a103]{color:var(--text-secondary)}.time-picker[data-v-36e1a103]{display:flex;justify-content:center}.time-input-native[data-v-36e1a103]{width:100px;padding:var(--space-sm) var(--space-sm);font-size:var(--text-lg);font-weight:600;text-align:center;border:2px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);cursor:pointer}.time-input-native[data-v-36e1a103]:focus{outline:none;border-color:var(--primary)}.admin-test-section[data-v-36e1a103]{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px dashed var(--border);text-align:center}.test-push-btn[data-v-36e1a103]{font-size:var(--text-sm)}.test-result[data-v-36e1a103]{font-size:var(--text-sm);color:var(--text-secondary)}.week-day-selector[data-v-36e1a103]{display:flex;gap:var(--space-xs);margin-bottom:var(--space-md)}.week-day-btn[data-v-36e1a103]{flex:1;padding:var(--space-sm) 0;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base);cursor:pointer;transition:all .2s ease}.week-day-btn[data-v-36e1a103]:hover{border-color:var(--primary)}.week-day-btn.active[data-v-36e1a103]{background:var(--primary);border-color:var(--primary);color:#fff}.quick-select[data-v-36e1a103]{display:flex;gap:var(--space-sm);justify-content:center}.quick-btn[data-v-36e1a103]{padding:var(--space-xs) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-light);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer}.quick-btn[data-v-36e1a103]:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.message-selector[data-v-36e1a103]{display:flex;flex-direction:column;gap:var(--space-sm)}.message-option[data-v-36e1a103]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-sm);cursor:pointer}.message-option[data-v-36e1a103]:hover{background:var(--surface-light)}.message-option input[type=checkbox][data-v-36e1a103]{display:none}.checkbox-custom[data-v-36e1a103]{width:20px;height:20px;border:2px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.message-option input[type=checkbox]:checked+.checkbox-custom[data-v-36e1a103]{background:var(--primary);border-color:var(--primary)}.message-option input[type=checkbox]:checked+.checkbox-custom[data-v-36e1a103]:after{content:"✓";color:#fff;font-size:12px}.message-text[data-v-36e1a103]{flex:1;color:var(--text)}.message-label[data-v-36e1a103]{color:var(--text)}.custom-message-input[data-v-36e1a103]{margin-left:32px;padding:var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-base)}.custom-message-input[data-v-36e1a103]:focus{outline:none;border-color:var(--primary)}.error-msg[data-v-36e1a103]{color:var(--danger);font-size:var(--text-sm);text-align:center}.success-msg[data-v-36e1a103]{color:var(--success);font-size:var(--text-sm);text-align:center}.learn-header[data-v-7d55828a]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative}.back-btn[data-v-7d55828a]{width:36px;height:36px;border-radius:50%;border:none;background:var(--surface);color:var(--text);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,transform .15s}.back-btn[data-v-7d55828a]:active{transform:scale(.92);background:var(--border)}.header-center[data-v-7d55828a]{flex:1;min-width:0}.page-title[data-v-7d55828a]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:var(--text-lg);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;pointer-events:none}.header-actions[data-v-7d55828a]{display:flex;gap:6px;flex-shrink:0}.ruby-toggle[data-v-7d55828a],.translation-toggle[data-v-7d55828a]{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .25s ease}.ruby-toggle.active[data-v-7d55828a]{background:var(--accent-orange);border-color:var(--accent-orange);color:#fff;box-shadow:0 2px 8px #f973164d}.translation-toggle.active[data-v-7d55828a]{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #0ea5e94d}.sentence-list-view[data-v-60b28080]{padding-bottom:var(--space-lg)}.article-title-section[data-v-60b28080]{padding:var(--space-md);padding-bottom:var(--space-sm);text-align:center}.article-title-section .article-title[data-v-60b28080]{font-size:var(--text-base);font-weight:600;color:var(--text);margin:0;line-height:1.6}.article-title-cn[data-v-60b28080]{font-size:var(--text-sm);color:var(--text-secondary);margin-top:4px;line-height:1.5}.sentences-container[data-v-60b28080]{padding:0 var(--space-md)}.sentence-card[data-v-60b28080]{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);margin-bottom:var(--space-sm);background:var(--surface-light);border-radius:var(--radius-sm);cursor:pointer;transition:all .25s ease;border:1.5px solid transparent;animation:sentenceFadeIn-60b28080 .4s ease both;animation-delay:var(--delay)}@keyframes sentenceFadeIn-60b28080{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sentence-card[data-v-60b28080]:hover{background:var(--surface)}.sentence-card[data-v-60b28080]:active{transform:scale(.985)}.sentence-card.active[data-v-60b28080]{border-color:var(--primary);background:var(--primary-light);box-shadow:0 2px 12px #0ea5e91f}.sentence-number[data-v-60b28080]{width:24px;height:24px;border-radius:50%;background:var(--surface);color:var(--text-secondary);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:all .25s}.sentence-card.active .sentence-number[data-v-60b28080]{background:var(--primary);color:#fff}.sentence-body[data-v-60b28080]{flex:1;min-width:0}.sentence-text[data-v-60b28080]{font-size:17px;line-height:1.9;color:var(--text);font-weight:500;letter-spacing:.01em}.sentence-translation[data-v-60b28080]{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);font-size:14px;color:var(--text-secondary);line-height:1.7;animation:fadeSlideIn-60b28080 .3s ease}@keyframes fadeSlideIn-60b28080{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sentence-play-icon[data-v-60b28080]{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);margin-top:4px;opacity:0;transition:opacity .2s}.sentence-card:hover .sentence-play-icon[data-v-60b28080]{opacity:1}.sentence-card.active .sentence-play-icon[data-v-60b28080]{opacity:1;color:var(--primary)}.full-translation[data-v-60b28080]{padding:var(--space-lg) var(--space-md)}.section-divider[data-v-60b28080]{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.divider-line[data-v-60b28080]{flex:1;height:1px;background:var(--border)}.divider-text[data-v-60b28080]{font-size:var(--text-xs);color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.translation-content[data-v-60b28080]{font-size:15px;line-height:1.9;color:var(--text-secondary);padding:var(--space-md);background:var(--surface-light);border-radius:var(--radius-sm);border-left:3px solid var(--primary)}.action-bar[data-v-60b28080]{padding:var(--space-lg) var(--space-md);padding-bottom:0;margin-top:var(--space-md)}.quiz-btn[data-v-60b28080]{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;max-width:640px;margin:0 auto;padding:14px var(--space-lg);border-radius:var(--radius);border:none;background:var(--primary-gradient);color:#fff;font-size:var(--text-base);font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .2s;box-shadow:0 4px 16px #0ea5e94d}.quiz-btn[data-v-60b28080]:active{transform:scale(.97)}.quiz-btn[data-v-60b28080]:hover{box-shadow:0 6px 24px #0ea5e966}.quiz-btn-text[data-v-60b28080]{font-weight:700}.quiz-btn-count[data-v-60b28080]{font-weight:500;opacity:.85;font-size:var(--text-sm)}@media(min-width:768px){.sentences-container[data-v-60b28080],.full-translation[data-v-60b28080]{max-width:720px;margin:0 auto}.action-bar[data-v-60b28080]{max-width:720px;margin-left:auto;margin-right:auto}}[data-theme=dark] .sentence-card.active[data-v-60b28080]{box-shadow:0 2px 12px #3b82f626}[data-theme=dark] .quiz-btn[data-v-60b28080]{box-shadow:0 4px 16px #3b82f64d}.detail-panel[data-v-ccdf34dc]{display:flex;flex-direction:column;min-height:calc(100dvh - 56px);animation:detailFadeIn-ccdf34dc .25s ease}@keyframes detailFadeIn-ccdf34dc{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.detail-header[data-v-ccdf34dc]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:10}.detail-back-btn[data-v-ccdf34dc]{display:flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);transition:background .2s}.detail-back-btn[data-v-ccdf34dc]:active{background:var(--primary-light);transform:scale(.95)}.detail-title[data-v-ccdf34dc]{font-size:var(--text-base);font-weight:600;color:var(--text);margin:0;text-align:center}.detail-header-spacer[data-v-ccdf34dc]{width:60px;flex-shrink:0}.detail-body[data-v-ccdf34dc]{flex:1;padding:var(--space-md);max-width:720px;margin:0 auto;width:100%}.detail-section[data-v-ccdf34dc]{margin-bottom:var(--space-md)}.detail-section-label[data-v-ccdf34dc]{font-size:13px;color:var(--text-secondary);margin-bottom:8px;font-weight:500}.detail-original-sentence[data-v-ccdf34dc]{font-size:18px;line-height:1.8;color:var(--text);padding:12px;background:var(--surface-light);border-radius:8px;cursor:default;word-break:break-all;overflow-wrap:break-word}.word-token[data-v-ccdf34dc]{cursor:pointer;border-radius:3px;padding:1px 2px;margin:0 -1px;transition:background .15s,color .15s}.word-token[data-v-ccdf34dc]:hover{background:var(--primary-light)}.word-token[data-v-ccdf34dc]:active{background:var(--primary);color:#fff}.word-token-punct[data-v-ccdf34dc]{cursor:default}.word-token.grammar-mark[data-v-ccdf34dc]{border-bottom:2px solid var(--primary);background:#0ea5e90f}.word-token.grammar-mark[data-v-ccdf34dc]:hover{background:#0ea5e926}[data-theme=dark] .word-token.grammar-mark[data-v-ccdf34dc]{background:#3b82f614;border-bottom-color:var(--primary)}[data-theme=dark] .word-token.grammar-mark[data-v-ccdf34dc]:hover{background:#3b82f62e}.pulse-active .word-token[data-v-ccdf34dc]:not(.word-token-punct){animation:wordPulse-ccdf34dc .6s ease-in-out 2}@keyframes wordPulse-ccdf34dc{0%,to{background:transparent}50%{background:var(--primary-light)}}.click-hint-bar[data-v-ccdf34dc]{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 12px;font-size:12px;color:var(--primary);background:var(--primary-light);border-radius:6px;opacity:1}.hint-fade-leave-active[data-v-ccdf34dc]{transition:opacity .5s ease}.hint-fade-leave-to[data-v-ccdf34dc]{opacity:0}.detail-translation-text[data-v-ccdf34dc]{font-size:15px;line-height:1.6;color:var(--text-secondary);padding:12px;background:var(--surface-light);border-radius:8px}.detail-grammar-card[data-v-ccdf34dc]{padding:12px;margin-bottom:10px;background:var(--surface-light);border-radius:10px;border-left:3px solid var(--primary)}.detail-grammar-pattern-row[data-v-ccdf34dc]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-grammar-pattern[data-v-ccdf34dc]{font-size:14px;font-weight:600;color:var(--primary);background:var(--primary-light);padding:2px 8px;border-radius:4px}.detail-grammar-meaning[data-v-ccdf34dc]{font-size:13px;color:var(--text-secondary)}.detail-grammar-highlight[data-v-ccdf34dc]{font-size:16px;line-height:1.8;color:var(--text);padding:8px 10px;background:var(--bg);border-radius:6px;margin-top:8px;border:1px solid var(--border);position:relative}.detail-grammar-highlight.clickable[data-v-ccdf34dc]{cursor:pointer;transition:background .15s}.detail-grammar-highlight.clickable[data-v-ccdf34dc]:hover{background:var(--primary-light)}.grammar-click-hint[data-v-ccdf34dc]{font-size:11px;color:var(--primary);opacity:.6;margin-left:8px;vertical-align:middle}.detail-no-grammar[data-v-ccdf34dc]{text-align:center;padding:20px;color:var(--text-secondary)}.detail-footer[data-v-ccdf34dc]{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md);border-top:1px solid var(--border);position:sticky;bottom:0;background:var(--bg);padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.detail-nav-btn[data-v-ccdf34dc]{flex:1;max-width:140px;padding:12px 16px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.detail-nav-btn[data-v-ccdf34dc]:disabled{opacity:.4;cursor:not-allowed}.detail-nav-btn[data-v-ccdf34dc]:not(:disabled):active{transform:scale(.97);background:var(--surface-light)}.detail-play-btn[data-v-ccdf34dc]{flex:1;max-width:160px;padding:12px 20px;border-radius:12px;border:none;background:var(--primary);color:#fff;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 8px #0ea5e940}.detail-play-btn[data-v-ccdf34dc]:active{transform:scale(.98)}.detail-play-btn.no-audio[data-v-ccdf34dc]{opacity:.45;cursor:not-allowed;background:var(--surface);color:var(--text-secondary);box-shadow:none}[data-theme=dark] .detail-play-btn[data-v-ccdf34dc]{box-shadow:0 2px 8px #3b82f64d}.audio-player-bar-fixed[data-v-0ff911d4]{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);padding-bottom:max(env(safe-area-inset-bottom),var(--space-sm));background:var(--surface-light);border-top:1px solid var(--border);z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.play-btn[data-v-0ff911d4]{width:40px;height:40px;border-radius:50%;border:none;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 8px #0ea5e940}.play-btn[data-v-0ff911d4]:disabled{opacity:.5;cursor:not-allowed}.play-btn[data-v-0ff911d4]:active{transform:scale(.92)}.play-btn[data-v-0ff911d4]:hover{box-shadow:0 4px 14px #0ea5e959}.audio-status-downloading[data-v-0ff911d4]{flex:1;text-align:center;font-size:var(--text-sm);color:var(--text-secondary);padding:10px 0}.audio-status-error[data-v-0ff911d4]{flex:1;text-align:center;font-size:var(--text-sm);color:var(--danger);padding:10px 0;cursor:pointer;text-decoration:underline}.loading-dots span[data-v-0ff911d4]{animation:dotBlink-0ff911d4 1.4s infinite;opacity:0}.loading-dots span[data-v-0ff911d4]:nth-child(1){animation-delay:0s}.loading-dots span[data-v-0ff911d4]:nth-child(2){animation-delay:.2s}.loading-dots span[data-v-0ff911d4]:nth-child(3){animation-delay:.4s}@keyframes dotBlink-0ff911d4{0%,20%{opacity:0}50%{opacity:1}80%,to{opacity:0}}.progress-section[data-v-0ff911d4]{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.time-label[data-v-0ff911d4]{font-size:11px;font-weight:600;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:32px;text-align:center}.progress-track[data-v-0ff911d4]{flex:1;height:6px;background:var(--surface);border-radius:3px;cursor:pointer;position:relative;overflow:visible}.progress-fill[data-v-0ff911d4]{height:100%;background:var(--primary-gradient);border-radius:3px;transition:width .1s linear;position:relative}.progress-thumb[data-v-0ff911d4]{position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:12px;height:12px;background:var(--primary);border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #00000026;opacity:0;transition:opacity .2s}.progress-track:hover .progress-thumb[data-v-0ff911d4]{opacity:1}.replay-btn[data-v-0ff911d4]{width:34px;height:34px;border-radius:50%;border:none;background:var(--surface);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,color .2s}.replay-btn[data-v-0ff911d4]:hover{background:var(--border);color:var(--text)}@media(min-width:768px){.audio-player-bar-fixed[data-v-0ff911d4]{max-width:720px;left:50%;transform:translate(-50%);border-radius:var(--radius) var(--radius) 0 0;margin:0 auto}}[data-theme=dark] .play-btn[data-v-0ff911d4]{box-shadow:0 2px 8px #3b82f64d}[data-theme=dark] .progress-thumb[data-v-0ff911d4]{border-color:var(--surface-light)}.article-learn-page[data-v-d83c5aa4]{min-height:100dvh;background:var(--bg);padding-bottom:80px}.article-learn-page.detail-mode[data-v-d83c5aa4]{padding-bottom:0}.learn-content[data-v-d83c5aa4]{flex:1}.error-state[data-v-d83c5aa4]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-xl);text-align:center}.error-icon[data-v-d83c5aa4]{font-size:3rem;margin-bottom:var(--space-md);opacity:.6}.error-text[data-v-d83c5aa4]{font-size:var(--text-lg);font-weight:600;color:var(--text);margin-bottom:var(--space-xs)}.error-hint[data-v-d83c5aa4]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.retry-btn[data-v-d83c5aa4]{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-sm);border:1.5px solid var(--primary);background:transparent;color:var(--primary);font-size:var(--text-sm);font-weight:600;transition:all .2s}.retry-btn[data-v-d83c5aa4]:hover{background:var(--primary);color:#fff}.quiz-card[data-v-d1d2bef9]{background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:0 2px 8px #0000000d}.question-header[data-v-d1d2bef9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.question-badge[data-v-d1d2bef9]{display:inline-block;padding:6px 12px;background:var(--primary-light);color:var(--primary);font-size:13px;font-weight:600;border-radius:16px}.translation-toggle[data-v-d1d2bef9]{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .25s ease;cursor:pointer}.translation-toggle[data-v-d1d2bef9]:hover{border-color:var(--primary);color:var(--primary)}.translation-toggle.active[data-v-d1d2bef9]{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #0ea5e94d}.toggle-label[data-v-d1d2bef9]{line-height:1}.question-text[data-v-d1d2bef9]{font-size:18px;line-height:1.6;color:var(--text);margin-bottom:16px}.question-translation[data-v-d1d2bef9]{margin-top:-8px;margin-bottom:16px;padding:12px;background:var(--surface-light);border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;border-left:3px solid var(--primary)}.answer-section[data-v-d1d2bef9]{display:flex;flex-direction:column;gap:8px}.answer-header[data-v-d1d2bef9]{display:flex;justify-content:space-between;align-items:center}.answer-label[data-v-d1d2bef9]{font-size:14px;color:var(--text-secondary);font-weight:500}.char-counter[data-v-d1d2bef9]{font-size:12px;color:var(--text-secondary);font-weight:500}.char-counter.over-limit[data-v-d1d2bef9]{color:var(--danger);font-weight:600}.answer-input[data-v-d1d2bef9]{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;font-size:16px;line-height:1.5;resize:vertical;background:var(--bg);color:var(--text);transition:border-color .2s}.answer-input[data-v-d1d2bef9]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.answer-input.over-limit[data-v-d1d2bef9]{border-color:var(--danger);box-shadow:0 0 0 2px var(--danger-light)}.limit-warning[data-v-d1d2bef9]{font-size:12px;color:var(--danger);margin:0}.choice-section[data-v-d1d2bef9]{padding:16px;text-align:center}.choice-hint[data-v-d1d2bef9]{color:var(--text-secondary);font-size:14px}.modal-overlay[data-v-7dd59989]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg);z-index:1000;display:flex;flex-direction:column;animation:fadeIn-7dd59989 .2s ease}@keyframes fadeIn-7dd59989{0%{opacity:0}to{opacity:1}}.modal-content[data-v-7dd59989]{background:var(--bg);flex:1;display:flex;flex-direction:column;overflow:hidden}.modal-body[data-v-7dd59989]{flex:1;overflow-y:auto;padding:20px 20px 100px}.modal-header[data-v-7dd59989]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface)}.modal-title[data-v-7dd59989]{font-size:18px;font-weight:600;color:var(--text);margin:0}.close-btn[data-v-7dd59989]{width:36px;height:36px;border-radius:50%;border:none;background:var(--surface-light);color:var(--text-secondary);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center}.reference-section[data-v-7dd59989]{margin-bottom:20px;padding:16px;background:var(--surface-light);border-radius:var(--radius-sm);border-left:3px solid var(--primary)}.reference-text[data-v-7dd59989]{font-size:var(--text-base);line-height:1.6;color:var(--text)}.reference-text-cn[data-v-7dd59989]{margin-top:8px;font-size:var(--text-sm);color:var(--text-secondary)}.upgrade-notice[data-v-7dd59989]{text-align:center;padding:24px}.upgrade-icon[data-v-7dd59989]{font-size:48px;margin-bottom:16px}.upgrade-notice h4[data-v-7dd59989]{font-size:18px;color:var(--text);margin:0 0 8px}.upgrade-notice p[data-v-7dd59989]{color:var(--text-secondary);margin:0 0 20px}.upgrade-btn[data-v-7dd59989]{padding:12px 24px;border-radius:12px;border:none;background:var(--primary);color:#fff;font-size:15px;font-weight:600;cursor:pointer}.score-section[data-v-7dd59989]{display:flex;flex-direction:column;align-items:center;padding:20px;background:var(--surface-light);border-radius:12px;margin-bottom:20px}.score-circle[data-v-7dd59989]{width:80px;height:80px;border-radius:50%;border:4px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:12px}.score-value[data-v-7dd59989]{font-size:28px;font-weight:700;line-height:1}.score-label[data-v-7dd59989]{font-size:12px;color:var(--text-secondary)}.score-desc[data-v-7dd59989]{font-size:16px;font-weight:500}.feedback-section[data-v-7dd59989]{margin-bottom:20px}.section-title[data-v-7dd59989]{font-size:15px;font-weight:600;color:var(--text);margin:0 0 12px}.error-list[data-v-7dd59989],.suggestion-list[data-v-7dd59989]{list-style:none;padding:0;margin:0}.error-list li[data-v-7dd59989],.suggestion-list li[data-v-7dd59989]{padding:10px 12px;background:var(--surface-light);border-radius:8px;margin-bottom:8px;font-size:14px;line-height:1.5}.suggestion-list .original[data-v-7dd59989]{color:var(--danger);text-decoration:line-through}.suggestion-list .arrow[data-v-7dd59989]{margin:0 8px;color:var(--text-secondary)}.suggestion-list .better[data-v-7dd59989]{color:var(--success);font-weight:500}.suggestion-list .reason[data-v-7dd59989]{color:var(--text-secondary);font-size:13px}.better-expression[data-v-7dd59989]{padding:14px;background:var(--success-light);border-radius:8px;font-size:15px;line-height:1.6;color:var(--text);border-left:3px solid var(--success)}.explanation[data-v-7dd59989]{padding:14px;background:var(--surface-light);border-radius:8px;font-size:14px;line-height:1.6;color:var(--text);margin:0}.developing-notice[data-v-7dd59989]{text-align:center;padding:40px 20px;color:var(--text-secondary)}.modal-footer[data-v-7dd59989]{padding:16px 20px;border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0;background:var(--surface);z-index:10}.continue-btn[data-v-7dd59989]{width:100%;padding:14px;border-radius:12px;border:none;background:var(--primary);color:#fff;font-size:16px;font-weight:600;cursor:pointer}.quiz-page[data-v-cd2c5daf]{min-height:100vh;background:var(--bg)}.quiz-header[data-v-cd2c5daf]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.back-btn[data-v-cd2c5daf]{width:40px;height:40px;border-radius:50%;border:none;background:var(--surface-light);color:var(--text);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.quiz-title[data-v-cd2c5daf]{flex:1;font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.question-counter[data-v-cd2c5daf]{font-size:14px;color:var(--text-secondary);background:var(--surface-light);padding:6px 12px;border-radius:16px}.progress-bar-container[data-v-cd2c5daf]{padding:12px 16px;background:var(--surface)}.progress-bar[data-v-cd2c5daf]{height:4px;background:var(--surface-light);border-radius:2px;overflow:hidden}.progress-fill[data-v-cd2c5daf]{height:100%;background:var(--primary);border-radius:2px;transition:width .3s ease}.quiz-content[data-v-cd2c5daf]{padding:16px;max-width:720px;margin:0 auto}.answer-result[data-v-cd2c5daf]{margin-top:20px;padding:20px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.result-header[data-v-cd2c5daf]{margin-bottom:12px}.result-badge[data-v-cd2c5daf]{display:inline-block;padding:4px 12px;background:var(--primary-light);color:var(--primary);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-sm)}.reference-answer[data-v-cd2c5daf]{font-size:var(--text-lg);line-height:1.6;color:var(--text);padding:16px;background:var(--bg);border-radius:var(--radius-sm)}.reference-answer-cn[data-v-cd2c5daf]{margin-top:12px;padding:12px;background:var(--surface-light);border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--text-secondary);line-height:1.6;border-left:3px solid var(--primary)}.upgrade-notice[data-v-cd2c5daf]{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 16px;background:linear-gradient(135deg,var(--primary-light),transparent);border-radius:var(--radius-sm);border:1px solid var(--primary)}.upgrade-icon[data-v-cd2c5daf]{font-size:20px}.upgrade-text[data-v-cd2c5daf]{flex:1;font-size:var(--text-sm);color:var(--text-secondary)}.upgrade-btn[data-v-cd2c5daf]{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;cursor:pointer}.nav-buttons[data-v-cd2c5daf]{display:flex;gap:12px;margin-top:24px}.nav-btn[data-v-cd2c5daf]{flex:1;padding:14px;border-radius:12px;border:none;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.nav-btn[data-v-cd2c5daf]:disabled{opacity:.5;cursor:not-allowed}.nav-btn.prev[data-v-cd2c5daf]{background:var(--surface-light);color:var(--text)}.nav-btn.next[data-v-cd2c5daf]{background:var(--primary);color:#fff}.nav-btn.submit[data-v-cd2c5daf]{background:var(--success);color:#fff}.nav-btn.submit.loading[data-v-cd2c5daf]{background:var(--primary);position:relative}.loading-content[data-v-cd2c5daf]{display:flex;align-items:center;justify-content:center;gap:4px}.loading-dot[data-v-cd2c5daf]{width:6px;height:6px;background:#fff;border-radius:50%;animation:bounce-cd2c5daf 1.4s infinite ease-in-out both}.loading-dot[data-v-cd2c5daf]:nth-child(1){animation-delay:-.32s}.loading-dot[data-v-cd2c5daf]:nth-child(2){animation-delay:-.16s}.loading-dot[data-v-cd2c5daf]:nth-child(3){animation-delay:0s}@keyframes bounce-cd2c5daf{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.loading-text[data-v-cd2c5daf]{margin-left:8px}.no-questions[data-v-cd2c5daf]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary)}.back-to-article-btn[data-v-cd2c5daf]{margin-top:16px;padding:12px 24px;border-radius:12px;border:none;background:var(--primary);color:#fff;font-size:16px;cursor:pointer}.article-item-page[data-v-16048809]{min-height:100vh;background:var(--bg)}.selector-header[data-v-16048809]{display:flex;align-items:center;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);background:var(--bg);position:sticky;top:0;z-index:10}.back-btn[data-v-16048809]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text);cursor:pointer;border-radius:var(--radius-sm);flex-shrink:0}.back-btn[data-v-16048809]:active{background:var(--surface-light)}.header-center[data-v-16048809]{flex:1;text-align:center}.page-title[data-v-16048809]{font-size:var(--text-lg);font-weight:600;margin:0;color:var(--text)}.item-subtitle[data-v-16048809]{font-size:var(--text-sm);color:var(--text-secondary);margin:2px 0 0}.header-spacer[data-v-16048809]{width:36px;flex-shrink:0}.error-state[data-v-16048809]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.error-icon[data-v-16048809]{font-size:48px;margin-bottom:16px}.error-text[data-v-16048809]{font-size:var(--text-base);color:var(--text-secondary);margin:0 0 16px}.retry-btn[data-v-16048809]{padding:10px 24px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.retry-btn[data-v-16048809]:active{opacity:.8}.articles-list[data-v-16048809]{display:flex;flex-direction:column;gap:calc(var(--space-md) / 4)}.article-card[data-v-16048809]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);cursor:pointer;transition:background-color .15s,transform .1s;position:relative}.article-card[data-v-16048809]:active{transform:scale(.98)}.article-card.recommended[data-v-16048809]{border-color:var(--primary);background:var(--primary-light)}[data-theme=dark] .article-card.recommended[data-v-16048809]{background:rgba(var(--primary-rgb, 59, 130, 246),.1)}.recommend-badge[data-v-16048809]{position:absolute;top:-10px;left:12px;font-size:var(--text-xs);background:var(--primary);color:#fff;padding:2px 10px;border-radius:10px;white-space:nowrap}.article-icon-wrap[data-v-16048809]{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:2px}.article-icon[data-v-16048809]{font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center}.article-info[data-v-16048809]{flex:1;min-width:0}.article-card-title[data-v-16048809]{font-weight:600;font-size:var(--text-base);margin:0;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-card-title-cn[data-v-16048809]{font-size:var(--text-sm);color:var(--text-secondary);margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.status-studied[data-v-16048809]{font-size:12px;line-height:1}.status-new-badge[data-v-16048809]{display:inline-block;font-size:9px;font-weight:700;color:var(--primary);background:var(--primary-light);padding:1px 4px;border-radius:6px;letter-spacing:.5px;line-height:1.2}.empty-state[data-v-16048809]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px}.empty-icon[data-v-16048809]{font-size:48px;margin-bottom:16px}.empty-text[data-v-16048809]{font-size:var(--text-base);color:var(--text-secondary);margin:0 0 16px}.back-link-btn[data-v-16048809]{padding:8px 20px;background:transparent;color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.placeholder-page[data-v-e24a4b74]{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.empty-state[data-v-e24a4b74]{text-align:center;padding:var(--space-xl)}.empty-icon[data-v-e24a4b74]{font-size:48px;margin-bottom:var(--space-md)}.empty-title[data-v-e24a4b74]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-sm)}.empty-desc[data-v-e24a4b74]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.about-page[data-v-fa50f240]{padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.about-header[data-v-fa50f240]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl);position:relative;flex-shrink:0}.about-header .back-btn[data-v-fa50f240]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);background:none;border:none;cursor:pointer;flex-shrink:0}.about-header .title[data-v-fa50f240]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;color:var(--text);white-space:nowrap}.about-header .header-right[data-v-fa50f240]{width:56px;flex-shrink:0}.about-content[data-v-fa50f240]{text-align:center;padding-top:var(--space-lg)}.app-logo[data-v-fa50f240]{margin-bottom:var(--space-md)}.logo-img[data-v-fa50f240]{width:80px;height:80px;border-radius:20px}.app-name[data-v-fa50f240]{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-xs)}.app-desc[data-v-fa50f240]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xl)}.info-list[data-v-fa50f240]{max-width:320px;margin:0 auto;background:var(--surface-light);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.info-row[data-v-fa50f240]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md)}.info-row[data-v-fa50f240]:not(:last-child){border-bottom:1px solid var(--border)}.info-label[data-v-fa50f240]{font-size:var(--text-sm);color:var(--text-secondary)}.info-value[data-v-fa50f240]{font-size:var(--text-sm);font-weight:600;color:var(--text)}.system-page[data-v-2120c7c1]{padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.sys-header[data-v-2120c7c1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);position:relative;flex-shrink:0}.sys-header .back-btn[data-v-2120c7c1]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs);background:none;border:none;cursor:pointer;flex-shrink:0}.sys-header .title[data-v-2120c7c1]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600;color:var(--text);white-space:nowrap}.sys-header .header-right[data-v-2120c7c1]{width:56px;flex-shrink:0}.menu-group[data-v-2120c7c1]{margin-bottom:var(--space-md)}.menu-group-label[data-v-2120c7c1]{font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:0 var(--space-sm);margin-bottom:var(--space-xs)}.menu-list[data-v-2120c7c1]{background:var(--surface-light);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;padding:var(--space-md)}.cache-row[data-v-2120c7c1]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.cache-row[data-v-2120c7c1]:last-child{margin-bottom:0}.cache-label[data-v-2120c7c1]{color:var(--text);font-size:var(--text-sm)}.cache-value[data-v-2120c7c1]{color:var(--text-secondary);font-size:var(--text-sm)}.cache-bar-area[data-v-2120c7c1]{flex-direction:column;align-items:stretch}.cache-bar[data-v-2120c7c1]{height:8px;border-radius:4px;background:var(--border);overflow:hidden;margin-bottom:4px}.cache-bar-fill[data-v-2120c7c1]{height:100%;border-radius:4px;background:var(--primary-gradient);transition:width .3s;min-width:2px}.cache-bar-text[data-v-2120c7c1]{font-size:11px;color:var(--text-secondary)}.debug-row[data-v-2120c7c1]{display:flex;justify-content:space-between;align-items:center}.debug-label[data-v-2120c7c1]{color:var(--text);font-size:var(--text-sm)}.debug-toggle-group[data-v-2120c7c1]{display:flex;align-items:center;gap:var(--space-sm)}.debug-status[data-v-2120c7c1]{font-size:var(--text-xs);color:var(--text-secondary)}.toggle-switch[data-v-2120c7c1]{position:relative;display:inline-block;width:48px;height:28px}.toggle-switch input[data-v-2120c7c1]{opacity:0;width:0;height:0}.toggle-slider[data-v-2120c7c1]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider[data-v-2120c7c1]:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-2120c7c1]{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-2120c7c1]:before{transform:translate(20px)}.info-row[data-v-2120c7c1]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.info-row[data-v-2120c7c1]:not(:last-child){border-bottom:1px solid var(--border)}.info-label[data-v-2120c7c1]{color:var(--text);font-size:var(--text-sm)}.info-value[data-v-2120c7c1]{color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.history-view[data-v-8f87db69]{min-height:100vh;background:var(--bg)}.history-header[data-v-8f87db69]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);position:relative}.history-header .back-btn[data-v-8f87db69]{font-size:var(--text-sm);color:var(--primary);padding:var(--space-xs)}.history-header .title[data-v-8f87db69]{position:absolute;left:50%;transform:translate(-50%);font-size:var(--text-lg);font-weight:600}.history-header .header-right[data-v-8f87db69]{width:60px}.history-content[data-v-8f87db69]{padding:var(--space-lg);max-width:600px;margin:0 auto}.empty-state[data-v-8f87db69]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) * 2;color:var(--text-secondary)}.empty-icon[data-v-8f87db69]{font-size:48px;margin-bottom:var(--space-md)}.history-list[data-v-8f87db69]{display:flex;flex-direction:column;gap:var(--space-md)}.history-item[data-v-8f87db69]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--surface);border-radius:var(--radius);cursor:pointer;transition:background .2s}.history-item[data-v-8f87db69]:hover{background:var(--surface-light)}.item-main[data-v-8f87db69]{flex:1;min-width:0}.item-name[data-v-8f87db69]{font-size:var(--text-base);font-weight:500;color:var(--text);margin-bottom:var(--space-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-meta[data-v-8f87db69]{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--space-xs)}.progress-bar[data-v-8f87db69]{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-fill[data-v-8f87db69]{height:100%;background:var(--primary);border-radius:2px;transition:width .3s}.continue-btn[data-v-8f87db69]{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-weight:500;color:#fff;background:var(--primary);border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.continue-btn[data-v-8f87db69]:hover{opacity:.9}:root{--bg: #f0f9ff;--surface: #e9e9e9;--surface-light: #f1f4fa;--border: #d0d0d0;--primary: #0ea5e9;--primary-hover: #0284c7;--primary-light: #e0f2fe;--primary-gradient: linear-gradient(135deg, #0ea5e9 0%, #8b5cf6 100%);--text: #1e293b;--text-secondary: #64748b;--success: #10b981;--success-light: #d1fae5;--danger: #f43f5e;--danger-light: #fee2e8;--warning: #f59e0b;--warning-light: #fffbeb;--accent-pink: #ec4899;--accent-blue: #0ea5e9;--accent-green: #10b981;--accent-orange: #f97316;--radius: 16px;--radius-sm: 10px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 24px;--text-2xl: 32px}[data-theme=dark]{--bg: #0a0a0b;--surface: #252525;--surface-light: #363636;--border: #3a3a3e;--primary: #3b82f6;--primary-hover: #2563eb;--primary-light: #1e1b4b;--primary-gradient: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--text: #e4e4e7;--text-secondary: #a1a1aa;--success: #22c55e;--success-light: #dcfce7;--danger: #ef4444;--danger-light: #3b1117;--warning: #f59e0b;--warning-light: #fef3c7;--accent-pink: #ec4899;--accent-blue: #3b82f6;--accent-green: #22c55e;--accent-orange: #f59e0b}@media(min-width:640px)and (max-width:1024px){:root{--text-base: 18px}}@media(min-width:1024px){:root{--text-base: 16px}.page-container{max-width:640px}}@media(max-width:639px){:root{--text-base: 16px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;font-size:var(--text-base);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}ruby{ruby-position:over;ruby-align:center}rt{font-size:.55em;color:var(--text-secondary);font-weight:600;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,Noto Sans JP,sans-serif;letter-spacing:.02em;padding-bottom:.3em}.ruby-text ruby+ruby{margin-left:.05em}.word-main rt,.review-main rt{font-size:.5em;font-weight:600}a{color:var(--primary);text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit}input{font-family:inherit;font-size:inherit}.page-container{max-width:640px;margin:0 auto;padding:var(--space-md);min-height:100dvh;padding-bottom:max(env(safe-area-inset-bottom),var(--space-md))}.page-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.page-header .back-btn{flex:1;font-size:var(--text-lg);color:var(--primary);padding:var(--space-xs)}.page-header .title{flex:1;font-size:var(--text-lg);font-weight:600;text-align:center}.page-header .header-right{flex:1;display:flex;justify-content:flex-end}.card{background:var(--surface-light);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-md);margin-bottom:var(--space-md)}[data-theme=dark] .card{background:var(--surface)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:500;transition:background-color .15s,transform .1s;border:1px solid transparent}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:disabled{background:var(--border);color:var(--text-secondary);cursor:not-allowed;transform:none}.btn-secondary{background:var(--surface-light);color:var(--primary);border-color:var(--border)}[data-theme=dark] .btn-secondary{background:var(--surface)}.btn-secondary:hover{background:var(--primary-light)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.btn-danger{background:var(--danger);color:#fff}.btn-block{width:100%}.btn-sm{padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm)}.text-secondary{color:var(--text-secondary)}.text-center{text-align:center}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.jp{font-family:Noto Sans JP,Hiragino Sans,sans-serif;color:var(--primary)}s{color:var(--text-secondary);text-decoration:line-through;opacity:.7}
