:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--border-color: #475569;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--accent: #3b82f6;--accent-hover: #2563eb;--success: #22c55e;--warning: #eab308;--error: #ef4444;--user-msg: #3b82f6;--assistant-msg: #22c55e}*{scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) var(--bg-primary)}*::-webkit-scrollbar{width:8px}*::-webkit-scrollbar-track{background:var(--bg-primary)}*::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--border-color)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-enter{animation:fadeIn .3s ease-out}.json-key{color:#93c5fd}.json-string{color:#86efac}.json-number{color:#fca5a5}.json-boolean,.json-null{color:#fbbf24}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-checking{animation:pulse 1.5s infinite}.markdown-content p{margin-bottom:.5rem;line-height:1.5}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:.75rem;margin-bottom:.5rem;font-weight:600;color:#f1f5f9}.markdown-content h1{font-size:1.25rem}.markdown-content h2{font-size:1.125rem}.markdown-content h3{font-size:1rem}.markdown-content ul,.markdown-content ol{margin-bottom:.5rem;padding-left:1.25rem}.markdown-content li{margin-bottom:.25rem}.markdown-content a{color:#60a5fa;text-decoration:underline}.markdown-content a:hover{color:#93c5fd}.markdown-content code{background:#0000004d;padding:.125rem .375rem;border-radius:.25rem;font-family:monospace;font-size:.875em;color:#fca5a5}.markdown-content pre{background:#0006;padding:.75rem;border-radius:.5rem;overflow-x:auto;margin-bottom:.5rem}.markdown-content pre code{background:transparent;padding:0;color:#e2e8f0}.markdown-content blockquote{border-left:3px solid #475569;padding-left:.75rem;margin-left:0;margin-bottom:.5rem;color:#94a3b8}.markdown-content table{width:100%;border-collapse:collapse;margin-bottom:.5rem}.markdown-content th,.markdown-content td{border:1px solid #475569;padding:.375rem .5rem;text-align:left}.markdown-content th{background:#0003;font-weight:600}.markdown-content hr{border:none;border-top:1px solid #475569;margin:.75rem 0}
