.message-list[data-v-4ba9218a]{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px;min-height:0}.empty-state[data-v-4ba9218a]{text-align:center;padding:60px 20px;color:#667}.empty-icon[data-v-4ba9218a]{font-size:48px;margin-bottom:12px}.empty-text[data-v-4ba9218a]{font-size:18px;margin-bottom:8px;color:#889}.empty-hint[data-v-4ba9218a]{font-size:13px;color:#556}.message[data-v-4ba9218a]{display:flex;gap:10px;max-width:85%;animation:fadeIn-4ba9218a .3s ease}@keyframes fadeIn-4ba9218a{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user[data-v-4ba9218a]{align-self:flex-end;flex-direction:row-reverse}.message-assistant[data-v-4ba9218a]{align-self:flex-start}@media(max-width:768px){.message[data-v-4ba9218a]{max-width:92%;gap:8px}.message-avatar[data-v-4ba9218a]{width:30px;height:30px;font-size:16px}.message-content[data-v-4ba9218a]{font-size:15px;padding:8px 12px}.empty-state[data-v-4ba9218a]{padding:30px 16px}.empty-icon[data-v-4ba9218a]{font-size:36px}.empty-text[data-v-4ba9218a]{font-size:15px}}.message-avatar[data-v-4ba9218a]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;background:#ffffff0d;overflow:hidden}.avatar-img[data-v-4ba9218a]{width:100%;height:100%;object-fit:cover}.avatar-text[data-v-4ba9218a]{line-height:1}.message-body[data-v-4ba9218a]{display:flex;flex-direction:column;gap:4px}.message-content[data-v-4ba9218a]{padding:10px 14px;border-radius:14px;line-height:1.6;font-size:14px;white-space:pre-wrap;word-break:break-word}.message-user .message-content[data-v-4ba9218a]{background:linear-gradient(135deg,#48f,#36c);color:#fff;border-bottom-right-radius:4px}.message-assistant .message-content[data-v-4ba9218a]{background:#ffffff14;color:#dde;border:1px solid rgba(255,255,255,.08);border-bottom-left-radius:4px}.kb-refs[data-v-4ba9218a]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0 4px}.kb-ref-label[data-v-4ba9218a]{font-size:11px;color:#889}.kb-ref-tag[data-v-4ba9218a]{font-size:11px;padding:2px 8px;border-radius:10px;background:#48f3;color:#8bf;cursor:help}.message-time[data-v-4ba9218a]{font-size:10px;color:#556;padding:0 4px}.typing-indicator[data-v-4ba9218a]{display:flex;gap:4px;padding:14px 18px;background:#ffffff14;border-radius:14px 14px 14px 4px;border:1px solid rgba(255,255,255,.08)}.typing-indicator span[data-v-4ba9218a]{width:8px;height:8px;border-radius:50%;background:#667;animation:typing-4ba9218a 1.4s infinite}.typing-indicator span[data-v-4ba9218a]:nth-child(2){animation-delay:.2s}.typing-indicator span[data-v-4ba9218a]:nth-child(3){animation-delay:.4s}@keyframes typing-4ba9218a{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chat-input[data-v-7298c7e3]{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.06);background:#0003;position:relative}.mode-btn[data-v-7298c7e3]{width:38px;height:38px;border:none;border-radius:50%;background:#ffffff0d;color:#889;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;-webkit-user-select:none;user-select:none}.mode-btn[data-v-7298c7e3]:hover{background:#4488ff26;color:#48f}.mode-btn[data-v-7298c7e3]:active{transform:scale(.92)}.input-field[data-v-7298c7e3]{flex:1;padding:10px 16px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#ffffff0f;color:#dde;font-size:14px;outline:none;transition:border-color .3s}.input-field[data-v-7298c7e3]::placeholder{color:#556}.input-field[data-v-7298c7e3]:focus{border-color:#48f}.send-btn[data-v-7298c7e3]{width:38px;height:38px;border:none;border-radius:50%;background:linear-gradient(135deg,#48f,#36c);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,opacity .2s;flex-shrink:0}.send-btn[data-v-7298c7e3]:hover:not(:disabled){transform:scale(1.08)}.send-btn[data-v-7298c7e3]:active:not(:disabled){transform:scale(.95)}.send-btn[data-v-7298c7e3]:disabled{opacity:.3;cursor:not-allowed}.voice-talk-btn[data-v-7298c7e3]{flex:1;height:44px;border:1.5px solid rgba(68,136,255,.25);border-radius:22px;background:linear-gradient(135deg,#4488ff0f,#4488ff05);color:#9ab;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;letter-spacing:.5px;transition:all .25s;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap}.voice-talk-btn[data-v-7298c7e3]:hover{background:linear-gradient(135deg,#4488ff1a,#4488ff0a);color:#abc}.voice-talk-btn[data-v-7298c7e3]:active{transform:scale(.97)}.voice-talk-btn.recording[data-v-7298c7e3]{background:linear-gradient(135deg,#ff44441a,#ff44440a);border-color:#ff444459;color:#dde;box-shadow:0 0 #f443;animation:voice-pulse-7298c7e3 1.5s infinite}@keyframes voice-pulse-7298c7e3{0%,to{box-shadow:0 0 #ff44444d}50%{box-shadow:0 0 0 8px #f440}}.recording-dot[data-v-7298c7e3]{width:8px;height:8px;border-radius:50%;background:#f44;flex-shrink:0;animation:dot-blink-7298c7e3 1s infinite}@keyframes dot-blink-7298c7e3{0%,to{opacity:1}50%{opacity:.3}}.mic-error[data-v-7298c7e3]{position:absolute;bottom:62px;left:50%;transform:translate(-50%);background:#ff4444f2;color:#fff;padding:8px 16px;border-radius:10px;font-size:12px;white-space:nowrap;z-index:10;box-shadow:0 4px 16px #0006}.mic-error[data-v-7298c7e3]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#ff4444f2}.voice-float-panel[data-v-7298c7e3]{position:absolute;bottom:70px;left:8px;right:8px;background:#0f0f23f5;border:1px solid rgba(255,68,68,.3);border-radius:16px;padding:20px 16px;z-index:20;display:flex;flex-direction:column;align-items:center;gap:12px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 32px #0009}.voice-float-wave[data-v-7298c7e3]{display:flex;align-items:center;gap:4px;height:32px}.wave-bar[data-v-7298c7e3]{width:3px;height:12px;background:#f44;border-radius:2px;animation:wave-bounce-7298c7e3 .6s ease-in-out infinite alternate}@keyframes wave-bounce-7298c7e3{0%{height:6px;opacity:.4}to{height:28px;opacity:1}}.voice-float-text[data-v-7298c7e3]{font-size:18px;color:#fff;text-align:center;line-height:1.4;min-height:28px;word-break:break-all}.voice-float-hint[data-v-7298c7e3]{font-size:11px;color:#666;letter-spacing:.5px}.voice-float-enter-active[data-v-7298c7e3]{transition:all .25s ease-out}.voice-float-leave-active[data-v-7298c7e3]{transition:all .2s ease-in}.voice-float-enter-from[data-v-7298c7e3]{opacity:0;transform:translateY(10px) scale(.96)}.voice-float-leave-to[data-v-7298c7e3]{opacity:0;transform:translateY(5px) scale(.98)}.fade-enter-active[data-v-7298c7e3],.fade-leave-active[data-v-7298c7e3]{transition:opacity .3s}.fade-enter-from[data-v-7298c7e3],.fade-leave-to[data-v-7298c7e3]{opacity:0}@media(max-width:768px){.chat-input[data-v-7298c7e3]{padding:10px 12px;gap:8px}.input-field[data-v-7298c7e3]{padding:10px 16px;font-size:16px}.mode-btn[data-v-7298c7e3],.send-btn[data-v-7298c7e3]{width:42px;height:42px}.voice-talk-btn[data-v-7298c7e3]{height:48px;font-size:15px;border-radius:24px}.mic-error[data-v-7298c7e3]{font-size:11px;white-space:normal;max-width:240px;text-align:center}}.chat-panel[data-v-ad76ee5e]{display:flex;flex-direction:column;height:100%;min-height:0;background:#0a0a1af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.chat-header[data-v-ad76ee5e]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06);background:#0003}.chat-header h3[data-v-ad76ee5e]{font-size:16px;font-weight:600;color:#dde;margin:0}.conv-id[data-v-ad76ee5e]{font-size:11px;color:#556;font-family:monospace}.audio-indicator[data-v-ad76ee5e]{padding:6px 16px;background:#4488ff1f;color:#8bf;font-size:12px;text-align:center;border-top:1px solid rgba(68,136,255,.1)}@media(max-width:768px){.chat-header[data-v-ad76ee5e]{padding:10px 12px}.chat-header h3[data-v-ad76ee5e]{font-size:14px}.audio-indicator[data-v-ad76ee5e]{font-size:11px;padding:5px 12px}}.app-layout[data-v-655f8df7]{display:flex;width:100vw;height:100vh;background:#0a0a1a;color:#dde;overflow:hidden}.scene-side[data-v-655f8df7]{flex:1;position:relative;min-width:0}.scene-container[data-v-655f8df7]{width:100%;height:100%}.chat-side[data-v-655f8df7]{width:380px;min-width:320px;border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column}@media(max-width:768px)and (orientation:portrait){.app-layout[data-v-655f8df7]{flex-direction:column;height:100vh;height:100dvh}.scene-side[data-v-655f8df7]{flex:none;height:55vh;min-height:240px}.chat-side[data-v-655f8df7]{width:100%;min-width:0;flex:1;min-height:0;border-left:none;border-top:1px solid rgba(255,255,255,.06);overflow:hidden}}@media(max-width:768px)and (orientation:landscape){.chat-side[data-v-655f8df7]{width:38vw;min-width:260px}.scene-side[data-v-655f8df7]{flex:1}}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{width:100%;height:100%;overflow:hidden}body{font-family:Microsoft YaHei,PingFang SC,-apple-system,sans-serif;background:#0a0a1a;color:#dde}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}
