@import "tailwindcss"; @theme { --color-surface-0: #09090b; --color-surface-1: #18181b; --color-surface-2: #27272a; --color-surface-3: #3f3f46; --color-border: #27272a; --color-border-subtle: #1e1e22; --color-accent: #6366f1; --color-accent-hover: #818cf8; --color-accent-muted: rgba(99, 102, 241, 0.15); } :root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } body { margin: 0; min-height: 100vh; background: var(--color-surface-0); } #root { min-height: 100vh; } button, input, select, textarea { font: inherit; } /* Scrollbar styling */ ::-webkit-scrollbar { width: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: #3f3f46; border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: #52525b; } /* Window drag regions for custom title bar */ .drag-region { -webkit-app-region: drag; } .no-drag { -webkit-app-region: no-drag; } /* Thinking dots animation */ @keyframes thinking-dot { 0%, 60%, 100% { opacity: 0.3; transform: scale(0.8); } 30% { opacity: 1; transform: scale(1); } } .thinking-dot { animation: thinking-dot 1.4s ease-in-out infinite; } .thinking-dot:nth-child(2) { animation-delay: 0.2s; } .thinking-dot:nth-child(3) { animation-delay: 0.4s; } /* Auto-resize textarea helper */ .auto-resize-textarea { field-sizing: content; min-height: 44px; max-height: 200px; } /* Sidebar running-session pulse animation */ @keyframes sidebar-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } } .sidebar-pulse { animation: sidebar-pulse 2s ease-in-out infinite; } /* Markdown prose styles for chat messages */ .markdown-content { line-height: 1.7; word-break: break-word; } .markdown-content > *:first-child { margin-top: 0; } .markdown-content > *:last-child { margin-bottom: 0; } .markdown-content h1, .markdown-content h2, .markdown-content h3, .markdown-content h4, .markdown-content h5, .markdown-content h6 { font-weight: 600; color: #e4e4e7; margin-top: 1.25em; margin-bottom: 0.5em; line-height: 1.4; } .markdown-content h1 { font-size: 1.25rem; } .markdown-content h2 { font-size: 1.125rem; } .markdown-content h3 { font-size: 1rem; } .markdown-content p { margin-top: 0.625em; margin-bottom: 0.625em; } .markdown-content ul, .markdown-content ol { margin-top: 0.5em; margin-bottom: 0.5em; padding-left: 1.5em; } .markdown-content ul { list-style-type: disc; } .markdown-content ol { list-style-type: decimal; } .markdown-content li { margin-top: 0.25em; margin-bottom: 0.25em; } .markdown-content li > p { margin-top: 0.25em; margin-bottom: 0.25em; } .markdown-content blockquote { border-left: 3px solid #3f3f46; padding-left: 1em; color: #a1a1aa; margin-top: 0.75em; margin-bottom: 0.75em; } .markdown-content table { width: 100%; border-collapse: collapse; margin-top: 0.75em; margin-bottom: 0.75em; font-size: 0.875rem; } .markdown-content th, .markdown-content td { border: 1px solid #27272a; padding: 0.5em 0.75em; text-align: left; } .markdown-content th { background: #18181b; font-weight: 600; color: #d4d4d8; } .markdown-content hr { border: none; border-top: 1px solid #27272a; margin: 1.5em 0; } .markdown-content strong { font-weight: 600; color: #e4e4e7; } .markdown-content em { font-style: italic; } .markdown-content img { max-width: 100%; border-radius: 0.5rem; }