@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all)}.theme-toggle-btn:hover{background:var(--hover-overlay);border-color:var(--border-default);color:var(--text-primary)}.theme-toggle-btn.dark-theme{color:var(--accent-tertiary)}.theme-toggle-btn.light-theme{color:var(--accent-secondary)}.header-modern-container{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;max-width:100%;margin:0;position:relative}@media (min-width: 768px){.header-modern-container{padding:var(--space-3) 0}}.header-modern-brand{display:flex;align-items:center;gap:var(--space-3);padding-left:var(--space-4)}@media (min-width: 768px){.header-modern-brand{padding-left:var(--space-6)}}.header-modern-logo-btn{position:relative;width:44px;height:44px;background:var(--accent-gradient);border:none;border-radius:var(--radius-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-all);box-shadow:var(--shadow-md);overflow:hidden}.header-modern-logo-btn:hover{transform:scale(1.05);box-shadow:var(--shadow-lg),var(--shadow-glow-sm)}.header-modern-logo-btn:active{transform:scale(.98)}.header-modern-logo-btn-inner{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.header-modern-logo-picture{position:absolute;inset:0;z-index:2;border-radius:var(--radius-lg);overflow:hidden}.header-modern-logo-img{width:100%;height:100%;object-fit:cover;object-position:center}.header-modern-logo-btn-inner picture,.header-modern-logo-btn-inner .lucide-cpu{transition:opacity var(--duration-normal) var(--ease-out)}.header-modern-logo-btn:hover .header-modern-logo-btn-inner picture,.header-modern-logo-btn:focus .header-modern-logo-btn-inner picture,.header-modern-logo-btn:hover .header-modern-logo-btn-inner .lucide-cpu,.header-modern-logo-btn:focus .header-modern-logo-btn-inner .lucide-cpu{opacity:0}.header-modern-logo-history-hover{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out);z-index:3;color:#fff;background:#0000001a;border-radius:var(--radius-lg)}.header-modern-logo-btn:hover .header-modern-logo-history-hover,.header-modern-logo-btn:focus .header-modern-logo-history-hover{opacity:1}.header-modern-logo{width:44px;height:44px;background:var(--accent-gradient);border-radius:var(--radius-xl);position:relative;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:var(--transition-transform)}.header-modern-logo:hover{transform:scale(1.05)}.header-modern-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0;letter-spacing:var(--tracking-tight);line-height:1.2}.header-modern-subtitle{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--accent-primary);margin:0;text-transform:uppercase;letter-spacing:var(--tracking-wider);display:flex;align-items:center;gap:var(--space-1);opacity:.9}.header-modern-middle-section{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;display:none}@media (min-width: 768px){.header-modern-middle-section{display:block}}.header-modern-model-indicator{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:var(--transition-all)}.header-modern-model-indicator:hover{background:var(--hover-overlay);border-color:var(--accent-primary);color:var(--text-primary);transform:translateY(-1px)}.header-modern-model-indicator svg{color:var(--accent-primary)}.header-modern-actions{display:flex;align-items:center;gap:var(--space-2);padding-right:var(--space-4)}@media (min-width: 768px){.header-modern-actions{padding-right:var(--space-6)}}.header-modern-theme-toggle{display:flex;align-items:center}.header-modern-settings-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all);position:relative;overflow:hidden}.header-modern-settings-btn:hover{background:var(--hover-overlay);border-color:var(--border-default);color:var(--text-primary)}.header-modern-settings-btn:hover svg{transform:rotate(90deg)}.header-modern-settings-btn svg{transition:transform var(--duration-slow) var(--ease-out);position:relative;z-index:1}.header-modern-progress-bar{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--accent-gradient);opacity:.3}@media (max-width: 768px){.header-modern-brand{gap:var(--space-2)}.header-modern-logo-btn,.header-modern-logo{width:40px;height:40px}.header-modern-title{font-size:var(--text-lg)}.header-modern-subtitle{font-size:10px}}@media (max-width: 480px){.header-modern-brand{padding-left:var(--space-3)}.header-modern-actions{padding-right:var(--space-3)}.header-modern-logo-btn,.header-modern-logo{width:36px;height:36px}.header-modern-title{font-size:var(--text-base)}.header-modern-subtitle{display:none}.header-modern-settings-btn{width:36px;height:36px}}.message-bubble-modern{display:flex;gap:var(--space-3);padding:var(--space-3) 0;animation:slideInUp var(--duration-normal) var(--ease-out);max-width:100%}.message-bubble-modern+.message-bubble-modern{padding-top:var(--space-1)}.message-bubble-modern.user{flex-direction:row-reverse}.message-bubble-modern.assistant{flex-direction:row}.message-bubble-modern-avatar{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);flex-shrink:0}.message-bubble-modern-avatar>svg:first-child,.message-bubble-modern-avatar>.lucide:first-child{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:8px;border-radius:var(--radius-lg);transition:var(--transition-all)}.message-bubble-modern.user .message-bubble-modern-avatar>svg:first-child,.message-bubble-modern.user .message-bubble-modern-avatar>.lucide:first-child{background:var(--accent-gradient);color:#fff}.message-bubble-modern.assistant .message-bubble-modern-avatar>svg:first-child,.message-bubble-modern.assistant .message-bubble-modern-avatar>.lucide:first-child{background:var(--bg-glass);border:1px solid var(--border-default);color:var(--text-secondary)}.message-bubble-modern-model-badge{font-size:9px;font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;max-width:60px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-bubble-modern-content{flex:1;min-width:0;max-width:100%}@media (min-width: 768px){.message-bubble-modern-content{max-width:85%}}@media (min-width: 1024px){.message-bubble-modern-content{max-width:75%}}.message-bubble-modern-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.message-bubble-modern-role{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.message-bubble-modern-timestamp{font-size:var(--text-xs);color:var(--text-muted)}.message-bubble-modern-body{position:relative;padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-default);box-shadow:var(--shadow-sm);transition:var(--transition-all)}.message-bubble-modern.user .message-bubble-modern-body{background:var(--accent-gradient);border-color:transparent;color:#fff;border-bottom-right-radius:var(--radius-sm)}.message-bubble-modern.assistant .message-bubble-modern-body{border-bottom-left-radius:var(--radius-sm)}.message-bubble-modern-text{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word}.message-bubble-modern.user .message-bubble-modern-text{color:#fff}.message-bubble-modern-text.markdown-body{font-size:var(--text-base);line-height:var(--leading-relaxed)}.message-bubble-modern-text.markdown-body>:first-child{margin-top:0!important}.message-bubble-modern-text.markdown-body>:last-child{margin-bottom:0!important}.message-bubble-modern-text h1,.message-bubble-modern-text h2,.message-bubble-modern-text h3,.message-bubble-modern-text h4,.message-bubble-modern-text h5,.message-bubble-modern-text h6{margin-top:1.25em;margin-bottom:.5em;font-weight:var(--font-semibold);color:inherit}.message-bubble-modern-text h1{font-size:1.4em}.message-bubble-modern-text h2{font-size:1.25em}.message-bubble-modern-text h3{font-size:1.1em}.message-bubble-modern-text p{margin:.5em 0}.message-bubble-modern-text ul,.message-bubble-modern-text ol{margin:.5em 0;padding-left:1.5em}.message-bubble-modern-text li{margin:.25em 0}.message-bubble-modern-text a{color:var(--accent-secondary);text-decoration:underline;text-underline-offset:2px}.message-bubble-modern.user .message-bubble-modern-text a{color:#ffffffe6}.message-bubble-modern-text blockquote{margin:.75em 0;padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border-left:3px solid var(--accent-primary);border-radius:0 var(--radius-md) var(--radius-md) 0}.message-bubble-modern.user .message-bubble-modern-text blockquote{background:#ffffff1a;border-left-color:#ffffff80}.message-bubble-modern-text table{width:100%;margin:.75em 0;border-collapse:collapse;font-size:var(--text-sm)}.message-bubble-modern-text th,.message-bubble-modern-text td{padding:var(--space-2);border:1px solid var(--border-default);text-align:left}.message-bubble-modern-text th{background:var(--bg-tertiary);font-weight:var(--font-semibold)}.message-bubble-modern.user .message-bubble-modern-text th,.message-bubble-modern.user .message-bubble-modern-text td{border-color:#fff3}.message-bubble-modern.user .message-bubble-modern-text th{background:#ffffff1a}.message-bubble-modern-text code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-0-5) var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm)}.message-bubble-modern.user .message-bubble-modern-text code{background:#ffffff26;border-color:#fff3}.code-block-wrapper{position:relative;margin:.75em 0;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-neutral-900);border:1px solid var(--border-default)}.theme-light .code-block-wrapper{background:var(--color-neutral-100)}.code-copy-btn{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-medium);color:var(--text-muted);cursor:pointer;transition:var(--transition-all)}.code-copy-btn:hover{background:var(--hover-overlay);border-color:var(--border-strong);color:var(--text-primary)}.code-copy-btn.success{background:#10b98126;border-color:var(--color-success-500);color:var(--color-success-500)}.message-bubble-modern-text pre{margin:0;padding:var(--space-4);padding-top:var(--space-10);background:transparent;border:none;border-radius:0;overflow-x:auto}.message-bubble-modern-text pre code{padding:0;background:transparent;border:none;font-size:var(--text-sm)}.streaming-cursor{display:inline-block;width:2px;height:1.2em;background:var(--accent-primary);margin-left:2px;animation:pulse 1s ease-in-out infinite;vertical-align:text-bottom}.message-bubble-modern.user .streaming-cursor{background:#fff}.message-bubble-modern-actions{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.message-bubble-modern:hover .message-bubble-modern-actions,.message-bubble-modern-actions:focus-within{opacity:1}.message-bubble-modern-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-all)}.message-bubble-modern-action-btn:hover{background:var(--hover-overlay);border-color:var(--border-strong);color:var(--text-primary)}.message-bubble-modern-delete-btn:hover{background:#ef44441a;border-color:var(--color-error-500);color:var(--color-error-500)}.message-bubble-modern-error{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef44441a;border:1px solid rgb(239 68 68 / .3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-error-500)}.message-bubble-modern-retry-btn{margin-left:auto;padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--color-error-500);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-error-500);cursor:pointer;transition:var(--transition-all)}.message-bubble-modern-retry-btn:hover{background:#ef44441a}.message-bubble-modern-loading{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.message-bubble-modern-typing-dots{display:flex;gap:var(--space-1)}.message-bubble-modern-typing-dots span{width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:typing 1.4s ease-in-out infinite}.message-bubble-modern-typing-dots span:nth-child(1){animation-delay:0ms}.message-bubble-modern-typing-dots span:nth-child(2){animation-delay:.2s}.message-bubble-modern-typing-dots span:nth-child(3){animation-delay:.4s}.message-images-container{margin:var(--space-3) 0;display:flex;flex-direction:column;gap:var(--space-3)}.message-embedded-image{max-width:100%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}@media (max-width: 768px){.message-bubble-modern{gap:var(--space-2)}.message-bubble-modern-avatar>svg:first-child,.message-bubble-modern-avatar>.lucide:first-child{width:32px;height:32px;padding:6px}.message-bubble-modern-body{padding:var(--space-2-5) var(--space-3)}.message-bubble-modern-text{font-size:var(--text-sm)}.message-bubble-modern-actions{opacity:1}}@media (max-width: 480px){.message-bubble-modern-avatar>svg:first-child,.message-bubble-modern-avatar>.lucide:first-child{width:28px;height:28px;padding:5px}.message-bubble-modern-header{flex-direction:column;align-items:flex-start;gap:var(--space-0-5)}.message-bubble-modern-role{font-size:var(--text-xs)}.message-bubble-modern-timestamp{font-size:10px}}.image-display-simple{margin:16px 0;border-radius:12px;overflow:hidden;max-width:100%;display:inline-block}.generated-image-simple{max-width:100%;max-height:512px;object-fit:contain;border-radius:8px;display:block;-webkit-user-select:none;user-select:none;width:100%;height:auto;transition:opacity .3s ease}.generated-image-simple.loading{opacity:0}.generated-image-simple.loaded{opacity:1}.image-loading{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--polychat-text-secondary, #6b7280);font-size:14px;min-height:200px;background:var(--polychat-bg-secondary, #f8fafc);border-radius:8px}.loading-spinner{width:32px;height:32px;border:3px solid var(--polychat-border, #e5e7eb);border-top:3px solid var(--polychat-accent-primary, #8b5cf6);border-radius:50%;animation:spin 1s linear infinite}.image-display-error{padding:20px;text-align:center;background:var(--polychat-error-bg, #fef2f2);border:1px solid var(--polychat-error-border, #fecaca);border-radius:8px;color:var(--polychat-error-text, #dc2626);max-width:100%}.error-content{display:flex;flex-direction:column;align-items:center;gap:12px}.error-link{padding:8px 16px;background:var(--polychat-accent-primary, #8b5cf6);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;text-decoration:none;transition:background-color .2s ease}.error-link:hover{background:#7c3aed}@media (max-width: 768px){.generated-image-simple{max-height:300px}}[data-theme=dark] .image-loading{background:var(--polychat-bg-secondary-dark, #111827);color:var(--polychat-text-secondary-dark, #9ca3af)}.error-boundary-container{display:flex;align-items:center;justify-content:center;height:100%;width:100%;padding:var(--space-4);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border-radius:var(--radius-lg)}.error-boundary-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:400px;padding:var(--space-6);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-glass)}.error-boundary-icon{margin-bottom:var(--space-4);padding:var(--space-3);background:#ef44441a;border-radius:var(--radius-full)}.error-boundary-title{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.error-boundary-message{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}.error-boundary-details{width:100%;margin-bottom:var(--space-4);text-align:left}.error-boundary-details summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--space-2);-webkit-user-select:none;user-select:none}.error-boundary-details pre{background:var(--bg-tertiary);padding:var(--space-3);border-radius:var(--radius-md);overflow-x:auto;font-family:var(--font-mono);font-size:10px;color:var(--color-error-500);border:1px solid var(--border-subtle);max-height:150px}.error-boundary-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-4);background:var(--accent-gradient);color:#fff;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-sm)}.error-boundary-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);filter:brightness(1.1)}.error-boundary-button:active{transform:translateY(0)}.multi-chat-container-modern{height:100%;overflow:hidden;background:transparent;display:flex;flex-direction:column}.single-chat-modern{height:100%;display:flex;flex-direction:column;min-height:0;margin:var(--space-4)}.single-chat-modern .chat-header-modern{background:none;border-bottom:1px solid var(--border-subtle);box-shadow:none;padding-left:0;padding-right:0}.multi-chat-grid-modern{display:grid;gap:var(--space-4);height:100%;padding:var(--space-4);overflow:hidden;min-height:0}.multi-chat-grid-modern.grid-2{grid-template-columns:1fr 1fr}.multi-chat-grid-modern.grid-3{grid-template-columns:1fr 1fr 1fr}.multi-chat-grid-modern .chat-session-modern{max-height:70vh}.multi-chat-grid-modern .chat-messages-modern{max-height:50vh}.chat-session-modern{display:flex;flex-direction:column;height:100%;min-height:0;max-height:none;background:none!important}.chat-window-modern{display:flex;flex-direction:column;height:100%;background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-glass);overflow:hidden;transition:var(--transition-all);min-height:0}.chat-window-modern:hover{box-shadow:var(--shadow-glass-lg);border-color:var(--accent-primary)}.chat-header-modern{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-6);background:var(--bg-glass-strong);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.chat-header-modern-info{display:flex;align-items:center;gap:var(--space-2);margin-left:var(--space-3)}.chat-header-modern-details{display:flex;flex-direction:column;min-width:0;max-width:40vw}.chat-header-modern-details>*:not(.inline-model-picker){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header-modern-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--accent-gradient);color:var(--text-inverse);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.chat-header-modern-title{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;line-height:var(--leading-tight)}.chat-header-modern-subtitle{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:38vw}.chat-header-modern-status{display:flex;align-items:center;gap:var(--space-1)}.chat-status-indicator-modern{width:8px;height:8px;border-radius:var(--radius-full);transition:var(--transition-all)}.chat-status-indicator-modern.active{background:var(--color-success-500);box-shadow:0 0 0 2px #10b9814d}.chat-status-indicator-modern.loading{background:var(--color-warning-500);animation:pulse 1.5s var(--ease-in-out) infinite}.chat-status-text-modern{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.chat-model-inline-select{-webkit-appearance:none;appearance:none;background:var(--bg-glass);border:1px solid var(--border-default);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);padding:var(--space-1-5) var(--space-6) var(--space-1-5) var(--space-2-5);border-radius:var(--radius-lg);cursor:pointer;outline:none;box-shadow:var(--shadow-inner);transition:var(--transition-all)}.chat-model-inline-select:hover{background:var(--selected-bg);border-color:var(--accent-primary);box-shadow:var(--shadow-md)}.chat-model-inline-select:focus-visible{outline:var(--ring-width) solid var(--ring-color);outline-offset:var(--ring-offset)}.chat-model-inline-select option{background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}.inline-model-picker{position:relative;display:inline-block}.imp-trigger{display:inline-flex;align-items:center;gap:var(--space-1-5);background:var(--bg-glass);border:1px solid var(--border-default);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-xs)}.theme-light .imp-trigger{background:var(--bg-glass);border-color:var(--border-default);color:var(--text-primary)}.imp-trigger:hover{background:var(--selected-bg);border-color:var(--accent-primary);box-shadow:var(--shadow-md),var(--shadow-glow-sm)}.inline-model-picker.open .imp-trigger{background:var(--accent-gradient);color:#fff;border-color:var(--accent-primary);box-shadow:var(--shadow-md),var(--shadow-glow-md)}.imp-caret{transition:transform var(--duration-slow) var(--ease-elastic);opacity:.75}.inline-model-picker.open .imp-caret{transform:rotate(180deg);opacity:1}.imp-pop{position:absolute;top:110%;left:0;z-index:var(--z-popover);min-width:280px;max-width:340px;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3-5);box-shadow:var(--shadow-2xl);animation:scaleIn var(--duration-slow) var(--ease-out)}.theme-light .imp-pop{background:var(--bg-glass-strong);border-color:var(--border-strong);box-shadow:var(--shadow-xl)}.imp-search{display:flex;align-items:center;gap:var(--space-2);background:var(--bg-tertiary);border:1px solid var(--border-subtle);padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-lg);margin-bottom:var(--space-2-5);transition:var(--transition-all)}.imp-search:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.imp-search input{background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--text-xs);font-family:var(--font-sans);flex:1}.imp-search input::placeholder{color:var(--text-muted)}.imp-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1-5)}.imp-item{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--bg-tertiary);border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-2-5);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all);position:relative;font-family:var(--font-sans)}.imp-item:hover,.imp-item:focus{background:var(--selected-bg);border-color:var(--accent-primary);outline:none;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.imp-name{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight)}.imp-desc{font-size:10px;font-family:var(--font-mono);color:var(--text-secondary);opacity:.85;margin-top:var(--space-0-5);letter-spacing:var(--tracking-wide)}.imp-meta-row{display:flex;flex-wrap:wrap;gap:var(--space-1-5);align-items:center;margin-top:var(--space-1)}.imp-provider{font-size:10px;font-family:var(--font-mono);background:#8b5cf626;color:var(--accent-primary);padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase}.imp-price{font-size:10px;font-family:var(--font-mono);color:var(--text-secondary);background:var(--hover-overlay);padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm)}.imp-price-free{background:#10b98126;color:var(--color-success-500);border:1px solid rgb(16 185 129 / .4)}.imp-price-paid{background:#3b82f626;color:var(--color-info-500);border:1px solid rgb(59 130 246 / .35)}.imp-price-free:hover,.imp-price-free:focus{border-color:#10b98199}.imp-price-paid:hover,.imp-price-paid:focus{border-color:#3b82f68c}.imp-empty{font-size:var(--text-xs);font-style:italic;text-align:center;padding:var(--space-3) 0 var(--space-1);color:var(--text-muted)}.imp-list::-webkit-scrollbar{width:8px}.imp-list::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-full)}.imp-list::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:var(--radius-full)}.chat-content-modern{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.chat-messages-modern{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);scroll-behavior:smooth;min-height:250px;max-height:60vh}.chat-messages-modern::-webkit-scrollbar{width:10px}.chat-messages-modern::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-xl)}.chat-messages-modern::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:var(--radius-xl);border:2px solid var(--scrollbar-track)}.chat-messages-modern::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}.chat-welcome-modern{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8);margin:var(--space-6) 0;background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-default);border-radius:var(--radius-2xl);animation:fadeIn var(--duration-slower) var(--ease-out)}.chat-welcome-modern-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--accent-gradient);border-radius:var(--radius-2xl);margin-bottom:var(--space-5);color:#fff;animation:float 3s var(--ease-in-out) infinite}.chat-welcome-modern-content{max-width:300px}.chat-welcome-modern-title{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.chat-welcome-modern-subtitle{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);margin:0 0 var(--space-5) 0;opacity:.8}.chat-welcome-modern-features{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}.chat-welcome-modern-feature{font-family:var(--font-mono);font-size:10px;background:var(--bg-tertiary);color:var(--text-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);border:1px solid var(--border-subtle);transition:var(--transition-all)}.chat-welcome-modern-feature:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-1px)}.chat-stream-progress{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2);font-family:var(--font-mono);font-size:10px;color:var(--text-secondary)}.chat-stream-bar{flex:1;height:6px;background:var(--hover-overlay);border-radius:var(--radius-sm);overflow:hidden;position:relative}.chat-stream-bar-fill{height:100%;background:var(--accent-gradient);transition:width var(--duration-normal) var(--ease-out);width:10%}.chat-stream-bar-fill.w-15{width:15%}.chat-stream-bar-fill.w-20{width:20%}.chat-stream-bar-fill.w-25{width:25%}.chat-stream-bar-fill.w-30{width:30%}.chat-stream-bar-fill.w-35{width:35%}.chat-stream-bar-fill.w-40{width:40%}.chat-stream-bar-fill.w-45{width:45%}.chat-stream-bar-fill.w-50{width:50%}.chat-stream-bar-fill.w-55{width:55%}.chat-stream-bar-fill.w-60{width:60%}.chat-stream-bar-fill.w-65{width:65%}.chat-stream-bar-fill.w-70{width:70%}.chat-stream-bar-fill.w-75{width:75%}.chat-stream-bar-fill.w-80{width:80%}.chat-stream-bar-fill.w-85{width:85%}.chat-stream-bar-fill.w-90{width:90%}.chat-stream-metric{white-space:nowrap}.chat-footer-modern{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);flex-shrink:0}.chat-footer-modern-info{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.chat-footer-modern-error{font-family:var(--font-mono);font-size:9px;color:var(--color-error-500);text-transform:uppercase;letter-spacing:var(--tracking-wide);animation:pulse 2s var(--ease-in-out) infinite}.chat-empty-state-modern{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:var(--space-8);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);margin:var(--space-4);animation:fadeIn var(--duration-slower) var(--ease-out)}.chat-empty-state-modern-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:var(--bg-tertiary);border:2px solid var(--border-default);border-radius:var(--radius-3xl);margin-bottom:var(--space-6);color:var(--text-muted);opacity:.7}.chat-empty-state-modern-title{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-3) 0}.chat-empty-state-modern-description{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);margin:0;opacity:.8;max-width:300px}@media (max-width: 1024px){.multi-chat-grid-modern.grid-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.multi-chat-grid-modern.grid-3 .chat-session-modern:nth-child(3){grid-column:1 / -1}}@media (max-width: 768px){.multi-chat-grid-modern{grid-template-columns:1fr!important;grid-template-rows:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-2);padding:var(--space-2)}.chat-session-modern{min-height:300px;max-height:60vh}.chat-header-modern{padding:var(--space-2) var(--space-3)}.chat-messages-modern{padding:var(--space-2) var(--space-3);min-height:200px}.chat-welcome-modern{padding:var(--space-5);margin:var(--space-3) 0}.chat-welcome-modern-icon{width:48px;height:48px}.chat-welcome-modern-title{font-size:var(--text-base)}}@media (max-width: 480px){.chat-header-modern-details{display:none}.chat-footer-modern{padding:var(--space-1) var(--space-2)}.chat-empty-state-modern{margin:var(--space-2);padding:var(--space-5)}.chat-empty-state-modern-icon{width:60px;height:60px}.chat-session-modern{min-height:350px}.chat-messages-modern{padding:var(--space-2);min-height:200px}.chat-empty-state-modern-title{font-size:var(--text-lg)}.chat-empty-state-modern-description{font-size:var(--text-xs)}}.chat-input-modern-container{width:100%;max-width:900px;margin:0 auto;position:relative;padding:0}.chat-input-template-indicator{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--accent-gradient);color:#fff;font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-bottom:0;animation:slideInDown var(--duration-normal) var(--ease-out)}.chat-input-template-indicator svg{animation:pulse 2s ease-in-out infinite}.chat-input-modern-wrapper{background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-4);transition:var(--transition-all)}.chat-input-modern-wrapper:focus-within{border-color:var(--border-strong);box-shadow:none}.chat-input-suggestions-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);max-height:160px;overflow-y:auto;animation:fadeIn var(--duration-normal) var(--ease-out)}.chat-input-suggestions-bar::-webkit-scrollbar{width:4px}.chat-input-suggestions-bar::-webkit-scrollbar-track{background:transparent}.chat-input-suggestions-bar::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:var(--radius-full)}.chat-input-suggestion-btn{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-all);white-space:nowrap;flex-shrink:0;position:relative;animation:slideInUp var(--duration-normal) var(--ease-out) backwards}.chat-input-suggestion-btn:nth-child(1){animation-delay:0ms}.chat-input-suggestion-btn:nth-child(2){animation-delay:50ms}.chat-input-suggestion-btn:nth-child(3){animation-delay:.1s}.chat-input-suggestion-btn:nth-child(4){animation-delay:.15s}.chat-input-suggestion-btn:nth-child(5){animation-delay:.2s}.chat-input-suggestion-btn:hover{background:var(--hover-overlay);border-color:var(--accent-primary);color:var(--text-primary);transform:translateY(-2px)}.chat-input-suggestion-btn:active{transform:translateY(0)}.chat-input-suggestion-btn.suggestion-0{border-color:#fbbf244d}.chat-input-suggestion-btn.suggestion-0:hover{border-color:#fbbf2499;background:#fbbf241a}.chat-input-suggestion-btn.suggestion-1{border-color:#3b82f64d}.chat-input-suggestion-btn.suggestion-1:hover{border-color:#3b82f699;background:#3b82f61a}.chat-input-suggestion-btn.suggestion-2{border-color:#10b9814d}.chat-input-suggestion-btn.suggestion-2:hover{border-color:#10b98199;background:#10b9811a}.chat-input-suggestion-btn.show-more{border-color:var(--accent-primary);color:var(--accent-secondary)}.chat-input-suggestion-btn.show-more:hover{background:#8b5cf626}.suggestion-icon{font-size:var(--text-base);flex-shrink:0}.suggestion-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-badge{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:3;animation:pulse 2s infinite}.suggestion-badge.trending{background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff}.suggestion-badge.popular{background:linear-gradient(135deg,#3b82f6,#60a5fa);color:#fff}.suggestion-badge.recommended{background:linear-gradient(135deg,#10b981,#34d399);color:#fff}.chat-input-modern-input-area{position:relative;display:flex;align-items:flex-end;gap:var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3);transition:var(--transition-all);min-height:56px}.chat-input-modern-input-area:focus-within{border-color:var(--border-strong);box-shadow:0 0 0 3px #ffffff1a}.chat-input-modern-textarea{flex:1;background:transparent;border:none;outline:none;resize:none;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);line-height:var(--leading-relaxed);min-height:24px;max-height:200px;padding:var(--space-1) 0}.chat-input-modern-textarea::placeholder{color:var(--text-muted)}.chat-input-modern-textarea:disabled{opacity:.6;cursor:not-allowed}.chat-input-modern-textarea:focus-visible{outline:none}.chat-input-modern-textarea::-webkit-scrollbar{width:4px}.chat-input-modern-textarea::-webkit-scrollbar-thumb{background:var(--accent-muted);border-radius:var(--radius-full)}.chat-input-clear-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-colors);flex-shrink:0}.chat-input-clear-btn:hover{background:#ef44441a;color:var(--color-error-500)}.chat-input-modern-char-counter{position:absolute;bottom:var(--space-1);left:var(--space-3);font-size:10px;color:var(--text-muted);pointer-events:none;opacity:.7}.chat-input-modern-send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-muted);cursor:pointer;transition:var(--transition-all);flex-shrink:0}.chat-input-modern-send-btn:hover:not(:disabled){background:var(--hover-overlay);border-color:var(--border-strong);color:var(--text-primary)}.chat-input-modern-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-input-modern-send-btn.active{background:var(--accent-gradient);border-color:transparent;color:#fff;box-shadow:var(--shadow-md)}.chat-input-modern-send-btn.active:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-lg),var(--shadow-glow-sm)}.chat-input-modern-send-btn svg{width:18px;height:18px}.chat-input-modern-spinner{width:18px;height:18px;border:2px solid transparent;border-top-color:currentColor;border-right-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.chat-input-modern-shortcuts{display:none;justify-content:center;gap:var(--space-4);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}@media (min-width: 768px){.chat-input-modern-shortcuts{display:flex}}.chat-input-modern-shortcut kbd{padding:var(--space-0-5) var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:10px;margin:0 var(--space-1)}.chat-input-suggestion-btn.image-generator-btn{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border-color:transparent;font-weight:var(--font-semibold)}.chat-input-suggestion-btn.image-generator-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 4px 16px #8b5cf666}@media (max-width: 768px){.chat-input-modern-wrapper{padding:var(--space-3);border-radius:var(--radius-xl)}.chat-input-suggestions-bar{max-height:120px;padding:var(--space-2);gap:var(--space-1-5)}.chat-input-suggestion-btn{font-size:11px;padding:var(--space-1-5) var(--space-2-5)}.chat-input-modern-input-area{padding:var(--space-2);min-height:48px}.chat-input-modern-send-btn{width:36px;height:36px}}@media (max-width: 480px){.chat-input-modern-wrapper{padding:var(--space-2)}.chat-input-suggestions-bar{gap:var(--space-1);margin-bottom:var(--space-2)}.chat-input-suggestion-btn{font-size:10px;padding:var(--space-1) var(--space-2)}.suggestion-icon{font-size:var(--text-sm)}}.model-switcher{position:relative;display:inline-block;font-family:var(--font-sans)}.model-switcher-pill{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-default);color:var(--text-primary);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-tight);transition:var(--transition-all);box-shadow:var(--shadow-xs)}.theme-light .model-switcher-pill{background:var(--bg-glass);border-color:var(--border-default);color:var(--text-primary)}.model-switcher-pill:hover{background:var(--selected-bg);border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-glow-sm)}.model-switcher-pill.open{background:var(--accent-gradient);color:#fff;border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-lg),var(--shadow-glow-md)}.model-switcher-label{font-weight:var(--font-medium);letter-spacing:var(--tracking-normal);transition:var(--transition-all)}.model-switcher-pill:hover .model-switcher-label{letter-spacing:var(--tracking-wide)}.model-switcher-pill.open .model-switcher-label{font-weight:var(--font-semibold)}.model-switcher-caret{transition:transform var(--duration-slow) var(--ease-elastic);opacity:.7}.model-switcher-pill.open .model-switcher-caret{transform:rotate(180deg);opacity:1}.model-switcher-popover{position:absolute;top:100%;left:0;margin-top:var(--space-2);min-width:280px;max-width:340px;z-index:var(--z-popover);background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-2xl);animation:scaleIn var(--duration-slow) var(--ease-out)}.theme-light .model-switcher-popover{background:var(--bg-glass-strong);border-color:var(--border-strong);box-shadow:var(--shadow-xl)}.model-switcher-section{margin-bottom:var(--space-4)}.model-switcher-section:last-child{margin-bottom:0}.model-switcher-section.add{margin-top:var(--space-1);padding-top:var(--space-2-5);border-top:1px dashed var(--border-default)}.model-switcher-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2-5)}.model-switcher-section-title{font-size:var(--text-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);margin:0 0 var(--space-2-5) var(--space-0-5);font-weight:var(--font-semibold);font-family:var(--font-sans)}.model-switcher-counter{font-size:10px;background:var(--selected-bg);border:1px solid rgb(139 92 246 / .2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--accent-primary);font-weight:var(--font-medium)}.model-switcher-window-buttons{display:flex;gap:var(--space-2);margin:var(--space-1) 0 var(--space-3-5) 0}.window-count-btn{flex:1;position:relative;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;padding:var(--space-2) 0;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;overflow:hidden;transition:var(--transition-all);box-shadow:var(--shadow-inner)}.window-count-btn:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgb(139 92 246 / .25),transparent 60%);opacity:0;transition:opacity var(--duration-slow) var(--ease-out)}.window-count-btn:hover{color:#fff;border-color:var(--accent-primary);background:var(--selected-bg);transform:translateY(-2px);box-shadow:var(--shadow-md),var(--shadow-glow-sm)}.window-count-btn:hover:before{opacity:1}.window-count-btn:focus-visible{outline:var(--ring-width) solid var(--ring-color);outline-offset:var(--ring-offset)}.window-count-btn.active{background:var(--accent-gradient);color:#fff;border-color:var(--accent-primary);box-shadow:var(--shadow-lg),var(--shadow-glow-md)}.window-count-btn.active:before{opacity:.55}.model-switcher-search{position:relative;display:flex;align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);margin-bottom:var(--space-3);gap:var(--space-2);transition:var(--transition-all)}.model-switcher-search:focus-within{border-color:var(--accent-primary);background:var(--bg-secondary);box-shadow:0 0 0 3px #8b5cf61a}.model-switcher-search input{background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--text-xs);width:100%;font-family:var(--font-sans);font-weight:var(--font-normal)}.model-switcher-search input::placeholder{color:var(--text-muted)}.model-switcher-search svg{opacity:.6;color:var(--accent-primary);transition:var(--transition-colors)}.model-switcher-search:focus-within svg{opacity:.9;color:var(--accent-secondary)}.model-switcher-active-list,.model-switcher-available-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1-5);max-height:200px;overflow-y:auto}.model-switcher-active-list::-webkit-scrollbar,.model-switcher-available-list::-webkit-scrollbar{width:8px}.model-switcher-active-list::-webkit-scrollbar-track,.model-switcher-available-list::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-full)}.model-switcher-active-list::-webkit-scrollbar-thumb,.model-switcher-available-list::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:var(--radius-full)}.model-switcher-active-item{display:flex;align-items:center;justify-content:space-between;background:var(--selected-bg);border:1px solid rgb(139 92 246 / .15);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);transition:var(--transition-all);position:relative;overflow:hidden}.model-switcher-active-item:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgb(139 92 246 / .3),transparent);opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}.model-switcher-active-item:hover{background:#8b5cf61f;border-color:#8b5cf640;transform:translateY(-1px)}.model-switcher-active-item:hover:before{opacity:1}.model-switcher-active-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;font-weight:var(--font-medium);color:var(--text-primary)}.pending-indicator{display:inline-block;width:8px;height:8px;margin-left:var(--space-1-5);border-radius:var(--radius-full);background:var(--accent-gradient);box-shadow:0 0 0 2px #8b5cf640,0 0 6px 2px #8b5cf666;animation:pulse 1.6s var(--ease-in-out) infinite}.model-switcher-remove{background:#ef444426;border:1px solid rgb(239 68 68 / .3);color:var(--color-error-500);border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;cursor:pointer;transition:var(--transition-all);opacity:.8}.model-switcher-remove:hover{background:linear-gradient(135deg,var(--color-error-500) 0%,var(--color-error-600) 100%);color:#fff;opacity:1;transform:scale(1.05);box-shadow:0 4px 12px -2px #ef44444d}.model-switcher-available-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2-5);background:var(--bg-tertiary);border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-xs);color:var(--text-primary);cursor:pointer;transition:var(--transition-all);text-align:left;position:relative;overflow:hidden}.model-switcher-available-btn:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgb(139 92 246 / .4),transparent);opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}.model-switcher-available-btn:hover:not(:disabled){background:var(--selected-bg);border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.model-switcher-available-btn:hover:not(:disabled):before{opacity:1}.model-switcher-available-btn:disabled{opacity:.3;cursor:not-allowed}.model-switcher-model-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;font-weight:var(--font-medium)}.model-switcher-available-btn svg{color:var(--accent-primary);transition:var(--transition-all)}.model-switcher-available-btn:hover:not(:disabled) svg{color:var(--accent-secondary);transform:scale(1.1)}.model-switcher-empty,.model-switcher-loading{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-3) 0;opacity:.8;font-style:italic}.model-switcher-footer{margin-top:var(--space-3-5);padding-top:var(--space-2-5);border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end}.model-switcher-settings-link{background:var(--bg-tertiary);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--text-xs);padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:var(--space-1-5);cursor:pointer;transition:var(--transition-all);font-family:var(--font-sans);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide)}.model-switcher-settings-link:hover{background:var(--selected-bg);color:#fff;box-shadow:var(--shadow-md),var(--shadow-glow-sm);transform:translateY(-1px)}.model-switcher-settings-link:active{transform:translateY(0) scale(.97)}@media (max-width: 640px){.model-switcher-popover{left:50%;transform:translate(-50%);min-width:260px;width:85vw;max-width:320px}}.settings-modal-modern-overlay{position:fixed;inset:0;background:var(--bg-overlay);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);animation:fadeIn var(--duration-normal) var(--ease-out)}.settings-modal-modern{position:relative;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);width:90%;max-width:600px;max-height:90vh;overflow:hidden;animation:scaleIn var(--duration-slow) var(--ease-out)}.settings-modal-modern-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-6) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary)}.settings-modal-modern-title{display:flex;align-items:center;gap:var(--space-3)}.settings-modal-modern-title svg{color:var(--accent-primary)}.settings-modal-modern-title h2{font-family:var(--font-sans);font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.settings-modal-modern-close{position:absolute;top:var(--space-4);right:var(--space-4);z-index:calc(var(--z-modal) + 2);display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-xl);color:var(--text-secondary);cursor:pointer;transition:var(--transition-all)}.settings-modal-modern-close:hover{background:#ef444426;border-color:#ef444466;color:var(--color-error-500);transform:scale(1.05)}.settings-modal-modern-close:active{transform:scale(.95)}.settings-modal-modern-content{padding:var(--space-5);max-height:60vh;overflow-y:auto}.settings-modal-modern-content::-webkit-scrollbar{width:6px}.settings-modal-modern-content::-webkit-scrollbar-track{background:transparent}.settings-modal-modern-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}.settings-modal-modern-content::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.settings-section-modern{margin-bottom:var(--space-6);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);transition:var(--transition-all)}.settings-section-modern:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-sm)}.flash-highlight{position:relative;animation:flashBorder 2.2s var(--ease-out)}@keyframes flashBorder{0%{box-shadow:0 0 #8b5cf600,0 0 #fff0;border-color:var(--accent-primary)}10%{box-shadow:0 0 0 3px #8b5cf666,0 0 20px -4px #8b5cf699}35%{box-shadow:0 0 0 2px #8b5cf680,0 0 12px -2px #8b5cf680}65%{box-shadow:0 0 0 4px #8b5cf640,0 0 8px -2px #8b5cf64d}to{box-shadow:0 0 #8b5cf600,0 0 #8b5cf600}}.settings-section-modern-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.settings-section-modern-header svg{color:var(--accent-primary)}.settings-section-modern-header h3{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;flex:1}.settings-section-modern-badge{font-family:var(--font-mono);font-size:9px;font-weight:var(--font-semibold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.settings-section-modern-badge.required{background:var(--color-error-500);color:#fff}.settings-section-modern-badge.optional{background:var(--color-info-500);color:#fff}.settings-section-modern-badge.experimental{background:var(--color-warning-500);color:var(--text-inverse)}.settings-field-modern{margin-bottom:var(--space-4)}.settings-field-modern:last-child{margin-bottom:0}.settings-label-modern{display:block;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.settings-input-modern{width:100%;font-family:var(--font-mono);font-size:var(--text-sm);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);outline:none;transition:var(--transition-all)}.settings-input-modern:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf626,var(--shadow-glow-sm)}.settings-input-modern::placeholder{color:var(--text-muted);opacity:.7}.settings-select-modern{width:100%;font-family:var(--font-mono);font-size:var(--text-sm);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);outline:none;cursor:pointer;transition:var(--transition-all)}.settings-select-modern:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf626}.settings-textarea-modern{width:100%;font-family:var(--font-mono);font-size:var(--text-sm);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);outline:none;transition:var(--transition-all);resize:vertical;min-height:80px;line-height:var(--leading-relaxed)}.settings-textarea-modern:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf626,var(--shadow-glow-sm)}.settings-textarea-modern::placeholder{color:var(--text-muted);opacity:.7}.settings-help-modern{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);opacity:.8}.settings-help-modern svg{flex-shrink:0}.settings-link-modern{color:var(--accent-primary);text-decoration:none;transition:var(--transition-colors)}.settings-link-modern:hover{color:var(--accent-secondary);text-decoration:underline}.settings-radio-group-modern{display:flex;flex-wrap:wrap;gap:var(--space-2)}.settings-radio-chip-modern{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-2-5);border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;background:var(--bg-tertiary);transition:var(--transition-all)}.settings-radio-chip-modern input{display:none}.settings-radio-chip-modern span{font-size:var(--text-xs);font-weight:var(--font-medium)}.settings-radio-chip-modern:hover{border-color:var(--accent-primary);background:var(--selected-bg)}.settings-radio-chip-modern.active{background:var(--accent-gradient);color:#fff;border-color:var(--accent-primary)}.settings-toggle-modern{display:flex;align-items:center;gap:var(--space-2)}.settings-toggle-modern input[type=checkbox]{width:40px;height:22px;-webkit-appearance:none;appearance:none;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);position:relative;cursor:pointer;transition:var(--transition-all)}.settings-toggle-modern input[type=checkbox]:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--text-muted);border-radius:var(--radius-full);transition:var(--transition-all)}.settings-toggle-modern input[type=checkbox]:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.settings-toggle-modern input[type=checkbox]:checked:before{left:20px;background:#fff}.settings-toggle-modern span{font-size:var(--text-sm);color:var(--text-secondary)}.settings-model-enhanced-container{display:flex;flex-direction:column;gap:var(--space-3-5)}.model-enhanced-search{display:flex;align-items:center;gap:var(--space-2);background:var(--bg-tertiary);border:1px solid var(--border-default);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-xl);position:relative;backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));transition:var(--transition-all)}.model-enhanced-search:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf626}.model-enhanced-search svg{color:var(--text-muted);flex-shrink:0}.model-enhanced-search input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary)}.model-enhanced-search input::placeholder{color:var(--text-muted)}.model-search-clear{background:var(--hover-overlay);border:1px solid var(--border-subtle);color:var(--text-secondary);width:24px;height:24px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-all)}.model-search-clear:hover{background:var(--active-overlay);color:var(--text-primary)}.theme-light .model-enhanced-search{background:var(--bg-glass);border-color:var(--border-default)}.theme-light .model-enhanced-search:focus-within{box-shadow:0 0 0 3px #0000000f}.model-enhanced-list{display:flex;flex-direction:column;max-height:260px;overflow-y:auto;gap:var(--space-1-5);padding:var(--space-1) var(--space-0-5)}.model-enhanced-list::-webkit-scrollbar{width:6px}.model-enhanced-list::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:var(--radius-full);opacity:.35}.model-enhanced-list::-webkit-scrollbar-thumb:hover{opacity:.55}.model-enhanced-empty{font-size:var(--text-xs);font-style:italic;opacity:.7;text-align:center;padding:var(--space-3) 0;color:var(--text-muted)}.model-option-header{display:grid;grid-template-columns:1fr 60px 110px 34px;font-size:10px;text-transform:uppercase;padding:var(--space-1-5) var(--space-3);margin:var(--space-1) var(--space-0-5);border-radius:var(--radius-md);background:var(--hover-overlay);font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border-subtle);letter-spacing:var(--tracking-wider)}.hdr-name{text-align:left}.hdr-ctx,.hdr-price,.hdr-sel{text-align:center}.model-option-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2-5) var(--space-3-5);border:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:var(--radius-lg);cursor:pointer;position:relative;overflow:hidden;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);transition:var(--transition-all)}.model-option-item:before{content:"";position:absolute;inset:0;opacity:0;background:radial-gradient(circle at 30% 20%,rgb(139 92 246 / .18),transparent 70%);transition:opacity var(--duration-slow) var(--ease-out)}.model-option-item:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.model-option-item:hover:before{opacity:1}.model-option-item.active{border-color:var(--accent-primary);background:var(--selected-bg);box-shadow:0 0 0 1px #8b5cf666,0 0 0 4px #8b5cf626}.model-option-item.grid-layout{display:grid;grid-template-columns:1fr 60px 110px 34px;align-items:center;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-md);gap:var(--space-2);min-height:42px;overflow:visible;position:relative}.model-option-item.grid-layout:hover,.model-option-item.grid-layout.focus{z-index:100}.model-option-item.grid-layout *{line-height:var(--leading-tight)}.model-option-item.grid-layout:nth-of-type(odd){background:var(--bg-secondary)}.model-option-item.grid-layout:hover{background:var(--hover-overlay);border-color:var(--accent-primary)}.model-option-item.grid-layout.active{background:var(--selected-bg);border-color:var(--accent-primary)}.model-option-item.grid-layout.focus:not(.active){outline:2px solid rgb(139 92 246 / .5);outline-offset:0;border-color:#8b5cf680;background:#8b5cf61a}.model-option-item.grid-layout:focus-visible{outline:2px solid var(--accent-primary)}.model-option-item.grid-layout .name-cell{display:flex;flex-direction:row;align-items:center;gap:var(--space-2);min-width:0}.model-option-name{font-weight:var(--font-semibold);letter-spacing:var(--tracking-normal);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.model-option-provider{font-size:10px;letter-spacing:var(--tracking-wide);opacity:.6;font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;padding:var(--space-0-5) var(--space-1-5);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--hover-overlay)}.model-option-item.grid-layout .ctx-cell{text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary)}.model-option-item.grid-layout .price-cell{text-align:center;font-family:var(--font-mono);font-size:10px;line-height:var(--leading-snug);white-space:normal}.price-block{display:inline-block;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);background:var(--hover-overlay);border:1px solid var(--border-subtle);min-width:90px;white-space:pre-line}.price-block.free{background:#10b98126;color:var(--color-success-500);border-color:#10b98166}.price-block.paid{background:#3b82f626;color:var(--color-info-500);border-color:#3b82f659}.price-block-tooltip{position:relative;cursor:help;outline:none}.price-block-tooltip:focus-visible{box-shadow:0 0 0 2px var(--accent-primary)}.price-block-tooltip[data-tooltip]:hover:after,.price-block-tooltip[data-tooltip]:focus:after{content:attr(data-tooltip);white-space:pre-line;position:absolute;left:50%;top:calc(100% + 6px);transform:translate(-50%);background:var(--bg-glass-strong);color:var(--text-primary);padding:var(--space-1-5) var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);line-height:var(--leading-snug);z-index:var(--z-tooltip);width:max-content;max-width:240px;border:1px solid var(--border-default);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));box-shadow:var(--shadow-lg)}.price-block-tooltip[data-tooltip]:hover:before,.price-block-tooltip[data-tooltip]:focus:before{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);width:10px;height:6px;background:var(--bg-glass-strong);clip-path:polygon(50% 100%,0 0,100% 0);z-index:calc(var(--z-tooltip) + 1)}.price-block-tooltip.tooltip-top[data-tooltip]:hover:after,.price-block-tooltip.tooltip-top[data-tooltip]:focus:after{top:auto;bottom:calc(100% + 6px);transform:translate(-50%);box-shadow:var(--shadow-lg)}.price-block-tooltip.tooltip-top[data-tooltip]:hover:before,.price-block-tooltip.tooltip-top[data-tooltip]:focus:before{top:auto;bottom:100%;transform:translate(-50%) rotate(180deg)}.model-option-item.grid-layout .sel-cell{text-align:center}.model-selected-icon{color:#fff;background:var(--accent-primary);border-radius:var(--radius-full);padding:2px;box-shadow:0 0 0 2px #8b5cf666}.settings-theme-options-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);margin-top:var(--space-2)}.settings-theme-option-modern{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);background:var(--bg-tertiary);border:2px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3);cursor:pointer;transition:var(--transition-all);text-align:center;position:relative}.settings-theme-option-modern:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.settings-theme-option-modern.active{border-color:var(--accent-primary);background:var(--selected-bg);box-shadow:var(--shadow-glow-sm)}.settings-theme-option-modern:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.settings-theme-option-modern span{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.settings-theme-preview-modern{width:60px;height:40px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-default);display:flex;flex-direction:column}.settings-theme-preview-modern.dark{background:var(--color-neutral-950)}.settings-theme-preview-modern.light{background:var(--color-neutral-50)}.settings-theme-preview-header-modern{height:12px;background:var(--accent-gradient)}.settings-theme-preview-content-modern{flex:1;opacity:.8}.settings-theme-preview-modern.dark .settings-theme-preview-content-modern{background:var(--color-neutral-900)}.settings-theme-preview-modern.light .settings-theme-preview-content-modern{background:var(--color-neutral-100)}.theme-active-indicator{position:absolute;top:var(--space-2);right:var(--space-2);background:var(--accent-primary);color:#fff;border-radius:var(--radius-full);width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--font-bold)}.settings-accent-grid{display:grid;grid-template-columns:repeat(8,24px);gap:var(--space-2);margin-top:var(--space-2)}.accent-swatch{width:24px;height:24px;border-radius:var(--radius-sm);border:2px solid var(--border-default);outline:none;cursor:pointer;padding:0;transition:var(--transition-all)}.accent-swatch:hover{transform:scale(1.15)}.accent-swatch.active{box-shadow:0 0 0 2px var(--accent-secondary)}.accent-rose{background:linear-gradient(135deg,#e11d48,#fb7185)}.accent-red{background:linear-gradient(135deg,#ef4444,#f87171)}.settings-info-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.settings-info-item-modern{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl)}.settings-info-item-modern.span-2{grid-column:span 2}.settings-info-label-modern{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.settings-info-value-modern{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.settings-info-value-modern.connected{color:var(--color-success-500)}.settings-info-value-modern.disconnected{color:var(--color-error-500)}.settings-modal-modern-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--bg-secondary)}.settings-btn-modern{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--space-2-5) var(--space-4);border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-bounce);text-transform:uppercase;letter-spacing:var(--tracking-wide);border:none}.settings-btn-modern.primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-md)}.settings-btn-modern.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow-sm)}.settings-btn-modern.secondary{background:transparent;color:var(--text-muted);border:1px solid var(--border-default)}.settings-btn-modern.secondary:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--accent-primary)}@media (max-width: 768px){.settings-modal-modern{width:95%;max-height:95vh}.settings-modal-modern-header{padding:var(--space-4)}.settings-modal-modern-title h2{font-size:var(--text-xl)}.settings-modal-modern-content{padding:var(--space-4)}.settings-section-modern{padding:var(--space-3)}.settings-theme-options-modern{grid-template-columns:1fr}.settings-modal-modern-footer{padding:var(--space-3) var(--space-4);flex-direction:column}.model-option-item.grid-layout{grid-template-columns:1fr 50px 90px 28px;gap:var(--space-1);padding:var(--space-1-5) var(--space-2)}.model-option-header{grid-template-columns:1fr 50px 90px 28px}}@media (max-width: 480px){.settings-modal-modern-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.settings-modal-modern-close{align-self:flex-end;margin-top:-44px}.settings-info-grid-modern{grid-template-columns:1fr}.settings-section-modern-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.settings-section-modern-header h3{font-size:var(--text-base)}.settings-accent-grid{grid-template-columns:repeat(4,28px);gap:var(--space-3)}.accent-swatch{width:28px;height:28px}.model-option-item.grid-layout{grid-template-columns:1fr 40px 70px 24px;font-size:var(--text-xs)}.model-option-header{grid-template-columns:1fr 40px 70px 24px;font-size:9px}}.onboarding-fresh-container{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--bg-overlay);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));animation:onboardingFadeIn var(--duration-normal) var(--ease-out)}.onboarding-fresh-card{background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-3xl);box-shadow:var(--shadow-2xl),0 0 80px #8b5cf61a;width:100%;max-width:60rem;height:38rem;display:flex;overflow:hidden;animation:onboardingScaleIn var(--duration-slow) var(--ease-bounce)}.onboarding-sidebar{width:35%;min-width:220px;background:var(--accent-gradient);padding:var(--space-8);display:flex;flex-direction:column;color:#fff;position:relative;overflow:hidden}.onboarding-sidebar:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgb(255 255 255 / .15) 0%,transparent 70%);pointer-events:none}.onboarding-sidebar:after{content:"";position:absolute;bottom:-30%;left:-30%;width:80%;height:80%;background:radial-gradient(circle,rgb(0 0 0 / .1) 0%,transparent 70%);pointer-events:none}.onboarding-main{flex:1;padding:var(--space-8);display:flex;flex-direction:column;position:relative;background:var(--bg-glass)}.onboarding-step-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.onboarding-step-title{font-family:"Space Grotesk",var(--font-sans);font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2);letter-spacing:var(--tracking-tight)}.onboarding-step-description{color:var(--text-secondary);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.onboarding-action-bar{margin-top:auto;padding-top:var(--space-6);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-subtle)}.step-indicator{display:flex;gap:var(--space-3);align-items:center;justify-content:center}.step-dot{width:10px;height:10px;border-radius:var(--radius-full);background:#ffffff4d;transition:all var(--duration-normal) var(--ease-out);cursor:pointer}.step-dot.active{background:#fff;box-shadow:0 0 12px #fff9;transform:scale(1.2)}.step-dot:hover:not(.active){background:#ffffff80}.popup-welcome-center{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-4);gap:var(--space-5)}.popup-welcome-center h4{font-family:"Space Grotesk",var(--font-sans);font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.popup-welcome-center p{font-size:var(--text-sm);color:var(--text-secondary);margin:0;max-width:320px;line-height:var(--leading-relaxed)}.popup-welcome-avatar{width:72px;height:72px;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;color:#fff;position:relative;box-shadow:var(--shadow-lg);transition:transform var(--duration-normal) var(--ease-bounce)}.popup-welcome-avatar:hover{transform:scale(1.05)}.popup-welcome-avatar.blue{background:linear-gradient(135deg,#3b82f6,#60a5fa,#93c5fd);box-shadow:0 8px 24px #3b82f666}.popup-welcome-avatar.amber{background:linear-gradient(135deg,#f59e0b,#fbbf24,#fcd34d);box-shadow:0 8px 24px #f59e0b66}.popup-welcome-avatar.green{background:linear-gradient(135deg,#10b981,#34d399,#6ee7b7);box-shadow:0 8px 24px #10b98166}.popup-welcome-avatar.yellow{background:linear-gradient(135deg,#eab308,#facc15,#fde047);box-shadow:0 8px 24px #eab30866}.popup-welcome-avatar:before{content:"";position:absolute;inset:-4px;border-radius:inherit;background:inherit;opacity:0;animation:avatarPulse 2s var(--ease-in-out) infinite;z-index:-1}@keyframes avatarPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}.popup-features{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:320px}.popup-feature{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-subtle);border-radius:var(--radius-xl);transition:all var(--duration-normal) var(--ease-out)}.popup-feature:hover{border-color:var(--border-default);background:var(--hover-overlay);transform:translate(4px)}.popup-feature-icon{width:36px;height:36px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.popup-feature-icon.blue{background:#3b82f626;color:var(--color-info-500)}.popup-feature-icon.green{background:#10b98126;color:var(--color-success-500)}.popup-feature-icon.yellow,.popup-feature-icon.amber{background:#f59e0b26;color:var(--color-warning-500)}.popup-feature-text{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.popup-form-group{width:100%;max-width:320px;display:flex;flex-direction:column;gap:var(--space-2)}.popup-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);text-align:left}.popup-input{width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);transition:all var(--duration-normal) var(--ease-out)}.popup-input::placeholder{color:var(--text-muted)}.popup-input:hover{border-color:var(--border-strong)}.popup-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf626}.popup-card{width:100%;max-width:320px;padding:var(--space-4);background:#3b82f614;border:1px solid rgb(59 130 246 / .2);border-radius:var(--radius-xl);text-align:left}.popup-tip{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.popup-tip strong{color:var(--color-info-500)}.popup-link{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px;transition:color var(--duration-fast) var(--ease-out)}.popup-link:hover{color:var(--accent-secondary)}.model-selection-grid{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);color:var(--text-muted)}.loading-text{font-size:var(--text-sm);color:var(--text-tertiary)}.model-selection-grid .model-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);text-align:left;width:100%}.model-selection-grid .model-card:hover{border-color:var(--accent-primary);background:var(--hover-overlay);transform:translate(4px);box-shadow:var(--shadow-md)}.model-selection-grid .model-card.selected{border-color:var(--accent-primary);background:var(--selected-bg);box-shadow:0 0 0 3px #8b5cf61a}.model-card-content{display:flex;align-items:center;gap:var(--space-4);width:100%}.model-emoji{font-size:var(--text-2xl);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:var(--radius-lg);flex-shrink:0}.model-info{flex:1;min-width:0}.model-name{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:2px}.model-free-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:10px;font-weight:var(--font-bold);color:#fff;background:linear-gradient(135deg,#10b981,#059669);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 8px 2px #10b98199}}.model-desc{font-size:var(--text-sm);color:var(--text-muted)}.model-check{width:24px;height:24px;background:var(--color-success-500);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;animation:checkBounce var(--duration-slow) var(--ease-bounce)}@keyframes checkBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.model-success-message{padding:var(--space-3) var(--space-4);background:#10b9811a;border:1px solid rgb(16 185 129 / .3);border-radius:var(--radius-lg);animation:slideInUp var(--duration-normal) var(--ease-out)}.model-success-content{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-success-500)}.polychat-btn-modern{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:var(--accent-gradient);border:none;border-radius:var(--radius-xl);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);color:#fff;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-sm)}.polychat-btn-modern:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-sm);transform:translateY(-2px)}.polychat-btn-modern:active:not(:disabled){transform:translateY(0)}.polychat-btn-modern:disabled{opacity:.5;cursor:not-allowed;transform:none}.polychat-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-default)}.polychat-btn-secondary:hover:not(:disabled){background:var(--hover-overlay);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}@keyframes onboardingFadeIn{0%{opacity:0}to{opacity:1}}@keyframes onboardingScaleIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.onboarding-fresh-card{flex-direction:column;max-width:100%;height:auto;max-height:95vh;margin:var(--space-4)}.onboarding-sidebar{width:100%;min-width:auto;padding:var(--space-6);min-height:auto}.onboarding-sidebar:before,.onboarding-sidebar:after{display:none}.onboarding-main{padding:var(--space-6)}.onboarding-step-title{font-size:var(--text-2xl)}.popup-welcome-center{padding:var(--space-2)}.popup-features,.popup-form-group,.popup-card{max-width:100%}.step-indicator{margin-top:var(--space-4)}}@media (max-width: 480px){.onboarding-fresh-container{padding:var(--space-2)}.onboarding-sidebar,.onboarding-main{padding:var(--space-4)}.popup-welcome-avatar{width:56px;height:56px}.popup-feature{padding:var(--space-2) var(--space-3)}.popup-feature-icon{width:28px;height:28px}}.theme-dark .onboarding-fresh-card,[data-theme=dark] .onboarding-fresh-card{box-shadow:var(--shadow-2xl),0 0 100px #8b5cf614}@media (prefers-reduced-motion: reduce){.onboarding-fresh-container,.onboarding-fresh-card,.popup-welcome-avatar,.popup-feature,.polychat-btn-modern,.model-card,.step-dot{animation:none!important;transition-duration:.01ms!important}.popup-welcome-avatar:before{animation:none}}.config-popup-overlay{position:fixed;inset:0;background:var(--bg-overlay);-webkit-backdrop-filter:blur(var(--glass-blur-sm));backdrop-filter:blur(var(--glass-blur-sm));z-index:var(--z-popover);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--duration-fast) var(--ease-out)}.config-popup-content{background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(var(--glass-blur-lg));backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:28rem;padding:var(--space-6);text-align:center;animation:slideInUp var(--duration-normal) var(--ease-out)}.config-popup-icon{width:64px;height:64px;background:var(--accent-gradient);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);color:#fff;box-shadow:var(--shadow-glow-sm)}.config-popup-title{font-family:Space Grotesk,sans-serif;font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.config-popup-text{color:var(--text-secondary);font-size:var(--text-base);margin-bottom:var(--space-6)}.config-popup-actions{display:flex;flex-direction:row;gap:var(--space-3)}.config-popup-actions .polychat-btn-modern{flex:1}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}:root{--color-primary-50: #f5f3ff;--color-primary-100: #ede9fe;--color-primary-200: #ddd6fe;--color-primary-300: #c4b5fd;--color-primary-400: #a78bfa;--color-primary-500: #8b5cf6;--color-primary-600: #7c3aed;--color-primary-700: #6d28d9;--color-primary-800: #5b21b6;--color-primary-900: #4c1d95;--color-neutral-0: #ffffff;--color-neutral-50: #fafafa;--color-neutral-100: #f4f4f5;--color-neutral-200: #e4e4e7;--color-neutral-300: #d4d4d8;--color-neutral-400: #a1a1aa;--color-neutral-500: #71717a;--color-neutral-600: #52525b;--color-neutral-700: #3f3f46;--color-neutral-800: #27272a;--color-neutral-900: #18181b;--color-neutral-950: #09090b;--color-success-50: #ecfdf5;--color-success-500: #10b981;--color-success-600: #059669;--color-warning-50: #fffbeb;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-error-50: #fef2f2;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-info-50: #eff6ff;--color-info-500: #3b82f6;--color-info-600: #2563eb;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace;--text-xs: clamp(.6875rem, .65rem + .1vw, .75rem);--text-sm: clamp(.8125rem, .78rem + .1vw, .875rem);--text-base: clamp(.9375rem, .9rem + .15vw, 1rem);--text-lg: clamp(1.0625rem, 1rem + .2vw, 1.125rem);--text-xl: clamp(1.1875rem, 1.1rem + .3vw, 1.25rem);--text-2xl: clamp(1.375rem, 1.25rem + .4vw, 1.5rem);--text-3xl: clamp(1.625rem, 1.5rem + .5vw, 1.875rem);--text-4xl: clamp(2rem, 1.8rem + .7vw, 2.25rem);--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--tracking-wider: .05em;--space-0: 0;--space-px: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05);--shadow-glass: 0 8px 32px rgb(0 0 0 / .12);--shadow-glass-lg: 0 16px 48px rgb(0 0 0 / .2);--shadow-glow-sm: 0 0 8px var(--color-primary-500);--shadow-glow-md: 0 0 16px var(--color-primary-500);--shadow-glow-lg: 0 0 24px var(--color-primary-500);--duration-instant: 50ms;--duration-fast: .1s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-elastic: cubic-bezier(.68, -.55, .265, 1.55);--transition-colors: color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);--transition-opacity: opacity var(--duration-normal) var(--ease-out);--transition-transform: transform var(--duration-normal) var(--ease-out);--transition-all: all var(--duration-normal) var(--ease-out);--transition-bounce: all var(--duration-slow) var(--ease-bounce);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-overlay: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800;--z-max: 9999;--glass-blur: 20px;--glass-blur-sm: 8px;--glass-blur-lg: 40px;--ring-width: 2px;--ring-offset: 2px;--ring-color: var(--color-primary-500);--bg-primary: var(--color-neutral-950);--bg-secondary: var(--color-neutral-900);--bg-tertiary: var(--color-neutral-800);--bg-elevated: var(--color-neutral-800);--bg-overlay: rgb(0 0 0 / .6);--bg-glass: rgb(24 24 27 / .8);--bg-glass-subtle: rgb(24 24 27 / .6);--bg-glass-strong: rgb(24 24 27 / .95);--text-primary: var(--color-neutral-50);--text-secondary: var(--color-neutral-300);--text-tertiary: var(--color-neutral-400);--text-muted: var(--color-neutral-500);--text-inverse: var(--color-neutral-950);--border-subtle: rgb(255 255 255 / .06);--border-default: rgb(255 255 255 / .1);--border-strong: rgb(255 255 255 / .15);--border-focus: var(--color-primary-500);--accent-primary: var(--color-primary-500);--accent-secondary: var(--color-primary-400);--accent-tertiary: var(--color-primary-300);--accent-muted: var(--color-primary-900);--hover-overlay: rgb(255 255 255 / .05);--active-overlay: rgb(255 255 255 / .1);--selected-bg: rgb(139 92 246 / .15);--scrollbar-track: var(--bg-secondary);--scrollbar-thumb: var(--color-neutral-700);--scrollbar-thumb-hover: var(--color-neutral-600)}.theme-light,[data-theme=light]{color-scheme:light;--bg-primary: var(--color-neutral-50);--bg-secondary: var(--color-neutral-0);--bg-tertiary: var(--color-neutral-100);--bg-elevated: var(--color-neutral-0);--bg-overlay: rgb(0 0 0 / .4);--bg-glass: rgb(255 255 255 / .8);--bg-glass-subtle: rgb(255 255 255 / .6);--bg-glass-strong: rgb(255 255 255 / .95);--text-primary: var(--color-neutral-900);--text-secondary: var(--color-neutral-600);--text-tertiary: var(--color-neutral-500);--text-muted: var(--color-neutral-400);--text-inverse: var(--color-neutral-0);--border-subtle: rgb(0 0 0 / .04);--border-default: rgb(0 0 0 / .08);--border-strong: rgb(0 0 0 / .12);--border-focus: var(--color-primary-500);--hover-overlay: rgb(0 0 0 / .03);--active-overlay: rgb(0 0 0 / .06);--selected-bg: rgb(139 92 246 / .1);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .03);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .06);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .06), 0 2px 4px -2px rgb(0 0 0 / .06);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .06);--shadow-glass: 0 8px 32px rgb(0 0 0 / .06);--scrollbar-track: var(--color-neutral-100);--scrollbar-thumb: var(--color-neutral-300);--scrollbar-thumb-hover: var(--color-neutral-400)}.polychat-glow{box-shadow:var(--shadow-glow-sm);transition:var(--transition-all)}.polychat-glow:hover{box-shadow:var(--shadow-glow-md);transform:translateY(-1px)}[data-accent=violet],:root{--accent-primary: #8b5cf6;--accent-secondary: #a78bfa;--accent-tertiary: #c4b5fd;--accent-muted: #4c1d95;--accent-gradient: linear-gradient(135deg, #8b5cf6 0%, #a78bfa 50%, #c4b5fd 100%)}[data-accent=blue]{--accent-primary: #3b82f6;--accent-secondary: #60a5fa;--accent-tertiary: #93c5fd;--accent-muted: #1e3a8a;--accent-gradient: linear-gradient(135deg, #3b82f6 0%, #60a5fa 50%, #93c5fd 100%)}[data-accent=green],[data-accent=emerald]{--accent-primary: #10b981;--accent-secondary: #34d399;--accent-tertiary: #6ee7b7;--accent-muted: #064e3b;--accent-gradient: linear-gradient(135deg, #10b981 0%, #34d399 50%, #6ee7b7 100%)}[data-accent=rose]{--accent-primary: #f43f5e;--accent-secondary: #fb7185;--accent-tertiary: #fda4af;--accent-muted: #881337;--accent-gradient: linear-gradient(135deg, #f43f5e 0%, #fb7185 50%, #fda4af 100%)}[data-accent=orange]{--accent-primary: #f97316;--accent-secondary: #fb923c;--accent-tertiary: #fdba74;--accent-muted: #7c2d12;--accent-gradient: linear-gradient(135deg, #f97316 0%, #fb923c 50%, #fdba74 100%)}[data-accent=teal]{--accent-primary: #14b8a6;--accent-secondary: #2dd4bf;--accent-tertiary: #5eead4;--accent-muted: #115e59;--accent-gradient: linear-gradient(135deg, #14b8a6 0%, #2dd4bf 50%, #5eead4 100%)}[data-accent=cyan]{--accent-primary: #06b6d4;--accent-secondary: #22d3ee;--accent-tertiary: #67e8f9;--accent-muted: #164e63;--accent-gradient: linear-gradient(135deg, #06b6d4 0%, #22d3ee 50%, #67e8f9 100%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full);border:2px solid var(--scrollbar-track)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}:focus{outline:none}:focus-visible{outline:var(--ring-width) solid var(--ring-color);outline-offset:var(--ring-offset)}.focus-ring:focus-visible{box-shadow:0 0 0 var(--ring-offset) var(--bg-primary),0 0 0 calc(var(--ring-offset) + var(--ring-width)) var(--ring-color)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary)}h1{font-size:var(--text-4xl);letter-spacing:var(--tracking-tight)}h2{font-size:var(--text-3xl);letter-spacing:var(--tracking-tight)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{line-height:var(--leading-relaxed);color:var(--text-secondary)}a{color:var(--accent-primary);text-decoration:none;transition:var(--transition-colors)}a:hover{color:var(--accent-secondary);text-decoration:underline}code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-0-5) var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm)}pre{font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow-x:auto}pre code{padding:0;background:transparent;border:none;border-radius:0}::selection{background-color:var(--accent-primary);color:var(--text-inverse)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1);opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--accent-primary),0 0 10px var(--accent-muted)}50%{box-shadow:0 0 10px var(--accent-primary),0 0 20px var(--accent-muted)}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out)}.animate-fade-out{animation:fadeOut var(--duration-normal) var(--ease-out)}.animate-slide-up{animation:slideInUp var(--duration-normal) var(--ease-out)}.animate-slide-down{animation:slideInDown var(--duration-normal) var(--ease-out)}.animate-slide-left{animation:slideInLeft var(--duration-normal) var(--ease-out)}.animate-slide-right{animation:slideInRight var(--duration-normal) var(--ease-out)}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-out)}.animate-pulse{animation:pulse 2s var(--ease-in-out) infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s infinite}.animate-float{animation:float 3s var(--ease-in-out) infinite}.animate-glow{animation:glow 2s var(--ease-in-out) infinite}.animate-stagger>*{animation-fill-mode:both}.animate-stagger>*:nth-child(1){animation-delay:0ms}.animate-stagger>*:nth-child(2){animation-delay:50ms}.animate-stagger>*:nth-child(3){animation-delay:.1s}.animate-stagger>*:nth-child(4){animation-delay:.15s}.animate-stagger>*:nth-child(5){animation-delay:.2s}.animate-stagger>*:nth-child(6){animation-delay:.25s}.animate-stagger>*:nth-child(7){animation-delay:.3s}.animate-stagger>*:nth-child(8){animation-delay:.35s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3}.line-clamp-1,.line-clamp-2,.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.glass{background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.glass-subtle{background:var(--bg-glass-subtle);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm))}.glass-strong{background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg))}.card{background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-glass);transition:var(--transition-all)}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-glass-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1;padding:var(--space-2-5) var(--space-4);border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:var(--transition-all);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent-gradient);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-sm);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-default)}.btn-secondary:hover:not(:disabled){background:var(--hover-overlay);border-color:var(--border-strong)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--hover-overlay);color:var(--text-primary)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md)}.btn-icon.btn-sm{padding:var(--space-1-5)}.btn-icon.btn-lg{padding:var(--space-3)}.input{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);width:100%;transition:var(--transition-all)}.input::placeholder{color:var(--text-muted)}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle)}.badge-primary{background:#8b5cf626;color:var(--accent-secondary);border-color:#8b5cf64d}.badge-success{background:#10b98126;color:var(--color-success-500);border-color:#10b9814d}.badge-warning{background:#f59e0b26;color:var(--color-warning-500);border-color:#f59e0b4d}.badge-error{background:#ef444426;color:var(--color-error-500);border-color:#ef44444d}.skeleton{position:relative;background:var(--bg-tertiary);border-radius:var(--radius-md);overflow:hidden}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .08),transparent);animation:shimmer 2s infinite}.theme-light .skeleton:after{background:linear-gradient(90deg,transparent,rgb(255 255 255 / .5),transparent)}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);pointer-events:auto;animation:slideInRight var(--duration-slow) var(--ease-out)}.toast-success{border-left:3px solid var(--color-success-500)}.toast-warning{border-left:3px solid var(--color-warning-500)}.toast-error{border-left:3px solid var(--color-error-500)}.toast-info{border-left:3px solid var(--color-info-500)}.overlay{position:fixed;inset:0;background:var(--bg-overlay);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));z-index:var(--z-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--duration-normal) var(--ease-out)}.modal{position:relative;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);max-width:100%;max-height:90vh;overflow:hidden;animation:scaleIn var(--duration-slow) var(--ease-out)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle)}.modal-body{padding:var(--space-6);overflow-y:auto}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle)}@media (min-width: 768px){:root{--space-container: var(--space-8)}}@media (min-width: 1024px){:root{--space-container: var(--space-12)}}@media (min-width: 1280px){:root{--space-container: var(--space-16)}}.container{width:100%;max-width:1400px;margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media (min-width: 768px){.container{padding-left:var(--space-6);padding-right:var(--space-6)}}@media (min-width: 1024px){.container{padding-left:var(--space-8);padding-right:var(--space-8)}}.markdown-body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text-primary);word-wrap:break-word}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:var(--space-6);margin-bottom:var(--space-3);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary)}.markdown-body h1{font-size:var(--text-2xl)}.markdown-body h2{font-size:var(--text-xl)}.markdown-body h3{font-size:var(--text-lg)}.markdown-body h4{font-size:var(--text-base)}.markdown-body p{margin-bottom:var(--space-3)}.markdown-body ul,.markdown-body ol{margin-bottom:var(--space-3);padding-left:var(--space-5)}.markdown-body li{margin-bottom:var(--space-1)}.markdown-body ul{list-style-type:disc}.markdown-body ol{list-style-type:decimal}.markdown-body blockquote{margin:var(--space-4) 0;padding:var(--space-2) var(--space-4);color:var(--text-secondary);border-left:4px solid var(--accent-primary);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.markdown-body table{display:block;width:100%;width:max-content;max-width:100%;overflow:auto;margin-bottom:var(--space-4);border-collapse:collapse}.markdown-body tr{border-top:1px solid var(--border-default)}.markdown-body tr:nth-child(2n){background-color:var(--hover-overlay)}.markdown-body th,.markdown-body td{padding:var(--space-2) var(--space-4);border:1px solid var(--border-default)}.markdown-body th{font-weight:var(--font-semibold);background-color:var(--bg-tertiary)}.markdown-body img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:var(--space-4) 0}.markdown-body code{font-family:var(--font-mono);font-size:.9em;padding:.2em .4em;margin:0;background-color:var(--bg-tertiary);border-radius:var(--radius-sm)}.markdown-body pre{margin-bottom:var(--space-4);overflow:auto;padding:var(--space-4);background-color:var(--bg-secondary);border-radius:var(--radius-lg)}.markdown-body pre code{padding:0;background-color:transparent;border-radius:0}.markdown-body .code-block-wrapper{margin-bottom:var(--space-4)}.markdown-body>*:first-child{margin-top:0!important}.markdown-body>*:last-child{margin-bottom:0!important}html,body{height:100%;width:100%;overflow:hidden;margin:0;padding:0}.polychat-app{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);position:relative;overflow:hidden}.polychat-app:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 25% 25%,var(--accent-muted) 0%,transparent 50%),radial-gradient(circle at 75% 75%,var(--accent-muted) 0%,transparent 50%);opacity:.03;pointer-events:none;z-index:0}.polychat-bg-grid{position:fixed;inset:0;background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);background-size:60px 60px;opacity:.5;pointer-events:none;z-index:0}.polychat-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:1px solid var(--border-subtle)}.polychat-header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);max-width:1600px;margin:0 auto}@media (min-width: 768px){.polychat-header-inner{padding:var(--space-3) var(--space-6)}}.polychat-brand{display:flex;align-items:center;gap:var(--space-3)}.polychat-logo{position:relative;width:44px;height:44px;background:var(--accent-gradient);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:var(--transition-transform);cursor:pointer}.polychat-logo:hover{transform:scale(1.05)}.polychat-logo img{width:28px;height:28px;object-fit:contain}.polychat-logo-icon{color:#fff;filter:drop-shadow(0 2px 4px rgb(0 0 0 / .2))}.polychat-brand-text{display:flex;flex-direction:column}.polychat-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:var(--tracking-tight);line-height:1.2}.polychat-subtitle{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--accent-primary);text-transform:uppercase;letter-spacing:var(--tracking-wider);display:flex;align-items:center;gap:var(--space-1)}.polychat-model-indicator{display:none;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:var(--transition-all)}@media (min-width: 768px){.polychat-model-indicator{display:flex}}.polychat-model-indicator:hover{border-color:var(--accent-primary);color:var(--text-primary)}.polychat-model-indicator svg{color:var(--accent-primary)}.polychat-header-actions{display:flex;align-items:center;gap:var(--space-2)}.polychat-header-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all)}.polychat-header-btn:hover{background:var(--hover-overlay);border-color:var(--border-default);color:var(--text-primary)}.polychat-header-btn:active{background:var(--active-overlay)}.polychat-main{display:flex;flex:1;min-height:0;position:relative;z-index:1}.polychat-content{display:flex;flex-direction:column;flex:1;min-width:0;transition:margin-left var(--duration-slow) var(--ease-out)}.polychat-content.sidebar-open{margin-left:320px}@media (max-width: 1024px){.polychat-content.sidebar-open{margin-left:0}}.polychat-sidebar{position:fixed;top:0;left:0;width:320px;height:100vh;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border-right:1px solid var(--border-default);z-index:var(--z-fixed);display:flex;flex-direction:column;transform:translate(-100%);transition:transform var(--duration-slow) var(--ease-out);box-shadow:var(--shadow-2xl)}.polychat-sidebar.open{transform:translate(0)}@media (max-width: 1024px){.polychat-sidebar{width:100%;max-width:320px}}.polychat-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--hover-overlay)}.polychat-sidebar-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.polychat-sidebar-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-colors)}.polychat-sidebar-close:hover{background:var(--hover-overlay);color:var(--text-primary)}.polychat-history-list{flex:1;overflow-y:auto;padding:var(--space-3)}.polychat-history-item{display:flex;flex-direction:row;align-items:center;gap:var(--space-2);padding:var(--space-3);margin-bottom:var(--space-2);background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all);position:relative}.polychat-history-item:hover{background:var(--hover-overlay);border-color:var(--border-default)}.polychat-history-item.active{background:var(--selected-bg);border-color:var(--accent-primary);box-shadow:inset 3px 0 0 var(--accent-primary)}.polychat-history-item-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.polychat-history-item-preview{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7}.polychat-history-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-0-5)}.polychat-history-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-all);opacity:0}.polychat-history-item:hover .polychat-history-delete-btn{opacity:1}.polychat-history-item-meta{display:flex;align-items:center;gap:var(--space-2);font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.polychat-history-delete-btn:hover{background:#ef44441a;color:var(--color-error-500)}.polychat-sidebar-footer{padding:var(--space-4);border-top:1px solid var(--border-subtle)}.polychat-new-chat-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3);background:var(--accent-gradient);border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);color:#fff;cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-md)}.polychat-new-chat-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg),var(--shadow-glow-sm)}.polychat-new-chat-btn:active{transform:translateY(0)}.polychat-sidebar-overlay{position:fixed;inset:0;background:var(--bg-overlay);z-index:calc(var(--z-fixed) - 1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--duration-normal) var(--ease-out)}@media (min-width: 1025px){.polychat-sidebar-overlay{display:none}}.polychat-chat-area{display:flex;flex-direction:column;flex:1;min-height:0}.polychat-model-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-glass-subtle);border-bottom:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:none}.polychat-model-bar::-webkit-scrollbar{display:none}@media (min-width: 768px){.polychat-model-bar{padding:var(--space-3) var(--space-6);justify-content:center}}.polychat-messages,.polychat-messages-container{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;min-height:0}@media (min-width: 768px){.polychat-messages{padding:var(--space-6)}}.polychat-multichat{display:grid;grid-template-columns:1fr;gap:var(--space-4);flex:1;min-height:0}@media (min-width: 768px){.polychat-multichat.two-models{grid-template-columns:repeat(2,1fr)}.polychat-multichat.three-models{grid-template-columns:repeat(3,1fr)}}.polychat-chat-column{display:flex;flex-direction:column;min-height:0;background:var(--bg-glass-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);overflow:hidden}.polychat-chat-column-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--hover-overlay);border-bottom:1px solid var(--border-subtle)}.polychat-chat-column-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.polychat-chat-column-badge{padding:var(--space-0-5) var(--space-2);background:var(--accent-muted);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--accent-tertiary)}.polychat-chat-column-messages{flex:1;overflow-y:auto;padding:var(--space-4)}.polychat-input-area{position:sticky;bottom:0;background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top:1px solid var(--border-subtle);padding:var(--space-3) var(--space-4)}@media (min-width: 768px){.polychat-input-area{padding:var(--space-4) var(--space-6)}}.polychat-input-container{max-width:900px;margin:0 auto}.polychat-suggestions{display:flex;gap:var(--space-2);padding-bottom:var(--space-3);overflow-x:auto;scrollbar-width:none}.polychat-suggestions::-webkit-scrollbar{display:none}.polychat-suggestion{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:var(--transition-all)}.polychat-suggestion:hover{background:var(--hover-overlay);border-color:var(--accent-primary);color:var(--text-primary)}.polychat-suggestion-icon{font-size:var(--text-sm)}.polychat-input-wrapper{position:relative;display:flex;align-items:flex-end;gap:var(--space-2);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-2);transition:var(--transition-all)}.polychat-input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.polychat-textarea{flex:1;min-height:24px;max-height:200px;padding:var(--space-2) var(--space-3);background:transparent;border:none;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);line-height:var(--leading-normal);resize:none;outline:none}.polychat-textarea::placeholder{color:var(--text-muted)}.polychat-input-actions{display:flex;align-items:center;gap:var(--space-1)}.polychat-send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--accent-gradient);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-sm)}.polychat-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-md),var(--shadow-glow-sm)}.polychat-send-btn:disabled{opacity:.5;cursor:not-allowed}.polychat-char-count{position:absolute;bottom:var(--space-2);right:var(--space-14);font-size:var(--text-xs);color:var(--text-muted)}.polychat-keyboard-hints{display:none;justify-content:center;gap:var(--space-4);padding-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}@media (min-width: 768px){.polychat-keyboard-hints{display:flex}}.polychat-keyboard-hints kbd{padding:var(--space-0-5) var(--space-1);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs)}.polychat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--space-8);text-align:center}.polychat-empty-icon{width:64px;height:64px;margin-bottom:var(--space-4);color:var(--text-muted);opacity:.5}.polychat-empty-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.polychat-empty-text{font-size:var(--text-sm);color:var(--text-muted);max-width:300px}.polychat-spinner{width:20px;height:20px;border:2px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}.polychat-spinner-sm{width:16px;height:16px}.polychat-spinner-lg{width:32px;height:32px;border-width:3px}.polychat-typing{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2)}.polychat-typing-dot{width:8px;height:8px;background:var(--text-muted);border-radius:50%;animation:typing 1.4s ease-in-out infinite}.polychat-typing-dot:nth-child(1){animation-delay:0ms}.polychat-typing-dot:nth-child(2){animation-delay:.2s}.polychat-typing-dot:nth-child(3){animation-delay:.4s}.polychat-app{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-primary);position:relative;overflow:hidden;font-family:var(--font-sans)}.polychat-bg-grid{position:fixed;inset:0;background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);background-size:50px 50px;opacity:.4;pointer-events:none;z-index:0}.polychat-header-container{position:sticky;top:0;z-index:var(--z-sticky);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.polychat-main-chat-area{flex:1;display:flex;flex-direction:column;min-height:0;transition:margin-left var(--duration-slow) var(--ease-out);position:relative;z-index:2}.polychat-main-chat-area.sidebar-open{margin-left:320px}@media (max-width: 1024px){.polychat-main-chat-area.sidebar-open{margin-left:0}}.polychat-messages-container{flex:1;overflow-y:auto;min-height:0;padding:0}.polychat-input-area{position:sticky;bottom:0;background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top:1px solid var(--border-subtle);padding:var(--space-4) 0}.polychat-sidebar{background:var(--bg-glass-strong)!important;-webkit-backdrop-filter:blur(var(--glass-blur-lg))!important;backdrop-filter:blur(var(--glass-blur-lg))!important;border-right:1px solid var(--border-default)!important;box-shadow:var(--shadow-2xl)!important}.polychat-sidebar-header{background:#0003!important;padding:var(--space-5) var(--space-4)!important}.polychat-sidebar-title{font-family:Space Grotesk,sans-serif!important;font-weight:700!important;letter-spacing:-.5px!important}.chat-history-search{padding:var(--space-4);border-bottom:1px solid var(--border-subtle)}.chat-history-search-input{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:all var(--duration-normal) var(--ease-out)}.chat-history-search-input:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px #8b5cf61a}.chat-history-search-input input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary)}.chat-history-search-input svg{color:var(--text-muted)}.search-clear-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:2px}.search-clear-btn:hover{color:var(--text-primary)}.polychat-history-section{padding:var(--space-4) var(--space-3) var(--space-1)}.polychat-history-section-title{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.polychat-history-item{margin:4px 8px!important;border-radius:var(--radius-xl)!important;transition:all var(--duration-normal) var(--ease-out)!important;border:1px solid transparent!important}.polychat-history-item:hover{background:var(--hover-overlay)!important;border-color:var(--border-subtle)!important;transform:translate(4px)}.polychat-history-item.active{background:var(--accent-gradient)!important;border-color:var(--accent-primary)!important;box-shadow:var(--shadow-glow-sm)!important}.polychat-history-item.active .polychat-history-item-title{color:#fff!important;font-weight:700!important}.polychat-history-item.active .polychat-history-item-preview{color:#fffc!important}.polychat-history-item-title{font-size:var(--text-sm)!important;margin-bottom:2px!important}.polychat-history-item-meta{font-size:9px!important;opacity:.8!important}.polychat-new-chat-btn{font-family:Space Grotesk,sans-serif!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:1px!important;padding:var(--space-4)!important;border-radius:var(--radius-2xl)!important}.modal-container{border-radius:var(--radius-3xl)!important;background:var(--bg-glass-strong)!important;border:1px solid var(--border-strong)!important}.polychat-btn-modern{border-radius:var(--radius-xl)!important;font-weight:600!important}.message{display:flex;gap:var(--space-3);padding:var(--space-3) 0;animation:slideInUp var(--duration-normal) var(--ease-out)}.message+.message{padding-top:var(--space-1)}.message.user{flex-direction:row-reverse}.message-avatar{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.message-avatar-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-lg);background:var(--bg-tertiary);border:1px solid var(--border-default);color:var(--text-secondary);transition:var(--transition-all)}.message.user .message-avatar-icon{background:var(--accent-gradient);border-color:transparent;color:#fff}.message.assistant .message-avatar-icon{background:var(--bg-glass);border-color:var(--border-default)}.message-model-badge{font-size:9px;font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;max-width:60px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-content{flex:1;min-width:0;max-width:100%}@media (min-width: 768px){.message-content{max-width:85%}}@media (min-width: 1024px){.message-content{max-width:75%}}.message-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.message-author{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.message-timestamp{font-size:var(--text-xs);color:var(--text-muted)}.message-bubble{position:relative;padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);background:var(--bg-glass);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--border-default);box-shadow:var(--shadow-sm)}.message.user .message-bubble{background:var(--accent-gradient);border-color:transparent;color:#fff;border-bottom-right-radius:var(--radius-sm)}.message.assistant .message-bubble{border-bottom-left-radius:var(--radius-sm)}.message-text{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word}.message.user .message-text{color:#fff}.message-cursor{display:inline-block;width:2px;height:1.2em;background:var(--accent-primary);margin-left:2px;animation:pulse 1s ease-in-out infinite;vertical-align:text-bottom}.message.user .message-cursor{background:#fff}.message-actions{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.message:hover .message-actions,.message-actions:focus-within{opacity:1}.message-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-all)}.message-action-btn:hover{background:var(--hover-overlay);border-color:var(--border-strong);color:var(--text-primary)}.message-action-btn.danger:hover{background:#ef44441a;border-color:var(--color-error-500);color:var(--color-error-500)}.message-action-btn.success{background:#10b9811a;border-color:var(--color-success-500);color:var(--color-success-500)}.message-markdown{font-size:var(--text-base);line-height:var(--leading-relaxed)}.message-markdown>:first-child{margin-top:0}.message-markdown>:last-child{margin-bottom:0}.message-markdown h1,.message-markdown h2,.message-markdown h3,.message-markdown h4,.message-markdown h5,.message-markdown h6{margin-top:1.5em;margin-bottom:.5em;font-weight:var(--font-semibold);color:var(--text-primary)}.message.user .message-markdown h1,.message.user .message-markdown h2,.message.user .message-markdown h3,.message.user .message-markdown h4,.message.user .message-markdown h5,.message.user .message-markdown h6{color:#fff}.message-markdown h1{font-size:1.5em}.message-markdown h2{font-size:1.3em}.message-markdown h3{font-size:1.15em}.message-markdown h4{font-size:1.05em}.message-markdown p{margin:.75em 0;color:inherit}.message-markdown ul,.message-markdown ol{margin:.75em 0;padding-left:1.5em}.message-markdown li{margin:.25em 0}.message-markdown li::marker{color:var(--accent-primary)}.message.user .message-markdown li::marker{color:#ffffffb3}.message-markdown a{color:var(--accent-secondary);text-decoration:underline;text-underline-offset:2px}.message.user .message-markdown a{color:#ffffffe6}.message-markdown blockquote{margin:1em 0;padding:var(--space-3) var(--space-4);background:var(--bg-tertiary);border-left:3px solid var(--accent-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-secondary)}.message.user .message-markdown blockquote{background:#ffffff1a;border-left-color:#ffffff80;color:#ffffffe6}.message-markdown table{width:100%;margin:1em 0;border-collapse:collapse;font-size:var(--text-sm)}.message-markdown th,.message-markdown td{padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);text-align:left}.message-markdown th{background:var(--bg-tertiary);font-weight:var(--font-semibold)}.message.user .message-markdown th,.message.user .message-markdown td{border-color:#fff3}.message.user .message-markdown th{background:#ffffff1a}.message-markdown hr{margin:1.5em 0;border:none;border-top:1px solid var(--border-default)}.message-markdown code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-0-5) var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm)}.message.user .message-markdown code{background:#ffffff26;border-color:#fff3}.code-block{position:relative;margin:1em 0;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-neutral-900);border:1px solid var(--border-default)}.theme-light .code-block{background:var(--color-neutral-100)}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-neutral-800);border-bottom:1px solid var(--border-default)}.theme-light .code-block-header{background:var(--color-neutral-200)}.code-block-language{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.code-block-copy{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);cursor:pointer;transition:var(--transition-all)}.code-block-copy:hover{background:var(--hover-overlay);border-color:var(--border-strong);color:var(--text-primary)}.code-block-copy.copied{background:#10b98126;border-color:var(--color-success-500);color:var(--color-success-500)}.code-block pre{margin:0;padding:var(--space-4);background:transparent;border:none;border-radius:0;overflow-x:auto}.code-block code{padding:0;background:transparent;border:none;font-size:var(--text-sm)}.message-loading{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.message-loading-dots{display:flex;gap:var(--space-1)}.message-loading-dot{width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:typing 1.4s ease-in-out infinite}.message-loading-dot:nth-child(1){animation-delay:0ms}.message-loading-dot:nth-child(2){animation-delay:.2s}.message-loading-dot:nth-child(3){animation-delay:.4s}.message-error{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef44441a;border:1px solid rgb(239 68 68 / .3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-error-500)}.message-error-icon{flex-shrink:0}.message-retry-btn{margin-left:auto;padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--color-error-500);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-error-500);cursor:pointer;transition:var(--transition-all)}.message-retry-btn:hover{background:#ef44441a}.message-image{max-width:100%;max-height:400px;margin:var(--space-2) 0;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-transform)}.message-image:hover{transform:scale(1.02)}.message-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-2);margin:var(--space-2) 0}.message-image-grid .message-image{width:100%;height:150px;object-fit:cover}.thinking-animation{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-xl)}.thinking-spinner{width:24px;height:24px;border:2px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.thinking-text{font-size:var(--text-sm);color:var(--text-secondary)}.thinking-dots{display:inline-flex;gap:2px;margin-left:var(--space-1)}.thinking-dots span{width:4px;height:4px;background:var(--text-muted);border-radius:50%;animation:typing 1.4s ease-in-out infinite}.thinking-dots span:nth-child(1){animation-delay:0ms}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--space-8);text-align:center;animation:fadeIn var(--duration-slow) var(--ease-out)}.chat-empty-logo{width:80px;height:80px;margin-bottom:var(--space-6);background:var(--accent-gradient);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg),var(--shadow-glow-md);animation:float 3s ease-in-out infinite}.chat-empty-logo svg{width:40px;height:40px;color:#fff}.chat-empty-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.chat-empty-subtitle{font-size:var(--text-base);color:var(--text-muted);max-width:400px;margin-bottom:var(--space-6)}.chat-empty-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);max-width:600px}.chat-empty-suggestion{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-4);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-full);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition-all)}.chat-empty-suggestion:hover{background:var(--hover-overlay);border-color:var(--accent-primary);color:var(--text-primary);transform:translateY(-2px)}.chat-empty-suggestion-icon{font-size:var(--text-lg)}.modal-overlay{position:fixed;inset:0;background:var(--bg-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn var(--duration-normal) var(--ease-out)}.modal-container{position:relative;width:100%;max-width:560px;max-height:90vh;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);overflow:hidden;display:flex;flex-direction:column;animation:scaleIn var(--duration-slow) var(--ease-out)}.modal-container.large{max-width:720px}.modal-container.xl{max-width:900px}.modal-container.fullscreen{max-width:100%;max-height:100%;height:100%;border-radius:0}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--hover-overlay)}.modal-header-content{display:flex;align-items:center;gap:var(--space-3)}.modal-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--accent-gradient);border-radius:var(--radius-lg);color:#fff}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.modal-subtitle{font-size:var(--text-sm);color:var(--text-muted)}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all)}.modal-close:hover{background:var(--hover-overlay);border-color:var(--border-default);color:var(--text-primary)}.modal-body{flex:1;overflow-y:auto;padding:var(--space-6)}.modal-body-compact{padding:var(--space-4)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--hover-overlay)}.modal-footer-spread{justify-content:space-between}.settings-tabs{display:flex;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);overflow-x:auto}.settings-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all);white-space:nowrap}.settings-tab:hover{background:var(--hover-overlay);color:var(--text-primary)}.settings-tab.active{background:var(--accent-muted);color:var(--accent-tertiary)}.settings-section{margin-bottom:var(--space-8)}.settings-section:last-child{margin-bottom:0}.settings-section-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.settings-group{margin-bottom:var(--space-4)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0}.settings-row+.settings-row{border-top:1px solid var(--border-subtle)}.settings-label{display:flex;flex-direction:column;gap:var(--space-0-5)}.settings-label-text{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.settings-label-description{font-size:var(--text-xs);color:var(--text-muted)}.input-group{display:flex;flex-direction:column;gap:var(--space-2)}.input-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.input-label.required:after{content:"*";color:var(--color-error-500);margin-left:var(--space-1)}.input-description{font-size:var(--text-xs);color:var(--text-muted)}.input-error{font-size:var(--text-xs);color:var(--color-error-500)}.text-input{width:100%;padding:var(--space-2-5) var(--space-3);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);transition:var(--transition-all)}.text-input::placeholder{color:var(--text-muted)}.text-input:hover{border-color:var(--border-strong)}.text-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.text-input.error{border-color:var(--color-error-500)}.text-input.error:focus{box-shadow:0 0 0 3px #ef44441a}.textarea{min-height:100px;resize:vertical;line-height:var(--leading-relaxed)}.select{appearance:none;padding-right:var(--space-10);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2371717a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:16px;cursor:pointer}.toggle{position:relative;width:44px;height:24px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-all)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--text-muted);border-radius:50%;transition:var(--transition-all)}.toggle.active{background:var(--accent-primary);border-color:var(--accent-primary)}.toggle.active:after{left:22px;background:#fff}.checkbox-wrapper{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.checkbox{position:relative;width:18px;height:18px;background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-all)}.checkbox.checked{background:var(--accent-primary);border-color:var(--accent-primary)}.checkbox.checked:after{content:"";position:absolute;top:3px;left:6px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-label{font-size:var(--text-sm);color:var(--text-secondary)}.radio-group{display:flex;flex-direction:column;gap:var(--space-2)}.radio-wrapper{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.radio{position:relative;width:18px;height:18px;background:var(--bg-glass);border:1px solid var(--border-default);border-radius:50%;cursor:pointer;transition:var(--transition-all)}.radio.selected{border-color:var(--accent-primary)}.radio.selected:after{content:"";position:absolute;top:4px;left:4px;width:8px;height:8px;background:var(--accent-primary);border-radius:50%}.radio-label{font-size:var(--text-sm);color:var(--text-secondary)}.range-slider{width:100%;height:4px;background:var(--bg-tertiary);border-radius:var(--radius-full);appearance:none;cursor:pointer}.range-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;background:var(--accent-primary);border-radius:50%;cursor:pointer;transition:var(--transition-transform)}.range-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.accent-picker{display:flex;flex-wrap:wrap;gap:var(--space-2)}.accent-option{position:relative;width:32px;height:32px;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);border:2px solid transparent}.accent-option:hover{transform:scale(1.1)}.accent-option.selected{border-color:var(--text-primary);box-shadow:var(--shadow-md)}.accent-option.selected:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#fff;border-radius:50%}.accent-violet{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.accent-blue{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.accent-green{background:linear-gradient(135deg,#10b981,#34d399)}.accent-rose{background:linear-gradient(135deg,#f43f5e,#fb7185)}.accent-orange{background:linear-gradient(135deg,#f97316,#fb923c)}.accent-teal{background:linear-gradient(135deg,#14b8a6,#2dd4bf)}.accent-cyan{background:linear-gradient(135deg,#06b6d4,#22d3ee)}.theme-toggle{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full)}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;transition:var(--transition-all)}.theme-toggle-btn:hover{color:var(--text-primary)}.theme-toggle-btn.active{background:var(--bg-elevated);color:var(--accent-primary);box-shadow:var(--shadow-sm)}.model-selector{display:flex;flex-direction:column;gap:var(--space-2)}.model-search{position:relative}.model-search-input{width:100%;padding:var(--space-2-5) var(--space-3);padding-left:var(--space-10);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--text-primary);transition:var(--transition-all)}.model-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.model-list{display:flex;flex-direction:column;gap:var(--space-1);max-height:300px;overflow-y:auto}.model-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all)}.model-item:hover{background:var(--hover-overlay);border-color:var(--border-default)}.model-item.selected{background:var(--selected-bg);border-color:var(--accent-primary)}.model-item-icon{font-size:var(--text-xl)}.model-item-info{flex:1;min-width:0}.model-item-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-item-description{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-item-check{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-success-500);border-radius:50%;color:#fff}.usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.usage-stat{padding:var(--space-4);background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-xl);text-align:center}.usage-stat-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--accent-primary);margin-bottom:var(--space-1)}.usage-stat-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.usage-chart{height:200px;background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-4);display:flex;align-items:flex-end;gap:var(--space-1)}.usage-chart-bar{flex:1;background:var(--accent-gradient);border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:8px;transition:height var(--duration-slow) var(--ease-out)}.onboarding-modal{max-width:600px}.onboarding-progress{display:flex;gap:var(--space-1);padding:0 var(--space-6);margin-bottom:var(--space-4)}.onboarding-progress-step{flex:1;height:4px;background:var(--bg-tertiary);border-radius:var(--radius-full);transition:background var(--duration-normal) var(--ease-out)}.onboarding-progress-step.active{background:var(--accent-gradient)}.onboarding-content{text-align:center;padding:var(--space-4) 0}.onboarding-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto var(--space-6);background:var(--accent-gradient);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg),var(--shadow-glow-md)}.onboarding-icon svg{width:40px;height:40px;color:#fff}.onboarding-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.onboarding-description{font-size:var(--text-base);color:var(--text-muted);max-width:400px;margin:0 auto var(--space-6)}.onboarding-features{display:flex;flex-direction:column;gap:var(--space-3);text-align:left;padding:0 var(--space-4)}.onboarding-feature{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:var(--transition-all)}.onboarding-feature:hover{border-color:var(--border-default);transform:translate(4px)}.onboarding-feature-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);font-size:var(--text-xl)}.onboarding-feature-icon.blue{background:#3b82f626}.onboarding-feature-icon.green{background:#10b98126}.onboarding-feature-icon.purple{background:#8b5cf626}.onboarding-feature-text{flex:1}.onboarding-feature-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.onboarding-feature-description{font-size:var(--text-xs);color:var(--text-muted)}.tooltip{position:relative}.tooltip-content{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:var(--space-2) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-primary);white-space:nowrap;box-shadow:var(--shadow-lg);z-index:var(--z-tooltip);opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast) var(--ease-out)}.tooltip:hover .tooltip-content{opacity:1;visibility:visible}.tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--bg-elevated)}.dropdown{position:relative}.dropdown-trigger{cursor:pointer}.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background:var(--bg-glass-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);padding:var(--space-1);opacity:0;visibility:hidden;transform:translateY(-4px);transition:all var(--duration-fast) var(--ease-out)}.dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition-colors);text-align:left}.dropdown-item:hover{background:var(--hover-overlay);color:var(--text-primary)}.dropdown-item.danger:hover{background:#ef44441a;color:var(--color-error-500)}.dropdown-divider{height:1px;background:var(--border-subtle);margin:var(--space-1) 0}.alert{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm)}.alert-icon{flex-shrink:0;margin-top:2px}.alert-content{flex:1}.alert-title{font-weight:var(--font-semibold);margin-bottom:var(--space-0-5)}.alert-info{background:#3b82f61a;border:1px solid rgb(59 130 246 / .3);color:var(--color-info-500)}.alert-success{background:#10b9811a;border:1px solid rgb(16 185 129 / .3);color:var(--color-success-500)}.alert-warning{background:#f59e0b1a;border:1px solid rgb(245 158 11 / .3);color:var(--color-warning-500)}.alert-error{background:#ef44441a;border:1px solid rgb(239 68 68 / .3);color:var(--color-error-500)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:11px;font-weight:var(--font-medium);color:var(--text-muted);box-shadow:var(--shadow-xs)}.shortcut{display:inline-flex;align-items:center;gap:var(--space-0-5)}@tailwind base;@tailwind components;@tailwind utilities;
