@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap";
:root{--font-display:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary:#0b0d12;--bg-secondary:#131722;--bg-tertiary:#1b2030;--bg-accent:#6366f126;--border-color:#ffffff14;--border-focus:#6366f180;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-gradient:linear-gradient(135deg, #3b82f6 0%, #ef4444 100%);--accent-indigo:#3b82f6;--accent-violet:#ef4444;--sidebar-width:280px;--header-height:64px;--shadow-sm:0 2px 8px #00000026;--shadow-md:0 4px 20px #0000004d;--shadow-glow:0 0 15px #6366f140;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}.app-container.light-theme{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-accent:#6366f10f;--border-color:#0f172a14;--border-focus:#6366f199;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--shadow-sm:0 2px 8px #0f172a0a;--shadow-md:0 4px 20px #0f172a0f;--shadow-glow:0 0 15px #6366f11f}.app-container.light-theme ::-webkit-scrollbar-thumb{background:#0f172a1a}.app-container.light-theme ::-webkit-scrollbar-thumb:hover{background:#0f172a33}.app-container.light-theme .header{background:#f8fafccc!important}.app-container.light-theme .main-panel.glow-bg{background:radial-gradient(circle,#6366f11a 0%,#f8fafc4d 45%,#f8fafc 100%)!important}.app-container.light-theme .input-panel{background:#f8fafcf7!important}.app-container.light-theme .sidebar-footer{background-color:#0000!important}.app-container{background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--transition-normal), color var(--transition-normal), border-color var(--transition-normal)}img[src="/logo.png"],img[src="/chat-ai.png"]{box-sizing:border-box!important;padding:5%!important}.logo img,.login-logo img,.mobile-header-logo img,.settings-mobile-menu-header img,.settings-nav-header img{padding:0!important}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;height:100vh;display:flex;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#fff3}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border-color);height:100%;transition:transform var(--transition-normal);z-index:100;flex-direction:column;flex-shrink:0;display:flex}.sidebar-header{justify-content:space-between;align-items:center;padding:1.5rem 1.25rem 1rem;display:flex}.logo{font-family:var(--font-display);align-items:center;gap:.5rem;font-size:1.5rem;font-weight:800;display:flex}.logo-dot{background:var(--accent-indigo);width:8px;height:8px;box-shadow:var(--shadow-glow);border-radius:50%;display:inline-block}.btn-new-chat{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-family:var(--font-display);transition:all var(--transition-fast);border-radius:12px;justify-content:center;align-items:center;gap:.5rem;margin:.5rem 1.25rem 1rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;display:flex}.btn-new-chat:hover{background:var(--bg-accent);border-color:var(--accent-indigo);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.chat-history{flex-direction:column;flex:1;gap:.25rem;padding:0 .75rem 1rem;display:flex;overflow-y:auto}.history-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:.75rem .5rem;font-size:.75rem;font-weight:700}.history-item{cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem;font-size:.9rem;display:flex}.history-item:hover,.history-item.active{background-color:var(--bg-tertiary);color:var(--text-primary)}.history-item.active{background:#6366f10f;border-color:#6366f140}.item-left{flex:1;align-items:center;gap:.6rem;display:flex;overflow:hidden}.item-left svg{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.history-item:hover .item-left svg,.history-item.active .item-left svg{color:var(--accent-indigo)}.chat-title-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.chat-title-input{border:none;border-bottom:1.5px solid var(--accent-indigo);color:var(--text-primary);width:100%;font-size:.9rem;font-family:var(--font-body);background:0 0;outline:none}.item-actions{align-items:center;gap:.25rem;display:none}.history-item:hover .item-actions,.history-item.active .item-actions{display:flex}.action-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.2rem;display:flex}.action-btn:hover{color:var(--text-primary);background:#ffffff1a}.action-btn.delete:hover{color:#ef4444;background:#ef44441a}.sidebar-footer{border-top:1px solid var(--border-color);background-color:#0b0d1280;padding:1.25rem}.api-card{background:var(--bg-tertiary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.api-card-title{font-family:var(--font-display);color:var(--text-primary);justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;display:flex}.status-indicator{background:#ef4444;border-radius:50%;width:6px;height:6px}.status-indicator.valid{background:#10b981;box-shadow:0 0 8px #10b981}.api-input-wrapper{display:flex;position:relative}.api-input{border:1px solid var(--border-color);width:100%;color:var(--text-primary);transition:all var(--transition-fast);background:#0003;border-radius:8px;outline:none;padding:.55rem 2.2rem .55rem .75rem;font-family:monospace;font-size:.8rem}.api-input:focus{border-color:var(--border-focus);box-shadow:var(--shadow-glow)}.toggle-key-visibility{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.toggle-key-visibility:hover{color:var(--text-secondary)}.api-card-desc{color:var(--text-muted);font-size:.7rem;line-height:1.4}.api-card-desc a{color:var(--accent-indigo);text-decoration:none}.api-card-desc a:hover{text-decoration:underline}.main-panel{background-color:var(--bg-primary);height:100vh;transition:background var(--transition-normal);flex-direction:column;flex:1;display:flex;position:relative}.main-panel.glow-bg{background:radial-gradient(circle,#141e5073 0%,#0a0f280d 45%,#0b0d12 100%)}.main-panel.glow-bg:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle,#7c3aed0a 0%,#0000 60%);position:absolute;inset:0}.header{height:var(--header-height);border-bottom:1px solid var(--border-color);z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0d12cc;justify-content:space-between;align-items:center;padding:0 1.5rem;display:flex}.sidebar-toggle{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;padding:.5rem;display:flex}.sidebar-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.model-select-wrapper{align-items:center;display:flex;position:relative}.model-select{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;appearance:none;font-size:.85rem;font-weight:600;font-family:var(--font-display);transition:all var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a855f7' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:10px;border-radius:99px;outline:none;padding:.4rem 2rem .4rem 1rem}.model-select:hover{border-color:var(--accent-indigo);box-shadow:var(--shadow-glow)}.model-select optgroup{background:var(--bg-secondary);color:var(--text-secondary);font-weight:700}.model-select option{background:var(--bg-tertiary);color:var(--text-primary);padding:8px;font-weight:400}.api-settings-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-family:var(--font-display);width:100%;transition:all var(--transition-fast);border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.9rem;font-weight:600;display:flex}.api-settings-btn:hover{border-color:var(--accent-indigo);background:#6366f114}.close-api-btn{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none}.close-api-btn:hover{color:var(--text-primary)}.api-key-label-row{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.welcome-container{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2.5rem;width:100%;max-width:800px;margin:0 auto;padding:2rem;display:flex;overflow-y:auto}.welcome-title-wrapper{text-align:center}.welcome-title{font-family:var(--font-display);margin-bottom:.5rem;font-size:2.8rem;font-weight:800;line-height:1.2}.welcome-title span{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.welcome-subtitle{color:var(--text-secondary);font-size:1.1rem;font-weight:400}.suggestions-grid{grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;display:grid}.suggestion-card{background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-normal);text-align:left;border-radius:16px;flex-direction:column;justify-content:space-between;height:130px;padding:1.25rem;display:flex}.suggestion-card:hover{border-color:var(--accent-indigo);background:var(--bg-tertiary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.suggestion-card-text{color:var(--text-primary);font-size:.95rem;line-height:1.4}.suggestion-card-icon{width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition-fast);background:#ffffff0d;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;display:flex}.suggestion-card:hover .suggestion-card-icon{background:var(--bg-accent);color:var(--accent-indigo)}.chat-container{flex-direction:column;flex:1;gap:1.5rem;padding:3rem 0;display:flex;overflow-y:auto}.chat-message-wrapper{justify-content:center;width:100%;display:flex}.chat-message-wrapper.user-msg{padding:.5rem 1rem}.chat-message-wrapper.assistant-msg{padding:1rem 2rem}.chat-message{gap:1rem;width:100%;max-width:800px;display:flex}.message-avatar{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.message-avatar.user{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.message-avatar.assistant{background:var(--accent-gradient);color:#fff}.message-content-wrapper{flex-direction:column;flex:1;gap:.4rem;display:flex;overflow-x:auto}.message-sender{font-family:var(--font-display);color:var(--text-secondary);font-size:.85rem;font-weight:600}.message-content{color:var(--text-primary);font-size:.95rem;line-height:1.6}.message-content p{margin-bottom:.75rem}.message-content p:last-child{margin-bottom:0}.message-content strong{color:var(--text-primary);font-weight:600}.message-content code{background:#ffffff14;border-radius:4px;padding:.2rem .4rem;font-family:monospace;font-size:.85rem}.message-content ul,.message-content ol{margin:.5rem 0 .75rem 1.25rem}.message-content li{margin-bottom:.35rem}.message-content li:last-child{margin-bottom:0}.code-block-container{border:1px solid var(--border-color);background:#0f1115;border-radius:8px;margin:.75rem 0;overflow:hidden}.code-block-header{border-bottom:1px solid var(--border-color);color:var(--text-muted);background:#171a21;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:.75rem;display:flex}.code-block-lang{text-transform:uppercase;font-weight:700}.copy-code-btn{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-items:center;gap:.3rem;font-size:.75rem;display:flex}.copy-code-btn:hover{color:var(--text-primary)}.code-block-container pre{margin:0;padding:1rem;overflow-x:auto}.code-block-container pre code{color:#e5e7eb;background:0 0;border-radius:0;padding:0;font-size:.85rem}.input-panel{background-color:#0000;padding:0 1.5rem 1.5rem}.pill-input-container{transition:all var(--transition-normal)!important}.pill-input-container:focus-within{border-color:#a78bfa59!important;box-shadow:0 10px 30px #00000080,0 0 20px #a78bfa26!important}.pill-action-btn{color:var(--text-secondary);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast) ease;background:0 0;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;display:flex}.pill-action-btn:hover{color:#fff;background:#ffffff0f}.input-container{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;max-width:800px;transition:all var(--transition-fast);box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;gap:.5rem;margin:0 auto;padding:.75rem 1.25rem;display:flex;position:relative}.input-container:focus-within{border-color:var(--border-focus);box-shadow:var(--shadow-glow)}.input-row{align-items:flex-end;gap:.75rem;display:flex}.chat-input{color:var(--text-primary);font-family:var(--font-body);resize:none;background:0 0;border:none;outline:none;flex:1;height:24px;max-height:200px;padding:2px 0;font-size:.95rem;line-height:1.5}.chat-input::placeholder{color:var(--text-muted)}.btn-send{background:var(--accent-gradient);color:#fff;cursor:pointer;width:34px;height:34px;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-send:hover{box-shadow:var(--shadow-glow);transform:scale(1.05)}.btn-send:disabled{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed;box-shadow:none;transform:none}.input-footer{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.terms-text{text-align:center;color:var(--text-muted);margin-top:.5rem;font-size:.7rem}.loader-wrapper{flex-direction:column;gap:.5rem;width:100%;display:flex}.loader-line{background:linear-gradient(90deg, var(--bg-tertiary) 25%, #6366f126 50%, var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:6px;height:12px;animation:1.5s infinite loading-pulse}.loader-line:nth-child(2){width:85%}.loader-line:nth-child(3){width:60%}@keyframes loading-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.typing-cursor{color:var(--accent-indigo);vertical-align:middle;margin-left:2px;font-size:1.1rem;font-weight:700;animation:.8s infinite typing-blink;display:inline-block}@keyframes typing-blink{0%,to{opacity:1}50%{opacity:0}}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background:#0000008c;display:none;position:fixed;inset:0}@media (max-width:768px){.sidebar-overlay.open{display:block}}.mobile-hamburger{display:none!important}.desktop-only-btn{display:flex}.mobile-header-logo{display:none}@media (max-width:768px){.mobile-hamburger{display:flex!important}.desktop-only-btn{display:none!important}.mobile-header-logo{display:block}.sidebar-header .sidebar-toggle{display:flex!important}}.login-page-container{background-color:var(--bg-primary);z-index:1000;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}.login-glow{filter:blur(80px);background:radial-gradient(circle,#6366f12e 0%,#a855f70d 50%,#0000 100%);border-radius:50%;width:500px;height:500px;animation:8s ease-in-out infinite alternate float-glow;position:absolute}@keyframes float-glow{0%{transform:translate(-50px,-50px)scale(1)}to{transform:translate(50px,50px)scale(1.15)}}.login-card{border:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;width:100%;max-width:440px;box-shadow:var(--shadow-md), 0 0 40px #6366f10d;z-index:10;background:#131722a6;border-radius:24px;flex-direction:column;gap:1.75rem;padding:3rem 2.5rem;animation:.6s cubic-bezier(.16,1,.3,1) card-appear;display:flex}@keyframes card-appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-logo{font-family:var(--font-display);justify-content:center;align-items:center;gap:.5rem;font-size:2.2rem;font-weight:800;display:flex}.login-title-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.login-btn-wrapper{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.login-google-btn:hover{transform:translateY(-2px);background:#f8fafc!important;box-shadow:0 12px 25px #0003,0 0 0 1px #4285f440!important}.login-google-btn:active{transform:translateY(0);box-shadow:0 4px 10px #00000026!important}.user-profile-card{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:0 0;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.8rem;display:flex}.user-profile-avatar{object-fit:cover;border:1.5px solid var(--accent-indigo);width:38px;height:38px;box-shadow:var(--shadow-glow);border-radius:50%}.user-profile-avatar-fallback{background:var(--accent-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:.95rem;font-weight:700;display:flex}.user-profile-details{text-align:left;flex-direction:column;flex:1;display:flex;overflow:hidden}.user-profile-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.user-profile-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.btn-signout{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.4rem;display:flex}.btn-signout:hover{color:var(--accent-indigo);background:var(--bg-accent)}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.settings-modal{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;max-width:520px;box-shadow:var(--shadow-md), 0 0 30px #6366f11a;z-index:1110;border-radius:20px;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) modal-slide-up;display:flex;overflow:hidden}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.settings-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.settings-modal-title{font-family:var(--font-display);color:var(--text-primary);font-size:1.25rem;font-weight:700}.settings-modal-close{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.settings-modal-close:hover{color:var(--text-primary)}.settings-modal-tabs{border-bottom:1px solid var(--border-color);background:#0003;padding:.25rem;display:flex}.settings-tab-btn{color:var(--text-muted);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);text-align:center;background:0 0;border:none;border-radius:8px;flex:1;padding:.6rem;font-size:.9rem;font-weight:600}.settings-tab-btn:hover{color:var(--text-primary);background:#ffffff08}.settings-tab-btn.active{color:var(--text-primary);background:var(--bg-tertiary);box-shadow:var(--shadow-sm)}.settings-modal-body{flex-direction:column;gap:1.25rem;max-height:400px;padding:1.5rem;display:flex;overflow-y:auto}.settings-group-title{font-family:var(--font-display);color:var(--text-secondary);margin-bottom:.5rem;font-size:.95rem;font-weight:600}.settings-input-item{flex-direction:column;gap:.4rem;display:flex}.settings-input-label{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;display:flex}.settings-modal-footer{border-top:1px solid var(--border-color);background:#0000001a;justify-content:flex-end;padding:1rem 1.5rem;display:flex}.settings-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1100;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.2s ease-out modal-fade-in;display:flex;position:fixed;top:0;left:0}.settings-modal-v2{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;width:min(860px,92vw);height:min(560px,85vh);animation:.28s cubic-bezier(.16,1,.3,1) settings-appear;display:flex;overflow:hidden;box-shadow:0 24px 60px #000000b3,0 0 0 1px #7c3aed14}@keyframes settings-appear{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.settings-nav{background:var(--bg-primary);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:200px;padding:0;display:flex}.settings-nav-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:1.1rem 1rem .9rem;display:flex}.settings-close-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.settings-close-x:hover{color:var(--text-primary);background:#ffffff12}.settings-nav-items{flex-direction:column;flex:1;gap:.15rem;padding:.75rem .6rem;display:flex}.settings-nav-item{color:var(--text-secondary);cursor:pointer;font-family:var(--font-display);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:.6rem;width:100%;padding:.6rem .75rem;font-size:.85rem;font-weight:500;transition:all .15s;display:flex;position:relative}.settings-nav-item:hover{color:var(--text-primary);background:#ffffff0a}.settings-nav-item.active{color:#c4b5fd;background:#7c3aed1f}.settings-nav-icon{opacity:.75;flex-shrink:0;align-items:center;display:flex}.settings-nav-item.active .settings-nav-icon{opacity:1;color:#a78bfa}.settings-nav-badge{letter-spacing:.02em;border-radius:99px;margin-left:auto;padding:.15rem .4rem;font-size:.65rem;font-weight:700}.settings-nav-footer{border-top:1px solid #ffffff0d;padding:.75rem 1rem 1.1rem}.settings-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.settings-mobile-tabs{display:none}.settings-pane{flex-direction:column;flex:1;display:flex;overflow:hidden}.settings-pane-header{border-bottom:1px solid #ffffff0d;flex-shrink:0;padding:1.4rem 1.6rem .9rem}.settings-pane-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.3rem;font-size:1.2rem;font-weight:700}.settings-pane-desc{color:var(--text-muted);font-size:.78rem;line-height:1.5}.settings-pane-body{flex-direction:column;flex:1;gap:.9rem;padding:1.1rem 1.6rem;display:flex;overflow-y:auto}.provider-card{background:#ffffff05;border:1px solid #ffffff12;border-radius:14px;flex-direction:column;gap:.75rem;padding:1rem 1.1rem;transition:border-color .2s;display:flex}.provider-card:hover{border-color:#ffffff1f}.provider-card-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.provider-brand{align-items:center;gap:.75rem;display:flex}.provider-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 2px 8px #0000004d}.provider-name{font-family:var(--font-display);color:var(--text-primary);font-size:.88rem;font-weight:600}.provider-models{color:var(--text-muted);margin-top:.15rem;font-size:.7rem}.provider-status-pill{border-radius:99px;flex-shrink:0;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.72rem;font-weight:600;display:flex}.provider-status-pill.connected{color:#10b981;background:#10b9811f;border:1px solid #10b98133}.provider-status-pill.disconnected{color:#ef4444;background:#ef444414;border:1px solid #ef444426}.provider-status-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.provider-input-group{align-items:center;gap:.65rem;display:flex}.api-input-wrapper-v2{flex:1;align-items:center;display:flex;position:relative}.api-input-v2{width:100%;color:var(--text-primary);letter-spacing:.04em;background:#00000040;border:1px solid #ffffff14;border-radius:9px;outline:none;padding:.55rem 2.5rem .55rem .85rem;font-family:Courier New,monospace;font-size:.82rem;transition:border-color .2s,box-shadow .2s}.api-input-v2:focus{border-color:#7c3aed80;box-shadow:0 0 0 3px #7c3aed14}.api-input-v2::placeholder{color:var(--text-muted);letter-spacing:.08em}.api-toggle-vis{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:.2rem;transition:color .15s;display:flex;position:absolute;right:.65rem}.api-toggle-vis:hover{color:var(--text-secondary)}.provider-get-key-link{color:#a78bfa;white-space:nowrap;flex-shrink:0;font-size:.72rem;font-weight:600;text-decoration:none;transition:color .15s}.provider-get-key-link:hover{color:#c4b5fd}.settings-security-notice{color:var(--text-secondary);background:#10b9810a;border:1px solid #10b9811f;border-radius:10px;align-items:flex-start;gap:.5rem;padding:.75rem .9rem;font-size:.75rem;line-height:1.5;display:flex}.profile-hero{background:#ffffff05;border:1px solid #ffffff0f;border-radius:14px;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.profile-avatar-ring{flex-shrink:0;position:relative}.profile-avatar-img{object-fit:cover;border:2px solid #7c3aed80;border-radius:50%;width:56px;height:56px}.profile-avatar-fallback{color:#fff;background:linear-gradient(135deg,#7c3aed,#db2777);border:2px solid #7c3aed66;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:700;display:flex}.profile-avatar-online{background:#10b981;border:2px solid #0e0f18;border-radius:50%;width:12px;height:12px;position:absolute;bottom:2px;right:2px;box-shadow:0 0 6px #10b98180}.profile-hero-info{flex:1;min-width:0}.profile-hero-name{font-family:var(--font-display);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.profile-hero-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;font-size:.78rem;overflow:hidden}.profile-hero-badge{color:#10b981;background:#10b9811a;border:1px solid #10b98133;border-radius:99px;align-items:center;gap:.3rem;margin-top:.45rem;padding:.2rem .5rem;font-size:.68rem;font-weight:600;display:inline-flex}.profile-stats-row{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;align-items:center;display:flex;overflow:hidden}.profile-stat{text-align:center;flex:1;padding:.8rem .5rem}.profile-stat-value{font-family:var(--font-display);color:var(--text-primary);font-size:1.25rem;font-weight:700}.profile-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.2rem;font-size:.7rem}.profile-stat-divider{background:#ffffff0f;flex-shrink:0;width:1px;height:40px}.profile-info-card{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;overflow:hidden}.profile-info-row{justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex}.profile-info-key{color:var(--text-muted);flex-shrink:0;font-size:.78rem}.profile-info-value{color:var(--text-secondary);text-align:right;white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:.78rem;font-weight:500;overflow:hidden}.profile-info-divider{background:#ffffff0d;height:1px;margin:0 1rem}.profile-signout-btn{color:#ef4444;width:100%;font-family:var(--font-display);cursor:pointer;background:0 0;border:1px solid #ef444440;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem;font-size:.88rem;font-weight:600;transition:background .15s,border-color .15s;display:flex}.profile-signout-btn:hover{border-color:#ef444473}.appearance-section{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;padding:1rem}.appearance-section-label{font-family:var(--font-display);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem;font-size:.82rem;font-weight:600}.theme-selector-row{gap:.75rem;display:flex}.theme-option{cursor:pointer;background:0 0;border:1px solid #ffffff12;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:.5rem;padding:.65rem;transition:all .2s;display:flex;position:relative}.theme-option:hover{border-color:#ffffff26}.theme-option.active{background:#7c3aed0f;border-color:#7c3aed80}.theme-preview{border-radius:6px;gap:0;width:100%;height:56px;display:flex;overflow:hidden}.dark-preview{background:#0b0d12;border:1px solid #ffffff14}.light-preview{background:#f3f4f6;border:1px solid #0000001a}.tp-sidebar{background:#ffffff0a;border-right:1px solid #ffffff0f;width:28%}.tp-sidebar.light{background:#0000000f;border-right:1px solid #00000014}.tp-content{flex-direction:column;flex:1;justify-content:center;gap:4px;padding:6px 8px;display:flex}.tp-line{background:#ffffff1a;border-radius:3px;height:5px}.tp-line.light{background:#0000001f}.theme-option-label{color:var(--text-secondary);font-size:.75rem;font-weight:600}.theme-active-badge{color:#a78bfa;letter-spacing:.03em;background:#7c3aed26;border-radius:99px;padding:.1rem .35rem;font-size:.6rem;font-weight:700;position:absolute;top:.4rem;right:.4rem}.appearance-toggle-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.appearance-toggle-label{color:var(--text-primary);font-size:.85rem;font-weight:600}.appearance-toggle-desc{color:var(--text-muted);margin-top:.2rem;font-size:.73rem}.toggle-switch{cursor:pointer;background:#ffffff1a;border:1px solid #ffffff14;border-radius:99px;flex-shrink:0;width:44px;height:25px;transition:background .2s,border-color .2s;position:relative}.toggle-switch.on{background:linear-gradient(135deg,#7c3aed 0%,#a855f7 100%);border-color:#0000}.toggle-thumb{background:#fff;border-radius:50%;width:19px;height:19px;transition:transform .2s cubic-bezier(.16,1,.3,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0000004d}.toggle-switch.on .toggle-thumb{transform:translate(19px)}.settings-content-footer{border-top:1px solid #ffffff0d;flex-shrink:0;justify-content:flex-end;padding:.85rem 1.25rem;display:flex}.settings-done-btn{color:#c4b5fd;font-family:var(--font-display);cursor:pointer;background:#7c3aed26;border:1px solid #7c3aed4d;border-radius:8px;padding:.5rem 1.25rem;font-size:.88rem;font-weight:600;transition:all .15s}.settings-done-btn:hover{color:#ddd6fe;background:#7c3aed40;border-color:#7c3aed80}@media (max-width:768px){.settings-modal-v2{flex-direction:column;background:var(--bg-primary)!important;border:none!important;border-radius:0!important;width:100vw!important;height:100vh!important;max-height:100vh!important;animation:.28s cubic-bezier(.16,1,.3,1) settings-appear-mobile-page!important;position:fixed!important;inset:0!important}@keyframes settings-appear-mobile-page{0%{transform:translate(100%)}to{transform:translate(0)}}.settings-modal-overlay{background:#0e0f18!important;justify-content:stretch!important;align-items:stretch!important}.settings-nav{display:none}.settings-mobile-tabs{scrollbar-width:none;border-bottom:1px solid #ffffff0f;flex-shrink:0;align-items:center;gap:.25rem;padding:.5rem 1rem;display:flex;overflow-x:auto}.settings-mobile-tabs::-webkit-scrollbar{display:none}.settings-mobile-tab{color:var(--text-muted);font-family:var(--font-display);cursor:pointer;background:0 0;border:1px solid #ffffff12;border-radius:99px;flex-shrink:0;padding:.4rem .9rem;font-size:.82rem;font-weight:600;transition:all .15s}.settings-mobile-tab.active{color:#c4b5fd;background:#7c3aed26;border-color:#7c3aed59}.settings-content{position:relative}.settings-pane-header{padding-top:1rem;padding-bottom:.75rem}.settings-pane-title{font-size:1.05rem}.settings-mobile-tabs:before{display:none!important}.settings-pane-body{gap:.75rem;padding:.85rem 1rem}.provider-card{border-radius:12px;padding:.85rem}.provider-card-header{flex-wrap:wrap;gap:.5rem}.provider-input-group{flex-wrap:wrap;gap:.4rem}.provider-get-key-link{font-size:.7rem}.profile-hero{padding:.85rem}.profile-info-value{max-width:140px}.theme-selector-row{gap:.5rem}}.sidebar{transition:width .35s cubic-bezier(.15,.85,.15,1),transform .35s cubic-bezier(.15,.85,.15,1),border-color .35s!important}.sidebar.collapsed{border-right:0 solid #0000!important;width:0!important;min-width:0!important;margin:0!important;padding:0!important;overflow:hidden!important}.sidebar.collapsed *{opacity:0!important;pointer-events:none!important;transition:opacity .15s!important}.mobile-only{display:none!important}@media (max-width:768px){.mobile-only{display:flex!important}.sidebar{z-index:1000!important;border-right:1px solid var(--border-color)!important;width:82vw!important;max-width:320px!important;transition:transform .3s cubic-bezier(.15,.85,.15,1)!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;overflow:hidden!important;transform:translate(-100%)!important}.sidebar:not(.collapsed){transform:translate(0)!important}.sidebar.collapsed{width:82vw!important;max-width:320px!important;transform:translate(-100%)!important}.sidebar:not(.collapsed)~.sidebar-overlay,.sidebar-overlay.open{display:block}.main-panel{width:100%!important;min-width:0!important}.header{height:52px!important;padding:0 .85rem!important}.welcome-container{justify-content:center!important;gap:1.5rem!important;padding:1.25rem 1rem 11.5rem!important}.welcome-title{font-size:1.85rem!important;line-height:1.25!important}.welcome-subtitle{font-size:.95rem!important}.pill-input-container{border-radius:20px!important;max-width:100%!important;padding:.65rem .85rem .65rem 1.1rem!important}.suggestions-grid{grid-template-columns:1fr!important;gap:.65rem!important}.suggestion-card{height:auto!important;min-height:80px!important;padding:1rem!important}.chat-container{gap:.5rem!important;padding:1.25rem 0 11.5rem!important}.chat-message-wrapper.user-msg{padding:.3rem 1.35rem!important}.chat-message-wrapper.assistant-msg{padding:1.2rem 1.35rem!important}.chat-message{gap:1.1rem!important;max-width:100%!important}.message-avatar{border-radius:8px!important;flex-shrink:0!important;width:32px!important;height:32px!important}.message-content{font-size:.95rem!important;line-height:1.7!important}.message-content p{margin-bottom:1rem!important}.message-content-wrapper{gap:.65rem!important}.message-sender{font-size:.8rem!important}.code-block-container{max-width:calc(100vw - 2rem)!important;overflow-x:auto!important}.input-panel{padding:.6rem .75rem!important;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px))!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;border-top:1px solid var(--border-color)!important;z-index:200!important;background:#0b0d12f7!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.input-container{border-radius:16px!important;max-width:100%!important;padding:.6rem .85rem!important}.input-footer,.terms-text{display:none!important}.chat-input{font-size:.95rem!important}.model-toggle-btn span:first-of-type+span{white-space:nowrap;text-overflow:ellipsis;max-width:60px;display:inline-block;overflow:hidden}.settings-modal{border-radius:20px 20px 0 0!important;width:100vw!important;max-width:100vw!important;margin:0!important;animation:.3s cubic-bezier(.16,1,.3,1) modal-slide-up-mobile!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.settings-modal-overlay{align-items:flex-end!important}.settings-modal-body{max-height:55vh!important}@keyframes modal-slide-up-mobile{0%{opacity:.8;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.login-card{border-radius:20px 20px 0 0!important;max-width:100%!important;padding:2rem 1.25rem!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.login-page-container{align-items:flex-end!important}.user-profile-card{padding:.65rem!important}.user-profile-email{display:none!important}.sidebar-header{padding:1rem!important}.btn-new-chat{margin:.25rem .85rem .75rem!important}}@media (max-width:390px){.welcome-title{font-size:1.55rem!important}.pill-input-container{padding:.55rem .75rem!important}.chat-message-wrapper{padding:0 .5rem!important}.message-avatar{width:26px!important;height:26px!important}}.settings-mobile-menu-view,.settings-mobile-sub-header{display:none}.settings-panes-wrapper{flex-direction:column;width:100%;height:100%;display:flex}@media (max-width:768px){.settings-mobile-menu-view{background:var(--bg-primary);flex-direction:column;width:100%;height:100%;display:flex}.settings-mobile-menu-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 1.25rem 1rem;display:flex}.settings-mobile-menu-list{flex-direction:column;gap:.85rem;padding:1.25rem 1rem;display:flex}.settings-mobile-menu-item{outline:none;justify-content:space-between;align-items:center;display:flex;background:var(--bg-secondary)!important;border:1px solid var(--border-color)!important;cursor:pointer!important;border-radius:14px!important;width:100%!important;padding:1.1rem!important;transition:all .2s!important}.settings-mobile-menu-item:active{transform:scale(.98);background:var(--bg-tertiary)!important}.settings-mobile-item-left{align-items:center;gap:1rem;display:flex}.settings-mobile-item-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.settings-mobile-item-title{color:var(--text-primary);font-size:.95rem;font-weight:600;font-family:var(--font-display)}.settings-mobile-item-desc{color:var(--text-muted);margin-top:.15rem;font-size:.78rem}.settings-mobile-sub-header{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem .5rem;display:flex}.settings-panes-wrapper{flex-direction:column;width:100%;height:100%;display:flex;overflow-y:auto}.settings-mobile-menu-view.mobile-hide,.settings-panes-wrapper.mobile-hide{display:none!important}}
