.sidebar-fixed{position:fixed;top:48px;left:0;height:calc(100vh - 48px);z-index:40}.header-fixed{height:48px;position:fixed;top:0;left:0;right:0;z-index:50}.sidebar-icon-collapsed{transition:all .2s ease-in-out}.sidebar-icon-collapsed:hover{transform:scale(1.1);box-shadow:0 2px 8px rgba(0,0,0,.1)}.sidebar-icon-active{box-shadow:0 2px 12px rgba(59,130,246,.3);transform:scale(1.05)}.sidebar-tooltip{animation:fadeInScale .2s ease-out}.sidebar-collapsed button[title]{position:relative}.sidebar-collapsed button[title]:hover:after,.sidebar-collapsed button[title]:hover:before{display:none!important}.sidebar-collapsed button[title]{pointer-events:auto}.sidebar-collapsed button[title]::-webkit-tooltip{display:none!important}.sidebar-collapsed .tooltip-container{z-index:1000}.sidebar-collapsed .group:hover .absolute{pointer-events:none}.sidebar-collapsed .group .absolute{z-index:9999!important}.sidebar-collapsed .group:hover .absolute[class*="z-[9999]"]{opacity:1!important;visibility:visible!important}.group:hover .group-hover\:opacity-100{opacity:1!important}.sidebar-collapsed .group:hover .absolute{opacity:1!important;visibility:visible!important}.sidebar-collapsed .UnifiedTooltip{z-index:99999!important}.sidebar-collapsed .UnifiedTooltip>div{z-index:99999!important;position:fixed!important;visibility:visible!important}.UnifiedTooltip div[role=tooltip],.sidebar-collapsed .UnifiedTooltip div[role=tooltip]{z-index:9999999!important;position:fixed!important;pointer-events:none!important}.UnifiedTooltip div[role=tooltip]{box-shadow:0 4px 12px rgba(0,0,0,.15)!important;border:1px solid var(--border-primary)!important;background:var(--card)!important;color:var(--text-primary)!important}.UserAvatar .UnifiedTooltip div[role=tooltip]{z-index:9999999!important;position:fixed!important;pointer-events:none!important;transform:translate(-50%,-50%)!important;max-width:250px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:6px 10px!important;font-size:.875rem!important;line-height:1.25rem!important;border-radius:6px!important;box-shadow:0 2px 8px rgba(0,0,0,.15)!important}.UnifiedTooltip div[role=tooltip]{visibility:visible!important;opacity:1!important;display:block!important;max-width:300px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:8px 12px!important;font-size:.875rem!important;line-height:1.25rem!important}.sidebar-collapsed [data-tooltip]{position:relative}.sidebar-collapsed [data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--card);border:1px solid var(--border-primary);padding:.5rem;border-radius:.375rem;font-size:.875rem;white-space:nowrap;z-index:99999;margin-left:.5rem}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.sidebar-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;border-radius:8px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;z-index:10}.sidebar-collapsed .sidebar-item{margin:1px 0;padding:2px;border-radius:8px;transition:all .2s ease}.sidebar-collapsed .space-y-3>div{margin-bottom:8px}.sidebar-collapsed .space-y-3>div:last-child{margin-bottom:0}.sidebar-collapsed .sidebar-item:hover{background-color:rgba(59,130,246,.1)}.sidebar-user-avatar{transition:all .2s ease}.sidebar-user-avatar:hover{transform:scale(1.05);box-shadow:0 2px 8px rgba(0,0,0,.15)}.sidebar-logo-collapsed{transition:all .2s ease;border-radius:6px;padding:4px}.sidebar-logo-collapsed:hover{background-color:rgba(59,130,246,.1);transform:scale(1.05)}.sidebar-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-item:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}@media (prefers-color-scheme:dark){.sidebar-icon-collapsed:hover{box-shadow:0 2px 8px rgba(255,255,255,.1)}.sidebar-collapsed .sidebar-item:hover,.sidebar-logo-collapsed:hover{background-color:rgba(59,130,246,.2)}}.chat-panel{border-left:1px solid var(--border-secondary);transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;min-width:0}.chat-panel,.chat-panel-header{background-color:var(--bg-sidebar);overflow:hidden}.chat-panel-header{position:relative;z-index:10;border-bottom:1px solid var(--border-primary);min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:.75rem}.chat-panel-header-left{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.chat-panel-header-right{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.chat-panel-title{font-size:1rem;font-weight:600;color:var(--text-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-panel-context-indicator{display:none}@media (min-width:640px){.chat-panel-context-indicator{display:flex;align-items:center;gap:.25rem}}.model-selector-compact{position:relative;z-index:20}.model-selector-compact .select-trigger{height:32px;padding:0 .5rem;font-size:.75rem;border:none;background:transparent;transition:background-color .2s ease;min-width:0;max-width:120px}.model-selector-compact .select-trigger:hover{background-color:var(--bg-accent)}.model-selector-compact .select-content{z-index:50;min-width:256px;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:.5rem;box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto}.model-selector-compact .select-content[data-state=open]{position:fixed;right:0;top:48px;transform:translateX(-100%)}.chat-panel.collapsed{width:48px}.chat-panel.expanded{width:100%}.message-bubble{animation:slideIn .3s ease-out;transition:all .2s ease;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.message-bubble:hover{background-color:var(--chat-message-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.message-bubble.user{background-color:var(--chat-message-user-bg);color:var(--text-accent-primary-foreground);box-shadow:var(--shadow-md);border:1px solid var(--border-accent)}.message-bubble.assistant{background-color:var(--chat-message-ai-bg);color:var(--text-text-primary);box-shadow:var(--shadow-md);border:1px solid var(--border-primary)}.message-bubble.user:hover{background-color:hsl(217 91% 60%/.25);box-shadow:var(--shadow-lg)}.message-bubble.assistant:hover{background-color:var(--chat-message-hover);box-shadow:var(--shadow-lg)}.message-avatar{transition:transform .2s ease}.message-bubble:hover .message-avatar{transform:scale(1.05)}.message-content{transition:all .2s ease;color:var(--text-text-primary);max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.message-content h3{color:var(--text-accent-primary);font-size:1.125rem;font-weight:600;margin-bottom:.5rem;margin-top:1rem;line-height:1.2}.message-content h3:first-child{margin-top:0}.message-content strong{color:var(--text-text-primary);font-weight:700}.message-content div{margin-bottom:.5rem;line-height:1.2}.message-content span{color:var(--text-accent-secondary)}.message-content p{margin-bottom:.75rem;line-height:1.2;color:var(--text-text-primary)}.message-content br{display:block;content:"";margin-top:.25rem}.message-content div[class*=mb-3]{margin-bottom:.75rem!important}.message-content div[class*=mb-2]{margin-bottom:.5rem!important}.message-content div[class*=mb-1]{margin-bottom:.25rem!important}.message-content div[class*="flex items-start"]{align-items:flex-start;gap:.25rem}.message-bubble.assistant .prose{font-size:.875rem;line-height:1.2}.message-bubble.assistant .prose p{margin-bottom:.75rem}.message-bubble.assistant .prose h3{margin-top:1rem;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-primary)}.mobile-chat-modal{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-chat-modal-content{position:relative;width:100%;background-color:var(--bg-primary);display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideInFromBottom .3s ease-out}.mobile-chat-modal-content.collapsed{height:64px}.mobile-chat-modal-content.expanded{height:100%}.mobile-chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-primary);background-color:var(--bg-header);min-height:64px;flex-shrink:0}.mobile-chat-header-left,.mobile-chat-header-right{display:flex;align-items:center;gap:.5rem}.mobile-chat-content{flex:1;overflow:hidden;transition:opacity .3s ease}.mobile-chat-content.collapsed{opacity:0;pointer-events:none}.mobile-chat-content.expanded{opacity:1;pointer-events:auto}.mobile-collapse-button{transition:transform .3s ease}.mobile-collapse-button.collapsed{transform:rotate(180deg)}.conversation-list{scrollbar-width:thin;scrollbar-color:var(--border-primary) transparent}.conversation-list::-webkit-scrollbar{width:4px}.conversation-list::-webkit-scrollbar-track{background:transparent}.conversation-list::-webkit-scrollbar-thumb{background-color:var(--border-primary);border-radius:2px}.conversation-list::-webkit-scrollbar-thumb:hover{background-color:var(--border-secondary)}.conversation-item{transition:all .2s ease;border-radius:8px;color:var(--text-text-primary)}.conversation-item:hover{background-color:var(--bg-accent);transform:translateX(2px)}.conversation-item.active{background-color:var(--bg-accent-primary);color:var(--text-accent-primary-foreground)}.conversation-item.active:hover{background-color:var(--bg-accent-primary);opacity:.9}.chat-input-container{background-color:var(--bg-card);border:1px solid var(--border-primary);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.chat-input-container:focus-within{border-color:var(--border-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.chat-input{background-color:transparent;border:none;outline:none;color:var(--text-text-primary);font-size:14px;line-height:1.5;resize:none;transition:all .2s ease;width:100%;min-width:0;word-wrap:break-word;overflow-wrap:break-word}.chat-input::-moz-placeholder{color:var(--text-text-muted)}.chat-input::placeholder{color:var(--text-text-muted)}.chat-input:focus{outline:none;border:none}.icon-button{transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--text-text-secondary);background-color:transparent;border:none;border-radius:8px;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.icon-button:hover{background-color:var(--bg-accent);color:var(--text-text-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.icon-button:active{transform:translateY(0);box-shadow:var(--shadow-xs)}.icon-button.primary{background-color:var(--bg-accent-primary);color:var(--text-accent-primary-foreground)}.icon-button.primary:hover{background-color:var(--bg-accent-primary);opacity:.9}.icon-button.ghost{background-color:transparent;color:var(--text-text-secondary)}.icon-button.ghost:hover{background-color:var(--bg-accent);color:var(--text-text-primary)}.icon-button.danger{color:var(--text-error)}.icon-button.danger:hover{background-color:var(--bg-error);color:var(--text-error-foreground)}.typing-dot{width:8px;height:8px;border-radius:50%;background-color:var(--text-text-muted);animation:typing 1.4s ease-in-out infinite}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.streaming-cursor{display:inline-block;width:2px;height:1em;background-color:var(--text-text-primary);animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutToBottom{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@media (max-width:768px){.chat-panel{width:100%;position:fixed;top:0;left:0;right:0;bottom:0;z-index:50}.chat-panel.collapsed{width:100%;transform:translateX(100%)}.message-bubble{margin:0 8px;max-width:calc(100% - 16px)}.chat-input-container{margin:8px;padding:8px}.conversation-list{max-height:60vh}.conversation-item{padding:8px 12px;font-size:14px}.message-content{font-size:14px;line-height:1.5}.message-actions{gap:4px}.icon-button{padding:6px;min-width:32px;height:32px}.chat-input,.conversation-item,.icon-button{min-height:44px}.mobile-chat-modal{padding:0}.mobile-chat-modal-content{border-radius:0}.chat-input-container{padding:12px;margin:0}.message-bubble{margin:8px 12px}.mobile-chat-header{padding:12px 16px}.mobile-chat-header h2{font-size:1.125rem;font-weight:600}}@media (min-width:769px) and (max-width:1024px){.chat-panel{width:100%;max-width:400px}.message-bubble{margin:0 12px}.chat-input-container{margin:12px}}@media (prefers-color-scheme:dark){.chat-panel{background-color:var(--bg-sidebar);border-left-color:var(--border-primary)}.message-bubble.user{background-color:var(--bg-accent-primary);color:var(--text-accent-primary-foreground)}.message-bubble.assistant{background-color:var(--bg-card);color:var(--text-text-primary)}.conversation-item:hover{background-color:var(--bg-accent)}.mobile-chat-modal{background-color:rgba(0,0,0,.7)}.mobile-chat-modal-content{background-color:var(--bg-primary)}.mobile-chat-header{background-color:var(--bg-header);border-bottom-color:var(--border-primary)}}.chat-panel button:focus-visible,.mobile-chat-modal button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media (prefers-contrast:high){.message-bubble{border:2px solid var(--border-primary)}.mobile-chat-modal{background-color:rgba(0,0,0,.8)}}@media (prefers-reduced-motion:reduce){.chat-panel,.message-bubble,.mobile-chat-modal-content,.mobile-collapse-button{transition:none;animation:none}}@media print{.chat-panel,.message-bubble{background:white!important;color:black!important;border:1px solid black!important}.icon-button{display:none!important}}