:root,[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0a0a0c;--bg-tertiary: #141417;--bg-elevated: #1a1a1e;--bg-surface: rgba(255, 255, 255, .04);--bg-surface-hover: rgba(255, 255, 255, .08);--bg-surface-active: rgba(255, 255, 255, .12);--bg-glass: rgba(10, 10, 12, .75);--text-primary: #ffffff;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-muted: #52525b;--accent: #ffffff;--accent-hover: #e4e4e7;--accent-contrast: #000000;--accent-glow: rgba(255, 255, 255, .16);--accent-subtle: rgba(255, 255, 255, .08);--accent-gradient: linear-gradient(135deg, #ffffff, #a1a1aa);--user-bubble: #ffffff;--user-bubble-text: #000000;--user-bubble-shadow: 0 4px 16px rgba(255, 255, 255, .08);--ai-avatar-bg: #18181b;--ai-avatar-text: #ffffff;--ai-avatar-border: rgba(255, 255, 255, .2);--code-bg: #09090b;--code-header-bg: #111114;--code-border: rgba(255, 255, 255, .12);--code-text: #f4f4f5;--border-subtle: rgba(255, 255, 255, .07);--border-medium: rgba(255, 255, 255, .14);--border-strong: rgba(255, 255, 255, .26);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .6);--shadow-md: 0 4px 16px rgba(0, 0, 0, .7);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .85);--shadow-glow: 0 0 24px rgba(255, 255, 255, .07);--sidebar-width: 290px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .22s cubic-bezier(.4, 0, .2, 1);--transition-slow: .32s cubic-bezier(.4, 0, .2, 1);--z-sidebar: 40;--z-overlay: 50;--z-dropdown: 60;--z-toast: 100}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f0f2f5;--bg-elevated: #e9ecef;--bg-surface: rgba(0, 0, 0, .03);--bg-surface-hover: rgba(0, 0, 0, .06);--bg-surface-active: rgba(0, 0, 0, .1);--bg-glass: rgba(255, 255, 255, .82);--text-primary: #09090b;--text-secondary: #52525b;--text-tertiary: #71717a;--text-muted: #a1a1aa;--accent: #000000;--accent-hover: #27272a;--accent-contrast: #ffffff;--accent-glow: rgba(0, 0, 0, .12);--accent-subtle: rgba(0, 0, 0, .06);--accent-gradient: linear-gradient(135deg, #18181b, #52525b);--user-bubble: #09090b;--user-bubble-text: #ffffff;--user-bubble-shadow: 0 4px 16px rgba(0, 0, 0, .12);--ai-avatar-bg: #f4f4f5;--ai-avatar-text: #09090b;--ai-avatar-border: rgba(0, 0, 0, .16);--code-bg: #09090b;--code-header-bg: #141418;--code-border: rgba(0, 0, 0, .22);--code-text: #f4f4f5;--border-subtle: rgba(0, 0, 0, .08);--border-medium: rgba(0, 0, 0, .16);--border-strong: rgba(0, 0, 0, .32);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 32px rgba(0, 0, 0, .14);--shadow-glow: 0 0 20px rgba(0, 0, 0, .06)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow:hidden;transition:background-color var(--transition-base),color var(--transition-base)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--text-primary);color:var(--bg-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app{display:flex;height:100vh;width:100vw;overflow:hidden;background-color:var(--bg-primary);color:var(--text-primary);position:relative;transition:background-color var(--transition-base),color var(--transition-base)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#000000a6;z-index:calc(var(--z-sidebar) - 1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn var(--transition-fast) ease-out}.sidebar-overlay.active{display:block}.toast-container{position:fixed;top:1.25rem;right:1.25rem;z-index:var(--z-toast);display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:.75rem;padding:.75rem 1.125rem;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;box-shadow:var(--shadow-lg);animation:slideInRight var(--transition-base) cubic-bezier(.16,1,.3,1);max-width:380px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);cursor:pointer;transition:transform var(--transition-fast)}.toast:hover{transform:translateY(-2px)}[data-theme=dark] .toast{background:#141418e0;border:1px solid var(--border-medium);color:#fff}[data-theme=dark] .toast.toast-error{border-color:#ef444466;background:#1e0f0fe6}[data-theme=dark] .toast.toast-error i{color:#f87171}[data-theme=dark] .toast.toast-success{border-color:#22c55e66;background:#0f1e14e6}[data-theme=dark] .toast.toast-success i{color:#4ade80}[data-theme=dark] .toast.toast-info i{color:#fff}[data-theme=light] .toast{background:#ffffffeb;border:1px solid var(--border-medium);color:#09090b}[data-theme=light] .toast.toast-error{border-color:#ef44444d;background:#fef2f2f2}[data-theme=light] .toast.toast-error i{color:#dc2626}[data-theme=light] .toast.toast-success{border-color:#22c55e4d;background:#f0fdf4f2}[data-theme=light] .toast.toast-success i{color:#16a34a}[data-theme=light] .toast.toast-info i{color:#09090b}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@media (max-width: 768px){.toast-container{top:auto;bottom:1rem;right:1rem;left:1rem;align-items:center}.toast{max-width:100%;width:100%}}.sidebar{background-color:var(--bg-secondary);width:var(--sidebar-width);min-width:var(--sidebar-width);height:100vh;display:flex;flex-direction:column;border-right:1px solid var(--border-subtle);transition:transform var(--transition-base),background-color var(--transition-base),border-color var(--transition-base);z-index:var(--z-sidebar);-webkit-user-select:none;user-select:none}.sidebar-header{padding:1.25rem 1rem 1rem;border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:1rem}.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:.25rem .5rem}.sidebar-brand .brand-icon{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--text-primary);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:.9375rem;flex-shrink:0;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.sidebar-brand:hover .brand-icon{transform:scale(1.05)}.brand-info{display:flex;flex-direction:column}.sidebar-brand .brand-text{font-size:.9375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}.sidebar-brand .brand-subtext{font-size:.6875rem;color:var(--text-tertiary);font-weight:500;letter-spacing:.02em}.new-chat-btn{display:flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:.6875rem 1rem;border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.new-chat-btn:hover{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);box-shadow:var(--shadow-sm)}.new-chat-btn:active{transform:scale(.98)}.new-chat-btn i{font-size:.75rem;transition:transform var(--transition-fast)}.new-chat-btn:hover i{transform:rotate(90deg)}.thread-list-section{flex:1;overflow-y:auto;padding:.75rem .625rem;display:flex;flex-direction:column}.thread-list-header{display:flex;align-items:center;justify-content:space-between;padding:.375rem .625rem .625rem}.thread-list-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.thread-count{font-size:.6875rem;font-weight:600;color:var(--text-tertiary);background:var(--bg-surface);padding:.125rem .4rem;border-radius:var(--radius-full);border:1px solid var(--border-subtle)}.thread-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.thread-item{display:flex;align-items:center;padding:.625rem .75rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);position:relative;gap:.625rem;border:1px solid transparent}.thread-item:hover{background:var(--bg-surface-hover);border-color:var(--border-subtle)}.thread-item.active{background:var(--bg-surface-active);border-color:var(--border-medium)}.thread-item .thread-icon{flex-shrink:0;color:var(--text-tertiary);font-size:.8125rem;transition:color var(--transition-fast)}.thread-item.active .thread-icon,.thread-item:hover .thread-icon{color:var(--text-primary)}.thread-item .thread-title{flex:1;font-size:.8125rem;font-weight:500;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4;transition:color var(--transition-fast)}.thread-item.active .thread-title{color:var(--text-primary);font-weight:600}.thread-item:hover .thread-title{color:var(--text-primary)}.thread-actions{display:flex;gap:.25rem;opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.thread-item:hover .thread-actions{opacity:1}.thread-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-xs);cursor:pointer;font-size:.75rem;transition:all var(--transition-fast);padding:0}.thread-action-btn:hover{background:var(--bg-surface-active);color:var(--text-primary)}.thread-action-btn.delete-btn:hover{color:#ef4444;background:#ef44441f}.rename-input{flex:1;background:var(--bg-primary);border:1px solid var(--text-primary);border-radius:var(--radius-xs);color:var(--text-primary);font-family:inherit;font-size:.8125rem;padding:.25rem .5rem;outline:none}.thread-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;gap:.5rem}.thread-empty-icon{width:44px;height:44px;border-radius:var(--radius-full);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:1.125rem;color:var(--text-tertiary);margin-bottom:.5rem;border:1px solid var(--border-subtle)}.thread-empty-title{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.thread-empty-subtitle{font-size:.75rem;color:var(--text-muted);max-width:180px}.sidebar-footer{padding:.875rem 1rem;border-top:1px solid var(--border-subtle)}.footer-status{display:flex;align-items:center;gap:.5rem}.status-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e99;flex-shrink:0}.status-text{font-size:.6875rem;color:var(--text-tertiary);font-weight:500}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);box-shadow:var(--shadow-lg)}.sidebar.open{transform:translate(0)}}.chat-window{flex:1;height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);position:relative;overflow:hidden;transition:background-color var(--transition-base)}.navbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.75rem;border-bottom:1px solid var(--border-subtle);background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:10;min-height:60px;transition:background-color var(--transition-base),border-color var(--transition-base)}.navbar-left{display:flex;align-items:center;gap:.875rem}.menu-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);font-size:1rem;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.menu-toggle:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-medium)}.navbar-title{display:flex;align-items:center;gap:.75rem}.navbar-brand-name{font-size:.9375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.model-badge{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;font-weight:600;color:var(--text-secondary);background:var(--bg-surface);padding:.2rem .625rem;border-radius:var(--radius-full);border:1px solid var(--border-medium);letter-spacing:.02em}.model-pulse{width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55eb3;flex-shrink:0}.navbar-right{display:flex;align-items:center;gap:.625rem;position:relative}.theme-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-full);color:var(--text-primary);font-family:inherit;font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.theme-toggle-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.theme-toggle-btn i{font-size:.8125rem;transition:transform var(--transition-fast)}.theme-toggle-btn:hover i{transform:rotate(20deg)}.theme-toggle-label{display:inline-block}.user-avatar{width:34px;height:34px;border-radius:var(--radius-full);background:var(--text-primary);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);border:none;font-size:.8125rem;box-shadow:var(--shadow-sm)}.user-avatar:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.dropdown{position:absolute;top:calc(100% + .625rem);right:0;width:220px;background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:.4rem;z-index:var(--z-dropdown);box-shadow:var(--shadow-lg);animation:dropdownFadeIn var(--transition-fast) ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-header{display:flex;flex-direction:column;padding:.5rem .75rem}.dropdown-user-name{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.dropdown-user-role{font-size:.6875rem;color:var(--text-tertiary)}.dropdown-divider{height:1px;background:var(--border-subtle);margin:.35rem 0}.dropdown-item{display:flex;align-items:center;gap:.625rem;padding:.55rem .75rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast);border:none;background:none;width:100%;font-family:inherit;text-align:left}.dropdown-item:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.dropdown-item i{width:16px;text-align:center;font-size:.8125rem;color:var(--text-tertiary)}.dropdown-item:hover i{color:var(--text-primary)}.dropdown-item-muted{color:var(--text-muted)}.chat-area{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;position:relative}.chat-area-inner{width:100%;max-width:820px;padding:2rem 1.5rem 0;flex:1}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;padding:3rem 1.5rem;text-align:center;max-width:840px;margin:auto;width:100%}.empty-state-badge{margin-bottom:1.5rem}.empty-state-icon{width:56px;height:56px;border-radius:var(--radius-md);background:var(--text-primary);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:var(--shadow-glow);transition:transform var(--transition-fast)}.empty-state-icon:hover{transform:scale(1.06)}.empty-state-title{font-size:2rem;font-weight:800;color:var(--text-primary);letter-spacing:-.03em;margin-bottom:.625rem;line-height:1.2}.empty-state-desc{font-size:.9375rem;color:var(--text-secondary);max-width:520px;line-height:1.6;margin-bottom:2.5rem}.suggestion-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.875rem;width:100%;max-width:760px}.suggestion-card{display:flex;flex-direction:column;align-items:flex-start;padding:1.125rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:inherit;transition:all var(--transition-fast);position:relative;box-shadow:var(--shadow-sm)}.suggestion-card:hover{background:var(--bg-surface-hover);border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-md)}.suggestion-card-header{display:flex;align-items:center;gap:.625rem;width:100%;margin-bottom:.5rem}.suggestion-icon{width:28px;height:28px;border-radius:var(--radius-xs);background:var(--bg-surface);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:.8125rem;border:1px solid var(--border-subtle)}.suggestion-title{font-size:.8125rem;font-weight:700;color:var(--text-primary);flex:1;letter-spacing:-.01em}.suggestion-arrow{font-size:.6875rem;color:var(--text-tertiary);opacity:0;transition:all var(--transition-fast)}.suggestion-card:hover .suggestion-arrow{opacity:1;color:var(--text-primary);transform:translate(2px,-2px)}.suggestion-snippet{font-size:.75rem;color:var(--text-secondary);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.loading-indicator{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;max-width:820px;width:100%;margin:0 auto;animation:fadeIn var(--transition-fast) ease-out}.typing-dots{display:flex;align-items:center;gap:5px}.typing-dots span{width:7px;height:7px;border-radius:50%;background:var(--text-primary);animation:typingBounce 1.4s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}.loading-text{font-size:.8125rem;font-weight:500;color:var(--text-tertiary)}.chat-input-area{padding:0 1.5rem 1.5rem;display:flex;flex-direction:column;align-items:center;width:100%;background:linear-gradient(180deg,transparent 0%,var(--bg-primary) 35%)}.input-container{width:100%;max-width:820px;position:relative}.input-wrapper{display:flex;align-items:flex-end;background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-xl);padding:.875rem 1.125rem;transition:all var(--transition-fast);gap:.75rem;box-shadow:var(--shadow-md)}.input-wrapper:focus-within{border-color:var(--border-strong);box-shadow:0 0 0 3px var(--accent-subtle),var(--shadow-md)}[data-theme=light] .input-wrapper{background:#fff;border:1.5px solid rgba(0,0,0,.22);box-shadow:0 4px 20px #00000012,0 1px 3px #0000000d}[data-theme=light] .input-wrapper:focus-within{border-color:#000;box-shadow:0 0 0 3px #0000001a,0 4px 24px #0000001a}[data-theme=light] .input-wrapper textarea{color:#09090b}[data-theme=light] .input-wrapper textarea::placeholder{color:#71717a}[data-theme=light] .suggestion-card{background:#fff;border:1px solid rgba(0,0,0,.15);box-shadow:0 2px 10px #0000000d}[data-theme=light] .suggestion-card:hover{background:#f8fafc;border-color:#000;box-shadow:0 6px 20px #0000001a}.input-wrapper textarea{flex:1;background:transparent;border:none;color:var(--text-primary);font-family:inherit;font-size:.9375rem;line-height:1.5;resize:none;max-height:180px;outline:none}.input-wrapper textarea::placeholder{color:var(--text-muted)}.send-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--text-primary);color:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;font-size:.875rem}.send-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:var(--shadow-sm)}.send-btn:active:not(:disabled){transform:scale(.95)}.send-btn:disabled{opacity:.25;cursor:not-allowed}.input-footer{text-align:center;padding-top:.625rem}.input-footer span{font-size:.6875rem;color:var(--text-muted)}.input-footer kbd{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:4px;padding:.125rem .375rem;font-size:.6875rem;font-family:inherit;color:var(--text-tertiary)}@media (max-width: 768px){.menu-toggle{display:flex}.navbar{padding:.75rem 1rem}.theme-toggle-label{display:none}.chat-input-area{padding:0 .875rem 1rem}.chat-area-inner{padding:1rem .875rem 0}.empty-state{padding:2rem 1rem}.empty-state-title{font-size:1.5rem}.suggestion-grid{grid-template-columns:1fr}}.messages-container{display:flex;flex-direction:column;gap:1.75rem;padding-bottom:2rem}.message-row{display:flex;gap:1rem;animation:messageFadeIn .25s cubic-bezier(.16,1,.3,1);align-items:flex-start}.message-row.user-row{flex-direction:row-reverse}@keyframes messageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.8125rem;margin-top:2px;box-shadow:var(--shadow-sm)}.ai-avatar{background:var(--ai-avatar-bg);color:var(--ai-avatar-text);border:1px solid var(--ai-avatar-border)}.user-avatar-small{background:var(--text-primary);color:var(--bg-primary)}.message-content{min-width:0}.ai-row .message-content{flex:1;max-width:calc(100% - 48px)}.user-row .message-content{max-width:80%}.user-message{background:var(--user-bubble);color:var(--user-bubble-text);padding:.8125rem 1.125rem;border-radius:18px 18px 4px;font-size:.9375rem;font-weight:500;line-height:1.55;word-wrap:break-word;box-shadow:var(--user-bubble-shadow);letter-spacing:-.01em}.ai-message{color:var(--text-primary);font-size:.9375rem;line-height:1.7;letter-spacing:-.01em}.ai-message p{margin:0 0 .875rem;color:var(--text-primary)}.ai-message p:last-child{margin-bottom:0}.ai-message strong{color:var(--text-primary);font-weight:700}.ai-message em{color:var(--text-secondary)}.ai-message ul,.ai-message ol{margin:.75rem 0;padding-left:1.5rem;color:var(--text-primary)}.ai-message li{margin:.35rem 0;color:var(--text-primary)}.ai-message h1,.ai-message h2,.ai-message h3,.ai-message h4{color:var(--text-primary);margin:1.25rem 0 .625rem;font-weight:700;letter-spacing:-.02em}.ai-message h1{font-size:1.35rem}.ai-message h2{font-size:1.18rem}.ai-message h3{font-size:1.05rem}.ai-message a{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px;font-weight:500}.ai-message a:hover{color:var(--text-secondary)}.ai-message code:not(pre code){background:var(--bg-tertiary);color:var(--text-primary);padding:.15rem .4rem;border-radius:5px;font-size:.85em;font-family:JetBrains Mono,monospace;border:1px solid var(--border-subtle)}.code-block-wrapper{margin:1.25rem 0;border-radius:var(--radius-md);background:#09090b!important;border:1px solid rgba(255,255,255,.14)!important;overflow:hidden;box-shadow:0 8px 24px #00000059}[data-theme=light] .code-block-wrapper{background:#0d0d11!important;border:1px solid rgba(0,0,0,.2)!important;box-shadow:0 10px 30px #00000024,0 2px 6px #00000014}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:#141418!important;border-bottom:1px solid rgba(255,255,255,.1)!important}[data-theme=light] .code-block-header{background:#18181f!important;border-bottom:1px solid rgba(255,255,255,.12)!important}.code-block-dots{display:flex;align-items:center;gap:7px}.code-block-dots .dot{width:10px;height:10px;border-radius:50%}.code-block-dots .dot-1{background:#ef4444}.code-block-dots .dot-2{background:#eab308}.code-block-dots .dot-3{background:#22c55e}.code-lang-tag{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#a1a1aa!important;font-family:JetBrains Mono,monospace}.copy-code-btn{display:flex;align-items:center;gap:.4rem;padding:.3rem .65rem;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-xs);background:#ffffff14;color:#e4e4e7!important;font-family:inherit;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.copy-code-btn:hover{background:#ffffff2e;color:#fff!important;border-color:#ffffff52}.copy-code-btn.copied{color:#4ade80!important;border-color:#4ade8080;background:#4ade801f}.code-block-body{overflow-x:auto;background:transparent}.code-block-body code,.code-block-body code.hljs{display:block!important;padding:1.25rem 1.5rem!important;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.84rem;line-height:1.75;tab-size:4;color:#f4f4f5!important;width:max-content;min-width:100%;box-sizing:border-box;background:transparent!important;border:none!important}.hljs{background:transparent!important;border:none!important;color:#f4f4f5!important}.ai-message blockquote{border-left:3px solid var(--text-primary);margin:1rem 0;padding:.625rem 1rem;background:var(--bg-surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary);font-style:italic}.ai-message table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.875rem;border:1px solid var(--border-medium);border-radius:var(--radius-sm);overflow:hidden}.ai-message th,.ai-message td{border:1px solid var(--border-subtle);padding:.625rem .875rem;text-align:left;color:var(--text-primary)}.ai-message th{background:var(--bg-secondary);font-weight:700}.ai-message tr:nth-child(2n){background:var(--bg-surface)}.ai-message hr{border:none;border-top:1px solid var(--border-subtle);margin:1.5rem 0}@media (max-width: 768px){.message-content{max-width:90%}.user-message{padding:.75rem 1rem;font-size:.875rem}.ai-message{font-size:.875rem}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
