/* Custom Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #0F172A; }
::-webkit-scrollbar-thumb { background: #334155; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #475569; }

/* Typography Fixes */
.prose h1 { 
    font-size: 2.25rem; 
    line-height: 2.5rem;
    font-weight: 700; 
    color: white; 
    margin-bottom: 2rem; 
    margin-top: 0.5rem; 
}
.prose h2 { 
    font-size: 1.5rem; 
    line-height: 2rem;
    font-weight: 700; 
    color: white; 
    margin-bottom: 1rem; 
    margin-top: 3rem; 
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #334155;
}
.prose h3 { 
    font-size: 1.25rem; 
    line-height: 1.75rem;
    font-weight: 700; 
    color: #e2e8f0; 
    margin-bottom: 0.75rem; 
    margin-top: 2rem; 
}
.prose p { 
    color: #94a3b8; 
    line-height: 1.75; 
    margin-bottom: 1rem; 
}
.prose ul, .prose ol { 
    list-style-position: outside; 
    margin-left: 1.5rem; 
    color: #94a3b8; 
    margin-bottom: 1rem; 
}
.prose ul { list-style-type: disc; }
.prose ol { list-style-type: decimal; }
.prose li { margin-bottom: 0.5rem; }
.prose strong { color: white; font-weight: 600; }
.prose a { color: #3B82F6; text-decoration: none; }
.prose a:hover { text-decoration: underline; }

/* Tables */
.prose table { 
    width: 100%; 
    text-align: left; 
    border-collapse: collapse; 
    margin-bottom: 1.5rem; 
}
.prose th { 
    padding: 0.75rem; 
    border-bottom: 1px solid #334155; 
    color: white; 
    font-weight: 600; 
    background-color: rgba(30, 41, 59, 0.5); 
}
.prose td { 
    padding: 0.75rem; 
    border-bottom: 1px solid #1e293b; 
    color: #94a3b8; 
}

.active-link { 
    color: #3B82F6; /* primary */
    border-left: 2px solid #3B82F6; 
    background-color: rgba(59, 130, 246, 0.05); 
}

/* PrismJS Overrides (Optional Tweaks) */
/* Ensure code blocks have rounded corners and proper margins matching our theme */
pre[class*="language-"] {
    border-radius: 0.75rem !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    margin-bottom: 1.5rem !important;
    margin-top: 1rem !important;
    background: #0f172a !important; /* Match our dark theme background */
}
code[class*="language-"], pre[class*="language-"] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 0.875rem !important;
    text-shadow: none !important;
}
/* Inline code styling */
:not(pre) > code {
    background-color: #1e293b;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    color: #93c5fd;
}