.voice-recorder[data-v-be3c1695]{align-items:center;display:flex;position:relative}.mic-btn[data-v-be3c1695]{cursor:pointer;color:#666;background:0 0;border:1px solid #ddd;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.mic-btn[data-v-be3c1695]:hover{color:#333;background:#f5f5f5;border-color:#999}.recording-bar[data-v-be3c1695]{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:8px;padding:4px 12px;animation:1.5s ease-in-out infinite pulse-border-be3c1695;display:flex}@keyframes pulse-border-be3c1695{0%,to{border-color:#fecaca}50%{border-color:#f87171}}.waveform[data-v-be3c1695]{align-items:center;gap:2px;height:24px;display:flex}.wave-bar[data-v-be3c1695]{background:#ef4444;border-radius:2px;width:3px;min-height:2px;transition:height .1s}.rec-time[data-v-be3c1695]{color:#dc2626;font-variant-numeric:tabular-nums;text-align:center;min-width:32px;font-size:13px}.stop-btn[data-v-be3c1695]{cursor:pointer;color:#fff;background:#dc2626;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s;display:flex}.stop-btn[data-v-be3c1695]:hover{background:#b91c1c}.uploading[data-v-be3c1695]{align-items:center;gap:8px;padding:0 8px;display:flex}.uploading-spinner[data-v-be3c1695]{border:2px solid #ddd;border-top-color:#666;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin-be3c1695}@keyframes spin-be3c1695{to{transform:rotate(360deg)}}.uploading-text[data-v-be3c1695]{color:#999;font-size:12px}.done-indicator[data-v-be3c1695]{padding:0 8px}.error-msg[data-v-be3c1695]{color:#dc2626;white-space:nowrap;margin:4px 0 0;font-size:11px;position:absolute;top:100%;left:0}.welcome[data-v-7980a238]{justify-content:center;align-items:center;height:100%;padding:clamp(16px,4vw,48px);display:flex}.welcome-content[data-v-7980a238]{text-align:center;width:100%;max-width:560px}h1[data-v-7980a238]{color:#1a1a1a;margin:0 0 8px;font-size:clamp(22px,4vw,32px);font-weight:700}.subtitle[data-v-7980a238]{color:#777;margin:0 0 clamp(24px,5vw,40px);font-size:clamp(13px,2.5vw,15px);line-height:1.7}.start-input[data-v-7980a238]{flex-direction:column;align-items:center;gap:12px;display:flex}.input-row[data-v-7980a238]{align-items:flex-end;gap:8px;width:100%;max-width:min(90vw,480px);display:flex}textarea[data-v-7980a238]{resize:none;box-sizing:border-box;border:1px solid #ddd;border-radius:12px;outline:none;flex:1;padding:clamp(12px,3vw,20px);font-family:inherit;font-size:clamp(14px,2.5vw,16px);line-height:1.7}textarea[data-v-7980a238]:focus{border-color:#999}textarea[data-v-7980a238]::placeholder{color:#ccc}.voice-wrapper[data-v-7980a238]{flex-shrink:0;padding-bottom:4px}button[data-v-7980a238]{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:8px;padding:12px 32px;font-size:15px}button[data-v-7980a238]:disabled{opacity:.3;cursor:default}.voice-player[data-v-57e89612]{background:#f5f5f5;border-radius:12px;align-items:center;gap:12px;max-width:320px;padding:8px 12px;display:flex}.play-btn[data-v-57e89612]{color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s;display:flex}.play-btn[data-v-57e89612]:hover{background:#333}.play-btn.playing[data-v-57e89612]{background:#4a6b4a}.voice-info[data-v-57e89612]{flex:1;min-width:0}.voice-waveform[data-v-57e89612]{align-items:center;gap:2px;height:20px;display:flex}.vw-bar[data-v-57e89612]{background:#ccc;border-radius:2px;width:3px;height:6px;transition:height .15s}.vw-bar.active[data-v-57e89612]{background:#4a6b4a;animation:.5s ease-in-out infinite alternate wave-bounce-57e89612}@keyframes wave-bounce-57e89612{0%{height:4px}to{height:16px}}.voice-meta[data-v-57e89612]{color:#999;gap:8px;margin-top:2px;font-size:11px;display:flex}.voice-duration[data-v-57e89612]{font-variant-numeric:tabular-nums}.voice-noise[data-v-57e89612]{color:#aaa}@media (width<=640px){.bubble[data-v-57e89612]{gap:12px;padding:16px 0}.bubble.user[data-v-57e89612]{margin:0 -16px;padding:16px}.content[data-v-57e89612]{font-size:14px;line-height:1.7}.voice-player[data-v-57e89612]{max-width:100%}}.bubble[data-v-57e89612]{gap:16px;padding:20px 0;display:flex}.bubble.user[data-v-57e89612]{background:#fafafa;border-bottom:1px solid #f0f0f0;margin:0 -24px;padding:20px 24px}.bubble.ai[data-v-57e89612]{border-bottom:1px solid #f5f2ed}.bubble.system[data-v-57e89612]{border-bottom:1px solid #edf0ed}.label[data-v-57e89612]{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:32px;height:32px;font-size:13px;font-weight:600;display:flex}.bubble.user .label[data-v-57e89612]{color:#fff;background:#1a1a1a}.bubble.ai .label[data-v-57e89612]{color:#5c4a3a;background:#f0ebe3}.bubble.system .label[data-v-57e89612]{color:#4a6b4a;background:#e8f0e8}.body[data-v-57e89612]{flex:1;min-width:0}.thread-badge[data-v-57e89612]{color:#7a9a7a;margin-bottom:4px;font-size:12px;font-style:normal;font-weight:600}.content[data-v-57e89612]{white-space:pre-wrap;word-break:break-word;font-size:15px;line-height:1.8}.bubble.user .content[data-v-57e89612]{color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-weight:500}.bubble.ai .content[data-v-57e89612]{color:#7a6a5a;letter-spacing:.02em;font-family:Noto Serif SC,Source Han Serif SC,STSong,SimSun,KaiTi,serif}.bubble.system .content[data-v-57e89612]{color:#6a8a6a;font-style:italic}.bubble.system .thread-badge+.content[data-v-57e89612]{font-style:normal}@media (width<=640px){.bubble[data-v-57e89612]{gap:12px;padding:16px 0}.bubble.user[data-v-57e89612]{margin:0 -16px;padding:16px}.content[data-v-57e89612]{font-size:14px;line-height:1.7}}.input-area[data-v-38d68c49]{background:#fff;border-top:1px solid #e5e5e5;align-items:flex-end;gap:12px;padding:16px clamp(8px,2.5vw,32px);display:flex;position:sticky;bottom:0}textarea[data-v-38d68c49]{resize:none;border:1px solid #ddd;border-radius:10px;outline:none;flex:1;padding:12px 16px;font-family:inherit;font-size:15px;line-height:1.6;transition:border-color .15s}textarea[data-v-38d68c49]:focus{border-color:#999}textarea[data-v-38d68c49]::placeholder{color:#ccc}textarea[data-v-38d68c49]:disabled{color:#999;background:#f7f7f7}button[data-v-38d68c49]{color:#fff;cursor:pointer;white-space:nowrap;background:#1a1a1a;border:none;border-radius:10px;padding:10px 20px;font-size:14px;transition:opacity .15s}button[data-v-38d68c49]:disabled{opacity:.3;cursor:default}@media (width<=640px){.input-area[data-v-38d68c49]{padding:12px 16px}textarea[data-v-38d68c49]{font-size:16px}}.chain-view[data-v-a9baae09]{flex-direction:column;height:100%;display:flex}.messages[data-v-a9baae09]{box-sizing:border-box;flex:1;width:100%;max-width:860px;margin:0 auto;padding:0 clamp(8px,2.5vw,32px);overflow-y:auto}.empty-chain[data-v-a9baae09]{text-align:center;color:#aaa;padding:60px 0;font-size:15px}.loading[data-v-a9baae09]{color:#bbb;padding:20px 0;font-size:14px}@media (width<=640px){.messages[data-v-a9baae09]{max-width:100%;padding:0 16px}}.login-page[data-v-d74617ad]{background:#fafafa;justify-content:center;align-items:center;height:100vh;display:flex}.login-card[data-v-d74617ad]{text-align:center;background:#fff;border-radius:16px;width:360px;max-width:90vw;padding:48px 40px;box-shadow:0 2px 12px #0000000f}h1[data-v-d74617ad]{color:#444;margin:0 0 4px;font-size:28px;font-weight:700}.subtitle[data-v-d74617ad]{color:#999;margin:0 0 32px;font-size:14px}form[data-v-d74617ad]{flex-direction:column;gap:12px;display:flex}input[data-v-d74617ad]{border:1px solid #ddd;border-radius:10px;outline:none;padding:12px 16px;font-family:inherit;font-size:15px;transition:border-color .15s}input[data-v-d74617ad]:focus{border-color:#999}button[data-v-d74617ad]{color:#fff;cursor:pointer;background:#555;border:none;border-radius:10px;margin-top:4px;padding:12px;font-size:15px;transition:background .15s}button[data-v-d74617ad]:hover{background:#444}button[data-v-d74617ad]:disabled{opacity:.4;cursor:default}.error[data-v-d74617ad]{color:#d32f2f;margin:0;font-size:13px}.toggle[data-v-d74617ad]{color:#999;margin:20px 0 0;font-size:13px}.toggle a[data-v-d74617ad]{color:#666;text-decoration:underline}.chain-list[data-v-3ae3fb9f]{flex-direction:column;height:100%;display:flex}.header[data-v-3ae3fb9f]{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:20px 16px 12px;display:flex}.logo[data-v-3ae3fb9f]{cursor:pointer;color:#1a1a1a;margin:0;font-size:20px;font-weight:700}.btn-new[data-v-3ae3fb9f]{color:#666;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:6px;padding:6px 14px;font-size:13px;transition:all .15s}.btn-new[data-v-3ae3fb9f]:hover{color:#333;background:#f5f5f5;border-color:#bbb}.user-info[data-v-3ae3fb9f]{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:8px 16px;font-size:12px;display:flex}.user-email[data-v-3ae3fb9f]{color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.btn-logout[data-v-3ae3fb9f]{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:4px;flex-shrink:0;margin-left:8px;padding:2px 8px;font-size:11px}.btn-logout[data-v-3ae3fb9f]:hover{color:#666;border-color:#ccc}.persona-bar[data-v-3ae3fb9f]{border-bottom:1px solid #e5e5e5;align-items:center;gap:8px;padding:8px 16px;display:flex}.persona-label[data-v-3ae3fb9f]{color:#bbb;letter-spacing:.05em;font-size:11px;font-weight:600}.persona-options[data-v-3ae3fb9f]{gap:4px;display:flex}.persona-btn[data-v-3ae3fb9f]{cursor:pointer;color:#aaa;background:0 0;border:1px solid #eee;border-radius:4px;padding:2px 10px;font-size:12px;transition:all .15s}.persona-btn[data-v-3ae3fb9f]:hover{color:#666;border-color:#ccc}.persona-btn.active[data-v-3ae3fb9f]{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.chains[data-v-3ae3fb9f]{flex:1;padding:8px;overflow-y:auto}.empty[data-v-3ae3fb9f]{color:#999;padding:24px 16px;font-size:14px;line-height:1.7}.chain-item[data-v-3ae3fb9f]{cursor:pointer;border-radius:8px;padding:12px;transition:background .15s}.chain-item[data-v-3ae3fb9f]:hover{background:#f0f0f0}.chain-item.active[data-v-3ae3fb9f]{background:#e8e8e8}.chain-title[data-v-3ae3fb9f]{color:#333;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:14px;overflow:hidden}.chain-time[data-v-3ae3fb9f]{color:#999;font-size:12px}.app-layout[data-v-e929a07e]{height:100dvh;overflow:hidden}.sidebar[data-v-e929a07e]{z-index:20;background:#fafafa;border-right:1px solid #e5e5e5;flex-direction:column;width:220px;height:100%;display:flex;position:fixed;top:0;left:0}@media (width>=641px){.sidebar[data-v-e929a07e]{transition:transform .2s}.sidebar[data-v-e929a07e]:not(.open){transform:translate(-220px)}}@media (width<=640px){.sidebar[data-v-e929a07e]{transition:left .2s;left:-220px}.sidebar.open[data-v-e929a07e]{left:0}.overlay[data-v-e929a07e]{z-index:15;background:#0000004d;position:fixed;inset:0}}.toggle-btn[data-v-e929a07e]{z-index:21;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:16px;height:40px;padding:0;transition:left .2s;display:flex;position:fixed;top:50%;left:220px;transform:translateY(-50%)}.toggle-btn[data-v-e929a07e]:after{content:"";background:#ddd;border-radius:1px;width:2px;height:24px;transition:background .15s;display:block}.toggle-btn[data-v-e929a07e]:hover:after{background:#999}.toggle-btn.collapsed[data-v-e929a07e]{left:0}.main[data-v-e929a07e]{height:100%;margin-left:0;transition:margin-left .2s;overflow-y:auto}.main.sidebar-open[data-v-e929a07e]{margin-left:220px}@media (width<=640px){.main.sidebar-open[data-v-e929a07e]{margin-left:0}}*,:before,:after{box-sizing:border-box}html,body{color:#333;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font-family:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}::-webkit-scrollbar-track{background:0 0}
