.sidebar{width:260px;padding:20px;display:flex;flex-direction:column;gap:20px;background:var(--sidebar);border-right:1px solid var(--border)}.sidebar-brand{display:flex;align-items:center;gap:12px;font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.brand-icon{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--primary),#6b8cff);display:flex;align-items:center;justify-content:center}.brand-icon-svg{width:18px;height:18px;stroke:#fff}.new-chat-btn{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;font-size:var(--font-sm);font-weight:500;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.new-chat-btn:hover{border-color:var(--primary-soft);box-shadow:var(--shadow-md)}.sidebar-nav{display:flex;flex-direction:column;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-sm);color:var(--text-muted);transition:background-color .2s ease,color .2s ease}.nav-item.active{background:var(--primary-soft);color:var(--text-primary)}.nav-item:hover{background:#0000000a}[data-theme=dark] .nav-item:hover{background:#ffffff0f}.sidebar-section{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0}.section-title{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.chat-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;padding-right:6px}.chat-item{padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-sm);color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;position:relative;transition:background-color .18s ease,box-shadow .18s ease,transform .12s ease}.chat-item:hover{background:#0f172a0d;box-shadow:inset 2px 0 0 var(--primary-soft)}[data-theme=dark] .chat-item:hover{background:#ffffff0f}.chat-item.active{background:var(--primary-soft)}.chat-meta{display:flex;flex-direction:column;gap:2px;overflow:hidden}.chat-title{display:block;font-weight:500}.chat-time{font-size:var(--font-xs);color:var(--text-muted)}.chat-delete-btn{opacity:0;pointer-events:none;background:transparent;border:none;padding:4px;cursor:pointer;color:var(--text-muted);transition:opacity .15s ease,color .15s ease}.chat-item:hover .chat-delete-btn{opacity:1;pointer-events:auto}.chat-delete-btn:hover{color:#ef4444}.sidebar-footer{margin-top:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.settings-btn{flex:1;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:transparent;color:var(--text-primary);cursor:pointer;transition:background-color .2s ease}.settings-btn:hover{background:#0000000a}[data-theme=dark] .settings-btn:hover{background:#ffffff14}.theme-toggle{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#0f172a0a;border:1px solid var(--border);cursor:pointer;color:var(--text-primary);transition:background-color .2s ease,border-color .2s ease}.theme-toggle:hover{background:#0f172a14}[data-theme=dark] .theme-toggle{background:#ffffff14;border-color:#ffffff24;color:#e5e7eb}[data-theme=dark] .theme-toggle:hover{background:#ffffff24}.theme-icon-svg{width:18px;height:18px;stroke:currentColor}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar-overlay{display:block;position:fixed;inset:0;background:#0006;z-index:90;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.show{opacity:1;pointer-events:auto}.sidebar{position:fixed;inset:0 auto 0 0;width:280px;transform:translate(-100%);transition:transform .3s ease;z-index:100}.sidebar.open{transform:translate(0)}}.sidebar-confirm-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;display:flex;align-items:center;justify-content:center}.sidebar-confirm-modal{position:relative;width:360px;max-width:calc(100% - 32px);background:var(--surface);border-radius:14px;border:1px solid var(--border);box-shadow:var(--shadow-lg);padding:20px;color:var(--text-primary)}.sidebar-confirm-close{position:absolute;top:10px;right:12px;background:transparent;border:none;font-size:22px;cursor:pointer;color:var(--text-muted)}.sidebar-confirm-close:hover{color:var(--text-primary)}.sidebar-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.sidebar-confirm-btn{padding:8px 14px;border-radius:10px;font-size:var(--font-sm);cursor:pointer;border:1px solid var(--border);background:transparent}.sidebar-confirm-btn.cancel:hover{background:#0000000a}.sidebar-confirm-btn.danger{background:#ef4444;border-color:#ef4444;color:#fff}.sidebar-confirm-btn.danger:hover{background:#dc2626}.sidebar-confirm-btn.cancel{color:var(--text-primary)}.sidebar-confirm-btn.cancel:hover{background:#ffffff14}[data-theme=dark] .sidebar-confirm-btn.cancel{color:#e5e7eb;border-color:#ffffff2e}.chat-skeleton{height:42px;border-radius:8px;background:linear-gradient(90deg,var(--surface) 25%,var(--border) 37%,var(--surface) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}:root{--primary: #4f7cff;--bg-base: #f4f6fb;--surface: #ffffff;--surface-soft: #eef1f8;--text-primary: #0f172a;--text-muted: #64748b;--border: #e5e7eb;--font-xl: 32px;--font-lg: 20px;--font-md: 16px;--font-sm: 14px;--font-xs: 12px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--shadow-lg: 0 30px 60px rgba(0, 0, 0, .12);--shadow-md: 0 10px 30px rgba(0, 0, 0, .08)}[data-theme=dark]{--bg-base: radial-gradient( circle at top, #1e2433 0%, #0b1020 60% );--surface: rgba(15, 23, 42, .85);--surface-soft: rgba(30, 41, 59, .9);--text-primary: #e5e7eb;--text-muted: #94a3b8;--border: rgba(255, 255, 255, .08);--shadow-lg: 0 40px 80px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-base);color:var(--text-primary)}.chat-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden}.empty-state{margin:auto;max-width:640px;text-align:center}.empty-header{margin-bottom:40px}.empty-header h1{font-size:var(--font-xl);font-weight:600;margin-bottom:10px}.empty-header p{font-size:var(--font-md);color:var(--text-muted)}.suggestion-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.suggestion-card{display:flex;align-items:flex-start;gap:14px;padding:18px;text-align:left;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.suggestion-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-soft)}.suggestion-icon{width:36px;height:36px;border-radius:10px;background:#4f7cff1f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.suggestion-icon-svg{width:20px;height:20px;stroke:var(--primary)}.suggestion-content{display:flex;flex-direction:column;gap:4px}.suggestion-title{font-size:var(--font-sm);font-weight:600;color:var(--text-primary)}.suggestion-desc{font-size:var(--font-sm);color:var(--text-muted);line-height:1.4}[data-theme=dark] .suggestion-card{background:var(--surface-soft);border-color:var(--border)}.chat-window{flex:1;overflow-y:auto;padding:32px;display:flex;flex-direction:column;gap:16px}.message{max-width:70%;padding:14px 18px;border-radius:var(--radius-md);line-height:1.55;font-size:var(--font-sm)}.message.user{align-self:flex-end;background:var(--primary);color:#fff}.message.ai{align-self:flex-start;background:var(--bubble)}.message-meta{font-size:var(--font-xs);opacity:.6;margin-bottom:4px}.message-content{white-space:pre-wrap}.composer-wrapper{margin-top:auto;padding:16px 24px 20px}.composer{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md)}[data-theme=dark] .composer{box-shadow:var(--shadow-lg)}.composer-input{flex:1;border:none;background:transparent;font-size:var(--font-sm);color:var(--text-primary)}.composer-input::placeholder{color:var(--text-muted)}.composer-input:focus{outline:none}.composer-tool,.composer-send{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;color:var(--text-muted)}.composer-tool:hover{background:#0000000d}[data-theme=dark] .composer-tool:hover{background:#ffffff14}.composer-send{background:var(--primary);color:#fff}.composer-send:disabled{opacity:.5;cursor:not-allowed}.composer-send .icon-svg{fill:#fff;stroke:#fff}.icon-svg{width:18px;height:18px;stroke:currentColor}html{transition:background-color .25s ease,color .25s ease}.sidebar,.chat-shell,.suggestion-card,.composer,.new-chat-btn{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}:root{--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;--transition: all .25s ease}[data-theme=light]{--bg: #f4f6fb;--sidebar: #ffffff;--card: #ffffff;--border: #e5e7eb;--text: #0f172a;--text-muted: #64748b;--primary: #4f7cff;--primary-soft: #eef2ff;--bubble-ai: #f1f5f9;--bubble-user: #4f7cff;--shadow-lg: 0 30px 60px rgba(0,0,0,.08);--shadow-md: 0 12px 30px rgba(0,0,0,.06)}[data-theme=dark]{--bg: radial-gradient(circle at top, #1e1b3a, #0b1020);--sidebar: rgba(18, 24, 46, .9);--card: rgba(28, 35, 64, .9);--border: rgba(255,255,255,.08);--text: #e5e7eb;--text-muted: #94a3b8;--primary: #7c9cff;--primary-soft: rgba(124,156,255,.15);--bubble-ai: rgba(255,255,255,.08);--bubble-user: #7c9cff;--shadow-lg: 0 40px 80px rgba(0,0,0,.6);--shadow-md: 0 20px 40px rgba(0,0,0,.4)}.app-background{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 600px at 15% 10%,rgba(79,124,255,.15),transparent 40%),radial-gradient(900px 500px at 85% 90%,rgba(99,102,241,.15),transparent 40%),var(--bg-base);transition:background .35s ease}[data-theme=dark] .app-background{background:radial-gradient(1200px 600px at 15% 10%,rgba(99,102,241,.18),transparent 40%),radial-gradient(900px 500px at 85% 90%,rgba(139,92,246,.18),transparent 40%),var(--bg-base)}.app-frame{width:94vw;max-width:1320px;height:90vh;display:flex;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow-lg),inset 0 0 0 1px #ffffff80;transition:background-color .35s ease,box-shadow .35s ease}[data-theme=dark] .app-frame{box-shadow:var(--shadow-lg),inset 0 0 0 1px #ffffff0f}.sidebar,.chat-shell,.suggestion-card,.composer,.new-chat-btn,.settings-btn,.theme-toggle{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}.chat-shell{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--surface)}.chat-header{flex-shrink:0;height:56px;padding:0 20px;border-bottom:1px solid var(--border);background:var(--surface);display:flex;align-items:center;gap:12px}.chat-window{flex:1;min-height:0;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:18px}.message-row{max-width:70%;display:flex;flex-direction:column}.message-row.user{align-self:flex-end}.message-row.ai{align-self:flex-start}.message-meta{display:flex;gap:8px;font-size:12px;opacity:.65;margin-bottom:4px}.message-row.user .message-meta{justify-content:flex-end}.message-bubble{padding:14px 18px;border-radius:18px;line-height:1.55;font-size:15px;word-wrap:break-word}.message-bubble.user{background:var(--primary);color:#fff;border-bottom-right-radius:6px}.message-bubble.ai{background:var(--bubble);color:var(--text);border-bottom-left-radius:6px}.chat-composer{flex-shrink:0;height:72px;border-top:1px solid var(--border);background:var(--surface);padding:14px 20px;display:flex;align-items:center;gap:12px}.typing{opacity:.6;font-style:italic}.chat-body{flex:1;min-height:0;display:flex;flex-direction:column}.mobile-menu-btn{display:none}@media(max-width:768px){.mobile-menu-btn{display:inline-flex}}.chat-skeleton-bubble{width:60%;height:36px;margin:12px;border-radius:14px;background:linear-gradient(90deg,var(--surface) 25%,var(--border) 37%,var(--surface) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite}.ai-indicator{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--text-muted)}.ai-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);opacity:.85}.ai-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;opacity:.7}.ai-dot{width:6px;height:6px;background:#6b8cff;border-radius:50%;animation:pulse 1.2s infinite ease-in-out}@keyframes pulse{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.typing-dots{font-size:14px;opacity:.6;font-style:italic}.ai-thinking{margin:12px 24px;display:flex;flex-direction:column;gap:4px}.ai-thinking-label{font-size:12px;opacity:.6}.ai-thinking-text{font-size:14px;font-style:italic;opacity:.7}
