@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}:root{--sidebar-width:260px;--bg:#f4f5f7;--sidebar-bg:#fff;--chat-bg:#fff;--border:#e5e7eb;--accent:#6366f1;--accent-hover:#4f46e5;--accent-soft:#6366f114;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--bubble-user-from:#6366f1;--bubble-user-to:#4f46e5;--bubble-bot:#f9fafb;--bubble-bot-border:#e5e7eb;--radius:14px;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014;--font:"Inter", system-ui, -apple-system, sans-serif;--mono:ui-monospace, Consolas, monospace}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text-primary);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6;overflow:hidden}#root{text-align:left;height:100vh;overflow:hidden;border:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.chat-app-container{width:100%;height:100vh;display:flex;overflow:hidden}.chat-sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--border);box-shadow:var(--shadow-sm);flex-direction:column;flex-shrink:0;gap:24px;padding:28px 20px;display:flex}.sidebar-brand{align-items:center;gap:12px;display:flex}.brand-logo{background:var(--accent-soft);border:1px solid #6366f126;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.brand-name h2{color:var(--text-primary);letter-spacing:-.3px;margin:0;font-size:16px;font-weight:600}.brand-name span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.7px;font-size:11px;font-weight:500}.sidebar-section p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.sidebar-footer{margin-top:auto}.clear-chat-btn{border:1px solid var(--border);width:100%;color:var(--text-secondary);font-size:13px;font-family:var(--font);cursor:pointer;background:0 0;border-radius:8px;padding:10px 16px;transition:all .15s}.clear-chat-btn:hover{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.chat-main{background:var(--chat-bg);flex-direction:column;flex:1;height:100vh;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--border);background:var(--chat-bg);flex-shrink:0;align-items:center;height:60px;padding:0 28px;display:flex}.chat-header-title{color:var(--text-secondary);letter-spacing:.1px;font-size:14px;font-weight:500}.chat-history{scroll-behavior:smooth;flex-direction:column;flex:1;gap:20px;padding:28px 32px;display:flex;overflow-y:auto}.chat-history::-webkit-scrollbar{width:5px}.chat-history::-webkit-scrollbar-track{background:0 0}.chat-history::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.message-wrapper{gap:12px;max-width:78%;animation:.22s ease-out forwards slideIn;display:flex}.message-wrapper.user{flex-direction:row-reverse;align-self:flex-end}.message-wrapper.bot{align-self:flex-start}.message-avatar{border:1px solid var(--border);background:var(--bubble-bot);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.message-wrapper.user .message-avatar{background:var(--accent-soft);border-color:#6366f126}.message-bubble-container{flex-direction:column;gap:6px;display:flex}.message-bubble{border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:12px 16px;font-size:14.5px;line-height:1.6}.message-wrapper.user .message-bubble{background:linear-gradient(135deg, var(--bubble-user-from), var(--bubble-user-to));color:#fff;border-bottom-right-radius:4px}.message-wrapper.bot .message-bubble{background:var(--bubble-bot);border:1px solid var(--bubble-bot-border);color:var(--text-primary);border-bottom-left-radius:4px}.message-bubble p{white-space:pre-wrap;margin:0}.debug-container{max-width:520px}.debug-details{background:var(--bg);border:1px solid var(--border);border-radius:8px;overflow:hidden}.debug-summary{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 12px;font-size:12px;list-style:none;transition:color .15s}.debug-summary:hover{color:var(--accent)}.debug-content{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:10px 12px;font-size:12.5px;display:flex}.debug-item{color:var(--text-secondary);flex-direction:column;gap:4px;display:flex}.debug-item strong{color:var(--text-primary);font-weight:500}.debug-code{font-family:var(--mono);border:1px solid var(--border);color:var(--accent);background:#fff;border-radius:6px;margin:2px 0 0;padding:8px 10px;font-size:11.5px;line-height:1.45;overflow-x:auto}.message-wrapper.loading{max-width:80px}.loading-bubble{justify-content:center;align-items:center;padding:14px 18px;display:flex}.typing-indicator{gap:4px;display:flex}.typing-indicator span{background:var(--text-muted);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite both typingPulse}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.chat-input-form{background:var(--chat-bg);border-top:1px solid var(--border);flex-shrink:0;gap:12px;padding:20px 32px;display:flex}.chat-input{background:var(--bg);border:1px solid var(--border);color:var(--text-primary);font-size:14.5px;font-family:var(--font);border-radius:10px;outline:none;flex:1;padding:13px 18px;transition:border-color .15s,box-shadow .15s}.chat-input::placeholder{color:var(--text-muted)}.chat-input:focus{background:#fff;border-color:#6366f166;box-shadow:0 0 0 3px #6366f114}.send-btn{background:var(--accent);color:#fff;font-size:14px;font-weight:500;font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:0 22px;transition:background .15s,transform .1s}.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes typingPulse{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media (width<=768px){.chat-sidebar{display:none}.chat-history{padding:20px 18px}.chat-input-form{padding:14px 18px}.message-wrapper{max-width:92%}}
