.blog-prose{color:var(--fg);font-size:16px;line-height:1.72}.blog-prose>*+*{margin-top:1rem}.blog-prose h1,.blog-prose h2,.blog-prose h3,.blog-prose h4{color:var(--fg-strong);line-height:1.2;letter-spacing:-.01em;margin-top:1.8rem;margin-bottom:.8rem}.blog-prose h2{font-size:clamp(1.35rem,2vw,1.7rem)}.blog-prose h3{font-size:clamp(1.15rem,1.8vw,1.35rem)}.blog-prose p,.blog-prose li{color:var(--fg)}.blog-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}.blog-prose hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}.blog-prose blockquote{margin:1.5rem 0;padding:.7rem 1rem;border-left:2px solid var(--accent);background:var(--bg-sunken);color:var(--fg-muted)}.blog-prose blockquote p,.blog-prose blockquote li,.blog-prose blockquote code{color:var(--fg-muted)}.blog-prose ul,.blog-prose ol{padding-left:1.25rem}.blog-prose code{font-family:var(--font-mono);font-size:.92em;background:var(--bg-sunken);color:var(--fg);border:1px solid var(--rule-subtle);border-radius:3px;padding:.12em .3em}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre){--code-accent: var(--accent);margin:1rem 0;padding:2rem 1rem .9rem;border:1px solid var(--rule);background:var(--bg-sunken);overflow-x:auto;position:relative;border-radius:6px}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre) code{border-top:1px solid color-mix(in oklab,var(--code-accent) 35%,transparent);padding-top:.75rem}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre) [data-line]{display:block}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre) span[data-line]>span{color:var(--shiki-light)}html[data-theme=dark] .blog-prose :is(pre,[data-rehype-pretty-code-figure] pre) span[data-line]>span{color:var(--shiki-dark)}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=rust]{--code-accent: #dea584}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=javascript]{--code-accent: #f7df1e}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=json]{--code-accent: #5ea7ff}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=sql]{--code-accent: #67d5ff}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=python]{--code-accent: #7fd07f}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language=bash]{--code-accent: #d0d0d0}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre)[data-language]:before{content:attr(data-language);position:absolute;top:.48rem;left:.9rem;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklab,var(--code-accent) 70%,var(--fg-muted))}.blog-prose :is(pre,[data-rehype-pretty-code-figure] pre) code{background:transparent;border:0;padding:0;display:block;line-height:1.6}.blog-prose [data-rehype-pretty-code-figure]{margin:1rem 0}.blog-prose table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:14px}.blog-prose th,.blog-prose td{border:1px solid var(--rule);text-align:left;vertical-align:top;padding:.55rem .65rem}.blog-prose th{color:var(--fg-strong);background:var(--bg-panel);font-weight:600}.blog-prose img{width:100%;max-width:100%;height:auto;display:block;margin:1.2rem 0;border:1px solid var(--rule)}
