*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100vw;min-height:100vh}.login-page[data-v-d66773ab]{position:relative;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0a0a1a}.bg-layer[data-v-d66773ab]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.grid-lines[data-v-d66773ab]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(56,189,248,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.03) 1px,transparent 1px);background-size:60px 60px;animation:gridMove-d66773ab 20s linear infinite}@keyframes gridMove-d66773ab{0%{transform:translate(0)}to{transform:translate(60px,60px)}}.particles[data-v-d66773ab]{position:absolute;top:0;right:0;bottom:0;left:0}.particle[data-v-d66773ab]{position:absolute;border-radius:50%;background:#38bdf880;animation:float-d66773ab linear infinite;pointer-events:none}@keyframes float-d66773ab{0%,to{transform:translateY(0) translate(0);opacity:0}10%{opacity:1}90%{opacity:1}50%{transform:translateY(-120px) translate(40px)}}.glow[data-v-d66773ab]{position:absolute;border-radius:50%;filter:blur(120px);animation:glowPulse-d66773ab 8s ease-in-out infinite}.glow-1[data-v-d66773ab]{width:500px;height:500px;background:radial-gradient(circle,rgba(15,52,96,.5),transparent);top:-10%;right:-5%;animation-delay:0s}.glow-2[data-v-d66773ab]{width:400px;height:400px;background:radial-gradient(circle,rgba(56,189,248,.12),transparent);bottom:-10%;left:-5%;animation-delay:-3s}.glow-3[data-v-d66773ab]{width:300px;height:300px;background:radial-gradient(circle,rgba(139,92,246,.1),transparent);top:40%;left:50%;transform:translate(-50%);animation-delay:-5s}@keyframes glowPulse-d66773ab{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.login-container[data-v-d66773ab]{position:relative;z-index:1;width:100%;max-width:440px;padding:0 24px}.login-card[data-v-d66773ab]{background:#0f172aa6;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(56,189,248,.12);border-radius:20px;padding:48px 40px 36px;box-shadow:0 0 0 1px #38bdf80d,0 25px 60px #00000080,inset 0 1px #ffffff0d;animation:cardAppear-d66773ab .8s cubic-bezier(.16,1,.3,1)}@keyframes cardAppear-d66773ab{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.card-header[data-v-d66773ab]{text-align:center;margin-bottom:36px}.logo-mark[data-v-d66773ab]{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;color:#38bdf8;margin-bottom:16px;animation:logoSpin-d66773ab 20s linear infinite}.logo-mark svg[data-v-d66773ab]{width:48px;height:48px}@keyframes logoSpin-d66773ab{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.slogan[data-v-d66773ab]{font-size:28px;font-weight:700;color:#f0f4f8;letter-spacing:4px;margin:0 0 8px;background:linear-gradient(135deg,#f0f4f8,#38bdf8,#a78bfa);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift-d66773ab 6s ease-in-out infinite}@keyframes gradientShift-d66773ab{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.sub-text[data-v-d66773ab]{font-size:13px;color:#94a3b8b3;letter-spacing:3px;text-transform:uppercase;margin:0}.card-body[data-v-d66773ab]{display:flex;flex-direction:column;gap:20px}.input-group label[data-v-d66773ab]{display:block;font-size:13px;font-weight:500;color:#94a3b8;margin-bottom:8px;letter-spacing:.5px}.input-wrapper[data-v-d66773ab]{position:relative;display:flex;align-items:center;background:#0f172a99;border:1px solid rgba(56,189,248,.1);border-radius:12px;transition:all .3s ease;overflow:hidden}.input-wrapper[data-v-d66773ab]:focus-within{border-color:#38bdf866;box-shadow:0 0 0 3px #38bdf814}.input-icon[data-v-d66773ab]{position:absolute;left:14px;width:18px;height:18px;color:#475569;pointer-events:none;flex-shrink:0}.input-wrapper input[data-v-d66773ab]{flex:1;height:48px;padding:0 16px 0 42px;background:transparent;border:none;outline:none;color:#e2e8f0;font-size:15px;letter-spacing:.5px}.input-wrapper input[data-v-d66773ab]::placeholder{color:#475569}.code-wrapper[data-v-d66773ab]{gap:0}.code-wrapper input[data-v-d66773ab]{min-width:0}.remember-row[data-v-d66773ab]{display:flex;align-items:center;margin-top:-4px}.remember-checkbox[data-v-d66773ab]{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;gap:8px}.remember-checkbox input[data-v-d66773ab]{display:none}.checkmark[data-v-d66773ab]{width:16px;height:16px;border:1px solid rgba(56,189,248,.3);border-radius:4px;background:#0f172a99;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.checkmark[data-v-d66773ab]:after{content:"";width:8px;height:8px;background:#38bdf8;border-radius:2px;opacity:0;transform:scale(0);transition:all .2s ease}.remember-checkbox input:checked+.checkmark[data-v-d66773ab]{border-color:#38bdf899;background:#38bdf81a}.remember-checkbox input:checked+.checkmark[data-v-d66773ab]:after{opacity:1;transform:scale(1)}.remember-text[data-v-d66773ab]{font-size:13px;color:#94a3b8;transition:color .2s ease}.remember-checkbox:hover .remember-text[data-v-d66773ab]{color:#e2e8f0}.send-btn[data-v-d66773ab]{flex-shrink:0;height:36px;padding:0 14px;margin-right:6px;background:#38bdf81f;border:1px solid rgba(56,189,248,.25);border-radius:8px;color:#38bdf8;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .25s ease}.send-btn[data-v-d66773ab]:hover:not(:disabled){background:#38bdf833;border-color:#38bdf866}.send-btn[data-v-d66773ab]:disabled{opacity:.4;cursor:not-allowed}.login-btn[data-v-d66773ab]{width:100%;height:50px;margin-top:4px;background:linear-gradient(135deg,#0f3460,#1e5aaf,#38bdf8);background-size:200% 200%;border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;letter-spacing:6px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.login-btn[data-v-d66773ab]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s ease}.login-btn[data-v-d66773ab]:hover:not(:disabled):before{transform:translate(100%)}.login-btn[data-v-d66773ab]:hover:not(:disabled){background-position:100% 50%;box-shadow:0 8px 30px #38bdf840;transform:translateY(-1px)}.login-btn[data-v-d66773ab]:active:not(:disabled){transform:translateY(0)}.login-btn[data-v-d66773ab]:disabled{opacity:.5;cursor:not-allowed}.btn-loading[data-v-d66773ab]{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-d66773ab .7s linear infinite}@keyframes spin-d66773ab{to{transform:rotate(360deg)}}.error-msg[data-v-d66773ab]{text-align:center;color:#f87171;font-size:13px;margin:0;animation:shake-d66773ab .4s ease}.success-msg[data-v-d66773ab]{text-align:center;color:#34d399;font-size:13px;margin:0}@keyframes shake-d66773ab{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.card-footer[data-v-d66773ab]{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid rgba(56,189,248,.06)}.card-footer p[data-v-d66773ab]{font-size:12px;color:#475569;margin:0}@media (max-width: 480px){.login-card[data-v-d66773ab]{padding:36px 24px 28px}.slogan[data-v-d66773ab]{font-size:22px;letter-spacing:3px}.login-container[data-v-d66773ab]{padding:0 16px}}.main-layout[data-v-4dbb2d6f]{display:flex;flex-direction:column;min-height:100vh;background:#0a0a1a;color:#e2e8f0}.layout-header[data-v-4dbb2d6f]{position:sticky;top:0;z-index:100;background:#0a0a1ad9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(56,189,248,.08)}.header-inner[data-v-4dbb2d6f]{max-width:1400px;margin:0 auto;padding:0 32px;height:64px;display:flex;align-items:center;justify-content:space-between}.header-left[data-v-4dbb2d6f]{display:flex;align-items:center}.logo-group[data-v-4dbb2d6f]{display:flex;align-items:center;gap:12px;cursor:pointer;transition:opacity .2s}.logo-group[data-v-4dbb2d6f]:hover{opacity:.85}.logo-icon[data-v-4dbb2d6f]{width:32px;height:32px;color:#38bdf8}.logo-slogan[data-v-4dbb2d6f]{font-size:18px;font-weight:700;letter-spacing:2px;background:linear-gradient(135deg,#f0f4f8,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right[data-v-4dbb2d6f]{display:flex;align-items:center;gap:20px}.user-info[data-v-4dbb2d6f]{display:flex;align-items:center;gap:10px}.user-avatar[data-v-4dbb2d6f]{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0}.user-avatar svg[data-v-4dbb2d6f]{width:100%;height:100%}.user-email[data-v-4dbb2d6f]{font-size:14px;color:#94a3b8;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn[data-v-4dbb2d6f]{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;background:#ef444414;border:1px solid rgba(239,68,68,.15);border-radius:8px;color:#f87171;font-size:13px;cursor:pointer;transition:all .25s ease}.logout-btn svg[data-v-4dbb2d6f]{width:16px;height:16px}.logout-btn[data-v-4dbb2d6f]:hover{background:#ef444426;border-color:#ef44444d}.layout-content[data-v-4dbb2d6f]{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:32px}.layout-footer[data-v-4dbb2d6f]{border-top:1px solid rgba(56,189,248,.06);padding:20px 32px;text-align:center}.layout-footer p[data-v-4dbb2d6f]{margin:0;font-size:13px;color:#475569;letter-spacing:.5px}@media (max-width: 768px){.header-inner[data-v-4dbb2d6f]{padding:0 16px}.logo-slogan[data-v-4dbb2d6f]{font-size:15px;letter-spacing:1px}.user-email[data-v-4dbb2d6f],.logout-btn span[data-v-4dbb2d6f]{display:none}.logout-btn[data-v-4dbb2d6f]{padding:0 10px}.layout-content[data-v-4dbb2d6f]{padding:20px 16px}}.apps-page[data-v-cb0629c3]{animation:fadeIn-cb0629c3 .5s ease}@keyframes fadeIn-cb0629c3{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.loading-state[data-v-cb0629c3],.empty-state[data-v-cb0629c3]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;color:#64748b}.loading-spinner[data-v-cb0629c3]{width:36px;height:36px;border:3px solid rgba(56,189,248,.15);border-top-color:#38bdf8;border-radius:50%;animation:spin-cb0629c3 .8s linear infinite;margin-bottom:16px}@keyframes spin-cb0629c3{to{transform:rotate(360deg)}}.empty-state svg[data-v-cb0629c3]{width:48px;height:48px;margin-bottom:16px;opacity:.5}.apps-grid[data-v-cb0629c3]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}.app-card[data-v-cb0629c3]{display:flex;flex-direction:column;background:#0f172a80;border:1px solid rgba(56,189,248,.06);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .3s ease;aspect-ratio:6 / 8}.app-card[data-v-cb0629c3]:hover{background:#0f172ab3;border-color:#38bdf833;box-shadow:0 8px 32px #0000004d;transform:translateY(-4px)}.app-image[data-v-cb0629c3]{width:100%;flex:1;overflow:hidden;background:#38bdf80f;display:flex;align-items:center;justify-content:center}.app-image img[data-v-cb0629c3]{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.app-card:hover .app-image img[data-v-cb0629c3]{transform:scale(1.05)}.app-image-placeholder[data-v-cb0629c3]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#38bdf8;opacity:.5}.app-image-placeholder svg[data-v-cb0629c3]{width:48px;height:48px}.app-info[data-v-cb0629c3]{padding:16px 20px 20px}.app-name[data-v-cb0629c3]{font-size:16px;font-weight:600;color:#e2e8f0;margin:0 0 8px;letter-spacing:.5px}.app-desc[data-v-cb0629c3]{font-size:13px;color:#64748b;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 768px){.apps-grid[data-v-cb0629c3]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.app-info[data-v-cb0629c3]{padding:12px 16px 16px}.app-name[data-v-cb0629c3]{font-size:15px}}@media (max-width: 480px){.apps-grid[data-v-cb0629c3]{grid-template-columns:1fr}}.conversation-list[data-v-034cb6fc]{height:100%;display:flex;flex-direction:column;background:#f7f7f8;border-right:1px solid #e5e5e5}.header[data-v-034cb6fc]{padding:20px;border-bottom:1px solid #e5e5e5;background:#fff}.header h2[data-v-034cb6fc]{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.new-chat-btn[data-v-034cb6fc]{width:100%;padding:10px;background:#4caf50;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .3s;display:flex;align-items:center;justify-content:center;gap:6px}.new-chat-btn[data-v-034cb6fc]:hover{background:#45a049}.new-chat-btn[data-v-034cb6fc]:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.new-chat-btn span[data-v-034cb6fc]{font-size:18px;font-weight:700}.loading[data-v-034cb6fc],.error[data-v-034cb6fc]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;color:#666}.loading-spinner[data-v-034cb6fc]{width:30px;height:30px;border:3px solid #f3f3f3;border-top:3px solid #4CAF50;border-radius:50%;animation:spin-034cb6fc 1s linear infinite}@keyframes spin-034cb6fc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error button[data-v-034cb6fc]{margin-top:10px;padding:8px 16px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer}.list[data-v-034cb6fc]{flex:1;overflow-y:auto;padding:8px 0}.conversation-item[data-v-034cb6fc]{padding:12px 20px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .2s;background:#fff;margin-bottom:1px}.conversation-item[data-v-034cb6fc]:hover{background:#f0f0f0}.conversation-item.active[data-v-034cb6fc]{background:#e8f5e9}.conversation-icon[data-v-034cb6fc]{font-size:24px;flex-shrink:0}.conversation-info[data-v-034cb6fc]{flex:1;min-width:0}.conversation-title[data-v-034cb6fc]{font-size:14px;color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}.conversation-time[data-v-034cb6fc]{font-size:12px;color:#999}.empty[data-v-034cb6fc]{padding:40px 20px;text-align:center;color:#999}.empty p[data-v-034cb6fc]{margin:8px 0}.empty .hint[data-v-034cb6fc]{font-size:12px;color:#bbb}.chat-area[data-v-8f337185]{height:100%;display:flex;flex-direction:column;background:#fff}.messages-container[data-v-8f337185]{flex:1;overflow-y:auto;padding:20px;scroll-behavior:smooth}.loading-history[data-v-8f337185]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#666}.loading-history .loading-spinner[data-v-8f337185]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #4CAF50;border-radius:50%;animation:spin-8f337185 1s linear infinite;margin-bottom:16px}.loading-history p[data-v-8f337185]{font-size:16px;color:#999}@keyframes spin-8f337185{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.welcome-message[data-v-8f337185]{text-align:center;padding:60px 20px;color:#666}.welcome-message h2[data-v-8f337185]{font-size:28px;margin-bottom:12px;color:#333}.welcome-message p[data-v-8f337185]{font-size:16px;color:#999}.message[data-v-8f337185]{display:flex;gap:12px;margin-bottom:20px;animation:fadeIn-8f337185 .3s ease}@keyframes fadeIn-8f337185{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user[data-v-8f337185]{flex-direction:row-reverse}.message-avatar[data-v-8f337185]{font-size:32px;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.message-content[data-v-8f337185]{max-width:85%;padding:12px 16px;border-radius:12px;background:#f0f0f0;color:#333;line-height:1.6}.message-user .message-content[data-v-8f337185]{background:#4caf50;color:#fff}.message-text[data-v-8f337185]{word-wrap:break-word;overflow-wrap:break-word}.message-text[data-v-8f337185] ul,.message-text[data-v-8f337185] ol{padding-left:24px;margin:8px 0}.message-text[data-v-8f337185] ul:first-child,.message-text[data-v-8f337185] ol:first-child{margin-top:0}.message-text[data-v-8f337185] ul:last-child,.message-text[data-v-8f337185] ol:last-child{margin-bottom:0}.message-text[data-v-8f337185] li{margin:4px 0;line-height:1.6}.message-text[data-v-8f337185] p:not(:has(img)){display:block;margin:8px 0;line-height:1.6}.message-text[data-v-8f337185] p:not(:has(img)):first-child{margin-top:0}.message-text[data-v-8f337185] p:not(:has(img)):last-child{margin-bottom:0}.message-text[data-v-8f337185] p+p:has(img:only-child){margin-top:-4px}.message-text[data-v-8f337185] img{width:200px;height:160px;border-radius:8px;margin:4px;display:inline-block;object-fit:cover;cursor:pointer;transition:transform .2s;vertical-align:top}.message-text[data-v-8f337185] img:hover{transform:scale(1.02)}.message-text[data-v-8f337185] p:has(img){display:inline-block;line-height:0;margin:0;vertical-align:top}.message-text[data-v-8f337185] p:has(img) img{width:200px;height:160px}.message-text[data-v-8f337185] pre{background:#282c34;color:#abb2bf;padding:12px;border-radius:6px;overflow-x:auto;margin:8px 0}.message-text[data-v-8f337185] code{background:#0000001a;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace}.loading-indicator[data-v-8f337185]{display:flex;gap:4px;margin-top:8px}.loading-indicator .dot[data-v-8f337185]{width:8px;height:8px;background:currentColor;border-radius:50%;animation:bounce-8f337185 1.4s infinite ease-in-out both}.loading-indicator .dot[data-v-8f337185]:nth-child(1){animation-delay:-.32s}.loading-indicator .dot[data-v-8f337185]:nth-child(2){animation-delay:-.16s}@keyframes bounce-8f337185{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.role-selector[data-v-8f337185]{border-top:1px solid #e5e5e5;padding:12px 20px;background:#fff;overflow-x:auto;overflow-y:hidden}.role-list[data-v-8f337185]{display:flex;gap:12px;align-items:center;min-height:60px}.role-item[data-v-8f337185]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .3s;background:#f5f5f5;min-width:80px}.role-item[data-v-8f337185]:hover,.role-item.selected[data-v-8f337185]{background:#e3f2fd;border-color:#2196f3}.role-icon[data-v-8f337185]{width:32px;height:32px;border-radius:50%;object-fit:cover}.role-icon-placeholder[data-v-8f337185]{width:32px;height:32px;font-size:28px;display:flex;align-items:center;justify-content:center}.role-name[data-v-8f337185]{font-size:12px;color:#333;font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.input-area[data-v-8f337185]{border-top:1px solid #e5e5e5;padding:16px 20px;display:flex;gap:12px;align-items:flex-end;background:#fafafa}.input-wrapper[data-v-8f337185]{flex:1;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #ddd;border-radius:8px;background:#fff;transition:border-color .3s}.input-wrapper[data-v-8f337185]:focus-within{border-color:#4caf50}.role-tag-inline[data-v-8f337185]{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:#e3f2fd;border:1px solid #2196F3;border-radius:12px;font-size:12px;color:#1976d2;white-space:nowrap;flex-shrink:0}.role-tag-inline .tag-icon[data-v-8f337185],.role-tag-inline .tag-icon-placeholder[data-v-8f337185]{width:14px;height:14px;border-radius:50%;object-fit:cover}.role-tag-inline .tag-icon-placeholder[data-v-8f337185]{font-size:12px;display:flex;align-items:center;justify-content:center}.role-tag-inline .tag-name[data-v-8f337185]{font-weight:500;max-width:60px;overflow:hidden;text-overflow:ellipsis}.role-tag-inline .tag-close[data-v-8f337185]{width:14px;height:14px;padding:0;border:none;background:transparent;color:#1976d2;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;transition:color .2s;flex-shrink:0}.role-tag-inline .tag-close[data-v-8f337185]:hover{color:#d32f2f}.input-area textarea[data-v-8f337185]{flex:1;padding:0;border:none;font-size:14px;resize:none;min-height:20px;max-height:100px;font-family:inherit;line-height:1.5;outline:none}.input-area textarea[data-v-8f337185]:focus{outline:none}.input-area textarea[data-v-8f337185]:disabled{background:#f5f5f5;cursor:not-allowed}.send-button[data-v-8f337185]{padding:12px 24px;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .3s;white-space:nowrap}.send-button[data-v-8f337185]:hover:not(:disabled){background:#45a049}.send-button[data-v-8f337185]:disabled{background:#ccc;cursor:not-allowed}.image-preview-overlay[data-v-8f337185]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-8f337185 .2s ease}.image-preview-container[data-v-8f337185]{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.preview-toolbar[data-v-8f337185]{position:absolute;top:-52px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;background:#0009;border-radius:24px;padding:6px 14px;white-space:nowrap}.toolbar-btn[data-v-8f337185]{width:32px;height:32px;background:#ffffff26;border:none;border-radius:50%;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.toolbar-btn[data-v-8f337185]:hover{background:#ffffff59}.preview-close-btn[data-v-8f337185]{background:#ff505066}.preview-close-btn[data-v-8f337185]:hover{background:#ff5050b3}.zoom-label[data-v-8f337185]{color:#fffc;font-size:12px;min-width:40px;text-align:center}.preview-image-wrap[data-v-8f337185]{overflow:hidden;display:flex;align-items:center;justify-content:center;max-width:90vw;max-height:80vh}.preview-image[data-v-8f337185]{max-width:90vw;max-height:80vh;object-fit:contain;border-radius:8px;box-shadow:0 4px 20px #00000080;transition:transform .2s ease;transform-origin:center center}.preview-nav[data-v-8f337185]{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;background:#fff3;border:none;border-radius:50%;color:#fff;font-size:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s}.preview-nav[data-v-8f337185]:hover{background:#ffffff4d}.preview-prev[data-v-8f337185]{left:-70px}.preview-next[data-v-8f337185]{right:-70px}.preview-info[data-v-8f337185]{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);color:#fff;font-size:14px;background:#00000080;padding:6px 12px;border-radius:4px}@media (max-width: 768px){.preview-nav[data-v-8f337185]{width:40px;height:40px;font-size:28px}.preview-prev[data-v-8f337185]{left:10px}.preview-next[data-v-8f337185]{right:10px}.preview-close[data-v-8f337185]{top:10px;right:10px}.preview-info[data-v-8f337185]{bottom:10px}}.chat-view[data-v-be2958b7]{display:flex;height:100vh;width:100vw;overflow:hidden}.sidebar[data-v-be2958b7]{width:280px;flex-shrink:0;border-right:1px solid #e5e5e5;background:#f7f7f8}.main-content[data-v-be2958b7]{flex:1;overflow:hidden;background:#fff}@media (max-width: 768px){.sidebar[data-v-be2958b7]{width:100%;position:absolute;left:0;top:0;bottom:0;z-index:100;transform:translate(-100%);transition:transform .3s}.sidebar.show[data-v-be2958b7]{transform:translate(0)}}.voice-modal-overlay[data-v-1b637c80]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn-1b637c80 .2s ease}@keyframes fadeIn-1b637c80{0%{opacity:0}to{opacity:1}}.voice-modal[data-v-1b637c80]{position:relative;width:92%;max-width:420px;max-height:85vh;background:linear-gradient(160deg,#0d1527,#0f1e35 60%,#091428);border:1px solid rgba(56,189,248,.12);border-radius:24px;padding:20px 20px 24px;display:flex;flex-direction:column;gap:14px;animation:slideUp-1b637c80 .28s ease;box-shadow:0 20px 60px #0009,0 0 0 1px #38bdf80f}@keyframes slideUp-1b637c80{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.close-btn[data-v-1b637c80]{position:absolute;top:14px;right:14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#64748b;cursor:pointer;transition:all .2s;flex-shrink:0}.close-btn[data-v-1b637c80]:hover{background:#ffffff1a;color:#cbd5e1}.close-btn svg[data-v-1b637c80]{width:14px;height:14px}.modal-top[data-v-1b637c80]{display:flex;align-items:center;gap:14px;padding-top:4px}.app-avatar[data-v-1b637c80]{width:60px;height:60px;flex-shrink:0;border-radius:16px;overflow:hidden;background:#38bdf814;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(56,189,248,.2);transition:all .3s ease}.app-avatar.speaking[data-v-1b637c80]{animation:avatarPulse-1b637c80 1.5s ease-in-out infinite;border-color:#38bdf880;box-shadow:0 0 16px #38bdf840}@keyframes avatarPulse-1b637c80{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.app-avatar img[data-v-1b637c80]{width:100%;height:100%;object-fit:cover}.app-avatar svg[data-v-1b637c80]{width:28px;height:28px;color:#38bdf8}.modal-top-info[data-v-1b637c80]{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.app-name[data-v-1b637c80]{font-size:15px;font-weight:600;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-row[data-v-1b637c80]{display:flex;align-items:center;gap:8px;min-height:22px}.status-hint[data-v-1b637c80]{font-size:12px;color:#475569}.status-text[data-v-1b637c80]{font-size:12px;color:#64748b}.status-text.warning[data-v-1b637c80]{color:#fbbf24}.status-text.error[data-v-1b637c80]{color:#f87171}.duration[data-v-1b637c80]{font-size:15px;font-weight:700;color:#38bdf8;font-variant-numeric:tabular-nums;letter-spacing:1.5px;font-family:Courier New,monospace}.status-badge[data-v-1b637c80]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:500}.status-badge.idle[data-v-1b637c80]{background:#38bdf81a;color:#38bdf8;border:1px solid rgba(56,189,248,.2)}.status-badge.ai[data-v-1b637c80]{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.2);animation:badgePulse-1b637c80 1.2s ease-in-out infinite}.status-badge.user[data-v-1b637c80]{background:#fbbf241f;color:#fbbf24;border:1px solid rgba(251,191,36,.2);animation:badgePulse-1b637c80 1.2s ease-in-out infinite}@keyframes badgePulse-1b637c80{0%,to{opacity:1}50%{opacity:.65}}.audio-visualizer[data-v-1b637c80]{display:flex;align-items:center;gap:3px;height:20px;margin-top:2px}.audio-visualizer .bar[data-v-1b637c80]{width:3px;height:5px;background:#38bdf833;border-radius:2px;flex-shrink:0}.audio-visualizer .bar.active[data-v-1b637c80]{background:#38bdf8;animation:soundwave-1b637c80 .5s ease-in-out infinite alternate}@keyframes soundwave-1b637c80{0%{height:4px}to{height:18px}}.divider[data-v-1b637c80]{height:1px;background:#38bdf814}.messages-area[data-v-1b637c80]{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;max-height:280px;min-height:80px;padding:12px;background:#0003;border:1px solid rgba(56,189,248,.07);border-radius:14px;scroll-behavior:smooth}.messages-area[data-v-1b637c80]::-webkit-scrollbar{width:4px}.messages-area[data-v-1b637c80]::-webkit-scrollbar-track{background:transparent}.messages-area[data-v-1b637c80]::-webkit-scrollbar-thumb{background:#38bdf826;border-radius:4px}.msg-item[data-v-1b637c80]{display:flex;flex-direction:column;gap:3px}.msg-item.user[data-v-1b637c80]{align-items:flex-end}.msg-item.assistant[data-v-1b637c80]{align-items:flex-start}.msg-label[data-v-1b637c80]{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.msg-item.user .msg-label[data-v-1b637c80]{color:#38bdf8}.msg-item.assistant .msg-label[data-v-1b637c80]{color:#4ade80}.msg-text[data-v-1b637c80]{max-width:85%;padding:8px 12px;border-radius:12px;font-size:13px;line-height:1.55;word-break:break-word}.msg-item.user .msg-text[data-v-1b637c80]{background:linear-gradient(135deg,#0f3460e6,#1e5aafcc);color:#e0f0ff;border:1px solid rgba(56,189,248,.15);border-bottom-right-radius:4px}.msg-item.assistant .msg-text[data-v-1b637c80]{background:#0f1e35cc;color:#cbd5e1;border:1px solid rgba(56,189,248,.1);border-bottom-left-radius:4px}.msg-item.transcribing .msg-text[data-v-1b637c80]{opacity:.7;font-style:italic}.cursor[data-v-1b637c80]{display:inline-block;animation:blink-1b637c80 1s step-start infinite;color:#38bdf8;margin-left:1px}@keyframes blink-1b637c80{0%,to{opacity:1}50%{opacity:0}}.msg-text.thinking[data-v-1b637c80]{display:flex;align-items:center;gap:5px;padding:10px 14px;min-width:56px}.thinking-dot[data-v-1b637c80]{width:7px;height:7px;border-radius:50%;background:#4ade80;display:inline-block;animation:thinkingBounce-1b637c80 1.3s ease-in-out infinite}.thinking-dot[data-v-1b637c80]:nth-child(2){animation-delay:.18s}.thinking-dot[data-v-1b637c80]:nth-child(3){animation-delay:.36s}@keyframes thinkingBounce-1b637c80{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-6px);opacity:1}}.empty-hint[data-v-1b637c80]{flex:1;min-height:60px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#334155;text-align:center;padding:8px 16px;background:#00000026;border:1px dashed rgba(56,189,248,.08);border-radius:14px}.controls[data-v-1b637c80]{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:4px}.ctrl-spacer[data-v-1b637c80]{width:56px}.ctrl-btn[data-v-1b637c80]{display:flex;flex-direction:column;align-items:center;gap:5px;border:none;cursor:pointer;transition:all .22s ease;background:transparent}.ctrl-btn svg[data-v-1b637c80]{display:block}.mute-btn[data-v-1b637c80]{width:52px;height:52px;border-radius:50%;background:#ffffff12;border:1px solid rgba(255,255,255,.1);color:#94a3b8;flex-direction:row;gap:0;padding:0;justify-content:center}.mute-btn svg[data-v-1b637c80]{width:22px;height:22px}.mute-btn span[data-v-1b637c80]{display:none}.mute-btn[data-v-1b637c80]:hover{background:#ffffff1f;color:#e2e8f0;transform:scale(1.06)}.mute-btn.muted[data-v-1b637c80]{background:#ef444426;border-color:#ef44444d;color:#f87171}.mute-btn.muted[data-v-1b637c80]:hover{background:#ef444440}.main-btn[data-v-1b637c80]{width:68px;height:68px;border-radius:50%;flex-direction:row;justify-content:center;padding:0;flex-shrink:0}.main-btn svg[data-v-1b637c80]{width:28px;height:28px}.main-btn span[data-v-1b637c80]{display:none}.call-btn[data-v-1b637c80]{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 6px 20px #22c55e59}.call-btn[data-v-1b637c80]:hover{transform:scale(1.07);box-shadow:0 8px 28px #22c55e80}.cancel-btn[data-v-1b637c80]{background:#f59e0b26;border:1.5px solid rgba(245,158,11,.4);color:#fbbf24}.cancel-btn[data-v-1b637c80]:hover{background:#f59e0b40;transform:scale(1.07)}.hangup-btn[data-v-1b637c80]{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 6px 20px #ef44444d;animation:hangupPulse-1b637c80 2.5s ease-in-out infinite}.hangup-btn[data-v-1b637c80]:hover{transform:scale(1.07);animation:none;box-shadow:0 8px 28px #ef44448c}@keyframes hangupPulse-1b637c80{0%,to{box-shadow:0 6px 20px #ef44444d}50%{box-shadow:0 6px 30px #ef44448c}}.loading-dots[data-v-1b637c80]{display:flex;gap:4px;align-items:center}.loading-dots span[data-v-1b637c80]{width:5px;height:5px;border-radius:50%;background:#38bdf8;animation:dotBounce-1b637c80 1.2s ease-in-out infinite}.loading-dots span[data-v-1b637c80]:nth-child(2){animation-delay:.2s}.loading-dots span[data-v-1b637c80]:nth-child(3){animation-delay:.4s}@keyframes dotBounce-1b637c80{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.page-wrapper[data-v-d1939117]{width:100vw;height:100vh;background:#0a0a1a;display:flex;justify-content:center;align-items:stretch;padding:16px;box-sizing:border-box;overflow:hidden;position:relative}.page-wrapper[data-v-d1939117]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 50% 50%,transparent 0%,transparent 40%,rgba(0,0,0,.5) 100%);pointer-events:none;z-index:0}.chat-container[data-v-d1939117]{display:flex;flex-direction:column;width:100%;max-width:1200px;height:100%;background:transparent;color:#e2e8f0;overflow:hidden;border:1px solid rgba(56,189,248,.15);border-radius:12px;box-shadow:0 0 80px #38bdf80f,0 0 160px #38bdf80a,0 0 320px #38bdf805,inset 0 0 80px #38bdf804;position:relative;z-index:1}.chat-header[data-v-d1939117]{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:transparent;border-bottom:1px solid rgba(56,189,248,.1)}.header-left[data-v-d1939117]{display:flex;align-items:center;gap:12px}.back-btn[data-v-d1939117]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(56,189,248,.2);border-radius:10px;color:#94a3b8;cursor:pointer;transition:all .2s}.back-btn[data-v-d1939117]:hover{background:#38bdf81a;color:#38bdf8}.back-btn svg[data-v-d1939117]{width:18px;height:18px}.app-info[data-v-d1939117]{display:flex;align-items:center;gap:10px}.app-icon[data-v-d1939117]{width:36px;height:36px;border-radius:8px;object-fit:cover}.app-icon-placeholder[data-v-d1939117]{width:36px;height:36px;border-radius:8px;background:#38bdf81a;display:flex;align-items:center;justify-content:center;color:#38bdf8}.app-icon-placeholder svg[data-v-d1939117]{width:20px;height:20px}.app-name[data-v-d1939117]{font-size:16px;font-weight:600;color:#f0f4f8}.phone-btn[data-v-d1939117]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:10px;color:#22c55e;cursor:pointer;transition:all .2s}.phone-btn[data-v-d1939117]:hover{background:#22c55e33;transform:scale(1.05)}.phone-btn svg[data-v-d1939117]{width:20px;height:20px}.messages-area[data-v-d1939117]{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;position:relative;background-image:radial-gradient(2px 2px at 20px 30px,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 40px 70px,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 90px 40px,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 130px 80px,rgba(200,220,255,.6),transparent),radial-gradient(1px 1px at 160px 20px,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 200px 60px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 250px 30px,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 300px 90px,rgba(180,200,255,.6),transparent),radial-gradient(1px 1px at 350px 50px,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 400px 25px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 450px 75px,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 500px 40px,rgba(200,220,255,.5),transparent),radial-gradient(1px 1px at 550px 85px,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 600px 15px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 650px 55px,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 700px 95px,rgba(180,200,255,.5),transparent),radial-gradient(1px 1px at 750px 35px,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 800px 70px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 850px 20px,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 900px 60px,rgba(200,220,255,.5),transparent),radial-gradient(1px 1px at 950px 45px,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 95% 80px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 25px 120px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 75px 150px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 125px 130px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 175px 160px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 225px 140px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 275px 170px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 325px 125px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 375px 155px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 425px 135px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 475px 165px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 525px 145px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 575px 175px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 625px 128px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 675px 158px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 725px 138px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 775px 168px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 825px 148px,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 875px 178px,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 925px 132px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 98% 162px,rgba(255,255,255,.4),transparent);background-size:100% 200px;background-repeat:repeat;animation:starTwinkle-d1939117 8s ease-in-out infinite,starMove-d1939117 60s linear infinite}@keyframes starTwinkle-d1939117{0%,to{opacity:.8}50%{opacity:1}}@keyframes starMove-d1939117{0%{background-position:0 0}to{background-position:100px 50px}}.messages-area[data-v-d1939117]>*{position:relative;z-index:1}.messages-area[data-v-d1939117]::-webkit-scrollbar{width:4px}.messages-area[data-v-d1939117]::-webkit-scrollbar-track{background:#0f172a80;border-radius:3px}.messages-area[data-v-d1939117]::-webkit-scrollbar-thumb{background:#38bdf84d;border-radius:3px}.messages-area[data-v-d1939117]::-webkit-scrollbar-thumb:hover{background:#38bdf880}.empty-chat[data-v-d1939117]{flex:1;display:flex;align-items:center;justify-content:center;color:#64748b;font-size:14px}.history-loading[data-v-d1939117]{display:flex;justify-content:center;align-items:center;gap:5px;padding:10px 0 4px}.history-loading span[data-v-d1939117]{width:6px;height:6px;border-radius:50%;background:#38bdf880;animation:historyDot-d1939117 1.2s ease-in-out infinite}.history-loading span[data-v-d1939117]:nth-child(2){animation-delay:.2s}.history-loading span[data-v-d1939117]:nth-child(3){animation-delay:.4s}@keyframes historyDot-d1939117{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.history-hint[data-v-d1939117]{text-align:center;font-size:12px;color:#475569;padding:6px 0 2px}.message[data-v-d1939117]{display:flex;max-width:80%}.message.user[data-v-d1939117]{align-self:flex-end}.message.assistant[data-v-d1939117]{align-self:flex-start}.message-content[data-v-d1939117]{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.6}.message.user .message-content[data-v-d1939117]{background:linear-gradient(135deg,#0f3460,#1e5aaf);color:#fff;border-bottom-right-radius:4px}.message.assistant .message-content[data-v-d1939117]{background:#0f172acc;color:#e2e8f0;border:1px solid rgba(56,189,248,.1);border-bottom-left-radius:4px}.typing-indicator[data-v-d1939117]{display:flex;gap:4px;margin-top:8px}.typing-indicator span[data-v-d1939117]{width:6px;height:6px;background:#38bdf8;border-radius:50%;animation:typing-d1939117 1.4s infinite}.typing-indicator span[data-v-d1939117]:nth-child(2){animation-delay:.2s}.typing-indicator span[data-v-d1939117]:nth-child(3){animation-delay:.4s}@keyframes typing-d1939117{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.input-area[data-v-d1939117]{flex-shrink:0;padding:16px 20px 20px;background:transparent;border-top:1px solid rgba(56,189,248,.1)}.input-wrapper[data-v-d1939117]{display:flex;align-items:flex-end;gap:10px;background:#0a0a1a99;border:1px solid rgba(56,189,248,.15);border-radius:20px;padding:8px 8px 8px 16px}.input-wrapper textarea[data-v-d1939117]{flex:1;background:transparent;border:none;outline:none;color:#e2e8f0;font-size:14px;line-height:1.5;resize:none;max-height:120px;padding:6px 0}.input-wrapper textarea[data-v-d1939117]::placeholder{color:#475569}.send-btn[data-v-d1939117]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f3460,#38bdf8);border:none;border-radius:50%;color:#fff;cursor:pointer;transition:all .2s;flex-shrink:0}.send-btn[data-v-d1939117]:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 15px #38bdf84d}.send-btn[data-v-d1939117]:disabled{opacity:.4;cursor:not-allowed}.send-btn svg[data-v-d1939117]{width:16px;height:16px}@media (max-width: 768px){.chat-header[data-v-d1939117]{padding:10px 16px}.messages-area[data-v-d1939117]{padding:16px}.message[data-v-d1939117]{max-width:90%}.input-area[data-v-d1939117]{padding:12px 16px 16px}}
