:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#app{margin:0;padding:0;font-weight:400}code{color:#e83e8c;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:2px 6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}strong{color:#2c3e50;font-weight:600}em{color:#495057;font-style:italic}.chat-container[data-v-300bba28]{height:100vh;background:#f5f7fa;flex-direction:column;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.chat-header[data-v-300bba28]{z-index:20;background:#fff;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;padding:1rem;display:flex;position:relative;box-shadow:0 2px 8px #0000001a}.header-center[data-v-300bba28]{flex-direction:column;align-items:center;gap:.25rem;display:flex}.chat-header h1[data-v-300bba28]{color:#2c3e50;margin:0;font-size:1.2rem;font-weight:700}.current-model-info[data-v-300bba28]{align-items:center;gap:.5rem;font-size:.8rem;display:flex}.current-model-info .model-name[data-v-300bba28]{color:#6c757d;font-weight:500}.quota-indicator[data-v-300bba28]{align-items:center;gap:.25rem;display:flex}.quota-dot[data-v-300bba28]{border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-300bba28}.quota-count[data-v-300bba28]{font-size:.75rem;font-weight:600}@keyframes pulse-300bba28{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.settings-button[data-v-300bba28],.history-toggle-button[data-v-300bba28]{color:#495057;cursor:pointer;background:#f8f9fa;border:none;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.settings-button[data-v-300bba28]:hover,.history-toggle-button[data-v-300bba28]:hover{background:#e9ecef;transform:scale(1.05)}.settings-overlay[data-v-300bba28]{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;position:fixed;inset:0}.settings-panel[data-v-300bba28]{z-index:40;background:#fff;width:320px;max-width:85vw;height:100vh;transition:right .3s;position:fixed;top:0;right:-100%;overflow-y:auto;box-shadow:-4px 0 20px #00000026}.settings-panel-open[data-v-300bba28]{right:0}.settings-header[data-v-300bba28]{background:#f8f9fa;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;padding:1rem;display:flex}.settings-header h3[data-v-300bba28]{color:#2c3e50;margin:0;font-size:1.1rem;font-weight:600}.close-settings-button[data-v-300bba28]{color:#6c757d;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.close-settings-button[data-v-300bba28]:hover{color:#495057;background:#e9ecef}.settings-content[data-v-300bba28]{padding:1rem}.setting-section[data-v-300bba28]{margin-bottom:2rem}.setting-section h4[data-v-300bba28]{color:#2c3e50;border-bottom:2px solid #e9ecef;margin:0 0 1rem;padding-bottom:.5rem;font-size:1rem;font-weight:600}.model-grid[data-v-300bba28]{grid-template-columns:1fr;gap:.75rem;display:grid}.model-card[data-v-300bba28]{cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:12px;padding:1rem;transition:all .2s;position:relative}.model-card[data-v-300bba28]:hover:not(.disabled){border-color:#667eea;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.model-card.selected[data-v-300bba28]{background:linear-gradient(135deg,#f8f9ff,#fff);border-color:#667eea;box-shadow:0 4px 12px #667eea26}.model-card.disabled[data-v-300bba28]{opacity:.6;cursor:not-allowed;background:#f8f9fa}.model-header[data-v-300bba28]{justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;display:flex}.model-name[data-v-300bba28]{color:#2c3e50;margin:0;font-size:1rem;font-weight:600}.tier-badge[data-v-300bba28]{text-transform:uppercase;border-radius:12px;padding:.25rem .5rem;font-size:.7rem;font-weight:600}.tier-badge.premium[data-v-300bba28]{color:#8b5a00;background:linear-gradient(135deg,gold,#ffed4e)}.tier-badge.standard[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2)}.tier-badge.basic[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#28a745,#20c997)}.model-description[data-v-300bba28]{color:#6c757d;margin:0 0 .75rem;font-size:.85rem;line-height:1.4}.quota-info[data-v-300bba28]{flex-direction:column;gap:.5rem;display:flex}.quota-bar[data-v-300bba28]{background:#e9ecef;border-radius:3px;width:100%;height:6px;overflow:hidden}.quota-fill[data-v-300bba28]{border-radius:3px;height:100%;transition:all .3s}.quota-text[data-v-300bba28]{justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.quota-label[data-v-300bba28]{color:#6c757d;font-weight:500}.quota-summary[data-v-300bba28]{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:1rem}.summary-item[data-v-300bba28]{justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.summary-item[data-v-300bba28]:not(:last-child){border-bottom:1px solid #e9ecef}.summary-label[data-v-300bba28]{color:#495057;font-weight:500}.summary-value[data-v-300bba28]{color:#2c3e50;font-weight:600}.reset-time[data-v-300bba28]{color:#6c757d;font-size:.85rem}.function-toggles[data-v-300bba28]{gap:.75rem;display:flex}.function-toggle[data-v-300bba28]{color:#495057;cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;min-height:70px;padding:1rem .75rem;font-size:.85rem;font-weight:600;transition:all .3s;display:flex}.server-options[data-v-300bba28]{flex-direction:column;gap:.75rem;display:flex}.server-option[data-v-300bba28]{cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem;transition:all .2s;display:flex}.server-option[data-v-300bba28]:hover{background:#f8f9fa;border-color:#667eea}.server-option input[type=radio][data-v-300bba28]{accent-color:#667eea;width:18px;height:18px}.server-option span[data-v-300bba28]{color:#2c3e50;font-weight:500}.action-buttons[data-v-300bba28]{flex-direction:column;gap:.75rem;display:flex}.save-button[data-v-300bba28],.clear-button[data-v-300bba28]{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.75rem;min-height:48px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.save-button[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#56ab2f,#a8e6cf)}.save-button[data-v-300bba28]:hover:not(:disabled){background:linear-gradient(135deg,#4e9a2a,#96d4b5);transform:translateY(-1px)}.save-button[data-v-300bba28]:disabled{color:#6c757d;cursor:not-allowed;background:#e9ecef}.clear-button[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#ff6b6b,#ffa8a8)}.clear-button[data-v-300bba28]:hover{background:linear-gradient(135deg,#ff5252,#f99);transform:translateY(-1px)}.history-panel[data-v-300bba28]{background:#fff;border-bottom:1px solid #e9ecef;max-height:300px;overflow-y:auto}.history-header[data-v-300bba28]{background:#f8f9fa;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;padding:1rem;display:flex}.history-header h3[data-v-300bba28]{color:#495057;margin:0;font-size:1.1rem}.close-button[data-v-300bba28]{cursor:pointer;color:#6c757d;background:0 0;border:none;border-radius:4px;padding:.25rem;transition:background-color .2s}.close-button[data-v-300bba28]:hover{background:#0000001a}.history-list[data-v-300bba28]{padding:.5rem}.no-history[data-v-300bba28]{text-align:center;color:#6c757d;padding:2rem;font-style:italic}.history-item[data-v-300bba28]{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:.5rem;padding:1rem;transition:box-shadow .2s}.history-item[data-v-300bba28]:hover{box-shadow:0 2px 8px #0000001a}.history-item-header[data-v-300bba28]{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.history-title[data-v-300bba28]{color:#2c3e50;font-size:.95rem;font-weight:600}.history-date[data-v-300bba28]{color:#6c757d;font-size:.8rem}.history-preview[data-v-300bba28]{color:#495057;margin-bottom:.75rem;font-size:.9rem;line-height:1.4}.history-actions[data-v-300bba28]{gap:.5rem;display:flex}.load-button[data-v-300bba28],.delete-button[data-v-300bba28]{cursor:pointer;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.8rem;transition:background-color .2s}.load-button[data-v-300bba28]{color:#fff;background:#007bff}.load-button[data-v-300bba28]:hover{background:#0056b3}.delete-button[data-v-300bba28]{color:#fff;background:#dc3545}.delete-button[data-v-300bba28]:hover{background:#c82333}.chat-messages[data-v-300bba28]{scroll-behavior:smooth;background:#f5f7fa;flex:1;padding:1rem;overflow-y:auto}.welcome-message[data-v-300bba28]{text-align:center;color:#495057;background:#fff;border:1px solid #e9ecef;border-radius:20px;margin:2rem 0;padding:2rem 1.5rem;box-shadow:0 4px 20px #0000001a}.welcome-message h3[data-v-300bba28]{color:#2c3e50;margin:0 0 1rem;font-size:1.4rem;font-weight:700}.welcome-message p[data-v-300bba28]{color:#6c757d;margin:0;font-size:1rem;line-height:1.5}.message[data-v-300bba28]{margin-bottom:1rem;display:flex}.message.user[data-v-300bba28]{justify-content:flex-end}.message.assistant[data-v-300bba28]{justify-content:flex-start}.message-content[data-v-300bba28]{color:#333;background:#fff;border-radius:12px;max-width:70%;padding:.75rem 1rem;box-shadow:0 2px 8px #0000001a}.message.user .message-content[data-v-300bba28]{color:#fff;background:#007bff}.message.assistant .message-content[data-v-300bba28]{color:#333;background:#fff;border:1px solid #e9ecef}.message-header[data-v-300bba28]{opacity:.8;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8rem;display:flex}.message-role[data-v-300bba28]{font-weight:600}.message-actions[data-v-300bba28]{align-items:center;gap:.5rem;display:flex}.copy-button[data-v-300bba28]{cursor:pointer;opacity:.6;color:inherit;background:0 0;border:none;border-radius:4px;padding:.25rem;transition:opacity .2s}.copy-button[data-v-300bba28]:hover{opacity:1;background:#0000001a}.message.user .copy-button[data-v-300bba28]:hover{background:#fff3}.search-results[data-v-300bba28]{border-top:1px solid #e9ecef;margin-top:1rem;padding-top:1rem}.search-header[data-v-300bba28]{color:#6c757d;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.9rem;font-weight:500;display:flex}.search-header svg[data-v-300bba28]{color:#007bff}.toggle-search-btn[data-v-300bba28]{color:#6c757d;cursor:pointer;background:0 0;border:1px solid #dee2e6;border-radius:4px;margin-left:auto;padding:.25rem .5rem;font-size:.8rem;transition:all .2s}.toggle-search-btn[data-v-300bba28]:hover{color:#007bff;background:#f8f9fa;border-color:#007bff}.search-results-list[data-v-300bba28]{space-y:.75rem}.search-result-item[data-v-300bba28]{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:.75rem;padding:.75rem}.search-result-header[data-v-300bba28]{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.search-result-index[data-v-300bba28]{color:#fff;background:#007bff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:600;display:flex}.search-result-source[data-v-300bba28]{color:#495057;background:#e9ecef;border-radius:12px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.search-result-title[data-v-300bba28]{margin-bottom:.5rem}.search-result-title a[data-v-300bba28]{color:#007bff;font-size:.95rem;font-weight:500;line-height:1.4;text-decoration:none}.search-result-title a[data-v-300bba28]:hover{text-decoration:underline}.search-result-snippet[data-v-300bba28]{color:#6c757d;margin-bottom:.5rem;font-size:.9rem;line-height:1.4}.search-result-url[data-v-300bba28]{font-size:.8rem}.search-result-url a[data-v-300bba28]{color:#28a745;word-break:break-all;text-decoration:none}.search-result-url a[data-v-300bba28]:hover{text-decoration:underline}.message-text[data-v-300bba28]{color:inherit;line-height:1.5}.message.assistant .message-text[data-v-300bba28]{color:#2c3e50;font-weight:400}.message.user .message-text[data-v-300bba28]{color:#fff}.typing-indicator[data-v-300bba28]{align-items:center;gap:.25rem;display:flex}.typing-indicator span[data-v-300bba28]{background:#007bff;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typing-300bba28}.typing-indicator span[data-v-300bba28]:nth-child(2){animation-delay:.2s}.typing-indicator span[data-v-300bba28]:nth-child(3){animation-delay:.4s}@keyframes typing-300bba28{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-input[data-v-300bba28]{z-index:10;background:#fff;border-top:1px solid #e9ecef;padding:1rem;position:relative;box-shadow:0 -2px 10px #0000001a}.function-toggles[data-v-300bba28]{margin-bottom:1rem}.toggle-group[data-v-300bba28]{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;display:grid}.function-toggle[data-v-300bba28]{color:#495057;cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-height:70px;padding:1rem .75rem;font-size:.85rem;font-weight:600;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.function-toggle[data-v-300bba28]:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.function-toggle.active[data-v-300bba28]{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.search-toggle.active[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#17a2b8,#20c997);border-color:#17a2b8}.thinking-toggle.active[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#6f42c1,#e83e8c);border-color:#6f42c1}.toggle-indicator[data-v-300bba28]{opacity:0;pointer-events:none;background:#ffffff4d;border-radius:50%;width:8px;height:8px;transition:opacity .3s;position:absolute;top:6px;right:6px}.function-toggle.active .toggle-indicator[data-v-300bba28]{opacity:1;background:#fffc}.function-toggle svg[data-v-300bba28]{flex-shrink:0}.function-status[data-v-300bba28]{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem;display:flex}.status-text[data-v-300bba28]{color:#6c757d;font-size:.85rem;font-weight:500}.status-tag[data-v-300bba28]{border-radius:12px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.search-tag[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#17a2b8,#20c997)}.thinking-tag[data-v-300bba28]{color:#fff;background:linear-gradient(135deg,#6f42c1,#e83e8c)}@media (min-width:769px){.chat-container[data-v-300bba28]{border-radius:12px;max-width:800px;height:80vh;margin:2rem auto;box-shadow:0 10px 30px #0003}.selector-row[data-v-300bba28]{flex-direction:row;justify-content:space-between;align-items:center}.model-selection[data-v-300bba28]{flex-direction:row;align-items:center;width:auto}.action-buttons[data-v-300bba28]{gap:.5rem;width:auto;display:flex}.action-buttons button[data-v-300bba28]{flex-direction:row;min-height:auto;padding:.5rem 1rem}.clear-button[data-v-300bba28]{grid-column:auto}.toggle-group[data-v-300bba28]{justify-content:center;display:flex}.function-toggle[data-v-300bba28]{flex-direction:row;min-width:140px;min-height:auto;padding:.75rem 1.25rem}.host-selector[data-v-300bba28]{background:0 0;border:none;flex-direction:row;padding:0}}@media (max-width:480px){.chat-header[data-v-300bba28]{padding:.5rem .75rem}.chat-header h1[data-v-300bba28]{font-size:1rem}.chat-header p[data-v-300bba28]{font-size:.8rem}.action-buttons[data-v-300bba28]{gap:.4rem}.action-buttons button[data-v-300bba28]{min-height:40px;padding:.5rem .4rem;font-size:.7rem}.action-buttons button svg[data-v-300bba28]{width:14px;height:14px}.function-toggle[data-v-300bba28]{min-height:46px;padding:.6rem .4rem;font-size:.75rem}.function-toggle svg[data-v-300bba28]{width:16px;height:16px}.chat-input[data-v-300bba28]{padding:.6rem}.message-input[data-v-300bba28]{padding:.6rem;font-size:16px}.send-button[data-v-300bba28]{min-width:40px;min-height:40px}.send-button svg[data-v-300bba28]{width:18px;height:18px}.message-content[data-v-300bba28]{padding:.6rem}.message-text[data-v-300bba28]{font-size:.85rem}.model-selection select[data-v-300bba28]{padding:.4rem;font-size:.85rem}}.input-container[data-v-300bba28]{align-items:flex-end;gap:.5rem;display:flex}.message-input[data-v-300bba28]{resize:none;border:1px solid #ced4da;border-radius:8px;flex:1;max-height:120px;padding:.75rem;font-family:inherit;font-size:1rem;line-height:1.5;overflow-y:auto}.message-input[data-v-300bba28]:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 2px #007bff40}.send-button[data-v-300bba28]{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:8px;justify-content:center;align-items:center;min-width:48px;height:48px;padding:.75rem;transition:background-color .2s;display:flex}.send-button[data-v-300bba28]:hover:not(:disabled){background:#0056b3}.send-button[data-v-300bba28]:disabled{cursor:not-allowed;background:#6c757d}.stop-button[data-v-300bba28]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#dc3545,#ff6b6b);border:none;border-radius:16px;justify-content:center;align-items:center;min-width:50px;min-height:50px;padding:.75rem;transition:all .2s;display:flex;box-shadow:0 2px 8px #dc35454d}.stop-button[data-v-300bba28]:hover{background:linear-gradient(135deg,#c82333,#ff5252);transform:translateY(-1px);box-shadow:0 4px 12px #dc354566}.stop-button[data-v-300bba28]:active{transform:scale(.95)}.streaming-indicator[data-v-300bba28]{background:#f8f9fa;border-left:3px solid #007bff;border-radius:8px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem;display:flex}.streaming-dots[data-v-300bba28]{gap:.25rem;display:flex}.streaming-dots span[data-v-300bba28]{background:#007bff;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite streamingPulse-300bba28}.streaming-dots span[data-v-300bba28]:first-child{animation-delay:-.32s}.streaming-dots span[data-v-300bba28]:nth-child(2){animation-delay:-.16s}.streaming-text[data-v-300bba28]{color:#6c757d;font-size:.85rem;font-style:italic}@keyframes streamingPulse-300bba28{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.loading-spinner[data-v-300bba28]{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin-300bba28}@keyframes spin-300bba28{to{transform:rotate(360deg)}}#app[data-v-2ee13a30]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-direction:column;min-height:100vh;display:flex}.app-header[data-v-2ee13a30]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:#ffffff1a;border-bottom:1px solid #fff3;padding:1rem 2rem}.app-header h1[data-v-2ee13a30]{color:#fff;margin:0;font-size:2rem;font-weight:600}.app-header p[data-v-2ee13a30]{color:#fffc;margin:.5rem 0 0;font-size:1rem}.app-main[data-v-2ee13a30]{flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}
