@font-face{font-family:"Fern Ornaments (trial)";src:url(/fonts/_fern-trial/FernOrnaments-Regular-Testing.woff2)format("woff2");font-display:swap}.fern-band[data-astro-cid-3bkbwv3v]{color:var(--fern);overflow:hidden}.fern-band-row[data-astro-cid-3bkbwv3v]{letter-spacing:0;white-space:nowrap;font-family:"Fern Ornaments (trial)",serif;font-size:1.375rem;line-height:1.3}.prose{overflow-wrap:anywhere;--tw-prose-body:var(--body);--tw-prose-headings:var(--ink);--tw-prose-links:var(--ink);--tw-prose-bold:var(--ink);--tw-prose-counters:var(--faint);--tw-prose-bullets:var(--faint);--tw-prose-hr:var(--border);--tw-prose-quotes:var(--muted);--tw-prose-quote-borders:var(--border);--tw-prose-captions:var(--muted);--tw-prose-code:var(--ink);--tw-prose-pre-bg:var(--demo);--tw-prose-pre-code:var(--body);font-size:1rem;line-height:1.65}.prose :is(h1,h2,h3,h4,h5,h6){color:var(--ink);font-family:var(--font-display);letter-spacing:-.012em;font-size:1rem;font-weight:600;line-height:1.75}.prose :is(h3,h4,h5,h6){font-weight:560}.prose h2{margin-top:2.25rem;margin-bottom:1rem}.prose h3{margin-top:1.75rem;margin-bottom:.5rem}.prose :is(h1,h2,h3,h4).toc-flash{border-radius:.2rem;animation:2.6s ease-out forwards toc-flash}@keyframes toc-flash{0%{background-color:#0000;box-shadow:0 0 #0000}8%,60%{background-color:color-mix(in srgb, var(--accent) 28%, transparent);box-shadow:0 0 0 .3rem color-mix(in srgb, var(--accent) 28%, transparent)}to{background-color:#0000;box-shadow:0 0 #0000}}.prose em{font-family:var(--font-serif);letter-spacing:.01em;font-size:1.035em;font-style:italic;font-weight:400}.prose a{font-weight:inherit;text-underline-offset:2.5px;text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--line);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);transition:text-decoration-color .2s}.prose a:hover{-webkit-text-decoration-color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.prose a[href^=http]:after{content:"";width:var(--icon-external-size);height:var(--icon-external-size);background-color:var(--faint);-webkit-mask-image:var(--icon-arrow-up-right-bold);-webkit-mask-image:var(--icon-arrow-up-right-bold);mask-image:var(--icon-arrow-up-right-bold);transition:transform .15s var(--ease-out), background-color .2s;margin-left:.25rem;display:inline-block;mask-size:contain;mask-repeat:no-repeat}.prose a[href^=http]:hover:after{background-color:var(--ink);transform:translate(1px,-1px)}.prose :not(pre)>code{background:var(--chip);border-radius:.3rem;padding:.1em .35em;font-size:.875em;font-weight:400}.prose :not(pre)>code:before,.prose :not(pre)>code:after{content:none}.prose hr,.prose :is(table,thead,tbody,tfoot,tr,th,td){border-color:var(--border)}.dark .prose :is(table,thead,tbody,tfoot,tr,th,td){border-color:var(--line)}.prose blockquote{font-family:var(--font-serif);border-left-width:2px;font-style:normal;font-weight:400}.prose blockquote p:before,.prose blockquote p:after{content:none}.prose .post-footer{font-family:var(--font-sans,var(--font-inter));font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));color:var(--faint)}.prose [data-footnotes]{border-top:1px solid var(--border);margin-top:3rem;padding-top:1.5rem}.prose [data-footnotes]>h2{display:none}.prose [data-footnotes] ol{flex-direction:column;gap:.5rem;padding-left:0;list-style:none;display:flex}.prose [data-footnotes] li{font-family:var(--font-sans,var(--font-inter));font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));color:var(--faint);gap:.5rem;display:flex}.prose [data-footnotes] li:before{content:counter(list-item);counter-increment:list-item;flex-shrink:0;font-size:.75rem;line-height:1.6}.prose img{border:1px solid var(--border);border-radius:.75rem}@supports (corner-shape:squircle){.prose img:not(.repo-avatar){corner-shape:squircle}}.prose figure{margin-block:2rem}.prose figcaption{text-align:center;color:var(--muted);margin-top:.75rem;font-size:.875rem;line-height:1.5}.prose pre{border:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) transparent;border-radius:.75rem;padding:0}.prose .code-wrap:after{content:"";pointer-events:none;background:linear-gradient(to right, transparent calc(100% - 1.5rem), var(--demo));opacity:var(--f-right,0);border-radius:calc(.75rem - 1px);transition:opacity .15s;position:absolute;inset:1px}.prose pre::-webkit-scrollbar{height:.5rem}.prose pre::-webkit-scrollbar-track{background:0 0}.prose pre::-webkit-scrollbar-thumb{background:var(--border);border-radius:.25rem}.prose pre::-webkit-scrollbar-thumb:hover{background:var(--faint)}.prose code{font-family:var(--font-mono);font-variant-numeric:slashed-zero;letter-spacing:normal}.prose pre code{padding:.875rem 1rem;font-size:.8125rem;font-weight:400;line-height:1.55;display:block}@media (hover:none),(pointer:coarse){.prose pre code{padding-block:2.25rem}}.prose .repo-link{white-space:nowrap}.prose .repo-link img.repo-avatar{vertical-align:-.2em;border-radius:999px;width:1.05em;height:1.05em;margin:0 .3em 0 0;display:inline-block}.prose .code-wrap{margin-block:1.7rem;position:relative}.prose .code-wrap>pre{margin:0}.prose .copy-btn{color:var(--muted);background:linear-gradient(var(--chip), var(--chip)), var(--bg);opacity:1;border-radius:.4rem;place-items:center;padding:.3rem;transition:opacity .18s,color .18s,background .18s;display:grid;position:absolute;top:.6rem;right:.6rem}@media (hover:hover) and (pointer:fine){.prose .copy-btn{opacity:0}.prose .code-wrap:hover .copy-btn,.prose .copy-btn:focus-visible,.prose .copy-btn.copied{opacity:1}}.prose .copy-btn:hover,.prose .copy-btn.copied{color:var(--accent)}.prose .copy-btn svg{width:1rem;height:1rem;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-spring);grid-area:1/1}.prose .copy-btn .i-check,.prose .copy-btn.copied .i-copy{opacity:0;transform:scale(.5)}.prose .copy-btn.copied .i-check{opacity:1;transform:scale(1)}.prose .astro-code,.prose .astro-code span{color:var(--shiki-light);font-style:var(--shiki-light-font-style,normal)}.dark .prose .astro-code,.dark .prose .astro-code span{color:var(--shiki-dark);font-style:var(--shiki-dark-font-style,normal)}.prose .note{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;margin-block:2rem;padding:1rem 1.25rem;box-shadow:0 1px 2px #0000000a}@supports (corner-shape:squircle){.prose .note{corner-shape:squircle}}.prose .note>:first-child{margin-top:0}.prose .note>:last-child{margin-bottom:0}
