.dictation-player[data-v-4a369189]{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.mode-selector[data-v-4a369189]{background:var(--bg-card,#fff);border-radius:12px;gap:6px;margin-bottom:16px;padding:4px;display:flex;box-shadow:0 2px 8px #0000000f}.mode-selector button[data-v-4a369189]{color:var(--text-muted,#94a3b8);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;padding:6px 16px;font-size:14px;font-weight:600;transition:all .2s}.mode-selector button.active[data-v-4a369189]{color:#fff;background:#3b82f6;box-shadow:0 2px 8px #3b82f64d}.word-display[data-v-4a369189]{justify-content:center;align-items:center;min-height:100px;display:flex}.word-block[data-v-4a369189]{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.word-en[data-v-4a369189]{color:var(--text-primary,#1e293b);letter-spacing:2px;margin:0;font-size:52px;font-weight:800}.word-pinyin[data-v-4a369189]{color:var(--text-primary,#1e293b);letter-spacing:3px;margin:0;font-size:48px;font-weight:800}.word-zh[data-v-4a369189]{color:var(--text-muted,#94a3b8);margin:0;font-size:22px;font-weight:600}.listening-icon[data-v-4a369189]{flex-direction:column;align-items:center;gap:12px;display:flex}.big-icon[data-v-4a369189]{font-size:64px;animation:2s ease-in-out infinite pulse-4a369189}@keyframes pulse-4a369189{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.listening-hint[data-v-4a369189],.status[data-v-4a369189]{color:var(--text-muted,#94a3b8);margin:0;font-size:16px}.input-area[data-v-4a369189]{flex-direction:column;gap:16px;width:100%;display:flex}.word-input[data-v-4a369189]{border:2px solid var(--border-color,#e2e8f0);text-align:center;letter-spacing:2px;background:var(--bg-input,#fff);width:100%;height:56px;color:var(--text-primary,#1e293b);box-sizing:border-box;border-radius:12px;outline:none;font-size:24px;font-weight:600;transition:border-color .2s}.word-input[data-v-4a369189]:focus{border-color:#3b82f6}.word-input[data-v-4a369189]:disabled{opacity:.6;cursor:not-allowed}.input-buttons[data-v-4a369189]{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.btn[data-v-4a369189]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;border-radius:14px;min-width:120px;height:60px;padding:0 24px;font-size:17px;font-weight:600;transition:background-color .15s,transform .1s,opacity .15s}.btn[data-v-4a369189]:active:not(:disabled){transform:scale(.97)}.btn[data-v-4a369189]:disabled{opacity:.45;cursor:not-allowed}.btn-primary[data-v-4a369189]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 16px #3b82f659}.btn-success[data-v-4a369189]{color:#fff;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b98159}.btn-next[data-v-4a369189]{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 16px #f59e0b59}.btn-secondary[data-v-4a369189]{background:var(--bg-secondary,#e2e8f0);color:var(--text-secondary,#475569)}.feedback[data-v-4a369189]{text-align:center;border-radius:12px;padding:12px 24px;font-size:18px;font-weight:700}.feedback.correct[data-v-4a369189]{color:#065f46;background:#d1fae5}.feedback.wrong[data-v-4a369189]{color:#991b1b;background:#fee2e2}.feedback strong[data-v-4a369189]{font-size:22px}.session-result[data-v-4a369189]{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.result-title[data-v-4a369189]{color:#10b981;margin:0;font-size:28px;font-weight:800}.result-stats[data-v-4a369189]{justify-content:center;gap:16px;width:100%;display:flex}.stat-item[data-v-4a369189]{background:var(--bg-card,#fff);border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:72px;padding:12px 20px;display:flex;box-shadow:0 2px 8px #0000000f}.stat-item.correct .stat-num[data-v-4a369189]{color:#10b981}.stat-item.wrong .stat-num[data-v-4a369189]{color:#ef4444}.stat-num[data-v-4a369189]{color:var(--text-primary,#1e293b);font-size:28px;font-weight:800}.stat-label[data-v-4a369189]{color:var(--text-muted,#94a3b8);font-size:12px}.result-wrong[data-v-4a369189]{background:var(--bg-card,#fff);border-radius:16px;width:100%;padding:16px;box-shadow:0 2px 12px #0000000f}.wrong-title[data-v-4a369189]{color:#ef4444;margin:0 0 12px;font-size:16px;font-weight:700}.wrong-list[data-v-4a369189]{flex-direction:column;gap:8px;max-height:200px;display:flex;overflow-y:auto}.wrong-item[data-v-4a369189]{background:#fef2f2;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.wrong-word-block[data-v-4a369189]{flex-direction:column;gap:2px;display:flex}.wrong-word[data-v-4a369189]{color:var(--text-primary,#1e293b);font-size:16px;font-weight:700}.wrong-zh[data-v-4a369189]{color:var(--text-muted,#94a3b8);font-size:13px}.wrong-answer[data-v-4a369189]{color:var(--text-muted,#94a3b8);text-align:right;font-size:13px}.result-actions[data-v-4a369189]{gap:12px;display:flex}.word-bank-manager[data-v-36e850ca]{flex-direction:column;gap:12px;width:100%;display:flex}.section-title[data-v-36e850ca]{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.sub-title[data-v-36e850ca]{color:var(--text-secondary);margin:4px 0 0;font-size:14px;font-weight:600}.bank-list[data-v-36e850ca]{flex-wrap:wrap;gap:6px;display:flex}.bank-chip[data-v-36e850ca]{border:2px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:4px;padding:6px 14px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.bank-chip.active[data-v-36e850ca]{color:#fff;background:#3b82f6;border-color:#3b82f6}.public-chip[data-v-36e850ca]{border-color:#10b981}.creator-name[data-v-36e850ca]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:11px;font-weight:400;overflow:hidden}.bank-chip.active .creator-name[data-v-36e850ca]{color:#ffffffb3}.bank-count[data-v-36e850ca]{font-size:12px;font-weight:400}.public-badge[data-v-36e850ca]{color:#fff;background:#10b981;border-radius:8px;padding:1px 6px;font-size:10px}.empty-hint[data-v-36e850ca]{color:var(--text-muted);margin:0;font-size:13px}.actions[data-v-36e850ca]{flex-wrap:wrap;gap:10px;display:flex}.action-btn[data-v-36e850ca]{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.action-btn[data-v-36e850ca]:active{transform:scale(.97)}.upload-label[data-v-36e850ca]{cursor:pointer;align-items:center;display:inline-flex}.create-bank-panel[data-v-36e850ca]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-input[data-v-36e850ca]{border:2px solid var(--border-color);background:var(--bg-input);min-width:120px;height:44px;color:var(--text-primary);border-radius:10px;outline:none;flex:1;padding:0 14px;font-size:15px}.form-input[data-v-36e850ca]:focus{border-color:#3b82f6}.form-select[data-v-36e850ca]{border:2px solid var(--border-color);background:var(--bg-input);height:44px;color:var(--text-primary);cursor:pointer;border-radius:10px;outline:none;padding:0 12px;font-size:15px}.public-toggle[data-v-36e850ca]{color:var(--text-secondary);cursor:pointer;align-items:center;gap:4px;font-size:14px;display:flex}.import-panel[data-v-36e850ca]{flex-direction:column;gap:10px;display:flex}.import-hint[data-v-36e850ca]{color:var(--text-muted);margin:0;font-size:13px}.import-hint code[data-v-36e850ca]{background:var(--bg-secondary);border-radius:4px;padding:2px 6px;font-size:12px}.import-textarea[data-v-36e850ca]{border:2px solid var(--border-color);resize:vertical;background:var(--bg-input);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:12px;outline:none;padding:12px;font-family:inherit;font-size:15px}.import-textarea[data-v-36e850ca]:focus{border-color:#3b82f6}.import-actions[data-v-36e850ca]{flex-wrap:wrap;gap:10px;display:flex}.btn-confirm[data-v-36e850ca]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;height:44px;padding:0 24px;font-size:15px;font-weight:600}.btn-confirm[data-v-36e850ca]:disabled{opacity:.45;cursor:not-allowed}.btn-save[data-v-36e850ca]{background:linear-gradient(135deg,#3b82f6,#2563eb)}.word-preview[data-v-36e850ca]{flex-direction:column;gap:8px;display:flex}.preview-count[data-v-36e850ca]{color:var(--text-muted);margin:0;font-size:13px}.preview-chips[data-v-36e850ca]{flex-wrap:wrap;gap:6px;max-height:200px;display:flex;overflow-y:auto}.preview-chip[data-v-36e850ca]{background:var(--bg-secondary);color:var(--text-secondary);border-radius:12px;padding:4px 10px;font-size:13px;font-weight:500}.preview-chip.current[data-v-36e850ca]{color:#fff;background:#3b82f6}.progress-dashboard[data-v-4016cf04]{flex-direction:column;gap:20px;width:100%;display:flex}.dashboard-header[data-v-4016cf04]{justify-content:space-between;align-items:center;display:flex}.section-title[data-v-4016cf04]{color:var(--text-primary,#1e293b);margin:0;font-size:18px;font-weight:700}.refresh-btn[data-v-4016cf04]{background:var(--bg-card,#fff);cursor:pointer;border:none;border-radius:10px;width:36px;height:36px;font-size:16px;transition:transform .2s;box-shadow:0 2px 8px #0000000f}.refresh-btn[data-v-4016cf04]:active{transform:scale(.9)}.sub-title[data-v-4016cf04]{color:var(--text-secondary,#475569);margin:0 0 8px;font-size:15px;font-weight:600}.today-card[data-v-4016cf04]{background:var(--bg-card,#fff);border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex;box-shadow:0 2px 12px #0000000f}.today-status[data-v-4016cf04]{color:var(--text-muted,#94a3b8);margin:0;font-size:15px}.accuracy-ring[data-v-4016cf04]{flex-direction:column;align-items:center;gap:4px;display:flex}.ring-svg[data-v-4016cf04]{width:100px;height:100px;transform:rotate(-90deg)}.ring-bg[data-v-4016cf04]{fill:none;stroke:var(--bg-secondary,#e2e8f0);stroke-width:8px}.ring-fill[data-v-4016cf04]{fill:none;stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray .5s}.ring-text[data-v-4016cf04]{fill:var(--text-primary,#1e293b);font-size:18px;font-weight:700;transform:rotate(90deg)}.ring-label[data-v-4016cf04]{color:var(--text-muted,#94a3b8);margin:0;font-size:13px}.week-stats[data-v-4016cf04]{background:var(--bg-card,#fff);border-radius:16px;padding:16px;box-shadow:0 2px 12px #0000000f}.bar-chart[data-v-4016cf04]{justify-content:space-between;align-items:flex-end;gap:4px;height:100px;display:flex}.bar-item[data-v-4016cf04]{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.bar-wrapper[data-v-4016cf04]{justify-content:center;align-items:flex-end;width:100%;height:80px;display:flex}.bar[data-v-4016cf04]{border-radius:4px 4px 0 0;width:60%;min-height:4px;transition:height .3s}.bar.good[data-v-4016cf04]{background:#10b981}.bar.medium[data-v-4016cf04]{background:#f59e0b}.bar.poor[data-v-4016cf04]{background:#ef4444}.bar-label[data-v-4016cf04]{color:var(--text-muted,#94a3b8);font-size:11px}.wrong-summary[data-v-4016cf04]{background:var(--bg-card,#fff);border-radius:16px;padding:16px;box-shadow:0 2px 12px #0000000f}.wrong-header[data-v-4016cf04]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.wrong-header .sub-title[data-v-4016cf04]{margin:0}.wrong-count[data-v-4016cf04]{color:#ef4444;font-size:14px;font-weight:700}.empty-hint[data-v-4016cf04]{text-align:center;color:var(--text-muted,#94a3b8);margin:0;padding:8px 0;font-size:15px}.wrong-hint[data-v-4016cf04]{color:var(--text-muted,#94a3b8);margin:0;font-size:14px}.wrong-words-review[data-v-111a258c]{flex-direction:column;gap:16px;width:100%;display:flex}.section-title[data-v-111a258c]{color:var(--text-primary,#1e293b);margin:0;font-size:18px;font-weight:700}.overview-card[data-v-111a258c]{background:var(--bg-card,#fff);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex;box-shadow:0 2px 12px #0000000f}.overview-header[data-v-111a258c]{align-items:baseline;gap:8px;display:flex}.overview-count[data-v-111a258c]{color:#ef4444;font-size:36px;font-weight:800}.overview-label[data-v-111a258c]{color:var(--text-muted,#94a3b8);font-size:15px}.bank-chips[data-v-111a258c]{flex-wrap:wrap;gap:8px;display:flex}.bank-tag[data-v-111a258c]{background:var(--bg-secondary,#f1f5f9);color:var(--text-secondary,#475569);border-radius:16px;padding:4px 12px;font-size:13px;font-weight:600}.tag-count[data-v-111a258c]{color:var(--text-muted,#94a3b8);margin-left:4px;font-weight:400}.overview-actions[data-v-111a258c]{gap:12px;margin-top:4px;display:flex}.btn[data-v-111a258c]{cursor:pointer;touch-action:manipulation;border:none;border-radius:12px;min-width:100px;height:48px;padding:0 20px;font-size:15px;font-weight:600;transition:all .2s}.btn[data-v-111a258c]:disabled{opacity:.45;cursor:not-allowed}.btn[data-v-111a258c]:active:not(:disabled){transform:scale(.97)}.btn-primary[data-v-111a258c]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d}.btn-danger[data-v-111a258c]{background:var(--bg-secondary,#fee2e2);color:#ef4444}.empty-state[data-v-111a258c]{text-align:center;color:var(--text-muted,#94a3b8);background:var(--bg-card,#fff);border-radius:16px;padding:40px 20px;font-size:16px}.wrong-list[data-v-111a258c]{flex-direction:column;gap:8px;max-height:400px;display:flex;overflow-y:auto}.wrong-item[data-v-111a258c]{background:var(--bg-card,#fff);border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;box-shadow:0 1px 4px #0000000a}.wrong-info[data-v-111a258c]{flex-direction:column;flex:1;gap:4px;display:flex}.wrong-word-block[data-v-111a258c]{align-items:baseline;gap:8px;display:flex}.wrong-word[data-v-111a258c]{color:var(--text-primary,#1e293b);font-size:17px;font-weight:700}.wrong-zh[data-v-111a258c]{color:var(--text-muted,#94a3b8);font-size:14px}.wrong-meta[data-v-111a258c]{color:var(--text-muted,#94a3b8);gap:12px;font-size:12px;display:flex}.meta-bank[data-v-111a258c]{background:var(--bg-secondary,#f1f5f9);border-radius:8px;padding:1px 8px}.delete-btn[data-v-111a258c]{width:32px;height:32px;color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;font-size:16px;transition:all .2s}.delete-btn[data-v-111a258c]:hover{color:#ef4444;background:#fee2e2}.auth-container[data-v-8874544e]{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.auth-card[data-v-8874544e]{background:var(--bg-card);border-radius:20px;width:100%;max-width:400px;padding:40px 32px;box-shadow:0 8px 32px #00000014}.auth-title[data-v-8874544e]{text-align:center;color:var(--text-primary);margin-bottom:8px;font-size:28px;font-weight:800}.auth-subtitle[data-v-8874544e]{text-align:center;color:var(--text-secondary);margin-bottom:32px;font-size:15px}.auth-form[data-v-8874544e]{flex-direction:column;gap:20px;display:flex}.form-group[data-v-8874544e]{flex-direction:column;gap:6px;display:flex}.form-label[data-v-8874544e]{color:var(--text-secondary);font-size:14px;font-weight:600}.label-hint[data-v-8874544e]{color:var(--text-muted);font-size:12px;font-weight:400}.form-input[data-v-8874544e]{border:2px solid var(--border-color);background:var(--bg-input);height:52px;color:var(--text-primary);border-radius:12px;outline:none;padding:0 16px;font-size:16px;transition:border-color .2s}.form-input[data-v-8874544e]:focus{border-color:#3b82f6}.form-input[data-v-8874544e]::placeholder{color:var(--text-muted)}.error-msg[data-v-8874544e]{color:#ef4444;text-align:center;background:#ef44441a;border-radius:8px;padding:8px;font-size:14px}.btn-submit[data-v-8874544e]{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:12px;height:56px;margin-top:8px;font-size:17px;font-weight:700;transition:all .2s}.btn-submit[data-v-8874544e]:hover:not(:disabled){background:#2563eb}.btn-submit[data-v-8874544e]:active:not(:disabled){transform:scale(.98)}.btn-submit[data-v-8874544e]:disabled{opacity:.6;cursor:not-allowed}.auth-toggle[data-v-8874544e]{text-align:center;color:var(--text-secondary);margin-top:24px;font-size:14px}.link-btn[data-v-8874544e]{color:#3b82f6;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.link-btn[data-v-8874544e]:hover{text-decoration:underline}:root,[data-theme=light]{--bg-primary:#f0f4f8;--bg-card:#fff;--bg-secondary:#e2e8f0;--bg-input:#fff;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#e2e8f0}[data-theme=dark]{--bg-primary:#0f172a;--bg-card:#1e293b;--bg-secondary:#334155;--bg-input:#1e293b;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#64748b;--border-color:#334155}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;transition:background-color .3s,color .3s}.user-bar[data-v-f0a5ffe1]{justify-content:space-between;align-items:center;width:100%;max-width:520px;margin-bottom:12px;padding:0 4px;display:flex}.user-info[data-v-f0a5ffe1]{color:var(--text-secondary);font-size:14px;font-weight:500}.user-id[data-v-f0a5ffe1]{color:var(--text-muted);font-size:12px;font-weight:400}.btn-logout[data-v-f0a5ffe1]{border:1px solid var(--border-color);height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:0 12px;font-size:13px;transition:all .2s}.btn-logout[data-v-f0a5ffe1]:hover{background:var(--bg-secondary);color:var(--text-primary)}.user-actions[data-v-f0a5ffe1]{align-items:center;gap:10px;display:flex}.invite-block[data-v-f0a5ffe1]{cursor:pointer;background:#10b9811a;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;transition:background .2s;display:flex}.invite-block[data-v-f0a5ffe1]:hover{background:#10b98133}.invite-code[data-v-f0a5ffe1]{color:#10b981;letter-spacing:1px;-webkit-user-select:text;user-select:text;font-size:12px;font-weight:600}.invite-count[data-v-f0a5ffe1]{color:var(--text-muted);font-size:11px}.loading-screen[data-v-f0a5ffe1]{background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100dvh;display:flex}.loading-spinner[data-v-f0a5ffe1]{border:4px solid var(--bg-secondary);border-top:4px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin-f0a5ffe1}@keyframes spin-f0a5ffe1{to{transform:rotate(360deg)}}.loading-text[data-v-f0a5ffe1]{color:var(--text-muted);font-size:15px}.app[data-v-f0a5ffe1]{flex-direction:column;align-items:center;min-height:100dvh;padding:16px 16px 40px;transition:background-color .3s;display:flex}.tab-bar[data-v-f0a5ffe1]{background:var(--bg-card);border-radius:16px;gap:6px;width:100%;max-width:520px;margin-bottom:20px;padding:5px;display:flex;box-shadow:0 2px 12px #0000000f}.tab[data-v-f0a5ffe1]{height:44px;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:12px;flex:1;font-size:14px;font-weight:600;transition:all .2s}.tab.active[data-v-f0a5ffe1]{color:#fff;background:#3b82f6;box-shadow:0 2px 8px #3b82f64d}.tab[data-v-f0a5ffe1]:active:not(.active){background:var(--bg-secondary)}.content[data-v-f0a5ffe1]{flex-direction:column;align-items:center;width:100%;max-width:520px;display:flex}
