:root{--bg:#f7f8fa;--bg-grad-1:#eef2ff;--bg-grad-2:#f6f7f9;--surface:#fff;--surface-2:#f3f4f6;--text:#1f2329;--text-soft:#6b7280;--text-muted:#9ca3af;--border:#e8eaed;--accent:#6366f1;--accent-2:#8b5cf6;--accent-grad:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--user-bubble:linear-gradient(135deg, #6366f1 0%, #7c3aed 100%);--assistant-bubble:#fff;--danger:#ef4444;--shadow-sm:0 1px 2px #1018280a;--shadow-md:0 6px 24px #10182814;--radius:14px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{flex-direction:column;display:flex}button{cursor:pointer;background:0 0;border:none;font-family:inherit}textarea{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d4d7dc;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#bfc3ca}::-webkit-scrollbar-track{background:0 0}.message-list[data-v-73c24d68]{flex-direction:column;flex:1;gap:20px;width:100%;max-width:820px;margin:0 auto;padding:24px 16px 8px;display:flex;overflow-y:auto}.empty-state[data-v-73c24d68]{text-align:center;color:var(--text-soft);margin:auto;padding:48px 24px}.empty-icon[data-v-73c24d68]{background:var(--accent-grad);color:#fff;width:72px;height:72px;box-shadow:var(--shadow-md);border-radius:20px;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.empty-state h2[data-v-73c24d68]{color:var(--text);margin-bottom:8px;font-size:20px;font-weight:600}.empty-state p[data-v-73c24d68]{max-width:420px;margin:0 auto 22px;font-size:14px;line-height:1.6}.suggestions[data-v-73c24d68]{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip[data-v-73c24d68]{background:var(--surface);border:1px solid var(--border);color:var(--text-soft);border-radius:20px;padding:7px 14px;font-size:13px}.message-row[data-v-73c24d68]{align-items:flex-start;gap:12px;display:flex}.message-row.user[data-v-73c24d68]{flex-direction:row-reverse}.avatar[data-v-73c24d68]{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:600;display:flex}.avatar.user[data-v-73c24d68]{background:var(--accent-grad);color:#fff}.avatar.assistant[data-v-73c24d68]{background:var(--surface);border:1px solid var(--border);color:var(--accent)}.bubble[data-v-73c24d68]{border-radius:var(--radius);word-break:break-word;max-width:78%;box-shadow:var(--shadow-sm);padding:12px 16px;font-size:15px;line-height:1.7}.bubble.user[data-v-73c24d68]{background:var(--user-bubble);color:#fff;border-bottom-right-radius:4px}.bubble.assistant[data-v-73c24d68]{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}.think-block[data-v-73c24d68]{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;margin-bottom:8px;overflow:hidden}.think-block.interrupted[data-v-73c24d68]{background:#fffbeb;border-color:#fcd34d}.think-header[data-v-73c24d68]{cursor:pointer;color:var(--text-soft);user-select:none;align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;transition:background .15s;display:flex}.think-header[data-v-73c24d68]:hover{background:#00000008}.think-spinner[data-v-73c24d68]{color:var(--accent);flex-shrink:0;animation:1s linear infinite spin-73c24d68}.think-check[data-v-73c24d68]{color:var(--accent);flex-shrink:0}.think-warn[data-v-73c24d68]{color:#f59e0b;flex-shrink:0}.think-label[data-v-73c24d68]{font-weight:500}.think-chevron[data-v-73c24d68]{flex-shrink:0;margin-left:auto;transition:transform .2s}.think-chevron.open[data-v-73c24d68]{transform:rotate(90deg)}.think-content[data-v-73c24d68]{color:var(--text-soft);border-top:1px solid var(--border);max-height:280px;padding:8px 12px 10px;font-size:13px;line-height:1.65;overflow-y:auto}@keyframes spin-73c24d68{to{transform:rotate(360deg)}}.bubble-content[data-v-73c24d68] .code-block{color:#e4e4e7;background:#1e1e2e;border-radius:8px;margin:8px 0;padding:12px 14px;font-family:JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.5;overflow-x:auto}.bubble-content[data-v-73c24d68] .inline-code{background:var(--surface-2);border-radius:4px;padding:1px 6px;font-family:JetBrains Mono,Consolas,monospace;font-size:13px}.bubble.user[data-v-73c24d68] .inline-code{background:#fff3}.cursor[data-v-73c24d68]{vertical-align:text-bottom;background:var(--accent);border-radius:1px;width:7px;height:16px;margin-left:2px;animation:1s steps(2,end) infinite blink-73c24d68;display:inline-block}@keyframes blink-73c24d68{50%{opacity:0}}.chat-input[data-v-e245f333]{width:100%;max-width:820px;margin:0 auto;padding:12px 16px 16px}.input-wrapper[data-v-e245f333]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);align-items:flex-end;gap:8px;padding:8px 8px 8px 16px;transition:border-color .2s,box-shadow .2s;display:flex}.input-wrapper[data-v-e245f333]:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11f}.input-bar[data-v-e245f333]{align-items:center;gap:12px;margin-bottom:8px;padding:0 4px;display:flex}textarea[data-v-e245f333]{resize:none;color:var(--text);background:0 0;border:none;outline:none;flex:1;max-height:180px;padding:6px 0;font-size:15px;line-height:1.6}textarea[data-v-e245f333]::placeholder{color:var(--text-muted)}textarea[data-v-e245f333]:disabled{cursor:not-allowed}.send-btn[data-v-e245f333],.stop-btn[data-v-e245f333]{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:transform .1s,opacity .2s;display:flex}.send-btn[data-v-e245f333]{background:var(--accent-grad);color:#fff}.send-btn[data-v-e245f333]:hover:not(:disabled){transform:translateY(-1px)}.send-btn[data-v-e245f333]:disabled{opacity:.4;cursor:not-allowed}.stop-btn[data-v-e245f333]{background:var(--surface-2);color:var(--danger)}.stop-btn[data-v-e245f333]:hover{background:#fee2e2}.stop-icon[data-v-e245f333]{background:var(--danger);border-radius:3px;width:12px;height:12px}.progress-bars[data-v-e245f333]{flex-direction:column;gap:4px;margin-top:8px;padding:0 4px;display:flex}.progress-row[data-v-e245f333]{align-items:center;gap:8px;display:flex}.progress-label[data-v-e245f333]{color:var(--text-muted);flex-shrink:0;width:28px;font-size:11px}.progress-track[data-v-e245f333]{background:var(--surface-2);border-radius:4px;flex:1;height:5px;overflow:hidden}.progress-fill[data-v-e245f333]{background:var(--accent);border-radius:4px;height:100%;transition:width .2s}.progress-fill.warn[data-v-e245f333]{background:#f59e0b}.progress-fill.over[data-v-e245f333]{background:var(--danger)}.progress-text[data-v-e245f333]{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;width:80px;font-size:11px}.progress-text.warn[data-v-e245f333]{color:#f59e0b}.progress-text.over[data-v-e245f333]{color:var(--danger)}.think-toggle[data-v-e245f333]{color:var(--text-muted);user-select:none;white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:5px 10px 5px 8px;font-size:12.5px;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.think-toggle[data-v-e245f333]:hover:not(.disabled){background:var(--surface-2)}.think-toggle.active[data-v-e245f333]{color:var(--accent)}.think-toggle.disabled[data-v-e245f333]{opacity:.6;cursor:not-allowed}.toggle-track[data-v-e245f333]{background:#d1d5db;border-radius:10px;flex-shrink:0;width:28px;height:16px;transition:background .2s;position:relative}.toggle-track.on[data-v-e245f333]{background:var(--accent)}.toggle-thumb[data-v-e245f333]{background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.toggle-track.on .toggle-thumb[data-v-e245f333]{transform:translate(12px)}.app[data-v-79d30aa9]{background:radial-gradient(1200px 600px at 100% 0%, var(--bg-grad-1) 0%, transparent 50%), radial-gradient(1000px 500px at 0% 100%, #faf5ff 0%, transparent 50%), var(--bg);flex-direction:column;height:100%;display:flex}.header[data-v-79d30aa9]{border-bottom:1px solid var(--border);backdrop-filter:blur(12px);background:#fffc;flex-shrink:0}.header-inner[data-v-79d30aa9]{justify-content:space-between;align-items:center;max-width:820px;margin:0 auto;padding:14px 16px;display:flex}.logo[data-v-79d30aa9]{align-items:center;gap:12px;display:flex}.logo-icon[data-v-79d30aa9]{background:var(--accent-grad);color:#fff;width:38px;height:38px;box-shadow:var(--shadow-md);border-radius:11px;justify-content:center;align-items:center;display:flex}.logo-text h1[data-v-79d30aa9]{font-size:16px;font-weight:600;line-height:1.2}.gpu-line[data-v-79d30aa9]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;max-width:260px;font-size:12px;display:inline-flex;overflow:hidden}.gpu-icon[data-v-79d30aa9]{opacity:.7;flex-shrink:0}.status[data-v-79d30aa9]{color:var(--text-soft);align-items:center;gap:7px;font-size:13px;display:flex}.dot[data-v-79d30aa9]{background:var(--text-muted);border-radius:50%;width:8px;height:8px}.dot.loading[data-v-79d30aa9]{background:#f59e0b;animation:1.5s infinite pulse-79d30aa9;box-shadow:0 0 #f59e0b80}.dot.ready[data-v-79d30aa9]{background:#10b981}.dot.error[data-v-79d30aa9]{background:var(--danger)}@keyframes pulse-79d30aa9{0%{box-shadow:0 0 #f59e0b80}70%{box-shadow:0 0 0 8px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.main[data-v-79d30aa9]{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.footer[data-v-79d30aa9]{flex-shrink:0}.overlay[data-v-79d30aa9]{backdrop-filter:blur(6px);background:#f7f8fad9;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.loader-card[data-v-79d30aa9]{background:var(--surface);border:1px solid var(--border);text-align:center;width:100%;max-width:420px;box-shadow:var(--shadow-md);border-radius:18px;padding:32px 36px}.spinner[data-v-79d30aa9]{border:3px solid var(--surface-2);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin:0 auto 18px;animation:.8s linear infinite spin-79d30aa9}@keyframes spin-79d30aa9{to{transform:rotate(360deg)}}.error-icon[data-v-79d30aa9]{width:40px;height:40px;color:var(--danger);background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:22px;font-weight:700;display:flex}.loader-title[data-v-79d30aa9]{margin-bottom:8px;font-size:16px;font-weight:600}.loader-progress[data-v-79d30aa9]{color:var(--text-soft);word-break:break-word;min-height:20px;font-size:13px;line-height:1.5}.progress-track[data-v-79d30aa9]{background:var(--surface-2);border-radius:5px;height:5px;margin:18px 0 12px;overflow:hidden}.progress-bar[data-v-79d30aa9]{background:var(--accent-grad);border-radius:5px;height:100%;transition:width .3s;animation:1.6s ease-in-out infinite indeterminate-79d30aa9}@keyframes indeterminate-79d30aa9{0%{width:40%;margin-left:-40%}50%{width:50%;margin-left:30%}to{width:40%;margin-left:100%}}.loader-tip[data-v-79d30aa9]{color:var(--text-muted);font-size:12px}.retry-btn[data-v-79d30aa9]{background:var(--accent-grad);color:#fff;border-radius:10px;margin-top:16px;padding:9px 24px;font-size:14px;font-weight:500}.retry-btn[data-v-79d30aa9]:hover{opacity:.9}
