:root{--cc-blue:#024089;--cc-yellow:#fc0;--cc-red:#b71928;--cc-orange:#eb5c37;--cc-green:#31895d;--cc-cyan:#228293;--bg-primary:#f9fafb;--bg-secondary:#eff2f5;--bg-tertiary:#e3e8ed;--bg-glass:#ffffffc7;--bg-glass-hover:#ffffffeb;--accent:#024089;--accent-glow:#0352ad;--accent-subtle:#02408914;--brand-yellow:#fc0;--brand-yellow-subtle:#ffcc0029;--brand-yellow-glow:0 0 24px #ffcc0073;--text-primary:#192534;--text-secondary:#4e6074;--text-muted:#7c8b9c;--text-inverse:#f9fafb;--gemini-canvas-bg:#fff;--user-bubble-bg:#edf3fb;--user-bubble-text:#0b1c33;--bot-bubble-bg:transparent;--bot-bubble-border:transparent;--floating-capsule-bg:#fff;--floating-capsule-border:#dde6f2;--floating-capsule-shadow:0 4px 16px #02408914;--border-subtle:#dae0e7;--border-accent:#02408940;--shadow-lg:0 12px 40px #0240890f;--shadow-glow:0 0 24px #02408929;--scrollbar-thumb:#0240892e;--scrollbar-thumb-hover:#02408947;--inline-code-bg:#02408912;--code-block-bg:#02408908;--tooltip-bg:#e9edf1f5;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.35s cubic-bezier(.175, .885, .32, 1.275);--transition-smooth:.4s cubic-bezier(.16, 1, .3, 1);--orb-color-1:#02408966;--orb-color-2:#22829347;--orb-color-3:#ffcc003d;--orb-color-4:#eb5c3724;--orb-opacity:1;--error:#b71928;--error-subtle:#b7192814;--error-border:#b719282e;--success:#31895d;--success-subtle:#31895d1f;--success-border:#31895d38;--cyan-accent:#228293;--cyan-subtle:#2282931f;--orange-accent:#eb5c37;--orange-subtle:#eb5c371f;--dev-sidebar-bg:#ea580c;--dev-sidebar-bg-gradient:linear-gradient(180deg, #f97316 0%, #ea580c 100%);--dev-sidebar-border:#c2410c;--dev-sidebar-border-subtle:#0f172a29;--dev-sidebar-border-active:#0f172a52;--dev-sidebar-text:#0f172a;--dev-sidebar-text-muted:#0f172ae6;--dev-sidebar-surface:#0f172a12;--dev-sidebar-surface-hover:#0f172a24;--dev-sidebar-surface-active:#0f172a38;--dev-sidebar-badge-bg:#0f172a;--dev-sidebar-badge-text:#fff;--dev-sidebar-badge-border:#0f172a66;--dev-sidebar-actions-gradient:linear-gradient(90deg, transparent 0%, #ea580ce6 25%, #ea580c 100%);--dev-sidebar-actions-hover-gradient:linear-gradient(90deg, transparent 0%, #c2410cf2 25%, #c2410c 100%);--dev-sidebar-scrollbar-thumb:#0f172a40}[data-theme=dark]{--bg-primary:#0a0f15;--bg-secondary:#10161e;--bg-tertiary:#19212a;--bg-glass:#09101ac7;--bg-glass-hover:#0f1a2ae0;--accent:#2575e6;--accent-glow:#569cf5;--accent-subtle:#2575e624;--brand-yellow:#fc0;--brand-yellow-subtle:#ffcc002e;--brand-yellow-glow:0 0 26px #ffcc0080;--text-primary:#edeff3;--text-secondary:#adb7c2;--text-muted:#768493;--text-inverse:#0a0f15;--gemini-canvas-bg:#070d15;--user-bubble-bg:#111d2e;--user-bubble-text:#e6eef8;--bot-bubble-bg:transparent;--bot-bubble-border:transparent;--floating-capsule-bg:#0d1724;--floating-capsule-border:#18283d;--floating-capsule-shadow:0 4px 20px #00000080;--border-subtle:#dee5ed14;--border-accent:#2575e659;--shadow-lg:0 12px 40px #0009;--shadow-glow:0 0 24px #2575e647;--scrollbar-thumb:#ffffff1a;--scrollbar-thumb-hover:#ffffff2e;--inline-code-bg:#22829324;--code-block-bg:#0006;--tooltip-bg:#161e27f0;--orb-color-1:#02408999;--orb-color-2:#2282936b;--orb-color-3:#ffcc0052;--orb-color-4:#eb5c3733;--orb-opacity:1;--error:#d93847;--error-subtle:#d938471f;--error-border:#d9384740;--success:#3ea372;--success-subtle:#3ea37226;--success-border:#3ea37247;--cyan-accent:#339cb0;--cyan-subtle:#339cb026;--orange-accent:#f0714f;--orange-subtle:#f0714f26;--dev-sidebar-bg:#ea580c;--dev-sidebar-bg-gradient:linear-gradient(180deg, #f97316 0%, #ea580c 100%);--dev-sidebar-border:#c2410c;--dev-sidebar-border-subtle:#0f172a29;--dev-sidebar-border-active:#0f172a52;--dev-sidebar-text:#0f172a;--dev-sidebar-text-muted:#0f172ae6;--dev-sidebar-surface:#0f172a12;--dev-sidebar-surface-hover:#0f172a24;--dev-sidebar-surface-active:#0f172a38;--dev-sidebar-badge-bg:#0f172a;--dev-sidebar-badge-text:#fff;--dev-sidebar-badge-border:#0f172a66;--dev-sidebar-actions-gradient:linear-gradient(90deg, transparent 0%, #ea580ce6 25%, #ea580c 100%);--dev-sidebar-actions-hover-gradient:linear-gradient(90deg, transparent 0%, #c2410cf2 25%, #c2410c 100%);--dev-sidebar-scrollbar-thumb:#0f172a40}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes floatGlow{0%,to{filter:drop-shadow(0 0 12px var(--accent-glow));transform:translateY(0)scale(1)}50%{filter:drop-shadow(0 0 22px var(--accent-glow));transform:translateY(-5px)scale(1.02)}}@keyframes pulseRing{0%{opacity:.8;transform:scale(.95)}50%{opacity:.3;transform:scale(1.15)}to{opacity:0;transform:scale(1.35)}}@keyframes shimmerSweep{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes buttonPop{0%{transform:scale(1)}40%{transform:scale(1.22)}75%{transform:scale(.92)}to{transform:scale(1)}}@keyframes barFill{0%{width:0%}to{width:var(--target-width,100%)}}@keyframes floatOrb1{0%,to{transform:translate(0,0)}50%{transform:translate(24px,15px)}}@keyframes floatOrb2{0%,to{transform:translate(0,0)}50%{transform:translate(-20px,-12px)}}@keyframes floatOrb3{0%,to{transform:translate(0,0)}50%{transform:translate(18px,-15px)}}@keyframes floatOrb4{0%,to{transform:translate(0,0)}50%{transform:translate(-18px,14px)}}@keyframes auroraMeshDrift{0%,to{transform:translate(0,0)}50%{transform:translate(-10px,6px)}}@keyframes auroraSlowDrift{0%{transform:translate(0,0)scale(1)rotate(0)}50%{transform:translate(24px,-18px)scale(1.03)rotate(1.2deg)}to{transform:translate(-18px,20px)scale(.98)rotate(-1.2deg)}}@keyframes geminiSpinRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes geminiShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes shimmerSlide{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes lineWavePulse{0%,to{opacity:.55}50%{opacity:1}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login-page{background:var(--bg-primary);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.login-card{z-index:1;align-items:center;gap:var(--space-xl);padding:var(--space-2xl) var(--space-xl);background:var(--bg-glass);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg), 0 0 32px var(--shadow-glow);flex-direction:column;min-width:380px;max-width:420px;animation:.4s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;position:relative;transform:translateZ(0)}.login-brand{align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.login-logo{background:var(--accent);border-radius:var(--radius-lg);width:64px;height:64px;font-size:var(--font-size-2xl);color:#fff;box-shadow:0 8px 24px var(--shadow-glow);justify-content:center;align-items:center;font-weight:700;animation:5s ease-in-out infinite floatGlow;display:flex}.login-title{font-size:var(--font-size-3xl);background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-glow) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.login-subtitle{font-size:var(--font-size-sm);color:var(--text-muted);text-align:center;max-width:280px;line-height:1.5}.login-error{background:var(--error-subtle);border:1px solid var(--error-border);color:var(--error);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center;width:100%;animation:.3s fadeInUp}.login-btn{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);color:#333;border-radius:var(--radius-full);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-base);background:#fff;border:none;justify-content:center;width:100%;font-weight:500;display:flex;position:relative;overflow:hidden}.login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ffffff26}.login-btn:active{transform:translateY(0)}.login-btn svg{flex-shrink:0;width:20px;height:20px}.theme-toggle-floating{top:var(--space-lg);right:var(--space-lg);z-index:10;background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--space-sm);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-lg);justify-content:center;align-items:center;display:flex;position:absolute}.theme-toggle-floating:hover{background:var(--bg-glass-hover);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.theme-toggle-floating svg{width:20px;height:20px}.chat-layout{background:var(--bg-primary);width:100vw;height:100dvh;animation:fadeIn var(--transition-base) ease;flex-direction:row;display:flex;position:relative;overflow:hidden}.ambient-glow-background{pointer-events:none;z-index:0;contain:strict;will-change:opacity, visibility;opacity:var(--orb-opacity,1);visibility:visible;transition:opacity .6s cubic-bezier(.16,1,.3,1),visibility .6s;position:absolute;inset:0;overflow:hidden}.ambient-glow-background.hidden-glow{opacity:0;visibility:hidden;pointer-events:none}.ambient-aurora-quad{pointer-events:none;width:112%;height:112%;position:absolute;inset:-6%}.ambient-aurora-image{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.chat-header{z-index:500;box-sizing:border-box;pointer-events:none;animation:slideDown var(--transition-base) ease;background:0 0;border-bottom:none;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:absolute;top:0;left:0;right:0}.chat-header-left,.agent-selector,.agent-selector-trigger{pointer-events:auto}.chat-header-logo{background:var(--accent);border-radius:var(--radius-sm);width:36px;height:36px;font-size:var(--font-size-sm);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.chat-header-title{font-size:var(--font-size-lg);font-weight:600}.agent-selector{position:relative}.agent-selector-static{align-items:center;gap:var(--space-sm);box-sizing:border-box;height:36px;padding:0 12px;display:flex}.agent-selector-trigger{align-items:center;gap:var(--space-sm);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-full);cursor:pointer;font-family:var(--font-family);transition:all var(--transition-fast);color:var(--text-primary);box-sizing:border-box;opacity:1;min-width:0;max-width:100%;height:36px;padding:0 14px;font-size:13px;display:flex;box-shadow:0 2px 10px #0000000f}.agent-selector-trigger:hover,.agent-selector-trigger.open{background:var(--bg-glass-hover);border-color:var(--border-accent)}.agent-selector-label{color:var(--text-primary);opacity:1;align-items:center;gap:0;min-width:0;font-size:13px;font-weight:600;line-height:1.2;display:flex;overflow:hidden}.agent-selector-dot{margin:0 var(--space-sm);color:var(--text-muted);opacity:1;flex-shrink:0;font-weight:600}.agent-selector-agent-name{color:var(--accent-glow);white-space:nowrap;text-overflow:ellipsis;opacity:1;flex-shrink:1;min-width:0;max-width:160px;font-weight:700;overflow:hidden}.agent-selector-chevron{color:var(--text-muted);transition:transform var(--transition-fast);align-items:center;display:flex}.agent-selector-chevron.open{transform:rotate(180deg)}.agent-selector-menu{top:calc(100% + var(--space-xs));background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:220px;box-shadow:0 12px 32px #00000040, 0 0 0 1px var(--border-subtle);padding:var(--space-xs);z-index:1000;animation:.15s agentMenuIn;position:absolute;left:0}@keyframes agentMenuIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.agent-selector-option{width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.agent-selector-option:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.agent-selector-option.selected{color:var(--accent-glow)}.agent-selector-option-name{text-align:left;align-items:center;gap:var(--space-xs);flex:1;display:flex}.agent-selector-option-check{color:var(--accent-glow);margin-left:var(--space-md);align-items:center;display:flex}.chat-header-right{align-items:center;gap:var(--space-sm);display:flex}.user-profile-menu-container{display:inline-block;position:relative}.chat-header-user-trigger{box-sizing:border-box;background:var(--bg-glass);border-radius:var(--radius-full);border:1px solid var(--border-subtle);cursor:pointer;height:36px;color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:500;display:flex}.chat-header-user-trigger:hover,.chat-header-user-trigger.open{background:var(--bg-glass-hover);border-color:var(--border-accent);color:var(--text-primary)}.user-profile-menu{top:calc(100% + var(--space-xs));background:var(--bg-tertiary);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-lg);padding:var(--space-xs);z-index:100;flex-direction:column;gap:2px;animation:.15s userMenuIn;display:flex;position:absolute;right:0}@keyframes userMenuIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.user-profile-menu-item{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;font-weight:500;display:flex}.user-profile-menu-item:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.user-profile-menu-item.danger{color:var(--error)}.user-profile-menu-item.danger:hover{background:var(--error-subtle);color:var(--error)}.chat-header-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.chat-header-name{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500}.btn-icon{box-sizing:border-box;background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-full);height:36px;color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:500;display:flex}.btn-icon:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-accent)}.btn-icon.danger:hover{color:var(--error);border-color:var(--error-border)}.btn-icon.restore{border-color:var(--border-accent);color:var(--accent-glow);box-shadow:var(--shadow-glow);animation:2s ease-in-out infinite pulseGlow}.chat-messages{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex:1;height:100%;min-height:0;overflow-y:auto}.chat-messages-inner{width:100%;max-width:850px;padding:68px var(--space-lg) var(--space-lg) var(--space-lg);gap:var(--space-md);flex-direction:column;min-height:100%;margin:0 auto;display:flex}.chat-messages-empty{justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-muted);min-height:280px;animation:fadeIn var(--transition-slow) ease;flex-direction:column;flex:1;display:flex}.chat-messages-empty-hint{color:var(--text-secondary);letter-spacing:.1px;font-size:13px;font-weight:500}.chat-conversation-skeleton{gap:var(--space-lg);width:100%;max-width:850px;padding:var(--space-md) var(--space-md) var(--space-xl);box-sizing:border-box;flex-direction:column;margin:0 auto;animation:.3s fadeIn;display:flex}.chat-skeleton-group{width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards fadeInUp;display:flex}.chat-skeleton-group.user{justify-content:flex-end}.chat-skeleton-group.bot{justify-content:flex-start;align-items:flex-start;gap:12px}.chat-skeleton-group.secondary{opacity:.65}.chat-skeleton-user-bubble{background:var(--user-bubble-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);min-width:130px;max-width:75%;box-shadow:var(--shadow-sm);align-items:center;padding:12px 18px;display:flex;position:relative;overflow:hidden}.chat-skeleton-avatar-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;display:flex;position:relative}.chat-skeleton-avatar-glow{background:conic-gradient(from 0deg, var(--accent), var(--accent-glow), transparent, var(--accent));filter:blur(2.5px);opacity:.55;border-radius:50%;animation:3.5s linear infinite geminiSpinRing;position:absolute;inset:-2px}.chat-skeleton-avatar{background:var(--bg-secondary);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.chat-skeleton-bot-body{flex-direction:column;flex:1;gap:10px;min-width:0;padding-top:2px;display:flex}.chat-skeleton-meta-header{align-items:center;gap:8px;display:flex}.chat-skeleton-lines{flex-direction:column;gap:10px;width:100%;display:flex}.chat-skeleton-shimmer-line{border-radius:var(--radius-full);background:var(--bg-tertiary);position:relative;overflow:hidden;transform:translateZ(0)}.chat-skeleton-shimmer-line.user-shimmer{border-radius:var(--radius-full);background:var(--bg-tertiary);opacity:.85;height:12px}.chat-skeleton-shimmer-line.meta-shimmer{border-radius:var(--radius-full);background:var(--bg-tertiary);opacity:.6;height:9px}.chat-skeleton-shimmer-line.bot-shimmer{height:11px}.chat-skeleton-shimmer-line.bot-shimmer.line-1{animation:2.4s ease-in-out infinite lineWavePulse}.chat-skeleton-shimmer-line.bot-shimmer.line-2{animation:2.4s ease-in-out .2s infinite lineWavePulse}.chat-skeleton-shimmer-line.bot-shimmer.line-3{animation:2.4s ease-in-out .4s infinite lineWavePulse}.chat-skeleton-shimmer-line.bot-shimmer.line-4{animation:2.4s ease-in-out .6s infinite lineWavePulse}.chat-skeleton-shimmer-line:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000 0%,#0240891a 20%,#569cf573 50%,#0240891a 80%,#0000 100%);width:100%;height:100%;animation:1.8s cubic-bezier(.4,0,.2,1) infinite shimmerSlide;position:absolute;top:0;left:0}[data-theme=dark] .chat-skeleton-shimmer-line:after{background:linear-gradient(90deg,#0000 0%,#2575e61f 20%,#569cf573 50%,#2575e61f 80%,#0000 100%)}@media (width<=768px){.chat-conversation-skeleton{padding:var(--space-sm) var(--space-sm) var(--space-lg);gap:var(--space-md)}.chat-skeleton-user-bubble{max-width:88%}.chat-skeleton-group.bot{gap:8px}}@media (prefers-reduced-motion:reduce){.chat-skeleton-shimmer-line:after{opacity:.5;animation:none}.chat-skeleton-avatar-glow,.chat-skeleton-shimmer-line.bot-shimmer{animation:none}}.chat-message{gap:var(--space-sm);max-width:100%;scroll-margin-top:80px;animation:.3s fadeInUp;display:flex}.chat-message-body{flex:1;min-width:0}.chat-message.user{flex-direction:row-reverse;align-self:flex-end;max-width:80%}.chat-message.bot{align-self:flex-start;width:100%;max-width:100%}.chat-message-avatar{width:32px;height:32px;font-size:var(--font-size-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-message-avatar.bot{background:var(--accent-subtle);color:var(--accent-glow);font-weight:600}.chat-message-avatar.user img{object-fit:cover;border-radius:50%;width:100%;height:100%}.chat-message-content{padding:var(--space-md) var(--space-md);border-radius:var(--radius-lg);line-height:1.6;font-size:var(--font-size-sm);overflow-wrap:break-word;word-break:break-word;min-width:0;position:relative}.chat-message.user .chat-message-content{background:var(--user-bubble-bg);color:var(--user-bubble-text);white-space:pre-wrap;word-break:break-word;border-radius:20px;padding:12px 18px}.chat-message.bot .chat-message-content{color:var(--text-primary);background:0 0;border:none;padding:8px 0}.chat-message.bot .chat-message-content p{margin-bottom:var(--space-sm)}.chat-message.bot .chat-message-content p:last-child{margin-bottom:0}.chat-message.bot .chat-message-content code{background:var(--inline-code-bg);font-size:var(--font-size-xs);border-radius:4px;padding:2px 6px;font-family:Fira Code,Consolas,monospace}.chat-message.bot .chat-message-content pre{background:var(--code-block-bg);border:1px solid var(--border-subtle);padding:var(--space-md);border-radius:var(--radius-sm);margin:var(--space-sm) 0;overflow-x:auto}.chat-message.bot .chat-message-content pre code{background:0 0;padding:0}.chat-message.bot .chat-message-content ul,.chat-message.bot .chat-message-content ol{padding-left:var(--space-lg);margin:var(--space-sm) 0}.chat-message.bot .chat-message-content strong{color:var(--accent-glow)}.chat-message.bot .chat-message-content a{color:var(--accent-glow);text-underline-offset:2px;text-decoration:underline}.chat-message.bot .chat-message-content .katex{color:var(--text-primary);text-rendering:optimizelegibility;font-size:1.05em}.chat-message.bot .chat-message-content .katex:not(.katex-display .katex){white-space:nowrap}.chat-message.bot .chat-message-content .katex-display{margin:var(--space-sm) 0;padding:var(--space-xs) 0;text-align:center;white-space:nowrap;display:block;overflow:auto hidden}.chat-message.bot .chat-message-content .katex-display>.katex{text-align:center;white-space:nowrap;display:inline-block}.chat-message.bot .chat-message-content .katex-display::-webkit-scrollbar{height:4px}.chat-message.bot .chat-message-content .katex-display::-webkit-scrollbar-track{background:0 0}.chat-message.bot .chat-message-content .katex-display::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}.chat-message.bot .chat-message-content .katex .text,.chat-message.bot .chat-message-content .katex .mtext{letter-spacing:-.01em;font-weight:500;font-family:var(--font-family)!important}.chat-message.bot .chat-message-content .katex .mathbf{color:var(--accent-glow);font-weight:700;font-family:var(--font-family)!important}@media (width<=768px){.chat-message.bot .chat-message-content .katex-display{margin:var(--space-xs) 0;font-size:.95em}}.table-block-wrapper{margin:var(--space-md) 0;flex-direction:column;gap:8px;width:100%;display:flex}.table-block-footer{justify-content:flex-start;align-items:center;gap:var(--space-sm);padding:4px 2px 0;display:flex}.table-actions-dropdown{display:inline-flex;position:relative}.table-more-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-tertiary);min-width:44px;height:26px;color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:0 10px;display:inline-flex;box-shadow:0 1px 3px #0000000a}.table-more-btn:hover{background:var(--bg-secondary);color:var(--accent);border-color:var(--border-accent);transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.table-more-btn:active{transform:translateY(0)}.table-more-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.table-more-btn.active{background:var(--bg-secondary);color:var(--accent);border-color:var(--border-accent)}.table-more-btn.has-feedback{background:var(--bg-secondary);border-color:var(--success)}.table-btn-feedback{font-size:var(--font-size-xs);color:var(--success);align-items:center;gap:5px;font-weight:600;display:inline-flex}.table-actions-menu{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);z-index:50;flex-direction:column;gap:2px;min-width:195px;padding:6px;animation:.15s ease-out fadeIn;display:flex;position:absolute;top:calc(100% + 5px);left:0;right:auto;box-shadow:0 10px 25px -5px #0000001f,0 8px 10px -6px #00000014}[data-theme=dark] .table-actions-menu{background:#141e29;border-color:#ffffff1f;box-shadow:0 10px 25px -5px #0006}.table-menu-item{border-radius:var(--radius-sm);width:100%;font-size:var(--font-size-xs);color:var(--text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-weight:500;display:flex}.table-menu-item:hover{background:var(--bg-secondary);color:var(--accent)}[data-theme=dark] .table-menu-item:hover{color:var(--accent-glow);background:#ffffff14}.table-menu-item:disabled{opacity:.6;cursor:not-allowed}.table-menu-item svg{color:currentColor;flex-shrink:0;width:14px;height:14px}.table-pill-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:5px 14px;font-weight:500;display:inline-flex}.table-pill-btn:hover{background:var(--bg-tertiary);color:var(--accent);border-color:var(--border-accent);transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.table-pill-btn:active{transform:translateY(0)}.table-pill-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.table-pill-btn svg{flex-shrink:0;width:14px;height:14px}.table-responsive-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-glass);width:100%;max-width:100%;margin:0;overflow-x:auto!important}.table-responsive-wrapper table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs)}.chat-message.bot .chat-message-content thead{border-bottom:2px solid var(--border-accent)}.chat-message.bot .chat-message-content th{padding:var(--space-sm) var(--space-md);text-align:left;color:var(--accent-glow);white-space:nowrap;font-weight:600}.chat-message.bot .chat-message-content td{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border-subtle);white-space:nowrap}.chat-message.bot .chat-message-content tr:hover{background:#ffffff08}.table-share-modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(6px);padding:var(--space-md);background:#000000a6;justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) tableShareFadeIn;display:flex;position:fixed;inset:0}.table-share-modal-card{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;width:95vw;max-width:1040px;max-height:90vh;animation:.25s cubic-bezier(.16,1,.3,1) tableShareScaleUp;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000059}.table-share-modal-header{padding:var(--space-lg);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.table-share-header-info{flex-direction:column;flex:1;display:flex}.table-share-header-badge{color:var(--accent);background:var(--accent-subtle);border-radius:var(--radius-full);align-items:center;gap:6px;width:fit-content;margin-bottom:6px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.table-share-modal-title{font-size:var(--font-size-lg);color:var(--text-primary);margin:0 0 4px;font-weight:700}.table-share-modal-subtitle{font-size:var(--font-size-xs);color:var(--text-secondary);margin:0;line-height:1.4}.table-share-header-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.table-share-theme-toggle{background:var(--bg-tertiary);border-radius:var(--radius-full);border:1px solid var(--border-subtle);align-items:center;gap:2px;padding:3px;display:flex}.table-share-theme-btn{color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;display:inline-flex}.table-share-theme-btn:hover{color:var(--text-primary)}.table-share-theme-btn.active{background:var(--bg-primary);color:var(--accent);font-weight:600;box-shadow:0 1px 4px #00000014}.table-share-btn-close{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-primary);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.table-share-btn-close:hover{background:var(--bg-tertiary);color:var(--error);border-color:var(--error)}.table-share-modal-body{padding:var(--space-lg);gap:var(--space-md);background:var(--bg-primary);flex-direction:column;flex:1;min-height:240px;display:flex;overflow-y:auto}.table-share-preview-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-secondary);width:100%;max-height:56vh;display:flex;overflow:hidden}.table-share-preview-scroll{width:100%;padding:var(--space-md);justify-content:flex-start;align-items:flex-start;display:flex;overflow:auto}.table-share-export-card{border-radius:var(--radius-lg);box-sizing:border-box;width:max-content;min-width:520px;max-width:none;transition:background-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;margin:0 auto;padding:26px 28px 22px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000001f}.table-share-export-card.light{background-color:var(--gemini-canvas-bg);color:var(--text-primary);border:1px solid var(--border-subtle)}.table-share-export-card.dark{color:var(--text-inverse);background-color:#121b26;border:1px solid #ffffff1f}.table-share-card-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:20px;padding-bottom:14px;display:flex}.table-share-export-card.dark .table-share-card-header{border-bottom:1px solid #ffffff1a}.table-share-card-brand-left{align-items:center;gap:8px;height:30px;display:flex}.table-share-card-dito-icon{object-fit:contain;border-radius:6px;flex-shrink:0;width:30px;height:30px}.table-share-card-title{font-size:var(--font-size-md);letter-spacing:-.02em;font-weight:700;line-height:30px}.table-share-card-brand-right{align-items:center;height:30px;display:flex}.table-share-card-logo{object-fit:contain;flex-shrink:0;width:auto;height:30px;max-height:30px}.table-share-card-table-wrap{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background-color:var(--gemini-canvas-bg);width:100%;margin:0;overflow:hidden}.table-share-export-card.dark .table-share-card-table-wrap{background-color:#121b26;border:1px solid #ffffff1f}.table-share-card-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font-size:12.5px}.table-share-card-table th{letter-spacing:-.01em;white-space:nowrap;background-color:var(--bg-secondary);color:var(--accent);border-bottom:2px solid var(--accent);padding:10px 16px;font-size:12.5px;font-weight:600}.table-share-card-table th:first-child{border-top-left-radius:var(--radius-md)}.table-share-card-table th:last-child{border-top-right-radius:var(--radius-md)}.table-share-export-card.dark .table-share-card-table th{color:var(--accent-glow);border-bottom:2px solid var(--accent-glow);background-color:#ffffff0f}.table-share-card-table td{white-space:nowrap;border-top:1px solid var(--border-subtle);color:var(--text-primary);padding:10px 16px;font-size:12px}.table-share-card-table tr:last-child td:first-child{border-bottom-left-radius:var(--radius-md)}.table-share-card-table tr:last-child td:last-child{border-bottom-right-radius:var(--radius-md)}.table-share-export-card.dark .table-share-card-table td{color:var(--text-inverse);border-top:1px solid #ffffff14}.table-share-export-card.light .table-share-card-table tbody tr:nth-child(2n){background-color:var(--bg-secondary)}.table-share-export-card.dark .table-share-card-table tbody tr:nth-child(2n){background-color:#ffffff05}.table-share-card-footer{color:var(--text-muted);justify-content:flex-end;align-items:center;margin-top:14px;font-size:11px;display:flex}.table-share-inline-warning{border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--error);background:#b7192814;border:1px solid #b7192833;padding:8px 12px}.table-share-modal-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border-subtle);background:var(--bg-secondary);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.table-share-btn-cancel{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);padding:8px 16px;font-weight:500}.table-share-btn-cancel:hover{background:var(--bg-tertiary);color:var(--text-primary)}.table-share-action-buttons{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.table-share-btn-action{border-radius:var(--radius-md);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;align-items:center;gap:8px;padding:8px 16px;font-weight:600;display:inline-flex}.table-share-btn-action:disabled{opacity:.55;cursor:not-allowed;box-shadow:none!important;transform:none!important}.table-share-btn-action.copy{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-subtle)}.table-share-btn-action.copy:hover:not(:disabled){border-color:var(--border-accent);color:var(--accent);background:var(--bg-tertiary);transform:translateY(-1px)}.table-share-btn-action.copy.copied{color:var(--success);border-color:var(--success);background:#31895d1f}.table-share-btn-action.download{background:var(--accent);color:var(--text-inverse)}.table-share-btn-action.download:hover:not(:disabled){background:var(--accent-glow);transform:translateY(-1px);box-shadow:0 4px 12px #02408940}.table-share-btn-action.share{background:var(--brand-yellow);color:var(--text-primary);border-color:var(--brand-yellow)}.table-share-btn-action.share:hover:not(:disabled){filter:brightness(.95);transform:translateY(-1px);box-shadow:0 4px 12px #ffcc0059}@keyframes tableShareFadeIn{0%{opacity:0}to{opacity:1}}@keyframes tableShareScaleUp{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=768px){.table-share-modal-card{max-height:94vh}.table-share-modal-header{padding:var(--space-md);flex-direction:column}.table-share-header-actions{justify-content:space-between;width:100%}.table-share-modal-footer{padding:var(--space-md);flex-direction:column-reverse;align-items:stretch}.table-share-action-buttons{flex-direction:column;width:100%}.table-share-btn-action,.table-share-btn-cancel{justify-content:center;width:100%}}.chat-message-followups{margin-top:10px;margin-bottom:var(--space-xs);flex-direction:column;gap:6px;width:100%;animation:.3s cubic-bezier(.16,1,.3,1) followupFadeIn;display:flex}@keyframes followupFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes followupItemIn{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-followups-header{-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding-left:2px;display:flex}.chat-followups-sparkle{opacity:.9;font-size:12px;line-height:1}.chat-followups-label{font-size:var(--font-size-xs);letter-spacing:.4px;color:var(--text-muted);text-transform:uppercase;font-weight:600}.chat-followups-list{flex-direction:column;align-items:flex-start;gap:8px;width:100%;display:flex}.chat-followup-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);-webkit-user-select:none;user-select:none;width:fit-content;max-width:100%;animation:.35s cubic-bezier(.16,1,.3,1) backwards followupItemIn;animation-delay:calc(var(--index,0) * 60ms);align-items:center;gap:10px;padding:8px 18px 8px 14px;font-weight:500;line-height:1.4;display:inline-flex;box-shadow:0 1px 3px #0000000a}.chat-followup-card:hover:not(:disabled){background:var(--bg-glass-hover);color:var(--accent);border-color:var(--border-accent);transform:translateY(-1px);box-shadow:0 4px 14px #0240891f}.chat-followup-card:active:not(:disabled){transform:translateY(0)}.chat-followup-card:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.chat-followup-icon-badge{border-radius:var(--radius-full);background:var(--accent-subtle);width:22px;height:22px;color:var(--accent);transition:background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.chat-followup-card:hover:not(:disabled) .chat-followup-icon-badge{background:var(--accent);color:#fff;transform:translate(1px)}.chat-followup-text{text-overflow:ellipsis;white-space:normal;word-break:break-word;overflow:hidden}@media (width<=768px){.chat-followups-list{align-items:stretch;gap:6px}.chat-followup-card{border-radius:var(--radius-full);width:100%;padding:10px 16px}}.chat-message-time{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--space-xs);padding:0 var(--space-xs);align-items:center;gap:0;display:flex}.chat-message.user .chat-message-time{text-align:right;justify-content:flex-end}.chat-message-agent-dot{margin:0 var(--space-xs);color:var(--text-muted)}.chat-message-agent{color:var(--accent-glow);white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:160px;font-weight:500;display:inline-block;overflow:hidden}.token-cost-wrapper{align-items:center;display:inline-flex;position:relative}.token-cost-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;padding:0 2px;line-height:1;transition:color .2s,transform .15s;display:inline-flex}.token-cost-btn:hover{color:var(--accent-glow);transform:scale(1.15)}.token-cost-tooltip{background:var(--tooltip-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);min-width:260px;box-shadow:var(--shadow-lg), 0 0 16px var(--accent-subtle);z-index:100;animation:.18s ease-out tokenTooltipIn;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.token-cost-tooltip.align-left{left:0!important;right:auto!important;transform:none!important}.token-cost-tooltip.align-right{left:auto!important;right:0!important;transform:none!important}.token-cost-tooltip.align-center{left:50%!important;right:auto!important;transform:translate(-50%)!important}@keyframes tokenTooltipIn{0%{opacity:0;margin-bottom:-4px}to{opacity:1;margin-bottom:0}}.token-cost-tooltip-row{font-size:var(--font-size-xs);color:var(--text-secondary);justify-content:space-between;align-items:center;padding:3px 0;display:flex}.token-cost-tooltip-row span:last-child{font-variant-numeric:tabular-nums;font-weight:500}.token-cost-tooltip-highlight{color:var(--accent-glow);font-weight:600}.token-cost-tooltip-highlight span:last-child{color:var(--text-primary)}.token-cost-tooltip-total{color:var(--text-primary);font-weight:600}.token-cost-tooltip-divider{background:var(--border-subtle);height:1px;margin:4px 0}.gemini-thinking-container{margin:var(--space-sm) 0 var(--space-md) 0;align-self:flex-start;align-items:flex-start;gap:12px;width:100%;max-width:520px;animation:.35s cubic-bezier(.16,1,.3,1) fadeInUp;display:flex}.gemini-thinking-avatar-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;display:flex;position:relative}.gemini-avatar-glow-ring{background:conic-gradient(from 0deg, var(--accent), var(--accent-glow), transparent, var(--accent));filter:blur(3px);opacity:.7;border-radius:50%;animation:3s linear infinite geminiSpinRing;position:absolute;inset:-2px}.gemini-thinking-avatar{background:var(--bg-secondary);z-index:1;border-radius:50%;width:32px;height:32px;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001f}.gemini-thinking-body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.gemini-thinking-header{align-items:center;gap:6px;display:flex}.gemini-thinking-text{letter-spacing:.2px;background:linear-gradient(90deg, var(--text-secondary) 0%, var(--accent-glow) 50%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;font-size:12px;font-weight:600;animation:3s linear infinite geminiShimmer}.gemini-shimmer-lines{flex-direction:column;gap:9px;width:100%;margin-top:2px;display:flex}.gemini-shimmer-line{border-radius:var(--radius-full);background:var(--bg-tertiary);height:10px;position:relative;overflow:hidden;transform:translateZ(0)}.gemini-shimmer-line:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000 0%,#02408926 20%,#569cf58c 50%,#02408926 80%,#0000 100%);width:100%;height:100%;animation:1.8s cubic-bezier(.4,0,.2,1) infinite shimmerSlide;position:absolute;top:0;left:0}.gemini-shimmer-line.line-1{width:78%;animation:2.4s ease-in-out infinite lineWavePulse}.gemini-shimmer-line.line-2{width:55%;animation:2.4s ease-in-out .25s infinite lineWavePulse}.gemini-shimmer-line.line-2:after{animation-delay:.2s}.gemini-shimmer-line.line-3{width:32%;animation:2.4s ease-in-out .5s infinite lineWavePulse}.gemini-shimmer-line.line-3:after{animation-delay:.4s}.chat-concise-hint{align-items:center;gap:var(--space-sm);max-width:850px;margin:0 auto var(--space-sm) auto;background:var(--accent-subtle);border:1px solid var(--border-accent);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--text-secondary);animation:fadeInHint var(--transition-base) ease-out;padding:8px 14px;line-height:1.4;display:flex}.agent-testing-banner{align-items:center;gap:var(--space-sm);max-width:850px;margin:0 auto var(--space-sm) auto;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--text-primary);animation:fadeInHint var(--transition-base) ease-out;background:#f59f0a1f;border:1px solid #f59f0a4d;padding:8px 14px;line-height:1.4;display:flex}.agent-testing-banner-icon{flex-shrink:0;font-size:1rem}.agent-testing-banner-text{flex:1}.agent-tag-testing{text-transform:uppercase;letter-spacing:.4px;border-radius:var(--radius-sm);color:#c2750a;background:#f59f0a2e;margin-left:6px;padding:2px 6px;font-size:.65rem;font-weight:600}[data-theme=dark] .agent-tag-testing{color:#fab338}.unregistered-user-banner{align-items:center;gap:var(--space-sm);max-width:850px;margin:0 auto var(--space-sm) auto;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--text-primary);animation:fadeInHint var(--transition-base) ease-out;background:#ef43431f;border:1px solid #ef43434d;padding:10px 16px;line-height:1.45;display:flex}[data-theme=dark] .unregistered-user-banner{background:#ef43432e;border-color:#ef434366}.unregistered-user-banner-icon{flex-shrink:0;font-size:1.15rem}.unregistered-user-banner-text{flex:1}.unregistered-user-banner-text strong{color:var(--cc-red)}[data-theme=dark] .unregistered-user-banner-text strong{color:#fb6a6a}.budget-warning-banner{align-items:center;gap:var(--space-sm);max-width:850px;margin:0 auto var(--space-sm) auto;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--text-primary);animation:fadeInHint var(--transition-base) ease-out;background:#eab3081f;border:1px solid #eab30859;padding:10px 16px;line-height:1.45;display:flex}[data-theme=dark] .budget-warning-banner{background:#eab3082e;border-color:#eab30873}.budget-warning-banner strong{color:#ca8a04}[data-theme=dark] .budget-warning-banner strong{color:#facc15}.budget-blocked-banner{align-items:center;gap:var(--space-sm);max-width:850px;margin:0 auto var(--space-sm) auto;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--text-primary);animation:fadeInHint var(--transition-base) ease-out;background:#ef43431f;border:1px solid #ef43434d;padding:10px 16px;line-height:1.45;display:flex}[data-theme=dark] .budget-blocked-banner{background:#ef43432e;border-color:#ef434366}.budget-blocked-banner strong{color:var(--error)}[data-theme=dark] .budget-blocked-banner strong{color:#fb6a6a}.budget-banner-icon{flex-shrink:0;font-size:1.15rem}.budget-banner-text{flex:1}@keyframes fadeInHint{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat-concise-hint-icon{flex-shrink:0;font-size:1rem}.chat-concise-hint-text{flex:1}.chat-concise-hint-close{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;flex-shrink:0;padding:2px 6px;font-size:1.1rem;line-height:1}.chat-concise-hint-close:hover{color:var(--text-primary);background:var(--bg-glass-hover)}.chat-input-bar{background:linear-gradient(180deg, transparent 0%, var(--bg-primary) 85%);z-index:100;box-sizing:border-box;border-top:none;flex-shrink:0;width:100%;padding:12px 24px 20px}.chat-input-capsule{background:var(--floating-capsule-bg);border:1px solid var(--floating-capsule-border);box-shadow:var(--floating-capsule-shadow);transition:border-color var(--transition-fast), box-shadow var(--transition-base), transform var(--transition-fast);border-radius:32px;align-items:center;gap:10px;width:100%;max-width:820px;margin:0 auto;padding:8px 12px 8px 16px;display:flex}.chat-input-capsule:focus-within{border-color:var(--border-accent);box-shadow:0 0 0 2px var(--border-accent), var(--floating-capsule-shadow), 0 8px 24px var(--shadow-glow)}.capsule-add-btn{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.capsule-add-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.chat-input-textarea{color:var(--text-primary);font-family:var(--font-family);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:150px;padding:4px 0;font-size:14px;line-height:1.5;overflow-y:auto}.chat-input-textarea:focus,.chat-input-textarea:focus-visible{box-shadow:none!important;outline:none!important}.chat-input-textarea::placeholder{color:var(--text-muted)}.capsule-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.chat-send-btn{background:var(--accent);color:#fff;cursor:pointer;width:36px;height:36px;transition:transform var(--transition-spring), background var(--transition-fast), opacity var(--transition-fast), box-shadow var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;transform:translateZ(0)}.chat-send-btn:not(:disabled){animation:popIn .25s var(--transition-spring);box-shadow:0 4px 14px #0a60eb59}.chat-send-btn:hover:not(:disabled){transform:translateY(-1px)scale(1.06);box-shadow:0 6px 18px #0a60eb73}.chat-send-btn:active:not(:disabled){transform:scale(.92)}.chat-send-btn:disabled{opacity:.35;cursor:not-allowed}.chat-footer-disclaimer{text-align:center;color:var(--text-muted);margin-top:8px;font-size:11px;line-height:1.4}.chat-send-btn svg{width:18px;height:18px;transform:translate(-1px,1px)}.chat-voice-btn{background:var(--bg-glass);border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.chat-voice-btn:hover:not(:disabled){background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--accent)}.chat-voice-btn:active:not(:disabled){transform:scale(.95)}.chat-voice-btn:disabled{opacity:.3;cursor:not-allowed}.chat-voice-btn svg{width:18px;height:18px}.chat-voice-btn.listening{color:var(--error);border-color:var(--error);background:#ff4c5e1f;animation:1.5s ease-in-out infinite pulseMic}@keyframes pulseMic{0%{box-shadow:0 0 #ff4c5e66}70%{box-shadow:0 0 0 10px #ff4c5e00}to{box-shadow:0 0 #ff4c5e00}}.chat-recording-bar{justify-content:space-between;align-items:center;gap:var(--space-sm);min-width:0;height:40px;animation:fadeIn var(--transition-fast) forwards;flex:1;display:flex}.chat-input-capsule.recording{border-color:var(--error);padding-left:var(--space-xs);animation:2s ease-in-out infinite pulseRecordingBg;box-shadow:0 0 16px #ff4c5e26}@keyframes pulseRecordingBg{0%{background:#ff4c5e0d}50%{background:#ff4c5e1f}to{background:#ff4c5e0d}}.chat-recording-transcript{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap;padding:0 var(--space-sm);flex:1;min-width:0;font-style:italic;overflow:hidden}.chat-recording-trash{background:var(--bg-glass);border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-recording-trash:hover{background-color:var(--error-subtle);color:var(--error);border-color:var(--error);transform:scale(1.05)}.chat-recording-trash:active{transform:scale(.95)}.chat-recording-trash svg{width:18px;height:18px}.splash-screen{background:var(--bg-primary);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.splash-loader{border:2.5px solid var(--border-subtle);border-top-color:var(--accent);border-right-color:var(--accent-glow);width:34px;height:34px;box-shadow:0 0 14px var(--accent-subtle);border-radius:50%;animation:.75s cubic-bezier(.4,0,.2,1) infinite spin}.splash-loader.mini{width:16px;height:16px;box-shadow:none;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.chat-message-error{background:var(--error-subtle);border:1px solid var(--error-border);max-width:75%;color:var(--error);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center;flex-direction:column;align-self:center;align-items:center;gap:6px;animation:.3s fadeInUp;display:flex}.chat-message-error-text{line-height:1.4}.chat-message-retry-btn{color:inherit;border-radius:var(--radius-sm,6px);cursor:pointer;background:#ffffff14;border:1px solid;align-items:center;gap:6px;margin-top:4px;padding:5px 12px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.chat-message-retry-btn:hover:not(:disabled){background:#ffffff2e;transform:translateY(-1px)}.chat-message-retry-btn:active:not(:disabled){transform:translateY(0)}.chat-message-retry-btn:disabled{opacity:.5;cursor:not-allowed}.chat-main-container{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.update-overlay{z-index:100001;-webkit-backdrop-filter:blur(12px);animation:fadeIn var(--transition-base) ease;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.update-card{text-align:center;width:88%;max-width:380px;animation:scaleIn var(--transition-slow) ease;border-radius:24px;flex-direction:column;align-items:center;gap:16px;padding:32px 24px;display:flex;box-shadow:0 20px 60px #0006;background:var(--bg-secondary)!important;border:1px solid var(--border-subtle)!important}.update-icon{font-size:2.5rem;line-height:1}.update-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)!important}.update-text{max-width:300px;margin:0;font-size:.875rem;line-height:1.5;color:var(--text-secondary)!important}.update-btn{font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);border-radius:9999px;justify-content:center;align-items:center;margin-top:8px;padding:12px 32px;font-size:.9rem;font-weight:700;display:inline-flex;box-shadow:0 4px 16px #0a60eb66;background:var(--accent)!important;color:#fff!important;border:none!important}.update-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0a60eb80;background:var(--accent-glow)!important;color:#fff!important}.update-btn:active{transform:translateY(0)}.update-btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none!important;transform:none!important}.welcome-container{width:100%;max-width:850px;padding:var(--space-lg) 0;text-align:center;animation:fadeInUp var(--transition-slow) ease;flex-direction:column;justify-content:center;align-items:center;margin:auto;display:flex}.welcome-logo-container{margin-bottom:var(--space-lg);position:relative}.welcome-logo-ring{border-radius:var(--radius-xl);background:radial-gradient(circle, var(--accent) 0%, #6366f126 50%, transparent 75%);opacity:.35;pointer-events:none;position:absolute;inset:-8px}.welcome-logo{background:var(--user-bubble-bg);border-radius:var(--radius-lg);width:72px;height:72px;box-shadow:0 8px 32px var(--shadow-glow);transition:transform var(--transition-spring);justify-content:center;align-items:center;display:flex;position:relative}.welcome-logo:hover{transform:scale(1.05)}.welcome-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-sm);background:linear-gradient(90deg, var(--text-primary) 0%, var(--text-primary) 15%, var(--accent-glow) 40%, var(--accent) 60%, var(--text-primary) 85%, var(--text-primary) 100%);-webkit-text-fill-color:transparent;letter-spacing:-.5px;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;min-height:1.25em;font-weight:700;line-height:1.25;animation:21s linear infinite geminiShimmer;display:inline-block}.welcome-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);max-width:480px;min-height:52px;margin-bottom:var(--space-2xl);line-height:1.6}.suggestion-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);width:100%;max-width:680px;min-height:96px;display:grid}.suggestion-card{text-align:left;padding:var(--space-md) var(--space-lg);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--transition-spring), border-color var(--transition-fast), box-shadow var(--transition-base), background var(--transition-fast);animation:.45s cubic-bezier(.16,1,.3,1) backwards fadeInUp;animation-delay:calc(var(--index,0) * 80ms + .1s);flex-direction:column;align-items:flex-start;display:flex;position:relative;overflow:hidden}.suggestion-card:before{content:"";background:linear-gradient(135deg, var(--accent-subtle) 0%, transparent 100%);opacity:0;width:100%;height:100%;transition:opacity var(--transition-base);position:absolute;top:0;left:0}.suggestion-card:hover{border-color:var(--border-accent);box-shadow:0 12px 30px var(--shadow-glow), 0 2px 8px #0000000f;transform:translateY(-4px)scale(1.01)}.suggestion-card:active{transform:scale(.98)}.suggestion-card:hover:before{opacity:1}.suggestion-card-icon{font-size:var(--font-size-xl);margin-bottom:var(--space-xs);z-index:1;transition:transform var(--transition-spring);display:inline-block}.suggestion-card:hover .suggestion-card-icon{transform:scale(1.15)}.suggestion-card-title{font-size:var(--font-size-sm);color:var(--text-primary);margin-bottom:var(--space-xs);z-index:1;width:100%;font-weight:600}.suggestion-card-text{font-size:var(--font-size-xs);color:var(--text-secondary);z-index:1;width:100%;line-height:1.4}.suggestion-card:disabled,.suggestion-card.disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;border-color:var(--border-subtle)!important;transform:none!important}.code-block-wrapper{margin:var(--space-md) 0;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#0c0c13;overflow:hidden}.code-block-header{padding:var(--space-xs) var(--space-md);border-bottom:1px solid var(--border-subtle);background:#14141f;justify-content:space-between;align-items:center;display:flex}.code-block-lang{font-size:var(--font-size-xs);color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.code-block-copy-btn{align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);color:#cbd5e1;font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:4px 8px;display:flex}.code-block-copy-btn:hover{color:#fff;background:#ffffff1a}.code-block-copy-btn svg{width:14px;height:14px}.code-block-pre{overflow-x:auto;padding:var(--space-md)!important;background:0 0!important;margin:0!important}.code-block-pre code{font-family:Fira Code,Consolas,monospace;font-size:var(--font-size-xs);color:#f1f5f9;line-height:1.5;background:0 0!important;border-radius:0!important;padding:0!important}.scroll-bottom-btn{bottom:80px;right:var(--space-lg);border-radius:var(--radius-full);background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--accent-glow);cursor:pointer;box-shadow:0 4px 16px #0000001f, var(--shadow-glow);transition:all var(--transition-fast);z-index:100;justify-content:center;align-items:center;animation:.2s fadeInUp;display:flex;position:absolute}.scroll-bottom-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 20px #0a60eb66}.suggestions-notice{margin-top:var(--space-lg);font-size:var(--font-size-xs);color:var(--text-muted);justify-content:center;align-items:center;gap:var(--space-sm);background:var(--accent-subtle);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);border:1px dashed var(--border-accent);animation:fadeIn var(--transition-slow) ease;max-width:90%;display:flex}.suggestions-notice-icon{font-size:var(--font-size-sm);color:var(--accent-glow);animation:2s ease-in-out infinite pulse}.suggestions-notice-text{letter-spacing:.2px;font-weight:500}@keyframes pulseGlow{0%{box-shadow:0 0 12px var(--accent-subtle);border-color:var(--border-accent)}50%{box-shadow:0 0 18px var(--border-accent);border-color:var(--accent-glow)}to{box-shadow:0 0 12px var(--accent-subtle);border-color:var(--border-accent)}}.chat-header,.mobile-sidebar-toggle-btn,.mobile-new-chat-btn{display:none}@media (width<=768px){.chat-input-textarea,.feedback-textarea{font-size:16px}.chat-layout{width:100%;margin-left:0}.chat-header{box-sizing:border-box;z-index:500;pointer-events:none;justify-content:center;align-items:center;width:100%;height:68px;padding:16px;display:flex;position:absolute;top:0;left:0;right:0}.mobile-sidebar-toggle-btn{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-primary);cursor:pointer;pointer-events:auto;transition:all var(--transition-fast);z-index:10;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:16px;left:16px;transform:translateZ(0);box-shadow:0 4px 14px #0000001a}.mobile-sidebar-toggle-btn:hover,.mobile-sidebar-toggle-btn:active{background:var(--bg-glass-hover);border-color:var(--border-accent);color:var(--accent-glow)}.mobile-new-chat-btn{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-primary);cursor:pointer;pointer-events:auto;transition:all var(--transition-fast);z-index:10;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex;position:absolute;top:16px;right:16px;transform:translateZ(0);box-shadow:0 4px 14px #0000001a}.mobile-new-chat-btn:hover,.mobile-new-chat-btn:active{background:var(--bg-glass-hover);border-color:var(--border-accent);color:var(--accent-glow)}.mobile-sidebar-logo{object-fit:cover;border-radius:50%;width:32px;height:32px}.chat-header-center{pointer-events:auto;justify-content:center;align-items:center;width:100%;display:flex}.agent-selector{justify-content:center;margin:0 auto;display:flex}.non-chat-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);z-index:10;pointer-events:auto;padding:12px 16px;position:relative;top:auto;left:auto;right:auto}.mobile-header-title{color:var(--text-primary);text-align:center;font-size:15px;font-weight:700}.scroll-bottom-btn{right:var(--space-lg)}}@media (width<=640px){.login-card{min-width:auto;margin:var(--space-md);padding:var(--space-xl) var(--space-lg)}.chat-header{padding:var(--space-md)}.chat-header-name,.btn-icon span{display:none}.chat-message{max-width:88%}.chat-messages-inner{padding:68px var(--space-md) var(--space-md) var(--space-md)}.chat-header-logo{display:none}.chat-input-bar{padding:var(--space-md)}.chat-input-capsule{padding:6px 10px 6px 14px}.suggestion-grid{grid-template-columns:1fr}.suggestion-card{padding:var(--space-sm) var(--space-md)}.token-cost-tooltip{box-sizing:border-box;min-width:220px;max-width:calc(100vw - 32px)}.agent-selector-menu{box-sizing:border-box;max-width:calc(100vw - 32px);left:50%!important;transform:translate(-50%)!important}.chat-message-agent{max-width:100px}.chat-message-body{min-width:0}.table-responsive-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.scroll-bottom-btn{z-index:100;bottom:104px;right:16px}.suggestions-empty-state{padding:var(--space-lg) var(--space-md);grid-column:1}.suggestions-notice{gap:var(--space-xs);border-radius:var(--radius-md);padding:var(--space-md);flex-direction:column}}.chat-message-feedback-buttons{margin-left:var(--space-xs);align-items:center;gap:4px;display:inline-flex}.feedback-btn{cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:3px 6px;display:inline-flex;transform:translateZ(0)}.feedback-btn:hover{color:var(--text-primary);background:var(--bg-glass-hover);transform:scale(1.18)}.feedback-btn:active{animation:.3s cubic-bezier(.175,.885,.32,1.275) buttonPop}.feedback-btn-like.active{filter:drop-shadow(0 0 6px var(--success-subtle));transform:scale(1.08);color:var(--success)!important;background:var(--success-subtle)!important}.feedback-btn-dislike.active{filter:drop-shadow(0 0 6px var(--error-subtle));transform:scale(1.08);color:var(--error)!important;background:var(--error-subtle)!important}.feedback-btn-dislike.active:hover{transform:scale(1.08)}.feedback-modal-container{max-width:500px!important}.feedback-pills-group{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-sizing:border-box;align-items:center;gap:3px;width:100%;height:38px;padding:3px;display:flex}.feedback-pill-btn{border-radius:var(--radius-md);height:30px;font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);white-space:nowrap;box-sizing:border-box;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:600;display:inline-flex}.feedback-pill-btn:hover{color:var(--text-primary);background:var(--bg-glass-hover)}.feedback-pill-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px var(--shadow-glow);font-weight:600}.feedback-textarea{box-sizing:border-box;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:100%;color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);transition:all var(--transition-fast);resize:none;height:110px;padding:10px 14px}.feedback-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle);outline:none}.feedback-error-banner{background:var(--error-subtle);border:1px solid var(--error-border);color:var(--error);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.feedback-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.8s linear infinite feedbackSpin;display:inline-block}@keyframes feedbackSpin{to{transform:rotate(360deg)}}.feedback-success-toast{background:var(--success);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);color:#fff;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), 0 0 16px var(--success-subtle);z-index:2000;font-weight:600;font-size:var(--font-size-sm);animation:.3s cubic-bezier(.16,1,.3,1) forwards toastIn;position:fixed;bottom:24px;right:24px}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-send-btn:focus-visible,.chat-voice-btn:focus-visible,.chat-message-retry-btn:focus-visible,.feedback-btn:focus-visible,.feedback-pill-btn:focus-visible,.table-more-btn:focus-visible,.table-share-btn-action:focus-visible,.table-share-btn-close:focus-visible,.code-block-copy-btn:focus-visible,.mobile-sidebar-toggle-btn:focus-visible,.mobile-new-chat-btn:focus-visible,.scroll-bottom-btn:focus-visible,.agent-selector-trigger:focus-visible,.chat-followup-card:focus-visible,.chat-followup-chip:focus-visible,.suggestion-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.chat-sidebar-rail{background:var(--bg-primary);border-right:1px solid var(--border-subtle);box-sizing:border-box;z-index:100;will-change:width;contain:layout style;-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;justify-content:space-between;height:100dvh;padding:12px 0 6px;transition:width .26s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.chat-sidebar-rail.collapsed{width:60px}.chat-sidebar-rail.expanded{width:280px}.rail-top{flex-direction:column;flex:1;gap:10px;width:100%;min-width:0;min-height:0;display:flex}.chat-sidebar-rail.collapsed .rail-top{width:280px;min-width:280px}.rail-header{box-sizing:border-box;flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;width:100%;min-height:40px;padding:0 10px;display:flex}.rail-brand-group{flex-shrink:0;align-items:center;gap:6px;min-width:0;display:flex}.rail-header .toggle-btn{width:40px;height:40px;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);margin:0}.rail-header .toggle-btn:active{transform:scale(.92)}.rail-agent-selector-wrapper{opacity:0;pointer-events:none;visibility:hidden;flex-shrink:1;justify-content:flex-end;align-items:center;min-width:0;max-width:calc(100% - 120px);transition:opacity .2s cubic-bezier(.16,1,.3,1),visibility .2s cubic-bezier(.16,1,.3,1);display:flex}.chat-sidebar-rail.expanded .rail-agent-selector-wrapper{opacity:1;pointer-events:auto;visibility:visible;transition-delay:.12s}.chat-sidebar-rail.collapsed .rail-agent-selector-wrapper{opacity:0;pointer-events:none;visibility:hidden;transition-duration:.1s;transition-delay:0s}.rail-agent-selector-wrapper .agent-selector{min-width:0;max-width:100%}.rail-agent-selector-wrapper .agent-selector-trigger{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);gap:5px;min-width:0;max-width:100%;height:30px;padding:0 8px;font-size:12px}.rail-agent-selector-wrapper .agent-selector-label{min-width:0;overflow:hidden}.rail-agent-selector-wrapper .agent-selector-agent-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:78px;overflow:hidden}@keyframes toggleIconMorphIn{0%{opacity:0;transform:rotate(-35deg)scale(.72)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes toggleLogoMorphIn{0%{opacity:0;transform:rotate(35deg)scale(.72)}to{opacity:1;transform:rotate(0)scale(1)}}.rail-brand-logo{object-fit:cover;width:34px;height:34px;transition:transform var(--transition-fast);border-radius:50%;animation:.28s cubic-bezier(.16,1,.3,1) forwards toggleLogoMorphIn}.rail-header .toggle-btn:hover .rail-brand-logo{transform:scale(1.08)}.rail-collapse-icon{color:var(--text-secondary);transition:transform var(--transition-fast), color var(--transition-fast);animation:.28s cubic-bezier(.16,1,.3,1) forwards toggleIconMorphIn}.rail-header .toggle-btn:hover .rail-collapse-icon{color:var(--text-primary);transform:translate(-1.5px)}.rail-brand-title{background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-glow) 100%);-webkit-text-fill-color:transparent;white-space:nowrap;-webkit-background-clip:text;font-size:21px;font-weight:700;line-height:1.2}.rail-icon-slot{flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.rail-icon-btn{width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.rail-icon-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.rail-icon-btn.active{background:var(--accent-subtle);color:var(--accent-glow)}.rail-action-container{box-sizing:border-box;flex-shrink:0;justify-content:flex-start;width:100%;padding:0 10px;display:flex}.rail-new-chat-btn{border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-subtle);width:100%;height:40px;color:var(--text-primary);cursor:pointer;box-sizing:border-box;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), width .26s cubic-bezier(.16, 1, .3, 1), border-radius .26s cubic-bezier(.16, 1, .3, 1);flex-shrink:0;align-items:center;font-size:13.5px;font-weight:600;text-decoration:none;display:flex;overflow:hidden}.rail-new-chat-btn .rail-icon-slot{flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.chat-sidebar-rail.collapsed .rail-new-chat-btn{border-radius:50%;width:40px;height:40px;padding:0}.chat-sidebar-rail.expanded .rail-new-chat-btn{border-radius:var(--radius-full);width:100%}.rail-new-chat-btn:hover{background:var(--accent-subtle);color:var(--accent-glow);border-color:var(--border-accent);box-shadow:0 4px 14px var(--shadow-glow);transform:translateY(-1px)}.rail-new-chat-btn:active{transform:scale(.97)}.rail-history-section{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;margin-top:6px;padding:0 10px;transition:opacity .2s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.chat-sidebar-rail.collapsed .rail-history-section{opacity:0;pointer-events:none;visibility:hidden}.chat-sidebar-rail.expanded .rail-history-section{opacity:1;pointer-events:auto;visibility:visible;transition-delay:50ms}.rail-history-header{text-transform:none;letter-spacing:normal;color:var(--text-muted);align-items:center;gap:6px;padding:8px 10px 4px;font-size:12px;font-weight:500;display:flex}.rail-history-header.rail-collapsible-header{cursor:pointer;border-radius:var(--radius-sm);text-align:left;-webkit-user-select:none;user-select:none;box-sizing:border-box;width:100%;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;margin:2px 0;padding:6px 8px}.rail-history-header.rail-collapsible-header:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.rail-collapsible-header-row{justify-content:space-between;align-items:center;width:100%;display:flex}.rail-collapsible-header-row .rail-collapsible-header{flex:1;min-width:0}.rail-header-action-btn{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-right:4px;padding:0;display:inline-flex}.rail-header-action-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.rail-header-action-btn:active{transform:scale(.92)}.rail-section-chevron{transition:transform var(--transition-fast);color:var(--text-muted);flex-shrink:0}.rail-section-chevron.collapsed{transform:rotate(-90deg)}.rail-drop-zone-hint{border:1.5px dashed var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);text-align:center;pointer-events:none;background:var(--bg-tertiary);transition:all var(--transition-fast);margin:4px 6px;padding:8px 12px;font-size:11px}.pinned-sub-group.drag-over-active .rail-drop-zone-hint{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.rail-history-list{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:1;gap:2px;padding-bottom:24px;padding-right:0;display:flex;overflow:hidden auto}.rail-history-list::-webkit-scrollbar{width:0;height:0;display:none}.chat-sidebar-item-wrapper{border-radius:var(--radius-full);transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;border:1px solid #0000;align-items:center;width:100%;height:32px;display:flex;position:relative}.chat-sidebar-item-wrapper:hover{background:var(--bg-glass-hover)}.chat-sidebar-item-wrapper.active{background:var(--accent-subtle);border-color:var(--border-accent);box-shadow:0 1px 4px var(--shadow-sm)}.chat-sidebar-item{align-items:center;gap:var(--space-xs);color:var(--text-secondary);border-radius:var(--radius-full);flex:1;width:100%;min-width:0;height:32px;padding:0 8px 0 10px;text-decoration:none;display:flex}.chat-sidebar-item.folder-item{padding-left:0;padding-right:8px}.chat-sidebar-item.folder-item .rail-icon-slot{width:32px;height:32px}.chat-sidebar-item.active{color:var(--text-primary);font-weight:500}.chat-sidebar-item.active .rail-icon-slot,.chat-sidebar-item.active .conv-item-indicator{color:var(--accent-glow)}.conv-item-indicator{flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;margin-right:2px;display:inline-flex}.chat-sidebar-item-wrapper.active .chat-sidebar-item-title{color:var(--text-primary);font-weight:500}.chat-sidebar-item-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-sidebar-item-details{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.chat-sidebar-item-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;line-height:1.35;overflow:hidden}.chat-sidebar-title-generating{flex-direction:column;justify-content:center;gap:3px;width:100%;min-width:0;padding:2px 0;display:flex}.chat-sidebar-title-shimmer{box-sizing:border-box;flex-direction:column;gap:4px;width:100%;padding-right:12px;display:flex}.chat-sidebar-shimmer-line{border-radius:var(--radius-full);background:var(--bg-tertiary);height:7px;position:relative;overflow:hidden;transform:translateZ(0)}.chat-sidebar-shimmer-line:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000 0%,#0240891f 20%,#569cf58c 50%,#0240891f 80%,#0000 100%);width:100%;height:100%;animation:1.8s cubic-bezier(.4,0,.2,1) infinite shimmerSlide;position:absolute;top:0;left:0}.chat-sidebar-shimmer-line.line-1{width:80%}.chat-sidebar-shimmer-line.line-2{opacity:.8;width:45%;height:6px}.chat-sidebar-shimmer-line.line-2:after{animation-delay:.25s}@keyframes titleSwapIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.chat-sidebar-item-title.animate-title-swap{animation:.35s cubic-bezier(.16,1,.3,1) forwards titleSwapIn}.chat-sidebar-item-actions{border-radius:var(--radius-full);opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:5;background:linear-gradient(90deg, transparent 0%, var(--bg-primary) 25%, var(--bg-primary) 100%);align-items:center;gap:3px;padding:1px 2px 1px 14px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.chat-sidebar-item-wrapper:hover .chat-sidebar-item-actions,.chat-sidebar-item-wrapper.menu-open .chat-sidebar-item-actions{opacity:1;pointer-events:auto;background:linear-gradient(90deg, transparent 0%, var(--bg-tertiary) 25%, var(--bg-tertiary) 100%)}.chat-sidebar-item-wrapper.active .chat-sidebar-item-actions,.chat-sidebar-item-wrapper.active:hover .chat-sidebar-item-actions,.chat-sidebar-item-wrapper.active.menu-open .chat-sidebar-item-actions{opacity:1;pointer-events:auto;background:linear-gradient(90deg, transparent 0%, var(--accent-subtle) 25%, var(--accent-subtle) 100%)}.chat-sidebar-item-wrapper.menu-open{z-index:60}.chat-sidebar-item-action-btn{border:1px solid var(--border-subtle);background:var(--bg-primary);width:22px;height:22px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);opacity:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-sidebar-item-wrapper.active .chat-sidebar-item-action-btn{color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--border-subtle)}.chat-sidebar-item-action-btn:hover{color:var(--accent);background:var(--bg-glass-hover);border-color:var(--accent);transform:scale(1.08)}.chat-sidebar-item-action-btn.delete:hover{color:var(--error);background:var(--error-subtle);border-color:var(--error);transform:scale(1.08)}.chat-sidebar-item-action-btn.menu-trigger.active{color:var(--accent);background:var(--bg-primary);border-color:var(--accent)}.chat-sidebar-item-editing{border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--accent-glow);box-sizing:border-box;width:100%;height:32px;animation:fadeIn var(--transition-fast);align-items:center;gap:6px;padding:0 8px;display:flex}.chat-sidebar-item-input{height:24px;color:var(--text-primary);font-size:var(--font-size-sm);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-family:inherit;font-weight:500}.chat-sidebar-item-action-btn.save:hover{color:var(--success);background:var(--success-subtle)}.rail-nav-group{box-sizing:border-box;flex-direction:column;gap:4px;width:100%;margin-top:auto;padding:0 10px 4px;display:flex}.rail-nav-item,.rail-user-trigger{width:100%;color:var(--text-secondary);cursor:pointer;box-sizing:border-box;transition:background var(--transition-fast), color var(--transition-fast), width .26s cubic-bezier(.16, 1, .3, 1), height .26s cubic-bezier(.16, 1, .3, 1), border-radius .26s cubic-bezier(.16, 1, .3, 1), margin-left .26s cubic-bezier(.16, 1, .3, 1), padding .26s cubic-bezier(.16, 1, .3, 1);border-radius:var(--radius-full);background:0 0;border:none;flex-shrink:0;align-items:center;height:32px;font-size:13px;font-weight:500;text-decoration:none;display:flex;overflow:hidden}.rail-nav-item .rail-icon-slot,.rail-user-trigger .rail-icon-slot{width:32px;height:32px}.chat-sidebar-rail.collapsed .rail-nav-item,.chat-sidebar-rail.collapsed .rail-user-trigger{border-radius:var(--radius-full);width:32px;height:32px;margin-left:4px;padding:0}.chat-sidebar-rail.expanded .rail-nav-item,.chat-sidebar-rail.expanded .rail-user-trigger{border-radius:var(--radius-full);gap:4px;width:100%;height:32px;margin-left:0;padding-left:4px;padding-right:8px}.rail-nav-item:hover,.rail-user-trigger:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.rail-nav-item.active{background:var(--accent-subtle);color:var(--accent-glow)}.rail-label,.rail-brand-title,.rail-user-name{white-space:nowrap;text-overflow:clip;transition:opacity .2s cubic-bezier(.16,1,.3,1);overflow:hidden}.chat-sidebar-rail.collapsed .rail-label,.chat-sidebar-rail.collapsed .rail-brand-title,.chat-sidebar-rail.collapsed .rail-user-name{opacity:0;pointer-events:none}.rail-bottom{border-top:1px solid var(--border-subtle);box-sizing:border-box;flex-direction:column;flex-shrink:0;gap:4px;width:100%;min-width:0;padding:4px 10px 2px;display:flex}.chat-sidebar-rail.collapsed .rail-bottom{width:280px;min-width:280px}.rail-user-container{width:100%;position:relative}.chat-sidebar-rail.expanded .rail-label,.chat-sidebar-rail.expanded .rail-brand-title,.chat-sidebar-rail.expanded .rail-user-name{opacity:1}.rail-avatar-wrapper{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex;overflow:hidden}.rail-avatar-img{object-fit:cover;width:100%;height:100%}.rail-avatar-fallback{background:var(--accent);width:100%;height:100%;color:var(--text-inverse);justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.rail-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.rail-user-menu-portal{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 12px 32px #0000004d, 0 0 0 1px var(--border-subtle);animation:fadeIn var(--transition-fast);flex-direction:column;gap:4px;min-width:200px;padding:8px;display:flex}.rail-user-menu-header{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:6px 10px;font-size:12px}.rail-user-menu-item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;display:flex}.rail-user-menu-item:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.rail-user-menu-item.danger{color:var(--error)}.rail-user-menu-item.danger:hover{background:var(--error-subtle)}.rail-user-menu-footer{border-top:1px solid var(--border-subtle);align-items:center;margin-top:4px;padding-top:6px;display:flex}.rail-user-menu-version{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:space-between;align-items:center;padding:4px 8px;font-family:inherit;font-size:11px;display:flex}.rail-user-menu-version:hover{background:var(--bg-glass-hover);color:var(--text-secondary)}.rail-user-menu-version:active{transform:scale(.98)}.rail-user-version-text{letter-spacing:-.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.rail-user-version-copied{color:var(--success);font-size:10px;font-weight:600}.chat-sidebar-empty{color:var(--text-muted);align-items:center;gap:8px;padding:12px;font-size:12px;display:flex}.chat-sidebar-skeleton-list{flex-direction:column;gap:2px;width:100%;padding:0;display:flex}.chat-sidebar-skeleton-item{border-radius:var(--radius-full);box-sizing:border-box;background:0 0;border:1px solid #0000;align-items:center;width:100%;height:32px;padding:0 10px;display:flex;position:relative;overflow:hidden}.chat-sidebar-skeleton-item.mini{opacity:.7;height:28px;padding:0 10px}.chat-sidebar-loading-more{width:100%;padding:4px 0 8px}.chat-sidebar-skeleton-text{border-radius:var(--radius-full);background:var(--bg-tertiary);flex-shrink:0;height:12px;position:relative;overflow:hidden}.chat-sidebar-skeleton-text:after{content:"";width:100%;height:100%;animation:1.8s cubic-bezier(.4,0,.2,1) infinite shimmerSlide;animation-delay:var(--delay,0s);will-change:transform;background:linear-gradient(90deg,#0000 0%,#02408914 20%,#569cf559 50%,#02408914 80%,#0000 100%);position:absolute;top:0;left:0}[data-theme=dark] .chat-sidebar-skeleton-text:after{background:linear-gradient(90deg,#0000 0%,#2575e61a 20%,#569cf566 50%,#2575e61a 80%,#0000 100%)}@media (prefers-reduced-motion:reduce){.chat-sidebar-skeleton-text:after{opacity:.5;animation:none}}.rail-history-content-wrapper{width:100%;position:relative}.rail-history-content-wrapper.is-cross-fading{grid-template-columns:100%;display:grid}.rail-history-content-wrapper.is-cross-fading>*{grid-area:1/1}.chat-sidebar-skeleton-list.fade-out{pointer-events:none;z-index:1;animation:.28s cubic-bezier(.4,0,.2,1) forwards railSkeletonFadeOut}.rail-history-real-content.fade-in{z-index:2;animation:.32s cubic-bezier(.16,1,.3,1) forwards railRealContentFadeIn}.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper:first-child{animation:.28s cubic-bezier(.16,1,.3,1) both railItemEntrance}.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper:nth-child(2){animation:.28s cubic-bezier(.16,1,.3,1) 25ms both railItemEntrance}.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper:nth-child(3){animation:.28s cubic-bezier(.16,1,.3,1) 50ms both railItemEntrance}.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper:nth-child(4){animation:.28s cubic-bezier(.16,1,.3,1) 75ms both railItemEntrance}.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper:nth-child(5){animation:.28s cubic-bezier(.16,1,.3,1) .1s both railItemEntrance}@keyframes railSkeletonFadeOut{0%{opacity:1;filter:blur();transform:scale(1)}to{opacity:0;filter:blur(1.5px);transform:scale(.98)}}@keyframes railRealContentFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes railItemEntrance{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.chat-sidebar-skeleton-list.fade-out,.rail-history-real-content.fade-in,.rail-history-real-content.fade-in .rail-sub-items>.chat-sidebar-item-wrapper{animation:none!important}}.rail-dev-badge{letter-spacing:.6px;border-radius:var(--radius-sm);background:var(--dev-sidebar-badge-bg);color:var(--dev-sidebar-badge-text);-webkit-text-fill-color:var(--dev-sidebar-badge-text);border:1px solid var(--dev-sidebar-badge-border);flex-shrink:0;justify-content:center;align-items:center;margin-left:0;padding:1px 5px;font-size:9px;font-weight:800;line-height:1.3;display:inline-flex;box-shadow:0 1px 3px #0003}.chat-sidebar-rail.collapsed .rail-dev-badge{display:none}[data-env=dev] .chat-sidebar-rail .rail-bottom,.chat-sidebar-rail.is-dev .rail-bottom{background:var(--dev-sidebar-bg-gradient);border-top:1px solid var(--dev-sidebar-border);margin-bottom:-6px;padding-top:4px;padding-bottom:6px}[data-env=dev] .chat-sidebar-rail .rail-user-trigger,.chat-sidebar-rail.is-dev .rail-user-trigger{color:var(--text-inverse)}[data-env=dev] .chat-sidebar-rail .rail-user-name,.chat-sidebar-rail.is-dev .rail-user-name{font-weight:600;color:var(--text-inverse)!important}[data-env=dev] .chat-sidebar-rail .rail-user-trigger:hover,.chat-sidebar-rail.is-dev .rail-user-trigger:hover{color:var(--text-inverse);background:#00000026}.sidebar-mobile-backdrop{display:none}@media (width<=768px){.chat-sidebar-item-input,.project-modal-input{font-size:16px}.sidebar-mobile-backdrop{-webkit-backdrop-filter:blur(8px);z-index:999;animation:fadeIn var(--transition-fast);background:#0009;display:block;position:fixed;inset:0}.chat-sidebar-rail{background:var(--bg-primary);border-right:1px solid var(--border-subtle);width:min(320px,85vw);box-shadow:none;z-index:1000;opacity:1;will-change:transform;transition:transform .3s cubic-bezier(.16,1,.3,1);position:fixed;top:0;bottom:0;left:0}.chat-sidebar-rail.collapsed{pointer-events:none;box-shadow:none;transform:translate(-100%)}.chat-sidebar-rail.expanded{pointer-events:auto;width:min(320px,85vw);transform:translate(0);box-shadow:8px 0 32px #0006}}.pinned-indicator-icon{color:var(--text-muted)}.rail-badge-count{border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-muted);justify-content:center;align-items:center;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700;display:inline-flex}.chat-sidebar-item-action-btn.pin.pinned-active{color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--border-subtle)}.project-dot-badge{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block;box-shadow:0 0 4px #0003}.rail-sub-group,.rail-sub-items{flex-direction:column;gap:2px;display:flex}.rail-folders-list{border-left:1.5px solid var(--border-subtle);box-sizing:border-box;flex-direction:column;gap:2px;margin-top:2px;margin-bottom:6px;margin-left:14px;padding-left:6px;display:flex}.rail-folder-container{box-sizing:border-box;flex-direction:column;gap:2px;width:100%;display:flex}.chat-sidebar-item-wrapper.folder-wrapper{cursor:pointer}.chat-sidebar-item.folder-item{cursor:pointer;padding-left:2px;padding-right:5px}.rail-folder-chevron-btn{width:16px;height:16px;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-right:2px;padding:0;display:flex}.rail-folder-chevron-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.folder-title{color:var(--text-secondary);font-weight:400}.chat-sidebar-item-wrapper:hover .folder-title,.chat-sidebar-item-wrapper.folder-wrapper.active .folder-title{color:var(--text-primary);font-weight:400!important}.rail-folder-count-badge{color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius-full);box-sizing:border-box;font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;margin-right:0;padding:0 4px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.rail-folder-children{border-left:1.5px solid var(--border-subtle);box-sizing:border-box;flex-direction:column;gap:2px;margin-top:2px;margin-bottom:6px;margin-left:14px;padding-left:6px;display:flex}.rail-folder-empty-hint{color:var(--text-muted);padding:6px 10px;font-size:11px;font-style:italic}.chat-sidebar-item-wrapper.drag-target-folder,.chat-sidebar-item-wrapper.drag-target-group{border:1.5px dashed var(--accent)!important;background:var(--accent-subtle)!important}.rail-sub-group.drag-over-active{background:var(--accent-subtle);border-radius:var(--radius-md);border:1.5px dashed var(--accent)}.chat-sidebar-item-wrapper.folder-wrapper.drag-reorder-top{position:relative}.chat-sidebar-item-wrapper.folder-wrapper.drag-reorder-top:before{content:"";background:var(--accent);border-radius:var(--radius-sm);z-index:10;height:2px;box-shadow:0 0 6px var(--accent-subtle);pointer-events:none;position:absolute;top:-2px;left:6px;right:6px}.chat-sidebar-item-wrapper.folder-wrapper.drag-reorder-bottom{position:relative}.chat-sidebar-item-wrapper.folder-wrapper.drag-reorder-bottom:after{content:"";background:var(--accent);border-radius:var(--radius-sm);z-index:10;height:2px;box-shadow:0 0 6px var(--accent-subtle);pointer-events:none;position:absolute;bottom:-2px;left:6px;right:6px}.chat-sidebar-item-wrapper.folder-wrapper[draggable=true]{cursor:grab}.chat-sidebar-item-wrapper.folder-wrapper[draggable=true]:active{cursor:grabbing}.conv-options-dropdown,.move-project-dropdown{z-index:70;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);min-width:195px;max-width:260px;animation:fadeIn var(--transition-fast);font-family:var(--font-family);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% - 2px);right:8px;box-shadow:0 10px 28px #00000047}.conv-options-submenu{flex-direction:column;gap:2px;width:100%;display:flex}.conv-options-submenu-header,.move-project-dropdown-header{border-bottom:1px solid var(--border-subtle);text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;font-size:11px;font-weight:700;font-family:var(--font-family);align-items:center;margin-bottom:2px;padding:4px 6px 6px;display:flex}.conv-options-back-btn{color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:3px 6px;font-size:11px;font-weight:600;display:flex}.conv-options-back-btn:hover{color:var(--accent);background:var(--bg-tertiary)}.conv-options-item,.move-project-dropdown-item{width:100%;color:var(--text-primary);border-radius:var(--radius-sm);font-family:var(--font-family);cursor:pointer;text-align:left;transition:background var(--transition-fast), color var(--transition-fast);box-sizing:border-box;background:0 0;border:none;align-items:center;gap:9px;padding:7px 10px;font-size:12px;font-weight:500;display:flex}.conv-options-item:hover,.move-project-dropdown-item:hover{background:var(--bg-tertiary);color:var(--accent)}.conv-options-item.selected,.move-project-dropdown-item.selected{color:var(--accent);background:var(--accent-subtle);font-weight:600}.conv-options-item.remove,.move-project-dropdown-item.remove{color:var(--text-muted);border-bottom:1px solid var(--border-subtle);margin-bottom:3px;padding-bottom:7px}.conv-options-item.remove:hover,.move-project-dropdown-item.remove:hover,.conv-options-item.delete:hover{color:var(--error);background:var(--error-subtle)}.conv-options-item.create-folder{color:var(--accent);font-weight:600}.conv-options-item .project-color-dot,.move-project-dropdown-item .project-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.conv-options-item .project-name-text,.move-project-dropdown-item .project-name-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.conv-options-divider{background:var(--border-subtle);height:1px;margin:3px 0}.project-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:100000;animation:fadeIn var(--transition-fast);background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.project-modal-card{width:100%;max-width:440px;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);animation:scaleIn var(--transition-fast);font-family:var(--font-family);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000073;background:var(--bg-secondary)!important}.project-modal-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.project-modal-title{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);margin:0;font-weight:700}.project-modal-subtitle{font-family:var(--font-family);font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px;display:block}.project-modal-close-btn{width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;display:flex}.project-modal-close-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.project-modal-form{background:var(--bg-secondary);flex-direction:column;gap:16px;padding:20px;display:flex}.project-modal-field{flex-direction:column;gap:6px;display:flex}.project-modal-label{font-family:var(--font-family);font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:600}.project-modal-input{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);width:100%;height:40px;color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);box-sizing:border-box;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:0 12px}.project-modal-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.project-color-picker{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0;display:flex}.project-color-swatch{cursor:pointer;width:28px;height:28px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:2px solid #0000;border-radius:50%;padding:0}.project-color-swatch:hover{transform:scale(1.15)}.project-color-swatch.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-secondary), 0 0 0 4px var(--accent);transform:scale(1.1)}.project-modal-error{border-radius:var(--radius-sm);background:var(--error-subtle);color:var(--error);font-family:var(--font-family);font-size:var(--font-size-xs);padding:8px 12px}.project-modal-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}.project-modal-btn{border-radius:var(--radius-md);height:38px;font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;padding:0 16px;font-weight:600}.project-modal-btn.cancel{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-primary)}.project-modal-btn.cancel:hover{background:var(--bg-primary);color:var(--text-primary)}.project-modal-btn.save{background:var(--accent);border:1px solid var(--accent);color:var(--text-inverse)}.project-modal-btn.save:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.project-modal-btn:disabled{opacity:.5;cursor:not-allowed}.rail-header .toggle-btn:focus-visible,.rail-new-chat-btn:focus-visible,.chat-sidebar-item:focus-visible,.chat-sidebar-item-action-btn:focus-visible,.rail-nav-item:focus-visible,.rail-user-trigger:focus-visible,.conv-options-btn:focus-visible,.conv-options-item:focus-visible,.project-modal-btn:focus-visible,.project-modal-input:focus-visible,.project-modal-close-btn:focus-visible,.delete-modal-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.chat-sidebar-rail,.rail-new-chat-btn,.chat-sidebar-item-actions,.rail-user-trigger,.toggle-icon-morph,.toggle-logo-morph,.chat-sidebar-title-shimmer:after,.chat-sidebar-item-title.animate-title-swap{transition:none!important;animation:none!important}}.user-management-container{width:100%;animation:fadeIn var(--transition-base);flex:1;overflow-y:auto}.user-management-inner{gap:var(--space-lg);padding:var(--space-lg);flex-direction:column;width:100%;display:flex}.user-management-header{justify-content:space-between;align-items:center;gap:var(--space-md);border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-md);flex-wrap:wrap;display:flex}.user-management-title-section h1{font-size:var(--font-size-2xl);background:linear-gradient(135deg, var(--text-primary) 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;margin-bottom:var(--space-xs);-webkit-background-clip:text;background-clip:text;font-weight:700}.user-management-title-section p{color:var(--text-secondary);font-size:var(--font-size-sm)}.user-management-actions{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.user-search-wrapper{min-width:280px;position:relative}.user-search-input{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:100%;height:36px;color:var(--text-primary);font-family:var(--font-family);transition:all var(--transition-fast);box-sizing:border-box;padding:0 16px 0 40px;font-size:12px}.user-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle);outline:none}.user-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.btn-primary{box-sizing:border-box;background:var(--accent);height:36px;color:var(--text-inverse);font-family:var(--font-family);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);box-shadow:0 2px 8px var(--accent-subtle);border:none;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:12px;font-weight:600;display:inline-flex}.btn-primary:hover{filter:brightness(1.1);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(1px)}.user-table-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.table-responsive-wrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.user-table{border-collapse:collapse;text-align:left;width:100%;min-width:720px;font-size:var(--font-size-sm)}.user-table th{background:var(--bg-tertiary);color:var(--text-secondary);padding:var(--space-md);border-bottom:1px solid var(--border-subtle);white-space:nowrap;font-weight:600}.user-table td{padding:var(--space-md);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle}.user-row{transition:background-color var(--transition-fast)}.user-row:hover{background:var(--bg-glass-hover)}.badge{white-space:nowrap;border-radius:9999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.2;display:inline-flex}.badge-accent{background:var(--accent-subtle);color:var(--accent-glow)}.badge-muted{background:var(--bg-glass);color:var(--text-secondary);border:1px solid var(--border-subtle)}.user-actions{align-items:center;gap:var(--space-xs);display:flex}.btn-secondary{box-sizing:border-box;background:var(--bg-tertiary);border:1px solid var(--border-subtle);height:36px;color:var(--text-primary);font-family:var(--font-family);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:500;display:inline-flex}.btn-secondary:hover{background:var(--bg-glass-hover);border-color:var(--accent)}.btn-danger-outline{box-sizing:border-box;border:1px solid var(--error-border);width:36px;height:36px;color:var(--error);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-danger-outline:hover{background:var(--error-subtle);border-color:var(--error)}.modal-backdrop{-webkit-backdrop-filter:blur(10px);z-index:1000;padding:var(--space-md);animation:fadeIn var(--transition-fast);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:650px;max-height:90vh;box-shadow:var(--shadow-lg), var(--shadow-glow);flex-direction:column;animation:.28s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;transform:translateZ(0)}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--font-size-lg);color:var(--text-primary);font-weight:700}.btn-close{color:var(--text-muted);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.btn-close:hover{color:var(--text-primary);background:var(--bg-glass-hover)}.modal-body{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;display:flex;overflow-y:auto}.modal-footer{padding:var(--space-lg);border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:var(--space-md);background:var(--bg-tertiary);display:flex}.form-group{gap:var(--space-xs);flex-direction:column;display:flex}.form-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:600}.form-input{box-sizing:border-box;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);height:36px;color:var(--text-primary);font-family:var(--font-family);transition:all var(--transition-fast);padding:0 14px;font-size:12px}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle);outline:none}.form-input:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed;opacity:.7}.store-selector-container{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-tertiary);flex-direction:column;display:flex;overflow:hidden}.store-selector-header{padding:var(--space-md);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--bg-secondary);flex-wrap:wrap;display:flex}.store-selector-search{flex:1;min-width:200px;position:relative}.store-selector-actions{gap:var(--space-sm);display:flex}.store-selector-body{max-height:280px;padding:var(--space-sm);gap:var(--space-xs);flex-direction:column;display:flex;overflow-y:auto}.store-group-accordion{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);transition:border-color var(--transition-fast);flex-shrink:0;overflow:hidden}.store-group-accordion.has-selected{border-color:var(--border-accent)}.store-group-header-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.store-group-header-row:hover{background:var(--bg-glass-hover)}.store-group-title-side{align-items:center;gap:var(--space-sm);flex:1;display:flex}.store-group-expand-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);width:24px;height:24px;transition:transform var(--transition-base), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.store-group-expand-btn:hover{color:var(--text-primary);background:var(--bg-glass-hover)}.store-group-expand-btn.is-expanded{transform:rotate(180deg)}.store-group-children{border-top:1px solid var(--border-subtle);padding:var(--space-sm);background:var(--bg-tertiary);gap:var(--space-xs);animation:slideDown var(--transition-base);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.store-checkbox-wrapper{align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--font-size-xs);color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);border:1px solid #0000;padding:6px 8px;display:flex}.store-checkbox-wrapper:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.store-checkbox-wrapper.is-inactive{background:var(--error-subtle);border-color:var(--error-border);color:var(--text-primary)}.store-checkbox-wrapper.is-inactive:hover{background:var(--error-border);border-color:var(--error);color:var(--text-primary)}.store-checkbox-wrapper span:last-child{word-break:break-word;line-height:1.3}.custom-checkbox{box-sizing:border-box;background:var(--bg-tertiary);border:1px solid var(--border-subtle);width:16px;min-width:16px;max-width:16px;height:16px;min-height:16px;max-height:16px;transition:all var(--transition-fast);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.store-checkbox-wrapper input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.store-checkbox-wrapper input:checked~.custom-checkbox,.store-checkbox-wrapper input:indeterminate~.custom-checkbox{background:var(--accent);border-color:var(--accent);box-shadow:var(--shadow-glow)}.store-checkbox-wrapper input:focus-visible~.custom-checkbox{outline:2px solid var(--accent);outline-offset:2px}.custom-checkbox.is-inactive{border-color:var(--error);background:var(--bg-primary)}.store-checkbox-wrapper input:checked~.custom-checkbox.is-inactive{background:var(--error);border-color:var(--error);box-shadow:0 0 8px var(--error-border)}.custom-checkbox:after{content:"";display:none;position:absolute}.store-checkbox-wrapper input:checked~.custom-checkbox:after{border:solid var(--text-inverse);border-width:0 2px 2px 0;width:4px;height:8px;display:block;transform:rotate(45deg)translate(-1px,-1px)}.store-checkbox-wrapper input:indeterminate~.custom-checkbox:after{background:var(--text-inverse);width:8px;height:2px;display:block}.store-count-label{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500}.user-empty-state{padding:var(--space-2xl) var(--space-lg);color:var(--text-secondary);justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.user-empty-icon{font-size:var(--font-size-4xl);opacity:.5}@media (width<=768px){.user-search-input,.form-input{font-size:16px}.user-management-inner{padding:var(--space-md);gap:var(--space-md)}.user-management-header{align-items:stretch;gap:var(--space-md);flex-direction:column}.user-management-actions{flex-direction:column;align-items:stretch;width:100%}.user-search-wrapper{min-width:100%}.btn-primary{justify-content:center;width:100%}.modal-container{width:95%;max-height:90vh;padding:var(--space-md)}}@media (width<=640px){.col-user-email,.btn-action-label{display:none!important}.btn-action-item{gap:0!important;padding:6px 8px!important}.user-actions{gap:4px!important}}.user-management-container button:focus-visible,.user-management-container input:focus-visible,.user-management-container select:focus-visible,.modal-container button:focus-visible,.modal-container input:focus-visible,.modal-container select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.user-management-container,.modal-backdrop,.modal-container,.store-group-stores,.custom-checkbox,.skeleton-box,.btn-primary,.btn-secondary,.btn-danger-outline{transition:none!important;animation:none!important}}.skeleton-box{background:var(--bg-tertiary);border-radius:var(--radius-sm);filter:blur(1px);opacity:.75;position:relative;overflow:hidden}.skeleton-box:after{content:"";background-image:linear-gradient(90deg,#fff0 0,#ffffff40 30%,#ffffff80 50%,#ffffff40 70%,#fff0 100%);animation:1.8s cubic-bezier(.4,0,.2,1) infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}[data-theme=dark] .skeleton-box:after{background-image:linear-gradient(90deg,#fff0 0,#ffffff0f 30%,#ffffff26 50%,#ffffff0f 70%,#fff0 100%)}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.fade-in-content{animation:.45s cubic-bezier(.16,1,.3,1) forwards content-fade-in}@keyframes content-fade-in{0%{opacity:0}to{opacity:1}}.skeleton-card-loading{cursor:default;pointer-events:none;box-sizing:border-box;align-items:stretch}.skeleton-card-loading:hover{border-color:var(--border-subtle);box-shadow:none;transform:none}.user-usage-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:1000;padding:var(--space-md);background:#000000bf;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.user-usage-modal-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:920px;max-width:94vw;height:720px;max-height:88vh;box-shadow:var(--shadow-xl);flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden}.user-usage-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-sm);background:var(--bg-glass);flex-shrink:0;padding:12px 20px;display:flex}.user-usage-title-wrapper{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.user-usage-icon-badge{border-radius:var(--radius-md);width:36px;height:36px;color:var(--accent-glow,#eb5e28);background:#eb5e281f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-usage-title-info{flex:1;min-width:0}.user-usage-title{font-size:var(--font-size-md);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:700;overflow:hidden}.user-usage-subtitle{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;overflow:hidden}.user-usage-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.user-usage-monitor-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:6px 12px;font-size:11px;display:inline-flex}.monitor-btn-short{display:none}.user-usage-close-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:6px;display:flex}.user-usage-close-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.user-usage-body{flex:1;grid-template-columns:350px 1fr;height:calc(100% - 60px);display:grid;overflow:hidden}.user-usage-calendar-section{border-right:1px solid var(--border-subtle);background:var(--bg-tertiary);box-sizing:border-box;flex-direction:column;gap:12px;height:100%;padding:16px;display:flex;overflow:hidden}.calendar-month-header{justify-content:space-between;align-items:center;display:flex}.calendar-month-title{font-size:var(--font-size-sm);color:var(--text-primary);align-items:center;gap:8px;font-weight:700;display:flex}.spinner-mini{border:2px solid var(--border-subtle);border-top-color:var(--accent-glow,#eb5e28);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}.calendar-month-actions{align-items:center;gap:6px;display:flex}.calendar-nav-btn{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:4px 8px;display:flex}.calendar-nav-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-accent)}.calendar-today-btn{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--font-size-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);padding:4px 10px;font-weight:600}.calendar-today-btn:hover{color:#eb5e28;background:#eb5e2826;border-color:#eb5e28}.calendar-summary-bar{background:0 0;border:none;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:2px;padding:0;display:grid}.calendar-summary-item{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-width:0;padding:6px 2px;display:flex}.calendar-summary-label{color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.1px;text-overflow:ellipsis;max-width:100%;font-size:9px;font-weight:600;overflow:hidden}.calendar-summary-value{color:var(--accent-glow,#eb5e28);white-space:nowrap;margin-top:2px;font-size:11px;font-weight:700}.calendar-weekdays-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekday-cell{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:2px 0;font-size:11px;font-weight:600}.calendar-days-grid{grid-template-columns:repeat(7,1fr);gap:4px;width:100%;display:grid}.calendar-day-cell{aspect-ratio:1;border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;min-width:0;padding:1px;font-size:12px;font-weight:600;display:flex;position:relative}.calendar-day-cell.cell-padding{cursor:default;background:0 0;border:none}.calendar-day-cell.cell-disabled{opacity:.25;pointer-events:none;cursor:not-allowed!important;color:var(--text-muted)!important;background:0 0!important;border-color:#0000!important}.calendar-day-cell.cell-empty:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-subtle)}.calendar-day-cell.cell-active{color:var(--text-primary);background:#eb5e2814;border-color:#eb5e2859}.calendar-day-cell.cell-active:hover{background:#eb5e282e;border-color:#eb5e28}.calendar-day-cell.cell-selected{box-shadow:0 4px 12px #eb5e2859;color:#fff!important;background:#eb5e28!important;border-color:#eb5e28!important}.calendar-day-cell.cell-today:after{content:"";background:#eb5e28;border-radius:50%;width:5px;height:5px;position:absolute;top:4px;right:4px}.calendar-day-cell.cell-selected.cell-today:after{background:#fff}.day-activity-badge{color:#eb5e28;background:#eb5e2833;border-radius:8px;margin-top:2px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1}.cell-selected .day-activity-badge{color:#fff;background:#ffffff40}.user-usage-feed-section{background:var(--bg-secondary);flex-direction:column;height:100%;display:flex;overflow-y:auto}.feed-placeholder{padding:var(--space-xl);text-align:center;color:var(--text-muted);justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;flex:1;display:flex}.feed-placeholder h3{font-size:var(--font-size-md);color:var(--text-primary);margin:0}.feed-placeholder p{font-size:var(--font-size-xs);max-width:320px;margin:0;line-height:1.5}.feed-content-wrapper{flex-direction:column;height:100%;display:flex}.feed-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-subtle);background:var(--bg-glass);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.feed-header-info{color:var(--accent-glow,#eb5e28);align-items:center;gap:8px;display:flex}.feed-header-info h3{font-size:var(--font-size-sm);color:var(--text-primary);margin:0;font-weight:700}.feed-count-badge{font-size:var(--font-size-xs);border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:3px 8px}.feed-messages-list{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.feed-loading-state,.feed-empty-state{padding:var(--space-xl);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm);align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.feed-interaction-item{padding:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:10px;display:flex}.feed-bubble{flex-direction:column;gap:4px;display:flex}.feed-bubble-meta{font-size:var(--font-size-xs);color:var(--text-secondary);justify-content:space-between;align-items:center;font-weight:600;display:flex}.feed-bubble-user .feed-bubble-meta{color:#eb5e28}.feed-bubble-ai .feed-bubble-meta{color:var(--accent-glow,#6366f1)}.feed-bubble-time{color:var(--text-muted);font-size:11px;font-weight:400}.feed-meta-right{align-items:center;gap:8px;display:flex}.feed-token-badge{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);align-items:center;gap:3px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-flex}.feed-detail-btn{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--accent);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.feed-detail-btn:hover{background:var(--bg-tertiary);border-color:var(--accent)}.feed-bubble-text{font-size:var(--font-size-xs);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);padding:8px 12px;line-height:1.5}.feed-bubble-text.line-clamp-3{-webkit-line-clamp:3;line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.feed-expand-btn{color:#eb5e28;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;margin-top:4px;padding:0;font-size:11px;font-weight:600;display:inline-flex}.feed-expand-btn:hover{text-decoration:underline}@media (width<=768px){.user-usage-modal-backdrop{padding:8px}.user-usage-modal-card{border-radius:var(--radius-md);height:94vh;max-height:94vh}.user-usage-header{padding:10px 14px}.user-usage-icon-badge{width:32px;height:32px}.user-usage-title{font-size:var(--font-size-sm)}.user-usage-body{grid-template-rows:auto 1fr;grid-template-columns:1fr;height:calc(100% - 55px);overflow-y:auto}.user-usage-calendar-section{border-right:none;border-bottom:1px solid var(--border-subtle);gap:8px;height:auto;padding:12px;overflow-y:visible}.calendar-days-grid{gap:4px}.calendar-day-cell{padding:1px;font-size:12px}.day-activity-badge{padding:1px 3px;font-size:8px}.user-usage-feed-section{height:100%;min-height:280px}.feed-messages-list{padding:12px}}@media (width<=640px){.user-usage-monitor-btn{padding:5px 8px!important;font-size:10px!important}.monitor-btn-full{display:none!important}.monitor-btn-short{display:inline!important}}@media (width<=460px){.user-usage-header{padding:8px 10px}.user-usage-icon-badge{display:none}.user-usage-title{font-size:12px}.user-usage-subtitle{font-size:10px}.monitor-btn-short{display:none!important}}.analytics-container{scrollbar-gutter:stable;width:100%;animation:fadeIn var(--transition-base);flex:1;overflow-y:scroll}.analytics-inner{gap:var(--space-lg);padding:var(--space-lg);flex-direction:column;width:100%;max-width:1400px;margin:0 auto;display:flex}.analytics-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-md);flex-wrap:wrap;min-height:72px;display:flex}.analytics-title-section{gap:var(--space-xs);flex-direction:column;min-height:48px;display:flex}.analytics-title-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.analytics-title-row h1{font-size:var(--font-size-2xl);background:linear-gradient(135deg, var(--text-primary) 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;align-items:center;gap:var(--space-sm);-webkit-background-clip:text;background-clip:text;margin:0;font-weight:700;display:flex}.analytics-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;line-height:1.4}.analytics-controls{align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-height:36px;display:flex}.analytics-controls-subrow{align-items:center;gap:var(--space-xs);flex-wrap:wrap;min-height:36px;display:flex}.analytics-refresh-btn{align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex}.period-pills-group{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-sizing:border-box;align-items:center;gap:3px;height:36px;padding:3px;display:inline-flex}.period-pills-group.sm{height:32px}.period-pill-btn{border-radius:var(--radius-md);height:28px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);white-space:nowrap;box-sizing:border-box;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:600;display:inline-flex}.period-pill-btn.sm{height:24px;padding:0 10px;font-size:11px}.period-pill-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.period-pill-btn.active{background:var(--accent);color:var(--text-inverse);box-shadow:0 2px 8px var(--accent-subtle);font-weight:600}.date-range-modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:1050;padding:var(--space-md);animation:fadeIn var(--transition-fast);background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.date-range-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;width:380px;max-width:95vw;animation:.2s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 20px 40px #0006}.date-range-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.date-range-header h3{color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.date-range-body{flex-direction:column;gap:14px;padding:18px;display:flex}.range-month-nav{justify-content:space-between;align-items:center;display:flex}.range-month-title{color:var(--text-primary);font-size:14px;font-weight:700}.range-nav-btn{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.range-nav-btn:hover:not(:disabled){background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--accent)}.range-nav-btn:disabled{opacity:.3;cursor:not-allowed}.range-weekdays-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.range-weekday-label{color:var(--text-muted);text-transform:uppercase;padding:4px 0;font-size:11px;font-weight:600}.range-days-grid{grid-template-columns:repeat(7,1fr);gap:4px 0;display:grid}.range-day-wrapper{justify-content:center;align-items:center;height:38px;display:flex;position:relative}.range-day-bg{pointer-events:none;z-index:1;background:0 0;position:absolute;inset:4px 0}.range-day-bg.in-range{background:var(--accent-subtle)}.range-day-bg.range-start-bg{border-top-left-radius:16px;border-bottom-left-radius:16px;left:50%;right:0}.range-day-bg.range-end-bg{border-top-right-radius:16px;border-bottom-right-radius:16px;left:0;right:50%}.range-day-bg.range-start-bg.range-end-bg{display:none}.range-day-bg.in-range.row-start-bg{border-top-left-radius:16px;border-bottom-left-radius:16px}.range-day-bg.in-range.row-end-bg{border-top-right-radius:16px;border-bottom-right-radius:16px}.range-day-btn{width:32px;height:32px;color:var(--text-primary);cursor:pointer;z-index:2;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex;position:relative}.range-day-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--accent)}.range-day-btn.disabled{color:var(--text-muted);opacity:.3;cursor:not-allowed!important}.range-day-btn.selected-start,.range-day-btn.selected-end{box-shadow:0 2px 8px var(--accent-subtle);background:var(--accent)!important;color:var(--text-inverse)!important}.range-day-btn.today-indicator:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.range-day-btn.selected-start.today-indicator:after,.range-day-btn.selected-end.today-indicator:after{background:var(--text-inverse)}.date-range-footer{border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;display:flex}.range-summary-info{color:var(--text-secondary);font-size:12px;font-weight:500}.range-action-btns{align-items:center;gap:8px;display:flex}.analytics-area-select{appearance:none;background-color:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;align-items:center;padding:0 34px 0 14px;font-size:12px;font-weight:500;display:inline-flex;overflow:hidden}.analytics-area-select:focus,.analytics-area-select:hover{border-color:var(--accent);background-color:var(--bg-tertiary)}.analytics-area-select.active{background-color:var(--accent);color:var(--text-inverse);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-subtle);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");font-weight:600}.analytics-area-select.active:hover{background-color:var(--accent);opacity:.95}.analytics-area-select.active option{background-color:var(--bg-secondary);color:var(--text-primary);font-weight:500}.analytics-scope-badge{background:var(--cyan-subtle);color:var(--cyan-accent);border-radius:var(--radius-md);white-space:nowrap;border:1px solid #22829340;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.analytics-kpi-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.kpi-card{background:var(--bg-secondary);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);align-items:center;gap:var(--space-md);transition:transform var(--transition-spring), box-shadow var(--transition-base), border-color var(--transition-fast);display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.kpi-card:hover{border-color:var(--border-accent);box-shadow:0 10px 28px var(--shadow-glow), var(--shadow-lg);transform:translateY(-3px)scale(1.01)}.kpi-icon-badge{border-radius:var(--radius-md);width:48px;height:48px;color:var(--text-inverse);flex-shrink:0;justify-content:center;align-items:center;display:flex}.kpi-icon-badge.purple{background:linear-gradient(135deg, var(--cc-blue) 0%, var(--accent-glow) 100%);box-shadow:0 4px 12px var(--accent-subtle)}.kpi-icon-badge.emerald{background:linear-gradient(135deg, var(--success) 0%, #226442 100%);box-shadow:0 4px 12px var(--success-subtle)}.kpi-icon-badge.amber{background:linear-gradient(135deg, var(--brand-yellow) 0%, var(--orange-accent) 100%);box-shadow:0 4px 12px var(--orange-subtle);color:var(--text-inverse)}.kpi-icon-badge.sky{background:linear-gradient(135deg, var(--cyan-accent) 0%, #175d69 100%);box-shadow:0 4px 12px var(--cyan-subtle)}.kpi-icon-badge.gemini{background:linear-gradient(135deg, var(--cc-blue) 0%, var(--cyan-accent) 100%);box-shadow:0 4px 12px var(--cyan-subtle)}.kpi-info{flex-direction:column;flex:1;display:flex}.kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.kpi-value{color:var(--text-primary);margin:2px 0;font-size:22px;font-weight:700}.kpi-subtext{color:var(--text-secondary);font-size:11px}.analytics-tabs{gap:var(--space-sm);border-bottom:1px solid var(--border-subtle);padding-bottom:2px;display:flex}.analytics-tab-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;display:flex}.analytics-tab-btn:hover{color:var(--text-primary)}.analytics-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.analytics-grid-two-col{gap:var(--space-lg);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}@media (width<=900px){.analytics-grid-two-col{grid-template-columns:1fr}}.analytics-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);gap:var(--space-md);box-sizing:border-box;flex-direction:column;height:100%;display:flex}.analytics-card .user-empty-state{min-height:200px}.analytics-card-header{justify-content:space-between;align-items:center;display:flex}.analytics-card-title{color:var(--text-primary);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.leaderboard-header-filters{align-items:center;gap:8px;display:flex}.analytics-filter-input-wrapper{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-sizing:border-box;height:32px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:6px;padding:2px 8px;display:flex}.analytics-filter-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.analytics-filter-label{color:var(--accent);-webkit-user-select:none;user-select:none;font-size:11px;font-weight:700}.analytics-filter-input{width:64px;color:var(--text-primary);background:0 0;border:none;outline:none;font-size:12px;font-weight:600}.analytics-filter-input::placeholder{color:var(--text-muted);font-size:11px;font-weight:400}.analytics-filter-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.analytics-filter-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.analytics-filter-input[type=number]{-moz-appearance:textfield}.analytics-filter-clear-btn{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.analytics-filter-clear-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--accent)}.filter-popover-container{display:inline-block;position:relative}.filter-count-badge{color:var(--accent);background:#fff;border-radius:9999px;justify-content:center;align-items:center;width:15px;height:15px;font-size:10px;font-weight:800;line-height:1;display:inline-flex}.leaderboard-filter-popover{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);z-index:100;flex-direction:column;gap:12px;width:260px;padding:12px;animation:.15s cubic-bezier(.16,1,.3,1) fadeIn;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #0000004d}.popover-range-row{align-items:center;gap:8px;display:flex}.popover-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.popover-title{color:var(--text-primary);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.popover-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.popover-close-btn:hover{color:var(--text-primary)}.popover-body{flex-direction:column;gap:10px;display:flex}.popover-field{flex-direction:column;gap:4px;display:flex}.popover-field-label{color:var(--text-secondary);font-size:11px;font-weight:600}.popover-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;padding-top:8px;display:flex}.popover-clear-btn{color:var(--error);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast);background:0 0;border:none;padding:4px 8px;font-size:11px;font-weight:600}.popover-clear-btn:hover{background:var(--error-subtle)}.leaderboard-list{gap:var(--space-sm);scrollbar-gutter:stable;flex-direction:column;height:620px;max-height:620px;padding-right:4px;display:flex;overflow-y:auto}.leaderboard-list::-webkit-scrollbar{width:6px}.leaderboard-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:var(--radius-full)}.leaderboard-list::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-full)}.leaderboard-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.leaderboard-toggle-inactive-btn{background:var(--bg-primary);border:1px dashed var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;justify-content:center;align-items:center;margin-top:4px;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.leaderboard-toggle-inactive-btn:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.leaderboard-item{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition-fast);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.leaderboard-item.clickable{cursor:pointer}.leaderboard-item.inactive-user{opacity:.75;background:#00000005}[data-theme=dark] .leaderboard-item.inactive-user{background:#ffffff05}.leaderboard-item:hover{border-color:var(--accent);background:var(--bg-tertiary);opacity:1}.dist-bar-user-chip{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:space-between;align-items:center;padding:4px 8px;font-size:11px;display:flex}.dist-bar-user-chip.clickable{cursor:pointer}.dist-bar-user-chip.clickable:hover{border-color:var(--accent);background:var(--bg-tertiary)}.dist-bar-user-chip.inactive-user{opacity:.75;background:#00000005}[data-theme=dark] .dist-bar-user-chip.inactive-user{background:#ffffff05}.leaderboard-user-side{align-items:center;gap:var(--space-md);display:flex}.leaderboard-rank{background:var(--bg-tertiary);width:24px;height:24px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.leaderboard-rank.top-1{background:var(--brand-yellow);color:var(--user-bubble-text)}.leaderboard-rank.top-2{background:var(--border-subtle);color:var(--text-primary)}.leaderboard-rank.top-3{background:var(--orange-accent);color:var(--text-inverse)}.leaderboard-rank.inactive-rank{border:1px dashed var(--border-subtle);color:var(--text-muted);background:0 0}.leaderboard-user-details{flex-direction:column;display:flex}.leaderboard-name{color:var(--text-primary);font-size:13px;font-weight:600}.leaderboard-sub{color:var(--text-muted);font-size:11px}.leaderboard-metrics-side{flex-direction:column;align-items:flex-end;display:flex}.leaderboard-tokens{color:var(--text-primary);font-size:13px;font-weight:700}.leaderboard-cost{color:var(--success);font-size:11px;font-weight:600}.dist-bars-list{gap:var(--space-md);scrollbar-gutter:stable;flex-direction:column;height:620px;max-height:620px;padding-right:4px;display:flex;overflow-y:auto}.dist-bars-list::-webkit-scrollbar{width:6px}.dist-bars-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:var(--radius-full)}.dist-bars-list::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-full)}.dist-bars-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.dist-bar-item{flex-direction:column;gap:6px;display:flex}.dist-bar-meta{border-radius:var(--radius-md);transition:background-color var(--transition-fast);justify-content:space-between;align-items:center;margin:-4px -6px;padding:4px 6px;font-size:12px;display:flex}.dist-bar-meta.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.dist-bar-meta.clickable:hover{background:var(--bg-tertiary)}.dist-bar-chevron{color:var(--text-muted);justify-content:center;align-items:center;margin-right:6px;font-size:9px;transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-flex;transform:rotate(-90deg)}.dist-bar-chevron.expanded{color:var(--accent);transform:rotate(0)}.dist-bar-track{background:var(--bg-primary);border-radius:var(--radius-full);height:8px;overflow:hidden}.dist-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.dist-bar-fill.purple{background:linear-gradient(90deg, var(--cc-blue,#024089), var(--accent-glow,#0352ad))}.dist-bar-fill.emerald{background:linear-gradient(90deg, var(--success,#31895d), #41b079)}.dist-bar-fill.sky{background:linear-gradient(90deg, var(--cyan-accent,#228293), #35aabf)}.dist-bar-fill.amber{background:linear-gradient(90deg, var(--brand-yellow,#fc0), #ffdb4d)}.dist-bar-fill.budget-warning{background:linear-gradient(90deg, var(--brand-yellow,#fc0), var(--orange-accent,#eb5c37))}.dist-bar-fill.budget-danger{background:linear-gradient(90deg, var(--error,#b71928), #dc2626)}.dist-bar-budget-btn{border-radius:var(--radius-sm,4px);background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;margin-left:6px;padding:2px 6px;font-size:11px;transition:all .2s;display:inline-flex}.dist-bar-budget-btn:hover{background:var(--bg-primary);border-color:var(--accent);color:var(--accent)}.dist-bar-budget-tag{border-radius:var(--radius-full,9999px);align-items:center;gap:4px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-flex}.dist-bar-budget-tag.tag-warning{background:var(--brand-yellow-subtle);color:var(--brand-yellow);border:1px solid #ffcc004d}.dist-bar-budget-tag.tag-danger{background:var(--error-subtle);color:var(--error);border:1px solid var(--error-border)}.dist-bar-budget-tag.tag-ok{background:var(--success-subtle);color:var(--success);border:1px solid var(--success-border)}.dist-bar-users-list{border-left:2px solid var(--accent);flex-direction:column;gap:4px;margin-top:4px;padding-left:8px;animation:.25s cubic-bezier(.16,1,.3,1) forwards expandUsersList;display:flex}@keyframes expandUsersList{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dist-bar-user-chip{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:4px 8px;font-size:11px;display:flex}.dist-bar-user-name{color:var(--text-primary);font-weight:600}.dist-bar-user-metrics{color:var(--text-secondary);font-size:11px}.inspector-filters{gap:var(--space-md);flex-wrap:wrap;align-items:center;display:flex}.inspector-table-wrapper{overflow-x:auto}.inspector-table{border-collapse:collapse;width:100%;font-size:13px}.inspector-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border-subtle);padding:12px 14px;font-size:11px;font-weight:600}.inspector-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle;padding:12px 14px}.inspector-table tbody tr:hover{background:var(--bg-glass-hover)}.clickable-user-cell{cursor:pointer;transition:color var(--transition-fast)}.clickable-user-cell:hover{color:var(--accent)}.clickable-user-cell:hover .filter-user-hover-icon{color:var(--accent);opacity:1!important}.inspector-prompt-preview{white-space:nowrap;text-overflow:ellipsis;max-width:320px;color:var(--text-secondary);overflow:hidden}.inspector-drawer-backdrop{-webkit-backdrop-filter:blur(4px);z-index:1100;animation:fadeIn var(--transition-fast);background:#0009;justify-content:flex-end;display:flex;position:fixed;inset:0}.inspector-drawer{background:var(--bg-secondary);width:100%;max-width:580px;height:100%;animation:slideInRight var(--transition-base);flex-direction:column;display:flex;box-shadow:-8px 0 32px #0006}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.inspector-drawer-header{padding:var(--space-lg);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.inspector-drawer-body{padding:var(--space-lg);gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.inspector-detail-box{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-md);flex-direction:column;gap:8px;display:flex}.inspector-detail-label{color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:700}.inspector-detail-content{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.inspector-metrics-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.inspector-metric-tile{background:var(--bg-tertiary);border-radius:var(--radius-md);flex-direction:column;padding:10px 14px;display:flex}.inspector-metric-tile span{color:var(--text-muted);font-size:11px}.inspector-metric-tile strong{color:var(--text-primary);font-size:15px}.inspector-pagination-bar{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-sm);flex-wrap:wrap;padding:14px 16px;display:flex}.pagination-info{color:var(--text-secondary);font-size:12px}.pagination-controls{align-items:center;gap:8px;display:flex}.pagination-btn{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);padding:5px 10px;font-size:12px;font-weight:600}.pagination-btn:hover:not(:disabled){background:var(--bg-glass-hover);border-color:var(--border-accent)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-page-num{border-radius:var(--radius-md);border:1px solid var(--border-subtle);min-width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.pagination-page-num:hover{color:var(--text-primary);border-color:var(--border-accent)}.pagination-page-num.active{background:var(--accent);color:var(--text-inverse);border-color:var(--accent);box-shadow:0 2px 6px var(--accent-subtle)}.pagination-size-select{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;outline:none;padding:4px 8px;font-size:12px}@media (width<=768px){.analytics-inner{padding:var(--space-sm);gap:var(--space-md)}.analytics-header{align-items:stretch;gap:var(--space-sm);flex-direction:column}.analytics-controls{align-items:stretch;gap:var(--space-xs);flex-direction:column;width:100%}.period-pills-group{white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-width:100%;height:36px;padding:3px;overflow-x:auto}.period-pills-group::-webkit-scrollbar{display:none}.period-pill-btn{flex-shrink:0;height:28px;padding:0 12px;font-size:11px}.analytics-controls-subrow{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.analytics-area-select{flex:100%;width:100%;height:36px;font-size:16px}.analytics-filter-input{font-size:16px}.analytics-controls-subrow .period-pills-group{flex:1;justify-content:center;min-width:130px}.analytics-controls-subrow .period-pill-btn{justify-content:center;width:100%}.analytics-tabs{white-space:nowrap;-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:4px;overflow-x:auto}.analytics-tab-btn{flex-shrink:0;padding:8px 12px;font-size:12px}.leaderboard-item{gap:8px;padding:8px 10px}.leaderboard-user-details{flex:1;min-width:0}.leaderboard-name,.leaderboard-sub{white-space:nowrap;text-overflow:ellipsis;max-width:170px;overflow:hidden}.dist-bar-meta{flex-direction:column;align-items:flex-start;gap:2px}.inspector-pagination-bar{text-align:center;align-items:center;gap:var(--space-sm);flex-direction:column}.pagination-controls{flex-wrap:wrap;justify-content:center;gap:6px}.inspector-drawer{max-width:100%}}.evaluations-stats-bar{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-around;align-items:center;gap:16px;padding:12px 18px;display:flex}.stat-bar-item{text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:130px;display:flex}.stat-bar-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:11px;font-weight:600}.stat-bar-val{color:var(--text-primary);font-size:18px;font-weight:700}.stat-bar-sub{color:var(--text-secondary);font-size:11px;font-weight:500}.stat-bar-divider{background:var(--border-subtle);width:1px;height:30px}@media (width<=768px){.stat-bar-divider{display:none}.evaluations-stats-bar{justify-content:flex-start}}.area-budget-modal-card,.area-budget-modal-content{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:440px;max-width:95vw;color:var(--text-primary);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000073;background:var(--bg-secondary)!important}.area-budget-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.area-budget-title{color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.area-budget-close-btn{border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.area-budget-close-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.area-budget-form{flex-direction:column;gap:14px;padding:18px;display:flex}.area-budget-info-card{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-subtle);padding:12px 14px;font-size:13px}.area-budget-info-row{justify-content:space-between;align-items:center;display:flex}.area-budget-info-row:not(:last-child){margin-bottom:6px}.area-budget-rules-card{background:var(--brand-yellow-subtle,#ffcc001f);border-radius:var(--radius-md);color:var(--text-secondary);border:1px solid #ffcc0059;padding:10px 14px;font-size:11px}.area-budget-rules-title{color:var(--accent);align-items:center;gap:6px;margin-bottom:4px;font-weight:700;display:flex}.area-budget-input-group{flex-direction:column;gap:6px;display:flex}.area-budget-input-label{color:var(--text-primary);font-size:12px;font-weight:600}.area-budget-input-row{align-items:center;gap:8px;display:flex}.area-budget-input-wrapper{flex:1;position:relative}.area-budget-currency-symbol{color:var(--text-muted);pointer-events:none;font-size:14px;font-weight:600;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.area-budget-input{box-sizing:border-box;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:8px 12px 8px 36px;font-size:14px;font-weight:600}.area-budget-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle);outline:none}.area-budget-feedback-msg{border-radius:var(--radius-md);padding:8px 12px;font-size:12px;font-weight:500}.area-budget-feedback-msg.error{background:var(--error-subtle);border:1px solid var(--error-border);color:var(--error)}.area-budget-feedback-msg.success{background:var(--success-subtle);border:1px solid var(--success-border);color:var(--success)}.area-budget-feedback-msg.info{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-muted);font-size:11px}.area-budget-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:6px;display:flex}.area-budget-btn-cancel,.area-budget-btn-save{border-radius:var(--radius-md);box-sizing:border-box;cursor:pointer;height:38px;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0 18px;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.area-budget-btn-cancel{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-primary)}.area-budget-btn-cancel:hover:not(:disabled){background:var(--bg-primary);border-color:var(--accent)}.area-budget-btn-save{background:var(--accent);border:1px solid var(--accent);color:var(--text-inverse);box-shadow:0 2px 8px var(--accent-subtle)}.area-budget-btn-save:hover:not(:disabled){background:var(--accent-glow);box-shadow:var(--shadow-glow)}.area-budget-btn-cancel:disabled,.area-budget-btn-save:disabled{opacity:.6;cursor:not-allowed}.area-budget-btn-unlimited{border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-subtle);height:38px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;box-sizing:border-box;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0 14px;font-size:12px;font-weight:600;display:inline-flex}.area-budget-btn-unlimited:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary);border-color:var(--accent)}.analytics-container button:focus-visible,.analytics-container input:focus-visible,.analytics-container select:focus-visible,.analytics-pagination-btn:focus-visible,.pagination-btn:focus-visible,.pagination-page-num:focus-visible,.pagination-size-select:focus-visible,.period-pill-btn:focus-visible,.drawer-panel button:focus-visible,.drawer-panel input:focus-visible,.drawer-panel select:focus-visible,.date-range-card button:focus-visible,.date-range-card input:focus-visible,.date-range-card select:focus-visible,.modal-container button:focus-visible,.modal-container input:focus-visible,.modal-container select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.analytics-container,.modal-backdrop,.modal-container,.drawer-backdrop,.drawer-panel,.leaderboard-filter-popover,.eval-filter-popover,.dist-bar-fill,.area-users-expandable,.date-range-modal-backdrop,.date-range-card,.splash-loader,.period-pill-btn,.pagination-page-num,.pagination-btn{transition:none!important;animation:none!important}}.offline-banner{z-index:9999;background-color:var(--cc-orange);color:var(--text-inverse);padding:var(--space-xs) var(--space-md);font-family:var(--font-family);font-size:var(--font-size-xs);justify-content:center;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-sm,0 1px 3px #0000001a);text-align:center;font-weight:500;animation:.3s ease-out slideDown;display:flex;position:fixed;top:0;left:0;right:0}.offline-banner-dot{border-radius:var(--radius-full);background-color:var(--text-inverse);opacity:.9;width:8px;height:8px;display:inline-block}@media (width<=768px){.offline-banner{padding:var(--space-xs) var(--space-sm);font-size:.7rem}}
