.article-prose { max-width: 68ch; line-height: 1.8; overflow-wrap: anywhere; }
.article-prose h1,.article-prose h2,.article-prose h3,.article-prose h4,.article-prose h5,.article-prose h6 { line-height:1.3; margin:1.8em 0 .6em; scroll-margin-top:6rem; font-weight:600; }
.article-prose h1 { font-size:1.8em; } .article-prose h2 { font-size:1.5em; } .article-prose h3 { font-size:1.25em; }
.article-prose p,.article-prose ul,.article-prose ol,.article-prose blockquote { margin:1em 0; }
.article-prose ul { list-style:disc; padding-left:1.5em; } .article-prose ol { list-style:decimal; padding-left:1.5em; }
.article-prose a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.article-prose blockquote { border-left:3px solid var(--accent); padding-left:1.2em; color:var(--muted); }
.article-prose img { display:block; max-width:100%; height:auto; margin:1.5em auto; border-radius:.5rem; }
.article-code,.article-table { margin:1.5em 0; border:1px solid var(--border); border-radius:.5rem; overflow:hidden; }
.article-code figcaption { padding:.4rem .9rem; border-bottom:1px solid var(--border); color:var(--muted); font-size:.75rem; }
.article-prose pre { overflow:auto; padding:1rem; background:var(--surface); font-size:.85em; white-space:pre; }
.article-table { overflow-x:auto; } .article-prose table { border-collapse:collapse; width:100%; }
.article-prose th,.article-prose td { padding:.6em 1em; border-bottom:1px solid var(--border); text-align:left; }
.article-prose th { background:var(--surface); } .article-prose hr { border:0; border-top:1px solid var(--border); margin:2em 0; }
.article-media-missing { display:block; border:1px dashed var(--border); padding:1rem; color:var(--muted); }
