/* Delstorm Design System */

/* Fonts */
body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Animations */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}
.fade-in { animation: fadeIn 0.4s ease-out; }

@keyframes pulseSubtle {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}
.pulse-subtle { animation: pulseSubtle 2s ease-in-out infinite; }

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0a0f1a; }
::-webkit-scrollbar-thumb { background: #334155; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #475569; }

/* Streaming cursor */
.streaming-cursor::after {
    content: '\25CA';
    animation: pulseSubtle 1s ease-in-out infinite;
    color: #60a5fa;
}

/* Divider with centered text */
.divider-text {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 2rem 0;
}
.divider-text::before,
.divider-text::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #1f2937;
}

/* Markdown content styling */
.markdown-content h1 { font-size: 1.25rem; font-weight: 700; margin: 1rem 0 0.5rem; color: #e2e8f0; }
.markdown-content h2 { font-size: 1.125rem; font-weight: 600; margin: 0.75rem 0 0.5rem; color: #e2e8f0; }
.markdown-content h3 { font-size: 1rem; font-weight: 600; margin: 0.5rem 0 0.25rem; color: #cbd5e1; }
.markdown-content p { margin: 0.5rem 0; }
.markdown-content ul, .markdown-content ol { margin: 0.5rem 0; padding-left: 1.5rem; }
.markdown-content ul { list-style-type: disc; }
.markdown-content ol { list-style-type: decimal; }
.markdown-content li { margin: 0.25rem 0; }
.markdown-content strong { color: #f1f5f9; }
.markdown-content em { color: #94a3b8; }
.markdown-content blockquote { border-left: 3px solid #3b82f6; padding-left: 1rem; margin: 0.5rem 0; color: #94a3b8; }
.markdown-content code { background: #1e293b; padding: 0.125rem 0.375rem; border-radius: 0.25rem; font-size: 0.875rem; }
.markdown-content pre { background: #1e293b; padding: 0.75rem; border-radius: 0.5rem; overflow-x: auto; margin: 0.5rem 0; }
.markdown-content pre code { background: none; padding: 0; }
.markdown-content hr { border-color: #334155; margin: 1rem 0; }
.markdown-content a { color: #60a5fa; text-decoration: underline; }
