.prose-content h1 { font-size: 1.75rem; font-weight: 500; margin: 1.5rem 0 0.75rem; line-height: 1.3; }
.prose-content h2 { font-size: 1.375rem; font-weight: 500; margin: 1.25rem 0 0.625rem; line-height: 1.35; color: #0d253d; }
.prose-content h3 { font-size: 1.125rem; font-weight: 500; margin: 1rem 0 0.5rem; }
.prose-content p { margin: 0.75rem 0; line-height: 1.75; color: #273951; }
.prose-content ul, .prose-content ol { margin: 0.75rem 0; padding-left: 1.5rem; }
.prose-content li { margin: 0.375rem 0; line-height: 1.65; }
.prose-content blockquote { border-left: 3px solid #533afd; padding-left: 1rem; margin: 1rem 0; color: #64748d; }
.prose-content pre { background: #f6f9fc; border-radius: 8px; padding: 1rem; overflow-x: auto; font-size: 13px; margin: 1rem 0; }
.prose-content img { max-width: 100%; border-radius: 8px; margin: 1rem 0; }
.prose-content a { color: #533afd; text-decoration: underline; }
.prose-content strong { font-weight: 500; }

.tree-nav-cat {
    font-weight: 500;
    color: #0d253d;
    padding: 8px 12px;
    margin-top: 4px;
}
.tree-nav-item {
    padding: 6px 12px 6px 28px;
    color: #64748d;
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.15s;
}
.tree-nav-item:hover { background: #f6f9fc; color: #0d253d; }
.tree-nav-item.active { background: rgba(83,58,253,0.08); color: #533afd; }

.section-tab { transition: all 0.2s; }
