@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700&display=swap";:root{--bg-deep:#020617;--bg-surface:#0f172a;--bg-card:#0f172abf;--bg-card-hover:#1e293bd9;--border-subtle:#ffffff14;--border-glow:#06b6d44d;--primary-cyan:#06b6d4;--primary-cyan-hover:#0891b2;--accent-purple:#8b5cf6;--accent-emerald:#10b981;--accent-rose:#f43f5e;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", "Inter", sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--shadow-glow:0 0 25px #06b6d426;--glass-blur:blur(16px)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-deep);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.glass-panel-interactive{transition:all .2s ease-in-out}.glass-panel-interactive:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:var(--shadow-glow);transform:translateY(-2px)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#02061780}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#94a3b833}::-webkit-scrollbar-thumb:hover{background:var(--primary-cyan)}.badge-cyan{color:#38bdf8;border-radius:var(--radius-full);background:#06b6d41f;border:1px solid #38bdf840;padding:2px 8px;font-size:.75rem;font-weight:600}.badge-emerald{color:#34d399;border-radius:var(--radius-full);background:#10b9811f;border:1px solid #34d39940;padding:2px 8px;font-size:.75rem;font-weight:600}.badge-rose{color:#fb7185;border-radius:var(--radius-full);background:#f43f5e1f;border:1px solid #fb718540;padding:2px 8px;font-size:.75rem;font-weight:600}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.95)}}.animate-pulse-glow{animation:2s ease-in-out infinite pulse-glow}.app-container{background:var(--bg-deep);flex-direction:column;height:100vh;display:flex;overflow:hidden}.main-content{flex:1;height:100%;padding:24px;overflow-y:auto}.sidebar{width:240px;height:100%;-webkit-backdrop-filter:var(--glass-blur);border-right:1px solid var(--border-subtle);z-index:40;background:#0f172ad9;flex-direction:column;flex-shrink:0;gap:0;padding:0;transition:transform .3s,left .3s;display:flex;overflow:hidden}.mobile-only{display:none!important}@media (width<=768px){.mobile-only,.mobile-hamburger-btn{display:flex!important}.sidebar{width:260px;height:100dvh;max-height:100dvh;box-shadow:none;border-right:1px solid var(--border-subtle);z-index:1000;gap:0;padding:0;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-backdrop{-webkit-backdrop-filter:blur(6px);z-index:999;background:#020617cc;position:fixed;inset:0}.main-content{padding:16px}.logout-text{display:none}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-icon,.animate-spin,svg.spin-icon,svg.animate-spin{transform-origin:50%!important;animation:1s linear infinite spin!important;display:inline-block!important}.chat-container{background:#0f172a;border:1px solid #ffffff14;border-radius:16px;height:calc(100vh - 110px);display:flex;position:relative;overflow:hidden;box-shadow:0 20px 50px #00000080}.chat-threads-panel{background:#0f172af2;border-right:1px solid #ffffff14;flex-direction:column;flex-shrink:0;width:320px;display:flex}.chat-conversation-panel{background:#020617b3;flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.chat-back-btn{display:none}@media (width<=768px){.chat-container{border-radius:12px;height:calc(100dvh - 100px)}.chat-threads-panel{border-right:none;width:100%}.chat-container.has-active-thread .chat-threads-panel,.chat-container:not(.has-active-thread) .chat-conversation-panel{display:none}.chat-back-btn{display:flex!important}}
