.reading-progress:where(.astro-6elnia4l){z-index:49;transform-origin:0;pointer-events:none;background:linear-gradient(90deg,#694afff2 0%,#fd7eeae6 45%,#ff5500d9 75%,#01b77fe6 100%);height:2px;animation:linear both reading-progress scroll(root);position:fixed;top:3.5rem;left:0;right:0;transform:scaleX(0)}@keyframes reading-progress{to{transform:scaleX(1)}}@supports not (animation-timeline:scroll()){.reading-progress:where(.astro-6elnia4l){display:none}}.share-btn__check:where(.astro-6b4yfban),.share-btn:where(.astro-6b4yfban)[data-copied] .share-btn__icon:where(.astro-6b4yfban){display:none}.share-btn:where(.astro-6b4yfban)[data-copied] .share-btn__check:where(.astro-6b4yfban){display:block}.share-btn:where(.astro-6b4yfban)[data-copied]{border-color:#01b77f99}.share-btn__toast:where(.astro-6b4yfban){white-space:nowrap;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand-green);pointer-events:none;font-size:10px;font-weight:700;position:absolute;top:calc(100% + .4rem);left:50%;transform:translate(-50%)}.share-btn__toast:where(.astro-6b4yfban):empty{display:none}.post-hero:where(.astro-m66uj5id){background-color:#0a0d1a}.post-hero:where(.astro-m66uj5id):after{content:"";opacity:.7;pointer-events:none;background:linear-gradient(90deg,#694affb3 0%,#fd7eea99 40%,#ff55008c 70%,#01b77f99 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.post-hero__grid:where(.astro-m66uj5id){background-image:linear-gradient(#ffffff07 1px,#0000 1px),linear-gradient(90deg,#ffffff07 1px,#0000 1px);background-position:50%;background-size:60px 60px;mask-image:radial-gradient(60% 70% at 50% 30%,#000 20%,#0000 80%)}.post-hero__aurora:where(.astro-m66uj5id){background:radial-gradient(circle, rgba(var(--hero-rgb), .26) 0%, rgba(var(--hero-rgb), 0) 68%);filter:blur(90px);border-radius:9999px;width:60vw;max-width:820px;height:60vw;max-height:820px;position:absolute;top:0;left:50%;transform:translate(-50%,-55%)}.post-hero__title:where(.astro-m66uj5id){letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2rem,5.2vw,3.5rem);line-height:1.06}.post-toc-mobile:where(.astro-m66uj5id)[open] .post-toc-mobile__caret:where(.astro-m66uj5id){transform:rotate(180deg)}.post-toc-mobile:where(.astro-m66uj5id) summary:where(.astro-m66uj5id)::-webkit-details-marker{display:none}.post-toc a{color:var(--color-night-muted);padding:.3rem 0;font-size:.8125rem;line-height:1.4;transition:color .15s,border-color .15s;display:block}.post-toc a:hover{color:var(--color-night-text)}.post-toc__sub a{padding-left:.9rem;font-size:.75rem}.post-toc--rail a{border-left:1px solid #0000;margin-left:-1px;padding-left:.9rem}.post-toc--rail .post-toc__sub a{padding-left:1.7rem}.post-toc--rail a.is-active{color:var(--color-accent-strong);border-left-color:var(--color-accent);font-weight:600}:root{--__sl-font:var(--font-sans);--__sl-font-mono:var(--font-mono);--sl-color-text:#e6edf3;--sl-color-white:#e6edf3;--sl-color-black:#0d111e;--sl-color-gray-1:#c9d1d9;--sl-color-gray-2:#8b949e;--sl-color-gray-3:#6e7681;--sl-color-gray-4:#444c56;--sl-color-gray-5:#30363d;--sl-color-gray-6:#1c2128;--sl-color-gray-7:#151b23;--sl-color-accent:#694aff;--sl-color-accent-high:#c4bbff;--sl-color-bg:#0d111e;--sl-text-code:.875rem;--sl-line-height:1.65}.blog-prose{color:var(--color-night-soft-text);font-size:1.0625rem;font-weight:430;line-height:1.8}@media (width>=640px){.blog-prose{font-size:1.125rem}}.blog-prose>*+*{margin-top:1.25em}.blog-prose>:first-child{margin-top:0}.blog-prose h2,.blog-prose h3,.blog-prose h4{font-family:var(--font-sans);color:var(--color-night-text);text-wrap:balance;scroll-margin-top:5.5rem;font-weight:600}.blog-prose h2{letter-spacing:-.02em;margin-top:2.6em;font-size:1.625rem;line-height:1.25}.blog-prose h3{letter-spacing:-.015em;margin-top:2em;font-size:1.25rem;line-height:1.3}.blog-prose h4{letter-spacing:-.01em;margin-top:1.75em;font-size:1.05rem}.blog-prose h2+*,.blog-prose h3+*,.blog-prose h4+*{margin-top:.75em}.blog-prose a{color:var(--color-accent-strong);text-underline-offset:.2em;text-decoration:underline 1px #9b8aff73;transition:color .15s,text-decoration-color .15s}.blog-prose a:hover{color:#c4bbff;text-decoration-color:currentColor}.blog-prose strong{color:var(--color-night-text);font-weight:600}.blog-prose em{font-style:italic}.blog-prose ul,.blog-prose ol{padding-left:1.5rem}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li+li,.blog-prose li>ul,.blog-prose li>ol{margin-top:.5em}.blog-prose ul>li::marker{color:var(--color-accent-strong)}.blog-prose ol>li::marker{color:var(--color-night-faint);font-family:var(--font-mono);font-size:.85em}.blog-prose blockquote{border-left:2px solid var(--color-accent);letter-spacing:-.01em;color:var(--color-night-text);margin:2em 0;padding:.25rem 0 .25rem 1.5rem;font-size:1.15em;font-weight:450;line-height:1.6}.blog-prose blockquote p+p{margin-top:.75em}.blog-prose hr{background:linear-gradient(90deg, transparent, var(--color-night-hairline-strong), transparent);border:0;height:1px;margin:3em 0}.blog-prose code:not(pre code):not(.expressive-code *){font-family:var(--font-mono);border:1px solid var(--color-night-hairline);background:var(--color-night-band);color:var(--color-night-text);overflow-wrap:anywhere;border-radius:4px;padding:.1em .4em;font-size:.85em}.blog-prose kbd{font-family:var(--font-mono);border:1px solid var(--color-night-hairline-strong);background:var(--color-night-soft);color:var(--color-night-text);border-bottom-width:2px;border-radius:4px;padding:.1em .45em;font-size:.8em}.blog-prose pre:not(.expressive-code *){border:1px solid var(--color-night-hairline);background:var(--color-night-soft);border-radius:.75rem;padding:1rem 1.25rem;font-size:.875rem;line-height:1.65;overflow-x:auto}.blog-prose .expressive-code{--ec-brdRad:.625rem;margin-top:1.75em;margin-bottom:1.75em}.blog-prose img,.blog-prose video{border:1px solid var(--color-night-hairline);background:var(--color-night-soft);border-radius:.75rem;width:100%;height:auto;display:block}.blog-prose p:has(>img:only-child),.blog-prose p:has(>img:first-child+em:last-child){margin-top:2em;margin-bottom:2em}.blog-prose p>img+em{font-family:var(--font-mono);text-align:center;color:var(--color-night-faint);margin-top:.75rem;font-size:.75rem;font-style:normal;line-height:1.5;display:block}.blog-prose table{border-collapse:collapse;width:100%;font-size:.9375rem;line-height:1.5;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-night-hairline);padding:.65rem .85rem}.blog-prose th{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-night-faint);border-bottom-color:var(--color-night-hairline-strong);white-space:nowrap;font-size:.7rem;font-weight:700}.blog-prose tbody tr:last-child td{border-bottom:0}.blog-prose td code{white-space:nowrap;overflow-wrap:normal}.blog-prose td:first-child,.blog-prose th:first-child{padding-left:0}.blog-prose td:last-child,.blog-prose th:last-child{padding-right:0}
