.prose{--prose-rhythm: 1.974rem}.prose .lead{font-size:1.3rem;line-height:1.6;color:var(--text-secondary);margin-bottom:calc(var(--prose-rhythm) * 1.5)}.prose p{margin-bottom:var(--prose-rhythm)}.prose h2{font-size:1.5rem;margin-top:calc(var(--prose-rhythm) * 2.5);margin-bottom:calc(var(--prose-rhythm) * .75)}.prose h3{font-size:1.2rem;margin-top:calc(var(--prose-rhythm) * 2);margin-bottom:calc(var(--prose-rhythm) * .5)}.prose h4{font-size:1.05rem;font-weight:600;margin-top:calc(var(--prose-rhythm) * 1.5);margin-bottom:calc(var(--prose-rhythm) * .4)}.prose>h2:first-child,.prose>h3:first-child,.prose>h4:first-child{margin-top:0}.prose a{text-underline-offset:3px;text-decoration-color:var(--border);transition:text-decoration-color .2s ease,color .2s ease}.prose a:hover{text-decoration-color:var(--accent)}.prose ul,.prose ol{margin-top:.6em;margin-bottom:.6em;padding-left:1.5em}.prose p+ul,.prose p+ol{margin-top:-.8em}.prose li{margin-bottom:.4em}.prose li>p{margin-bottom:.4em}.prose li>ul,.prose li>ol{margin-top:.4em;margin-bottom:.4em}.prose ol{list-style-type:decimal}.prose ul{list-style-type:disc}.prose blockquote{margin-top:var(--prose-rhythm);margin-bottom:var(--prose-rhythm);padding-top:.25rem;padding-bottom:.25rem;font-size:1.05rem}.prose blockquote p:last-child{margin-bottom:0}.prose blockquote footer,.prose blockquote cite{display:block;font-style:normal;font-size:.9rem;color:var(--text-tertiary);margin-top:.5rem}.prose pre{margin-top:var(--prose-rhythm);margin-bottom:var(--prose-rhythm)}.prose hr{margin:calc(var(--prose-rhythm) * 2) 0;border-top-color:var(--border-subtle)}.prose img{border-radius:4px}.prose figure{margin:calc(var(--prose-rhythm) * 1.5) 0}.prose figure img{display:block;margin:0}.prose figcaption{font-family:var(--font-sans);font-size:.85rem;color:var(--text-secondary);margin-top:.6rem;line-height:1.45}.prose .prose-figure{max-width:var(--figure-width, 80%);margin-left:auto;margin-right:auto}.prose .prose-figure figcaption{text-align:center}.prose .prose-figure.prose-gallery{display:grid;grid-template-columns:repeat(var(--gallery-cols, 2),1fr);gap:1rem;max-width:var(--figure-width, 100%)}.prose .prose-figure-item{margin:0;max-width:100%}.prose .prose-figure-item img{width:100%}.prose .prose-figure-item figcaption{text-align:center}@media(max-width:480px){.prose .prose-figure.prose-gallery{grid-template-columns:1fr}}.prose table{width:100%;border-collapse:collapse;margin-top:var(--prose-rhythm);margin-bottom:var(--prose-rhythm);font-size:.95rem}.prose thead th{font-family:var(--font-sans);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);text-align:left;padding:.5rem .75rem;border-bottom:2px solid var(--border)}.prose thead th .katex{text-transform:none;letter-spacing:normal}.prose tbody td{padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}.prose tbody tr:last-child td{border-bottom:none}.prose blog-demo{display:block;width:100%;max-width:var(--demo-width, 100%);aspect-ratio:16/9;margin:calc(var(--prose-rhythm) * 1.5) auto;background:var(--demo-background)}.prose blog-demo .blog-demo-stage{position:relative;width:100%;height:100%}.prose blog-demo .blog-demo-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;height:100%;border:1px dashed var(--border);background:var(--bg-subtle);text-decoration:none;transition:border-color .2s ease,background .2s ease}a.blog-demo-poster:hover{border-color:var(--accent);background:var(--bg-code)}.blog-demo-poster-name{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary)}.blog-demo-poster-cta{font-family:var(--font-sans);font-size:.85rem;font-weight:500;color:var(--accent)}.prose blog-demo .blog-demo-error{height:100%;padding:1rem;overflow:auto;border:1px solid var(--border);font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);background:var(--bg-subtle)}.prose blog-demo .blog-demo-error strong{display:block;margin-bottom:.5rem;color:var(--text)}.prose blog-demo .blog-demo-error pre{margin:0;padding:0;border:none;background:none;white-space:pre-wrap}.prose .katex{font-size:1.05em}.prose .katex-display>.katex{font-size:1.15em}.prose .katex-display{margin:calc(var(--prose-rhythm) * 1.25) 0;overflow-x:auto;overflow-y:hidden;padding:.25rem 0}.prose .footnotes{margin-top:calc(var(--prose-rhythm) * 2.5);padding-top:var(--prose-rhythm);border-top:1px solid var(--border-subtle);font-size:.9rem;color:var(--text-secondary)}.prose .footnotes ol{padding-left:1.25em}.prose .footnotes li{margin-bottom:.5em}.prose .footnotes .data-footnote-backref{font-family:var(--font-sans);text-decoration:none;margin-left:.25em}.prose sup a[data-footnote-ref]{font-family:var(--font-sans);font-size:.75em;text-decoration:none;color:var(--accent)}.prose strong{font-weight:600;color:var(--text-heading)}.prose dt{font-weight:600;color:var(--text-heading);margin-top:var(--prose-rhythm)}.prose dd{margin-left:1.5em;margin-bottom:.5em}.prose .math-block{margin-top:var(--prose-rhythm);margin-bottom:var(--prose-rhythm);padding:.9rem 1.1rem;border-left:3px solid var(--accent);border-radius:0 4px 4px 0;background:var(--bg-subtle)}.prose .math-block>*:last-child{margin-bottom:0}.prose .math-block-header{margin-bottom:.4rem;line-height:1.4}.prose .math-block-kind{font-weight:600;color:var(--text-heading);letter-spacing:.02em}.prose .math-block-title{color:var(--text-heading)}.prose .math-block-title:before{content:" ("}.prose .math-block-title:after{content:")"}.prose .math-block-header:after{content:".";font-weight:600;color:var(--text-heading)}.prose .math-block--theorem,.prose .math-block--proposition,.prose .math-block--lemma,.prose .math-block--corollary,.prose .math-block--fact{font-style:italic}.prose .math-block--theorem .katex,.prose .math-block--proposition .katex,.prose .math-block--lemma .katex,.prose .math-block--corollary .katex,.prose .math-block--fact .katex,.prose .math-block-header{font-style:normal}.prose .math-block--proof{background:none;border-left-color:var(--border)}.prose .math-block--proof .math-block-kind{font-weight:500;font-style:italic;color:var(--text-secondary)}.prose .math-block--proof .math-block-header:after{font-weight:500;color:var(--text-secondary)}.prose .math-block--proof>*:last-child:after{content:"∎";margin-left:.4em;color:var(--text-tertiary)}.prose .math-block--remark,.prose .math-block--example,.prose .math-block--question{background:none;border-left-color:var(--border)}
