/* Custom styles beyond Tailwind */
.animate-pulse {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* AI Findings rendered markdown */
.findings-content {
    color: #e5e7eb;
    font-size: 0.9rem;
    line-height: 1.7;
}
.findings-content h1, .findings-content h2, .findings-content h3 {
    color: #f87171;
    font-weight: 700;
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}
.findings-content h1 { font-size: 1.3rem; }
.findings-content h2 { font-size: 1.15rem; }
.findings-content h3 { font-size: 1.05rem; }
.findings-content p { margin-bottom: 0.75em; }
.findings-content ul, .findings-content ol {
    margin: 0.5em 0 0.75em 1.5em;
}
.findings-content li { margin-bottom: 0.3em; }
.findings-content ul { list-style: disc; }
.findings-content ol { list-style: decimal; }
.findings-content strong { color: #fbbf24; font-weight: 600; }
.findings-content em { color: #a5b4fc; }
.findings-content code {
    background: rgba(255,255,255,0.08);
    padding: 0.15em 0.4em;
    border-radius: 4px;
    font-size: 0.85em;
}
.findings-content pre {
    background: rgba(0,0,0,0.3);
    padding: 1em;
    border-radius: 8px;
    overflow-x: auto;
    margin: 0.75em 0;
}
.findings-content pre code {
    background: none;
    padding: 0;
}
.findings-content hr {
    border: none;
    border-top: 1px solid rgba(255,255,255,0.1);
    margin: 1.5em 0;
}
.findings-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}
.findings-content th, .findings-content td {
    border: 1px solid rgba(255,255,255,0.1);
    padding: 0.5em 0.75em;
    text-align: left;
}
.findings-content th {
    background: rgba(255,255,255,0.05);
    font-weight: 600;
    color: #f87171;
}
.findings-content a {
    color: #60a5fa;
    text-decoration: underline;
}
.findings-content blockquote {
    border-left: 3px solid #f87171;
    padding-left: 1em;
    margin: 0.75em 0;
    color: #9ca3af;
}
