.blog-prose{color:color-mix(in srgb, var(--color-text-main) 82%, var(--color-bg-light));font-size:1rem;line-height:1.8}.blog-prose>*+*{margin-top:1.25em}.blog-prose :is(h2,h3,h4):not(.not-prose *){color:var(--color-text-main);letter-spacing:-.02em;scroll-margin-top:6rem;line-height:1.3}.blog-prose h2:not(.not-prose *){margin-top:2.4em;font-size:1.5rem;font-weight:800}.blog-prose h3:not(.not-prose *){margin-top:2em;font-size:1.1875rem;font-weight:700}.blog-prose h4:not(.not-prose *){margin-top:1.75em;font-size:1rem;font-weight:700}.blog-prose>:first-child{margin-top:0}.blog-prose .blog-heading-link{color:inherit;text-decoration:none}.blog-prose .blog-heading-link:after{content:"#";color:var(--color-primary);opacity:0;margin-left:.4em;transition:opacity .15s}.blog-prose .blog-heading-link:hover:after,.blog-prose .blog-heading-link:focus-visible:after{opacity:1}.blog-prose strong{color:var(--color-text-main);font-weight:700}.blog-prose a:not(.blog-heading-link,.not-prose *){color:var(--color-primary);text-underline-offset:3px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.blog-prose a:not(.blog-heading-link,.not-prose *):hover{color:var(--color-primary-hover)}.blog-prose ul,.blog-prose ol{padding-left:1.35rem}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li{margin-top:.5em;padding-left:.2em}.blog-prose li::marker{color:var(--color-primary)}.blog-prose :not(pre)>code:not(.not-prose *){font-family:var(--font-mono), monospace;background:var(--color-bg-warm-secondary);border:1px solid var(--color-border);color:var(--color-text-main);word-break:break-word;border-radius:4px;padding:.1em .35em;font-size:.85em}.blog-prose blockquote{border-left:3px solid var(--color-primary);background:var(--color-primary-subtle);color:var(--color-text-main);border-radius:0 8px 8px 0;padding:.85rem 1.15rem}.blog-prose blockquote>*+*{margin-top:.75em}.blog-prose hr{border:0;border-top:1px solid var(--color-border);margin-top:2.5em}.blog-code{background:#0d1117;border:1px solid #27272a;border-radius:8px;margin-top:1.5em;overflow:hidden}.blog-code figcaption{font-family:var(--font-mono), monospace;letter-spacing:.02em;color:#a1a1aa;border-bottom:1px solid #27272a;justify-content:space-between;gap:1rem;padding:.5rem .95rem;font-size:.6875rem;display:flex}.blog-code pre{color:#e6edf3;font-family:var(--font-mono), monospace;tab-size:2;margin:0;padding:.95rem 1.1rem;font-size:.8125rem;line-height:1.7;overflow-x:auto;background:#0d1117!important}.blog-code pre:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.blog-code pre code{white-space:pre;min-width:max-content;display:grid}.blog-code pre span{color:var(--shiki-dark,inherit)}.blog-code pre .line.highlighted{box-shadow:inset 3px 0 0 var(--color-primary);background:#ff6b2924;margin:0 -1.1rem;padding:0 1.1rem}.blog-code .blog-code-note{color:#a1a1aa;border-top:1px solid #27272a;padding:.6rem .95rem;font-size:.75rem;line-height:1.6}.blog-table{border:1px solid var(--color-border);-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.blog-table table{border-collapse:collapse;text-align:left;width:100%;min-width:32rem;font-size:.875rem;line-height:1.6}.blog-table thead th{background:var(--color-bg-warm-secondary);color:var(--color-text-main);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-border);padding:.7rem .9rem;font-size:.6875rem;font-weight:700}.blog-table tbody td{vertical-align:top;border-top:1px solid var(--color-border);padding:.7rem .9rem}.blog-table tbody td:first-child{color:var(--color-text-main);font-weight:600}.blog-callout{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;gap:.75rem;margin-top:1.5em;padding:1rem 1.1rem;font-size:.9375rem;line-height:1.7;display:flex}.blog-callout--limit{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.blog-callout-icon{color:var(--color-text-muted);flex:none;margin-top:.2rem}.blog-callout--limit .blog-callout-icon{color:var(--color-primary)}.blog-callout-title{color:var(--color-text-main);font-weight:700}.blog-callout-body>*+*{margin-top:.6em}.blog-callout-title+.blog-callout-body{margin-top:.25em}.blog-cta{border:1px solid var(--color-primary-border);background:var(--color-surface);border-radius:10px;margin-top:3em;padding:1.5rem}@media (prefers-reduced-motion:reduce){.blog-prose .blog-heading-link:after{transition:none}}
