@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-color:#0a0b10;--surface-color:#161821;--surface-hover:#1e212d;--primary:#3b82f6;--primary-glow:#3b82f666;--secondary:#8b5cf6;--secondary-glow:#8b5cf666;--text-main:#f3f4f6;--text-muted:#9ca3af;--accent-gradient:linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--glass:#ffffff08;--glass-border:#ffffff14;--font-main:"Inter", sans-serif;--font-title:"Outfit", sans-serif}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-main);min-height:100vh}.app-container{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--glass-border);background:#0003;flex-direction:column;gap:2rem;width:260px;padding:1.5rem;display:flex}.logo-container{align-items:center;gap:.75rem;padding:.5rem;display:flex}.logo-icon{background:var(--accent-gradient);color:#fff;width:42px;height:42px;box-shadow:0 8px 20px var(--primary-glow);border-radius:12px;justify-content:center;align-items:center;display:flex}.logo-text{font-family:var(--font-title);letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.nav-links{flex-direction:column;flex:1;gap:.5rem;display:flex}.nav-item{color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:1rem;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text-main)}.nav-item.active{background:var(--primary);color:#fff;box-shadow:0 4px 15px var(--primary-glow)}.main-content{flex:1;position:relative;overflow:hidden}.bg-blur{z-index:0;filter:blur(120px);opacity:.15;border-radius:50%;position:absolute}.blob-1{background:var(--primary);width:400px;height:400px;top:-10%;right:-5%}.blob-2{background:var(--secondary);width:300px;height:300px;bottom:-10%;left:-5%}.content-wrapper{z-index:10;height:100vh;padding:2rem;position:relative;overflow-y:auto}.glass-panel{background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:24px}.btn-primary{background:var(--accent-gradient);color:#fff;cursor:pointer;box-shadow:0 4px 15px var(--primary-glow);border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;padding:14px 28px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.btn-primary:hover{box-shadow:0 8px 25px var(--primary-glow);transform:translateY(-2px)}.input-field{background:var(--surface-color);border:1px solid var(--glass-border);color:#fff;border-radius:14px;width:100%;padding:14px 20px;font-size:1rem;transition:all .3s}.input-field:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #3b82f61a}.chat-container{flex-direction:column;max-width:900px;height:calc(100vh - 6rem);margin:1rem auto 0;display:flex}.chat-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.chat-messages{flex-direction:column;flex:1;gap:1rem;padding-right:.5rem;display:flex;overflow-y:auto}.message{border-radius:18px;max-width:80%;padding:1rem 1.25rem;font-size:.95rem;line-height:1.5}.message.bot{background:var(--glass);border:1px solid var(--glass-border);border-top-left-radius:4px;align-self:flex-start}.message.user{background:var(--primary);color:#fff;border-top-right-radius:4px;align-self:flex-end}.chat-input-area{margin-top:1.5rem;position:relative}.chat-input-area button{border-radius:10px;width:44px;height:44px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.settings-wrapper{max-width:650px;margin:0 auto}.settings-header{margin-bottom:2.5rem}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-muted);align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:.85rem;font-weight:600;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dotPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.dot-animate{color:var(--primary);font-size:1.2rem;font-weight:700;animation:1.4s ease-in-out infinite both dotPulse;display:inline-block}
