.blog-prose{color:#d4d4d8eb;max-width:100%;font-size:1.0625rem;line-height:1.8}.blog-prose>:first-child{margin-top:0}.blog-prose p{margin-top:1.25em;margin-bottom:1.25em}.blog-prose h2,.blog-prose h3,.blog-prose h4{color:#fff;letter-spacing:-.02em;scroll-margin-top:6rem;font-weight:560;line-height:1.3}.blog-prose h2{margin-top:2.5em;margin-bottom:.85em;font-size:clamp(1.45rem,2.4vw,1.85rem)}.blog-prose h3{margin-top:2em;margin-bottom:.7em;font-size:clamp(1.2rem,2vw,1.4rem)}.blog-prose h4{margin-top:1.75em;margin-bottom:.6em;font-size:1.1rem}.blog-prose .blog-heading a{color:inherit;text-decoration:none;transition:color .15s}.blog-prose .blog-heading a:hover,.blog-prose .blog-heading a:focus-visible{color:#60a5fa;text-underline-offset:4px;text-decoration:underline}.blog-prose a{color:#60a5fa;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.blog-prose a:hover{color:#93c5fd}.blog-prose strong{color:#fff;font-weight:600}.blog-prose ul,.blog-prose ol{margin-top:1.15em;margin-bottom:1.15em;padding-left:1.4em}.blog-prose li{margin-top:.45em;margin-bottom:.45em;padding-left:.2em}.blog-prose ul{list-style-type:disc}.blog-prose ol{list-style-type:decimal}.blog-prose li::marker{color:#a1a1aae6}.blog-prose blockquote{color:#d4d4d8e0;background:#ffffff08;border-left:3px solid #3b82f68c;border-radius:0 12px 12px 0;margin:1.5em 0;padding:.85em 1.15em}.blog-prose hr{border:0;border-top:1px solid #ffffff14;margin:2.5em 0}.blog-prose img{border:1px solid #ffffff14;border-radius:1rem;width:100%;margin:1.75em 0;display:block}.blog-prose :not(pre)>code{color:#bfdbfe;background:#ffffff12;border:1px solid #ffffff14;border-radius:6px;padding:.15em .4em;font-family:Space Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}.blog-prose .blog-code{background:#111114;border:1px solid #ffffff14;border-radius:14px;margin:1.6em 0;overflow:hidden;box-shadow:0 12px 40px #00000040}.blog-prose .blog-code__header{background:#ffffff08;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .95rem;display:flex}.blog-prose .blog-code__header span{letter-spacing:.06em;text-transform:uppercase;color:#a1a1aaf2;font-family:Space Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem}.blog-prose .blog-code pre{background:0 0;margin:0;padding:1rem 1.05rem 1.15rem;overflow-x:auto}.blog-prose .blog-code code,.blog-prose .blog-code .hljs{color:#e6edf3;white-space:pre;tab-size:2;background:0 0;border:0;padding:0;font-family:Space Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;line-height:1.7;display:block}.blog-prose>pre{background:#111114;border:1px solid #ffffff14;border-radius:14px;margin:1.6em 0;padding:1rem 1.05rem;overflow-x:auto}.blog-prose>pre>code{color:#e6edf3;background:0 0;font-family:Space Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;line-height:1.7}.blog-prose .hljs-doctag,.blog-prose .hljs-keyword,.blog-prose .hljs-meta .hljs-keyword,.blog-prose .hljs-template-tag,.blog-prose .hljs-template-variable,.blog-prose .hljs-type,.blog-prose .hljs-variable.language_{color:#ff7b72}.blog-prose .hljs-title,.blog-prose .hljs-title.class_,.blog-prose .hljs-title.class_.inherited__,.blog-prose .hljs-title.function_{color:#d2a8ff}.blog-prose .hljs-attr,.blog-prose .hljs-attribute,.blog-prose .hljs-literal,.blog-prose .hljs-meta,.blog-prose .hljs-number,.blog-prose .hljs-operator,.blog-prose .hljs-variable,.blog-prose .hljs-selector-attr,.blog-prose .hljs-selector-class,.blog-prose .hljs-selector-id{color:#79c0ff}.blog-prose .hljs-regexp,.blog-prose .hljs-string,.blog-prose .hljs-meta .hljs-string{color:#a5d6ff}.blog-prose .hljs-built_in,.blog-prose .hljs-symbol{color:#ffa657}.blog-prose .hljs-comment,.blog-prose .hljs-code,.blog-prose .hljs-formula{color:#8b949e}.blog-prose .hljs-name,.blog-prose .hljs-quote,.blog-prose .hljs-selector-tag,.blog-prose .hljs-selector-pseudo{color:#7ee787}.blog-prose .hljs-subst{color:#e6edf3}.blog-prose .hljs-section{color:#1f6feb;font-weight:700}.blog-prose .hljs-bullet{color:#f2cc60}.blog-prose .hljs-emphasis{font-style:italic}.blog-prose .hljs-strong{font-weight:700}
