.app[data-v-8213ef23]{height:100vh;display:flex;flex-direction:column}.header[data-v-8213ef23]{height:58px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--bg-2);border-bottom:1px solid var(--border)}.brand[data-v-8213ef23]{display:flex;align-items:center;gap:10px}.logo[data-v-8213ef23]{font-size:26px}.title[data-v-8213ef23]{font-size:16px;font-weight:700}.subtitle[data-v-8213ef23]{font-size:11px;color:var(--text-dim)}.header-right[data-v-8213ef23]{display:flex;align-items:center;gap:14px}.key-status[data-v-8213ef23]{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--red);background:#f8717114;padding:4px 10px;border-radius:20px}.key-status.ok[data-v-8213ef23]{color:var(--green);background:#34d39914}.key-status .dot[data-v-8213ef23]{width:7px;height:7px;border-radius:50%;background:currentColor}.main[data-v-8213ef23]{flex:1;display:flex;min-height:0}.left[data-v-8213ef23]{width:46%;min-width:430px;max-width:640px;border-right:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.right[data-v-8213ef23]{flex:1;min-width:0;display:flex;flex-direction:column;padding:16px 18px}.field label[data-v-8213ef23],.voice-head label[data-v-8213ef23],.list-head label[data-v-8213ef23]{display:block;font-weight:600;margin-bottom:6px;font-size:13px}.field .required[data-v-8213ef23]{color:var(--red)}.field .dim[data-v-8213ef23]{color:var(--text-dim);font-weight:400;font-size:12px}textarea[data-v-8213ef23]{width:100%;resize:vertical;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:10px 12px;font-size:13px;line-height:1.6;outline:none;transition:border-color .15s}textarea[data-v-8213ef23]:focus{border-color:var(--accent)}textarea[data-v-8213ef23]::placeholder{color:#565e78}.text-input[data-v-8213ef23]{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:9px 12px;font-size:13px;outline:none}.text-input[data-v-8213ef23]:focus{border-color:var(--accent)}.voice-head[data-v-8213ef23]{display:flex;align-items:center;justify-content:space-between}.voice-head label[data-v-8213ef23]{margin-bottom:0}.voice-grid[data-v-8213ef23]{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px;margin-top:4px}.voice-card[data-v-8213ef23]{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none;position:relative}.voice-card[data-v-8213ef23]:hover{border-color:#3a4366}.voice-card.selected[data-v-8213ef23]{border-color:var(--accent);background:#5b8cff14;box-shadow:0 0 0 1px var(--accent)}.voice-card.clone[data-v-8213ef23]{border-color:#7c5cff73;background:#7c5cff0f}.voice-card.clone.selected[data-v-8213ef23]{border-color:var(--accent-2);box-shadow:0 0 0 1px var(--accent-2);background:#7c5cff24}.voice-card.unready[data-v-8213ef23]{opacity:.55;cursor:default}.radio[data-v-8213ef23]{width:20px;height:20px;border-radius:50%;border:2px solid var(--text-dim);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s}.radio.selected[data-v-8213ef23]{border-color:var(--accent)}.voice-card.clone .radio.selected[data-v-8213ef23]{border-color:var(--accent-2)}.radio .dot[data-v-8213ef23]{width:10px;height:10px;border-radius:50%;background:var(--accent)}.voice-card.clone .radio .dot[data-v-8213ef23]{background:var(--accent-2)}.voice-info[data-v-8213ef23]{flex:1;min-width:0}.voice-name[data-v-8213ef23]{font-weight:600;font-size:14px;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clone-badge[data-v-8213ef23]{font-size:10px;font-weight:600;padding:1px 7px;border-radius:6px;background:#7c5cff33;color:#b39dff;white-space:nowrap;flex-shrink:0}.clone-badge.err[data-v-8213ef23]{background:#f8717129;color:var(--red)}.tags[data-v-8213ef23]{display:flex;gap:6px;margin-top:3px}.tag[data-v-8213ef23]{font-size:11px;padding:1px 7px;border-radius:6px;background:#262c42;color:var(--text-dim)}.tag.clone-tag[data-v-8213ef23]{background:#7c5cff1f;color:#9d8bff}.preview-btn[data-v-8213ef23]{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--border);color:var(--text);transition:all .15s}.preview-btn[data-v-8213ef23]:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.preview-btn.playing[data-v-8213ef23]{background:var(--accent-grad);color:#fff;border-color:transparent}.preview-btn.loading[data-v-8213ef23]{pointer-events:none;opacity:.8}.preview-btn[data-v-8213ef23]:disabled{opacity:.4;cursor:not-allowed}.clone-del[data-v-8213ef23]{position:absolute;top:4px;right:4px;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-dim);background:#00000040;transition:all .15s}.clone-del[data-v-8213ef23]:hover{background:#f8717140;color:var(--red)}.clone-entry[data-v-8213ef23]{border-style:dashed;border-color:#3a4366;color:var(--text-dim)}.clone-entry[data-v-8213ef23]:hover{border-color:var(--accent-2);color:var(--accent-2);background:#7c5cff0f}.clone-entry .plus[data-v-8213ef23]{width:20px;height:20px;border-radius:50%;border:2px dashed var(--text-dim);display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1;flex-shrink:0}.clone-entry:hover .plus[data-v-8213ef23]{border-color:var(--accent-2)}.entry-arrow[data-v-8213ef23]{font-size:18px;opacity:.6}.generate-btn[data-v-8213ef23]{width:100%;padding:14px;border-radius:12px;background:var(--accent-grad);color:#fff;font-size:16px;font-weight:700;letter-spacing:3px;transition:opacity .15s,transform .1s}.generate-btn[data-v-8213ef23]:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.generate-btn[data-v-8213ef23]:active:not(:disabled){transform:translateY(0)}.generate-btn[data-v-8213ef23]:disabled{opacity:.45;cursor:not-allowed}.list-head[data-v-8213ef23]{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding-bottom:10px}.list-head label[data-v-8213ef23]{margin-bottom:0}.count[data-v-8213ef23]{display:inline-block;min-width:22px;text-align:center;font-size:11px;background:var(--accent-grad);color:#fff;border-radius:20px;padding:1px 8px;margin-left:6px}.list[data-v-8213ef23]{flex:1;overflow-y:auto;padding-right:4px}.rec-card[data-v-8213ef23]{background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--text-dim);border-radius:12px;padding:12px 14px;margin-bottom:12px}.rec-card.generating[data-v-8213ef23]{border-left-color:var(--amber)}.rec-card.done[data-v-8213ef23]{border-left-color:var(--green)}.rec-card.error[data-v-8213ef23]{border-left-color:var(--red)}.rec-head[data-v-8213ef23]{display:flex;align-items:center;gap:10px}.chip[data-v-8213ef23]{font-size:11px;padding:2px 10px;border-radius:20px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.chip.generating[data-v-8213ef23]{background:#fbbf2424;color:var(--amber)}.chip.done[data-v-8213ef23]{background:#34d39924;color:var(--green)}.chip.error[data-v-8213ef23]{background:#f8717124;color:var(--red)}.voice-tag[data-v-8213ef23]{font-size:12px;color:var(--text-dim);background:#262c42;padding:2px 8px;border-radius:6px;display:inline-flex;align-items:center;gap:4px}.clone-mini[data-v-8213ef23]{font-size:9px;font-weight:700;color:#b39dff;background:#7c5cff2e;padding:0 5px;border-radius:4px}.time[data-v-8213ef23]{font-size:11px;color:var(--text-dim)}.spacer[data-v-8213ef23]{flex:1}.icon-btn[data-v-8213ef23]{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);transition:all .15s}.icon-btn[data-v-8213ef23]:hover{background:#f871711f;color:var(--red)}.rec-text[data-v-8213ef23]{margin:10px 0 8px;cursor:pointer}.prompt-label[data-v-8213ef23]{font-size:11px;color:var(--text-dim);margin-bottom:3px}.prompt-text[data-v-8213ef23]{font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.prompt-instruction[data-v-8213ef23]{margin-top:6px;font-size:12px;color:var(--accent);background:#5b8cff14;padding:6px 10px;border-radius:8px}.expand-hint[data-v-8213ef23]{margin-top:4px;font-size:11px;color:var(--text-dim)}.rec-actions[data-v-8213ef23]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.play-btn[data-v-8213ef23]{width:38px;height:38px;border-radius:50%;background:var(--accent-grad);color:#fff;display:flex;align-items:center;justify-content:center;transition:all .15s}.play-btn[data-v-8213ef23]:hover{filter:brightness(1.1)}.play-btn.playing[data-v-8213ef23]{background:var(--red)}.duration[data-v-8213ef23]{font-size:12px;color:var(--text-dim)}.btn-link[data-v-8213ef23]{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--accent);text-decoration:none;padding:5px 10px;border:1px solid var(--border);border-radius:8px;transition:all .15s}.btn-link[data-v-8213ef23]:hover{border-color:var(--accent);background:#5b8cff14}.generating-hint[data-v-8213ef23]{font-size:12px;color:var(--amber)}.error-msg[data-v-8213ef23]{font-size:12px;color:var(--red);word-break:break-all}.empty[data-v-8213ef23]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim)}.empty-icon[data-v-8213ef23]{font-size:52px;margin-bottom:12px;opacity:.5}.empty-text[data-v-8213ef23]{font-size:15px;margin-bottom:8px}.empty-hint[data-v-8213ef23]{font-size:12px;text-align:center;line-height:1.8;opacity:.7}.btn-ghost[data-v-8213ef23]{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:12px;transition:all .15s;white-space:nowrap}.btn-ghost[data-v-8213ef23]:hover{border-color:var(--accent);color:var(--accent)}.btn-ghost.small[data-v-8213ef23]{padding:4px 10px;font-size:12px}.btn-ghost.danger[data-v-8213ef23]:hover{border-color:var(--red);color:var(--red)}.btn-ghost[data-v-8213ef23]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-8213ef23]{padding:8px 22px;border-radius:8px;background:var(--accent-grad);color:#fff;font-weight:600}.btn-primary[data-v-8213ef23]:hover:not(:disabled){filter:brightness(1.1)}.btn-primary[data-v-8213ef23]:disabled{opacity:.5;cursor:not-allowed}.clone-modal[data-v-8213ef23]{width:500px}.drop-zone[data-v-8213ef23]{border:2px dashed var(--border);border-radius:12px;padding:26px 16px;text-align:center;color:var(--text-dim);cursor:pointer;transition:all .15s;background:var(--bg)}.drop-zone[data-v-8213ef23]:hover,.drop-zone.active[data-v-8213ef23]{border-color:var(--accent-2);color:var(--text);background:#7c5cff0d}.drop-zone.hasfile[data-v-8213ef23]{border-style:solid;border-color:#7c5cff80}.dz-icon[data-v-8213ef23]{font-size:34px;margin-bottom:8px}.dz-main[data-v-8213ef23]{font-size:13px}.dz-sub[data-v-8213ef23]{font-size:11px;margin-top:6px;opacity:.7}.drop-zone kbd[data-v-8213ef23]{background:#262c42;padding:1px 6px;border-radius:4px;font-size:11px;border:1px solid #3a4366}.dz-file[data-v-8213ef23]{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;margin-bottom:12px}.dz-name[data-v-8213ef23]{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dz-size[data-v-8213ef23]{color:var(--text-dim);font-size:12px}.dz-actions[data-v-8213ef23]{display:flex;justify-content:center;gap:8px}.clone-error[data-v-8213ef23]{margin-top:10px;font-size:12px;color:var(--red)}.modal-mask[data-v-8213ef23]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-8213ef23]{width:460px;max-width:92vw;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:22px}.modal h3[data-v-8213ef23]{margin:0 0 10px}.modal-hint[data-v-8213ef23]{font-size:12px;color:var(--text-dim);line-height:1.7;margin:0 0 14px}.modal-hint a[data-v-8213ef23]{color:var(--accent)}.modal-hint code[data-v-8213ef23]{background:#262c42;padding:1px 6px;border-radius:5px}.key-input-row[data-v-8213ef23]{display:flex;gap:8px}.key-input-row input[data-v-8213ef23]{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:9px 12px;font-size:13px;outline:none}.key-input-row input[data-v-8213ef23]:focus{border-color:var(--accent)}.current-key[data-v-8213ef23]{margin-top:10px;font-size:12px;color:var(--text-dim)}.modal-actions[data-v-8213ef23]{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.toast[data-v-8213ef23]{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:#232946;border:1px solid var(--border);border-radius:10px;padding:10px 18px;font-size:13px;z-index:200;max-width:70vw;box-shadow:0 8px 30px #0006}.toast.error[data-v-8213ef23]{border-color:#f8717180;color:var(--red)}.toast.success[data-v-8213ef23]{border-color:#34d39980;color:var(--green)}.fade-enter-active[data-v-8213ef23],.fade-leave-active[data-v-8213ef23]{transition:opacity .25s}.fade-enter-from[data-v-8213ef23],.fade-leave-to[data-v-8213ef23]{opacity:0}.spin[data-v-8213ef23]{display:inline-block;animation:rotate-8213ef23 1s linear infinite}@keyframes rotate-8213ef23{to{transform:rotate(360deg)}}:root{--bg: #0f1117;--bg-2: #161923;--panel: #1a1e2a;--panel-2: #202536;--border: #2a3045;--text: #e8eaf2;--text-dim: #9aa1b5;--accent: #5b8cff;--accent-2: #7c5cff;--accent-grad: linear-gradient(135deg, #5b8cff, #7c5cff);--green: #34d399;--red: #f87171;--amber: #fbbf24;--radius: 12px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:Segoe UI,PingFang SC,Microsoft YaHei,system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:14px}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#2c3350;border-radius:4px}::-webkit-scrollbar-track{background:transparent}
