.prose{--body:color-mix(in oklab, var(--paper) 84%, var(--ink));--mono:"JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;color:var(--body);overflow-wrap:break-word;font-size:1.0625rem;line-height:1.7}.prose>*+*{margin-top:1.25rem}.prose h2,.prose h3{color:var(--paper);text-wrap:balance;position:relative}.prose h2{letter-spacing:-.02em;margin-top:3rem;font-size:clamp(1.375rem,1.2rem + .5vw,1.625rem);font-weight:500;line-height:1.25}.prose h3{margin-top:2rem;font-size:1.125rem;font-weight:600;line-height:1.4}.prose h2+*,.prose h3+*{margin-top:.75rem}.prose .anchor{color:var(--dim);opacity:0;margin-left:.4em;text-decoration:none}.prose :is(h2,h3):hover .anchor,.prose .anchor:focus-visible{opacity:1}.prose .anchor:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:var(--r-ctl)}.prose a{color:var(--paper);text-decoration:underline;-webkit-text-decoration-color:color-mix(in oklab, var(--cyan) 70%, transparent);text-decoration-color:color-mix(in oklab, var(--cyan) 70%, transparent);text-underline-offset:.2em;text-decoration-thickness:1px}.prose a:hover{-webkit-text-decoration-color:var(--cyan);text-decoration-color:var(--cyan);text-decoration-thickness:2px}.prose a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:2px}.prose strong{color:var(--paper);font-weight:600}.prose :is(ul,ol){padding-left:1.25rem}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li+li{margin-top:.4rem}.prose li::marker{color:var(--dim)}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.5rem}.prose blockquote{border-left:2px solid var(--line);color:var(--dim);padding-left:1rem}.prose :not(pre)>code{border:1px solid var(--line);background:var(--panel);color:var(--paper);font-family:var(--mono);border-radius:6px;padding:.1em .35em;font-size:.86em}.prose .code{border:1px solid var(--line);border-radius:var(--r-win);background:var(--panel);box-shadow:var(--edge);position:relative}.prose .code-bar{border-bottom:1px solid var(--line);min-height:2.5rem;color:var(--dim);font-family:var(--mono);letter-spacing:.04em;align-items:center;padding:0 5.5rem 0 1rem;font-size:.75rem;display:flex}.prose pre{scrollbar-width:thin;scrollbar-color:var(--line) transparent;color:var(--paper);font-family:var(--mono);white-space:pre;padding:.9rem 1rem;font-size:.875rem;line-height:1.7;overflow-x:auto}.prose .code:not(:has(.code-bar)) pre{padding-right:5.5rem}.prose pre:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px;border-radius:var(--r-win)}.prose .copy{border-radius:var(--r-ctl);min-height:2rem;color:var(--dim);cursor:pointer;background:0 0;border:1px solid #0000;padding:0 .7rem;font:500 .8125rem/1 Geist Variable,system-ui,sans-serif;position:absolute;top:.3rem;right:.35rem}.prose .copy:hover{border-color:var(--line);background:var(--panel-2);color:var(--paper)}.prose .copy:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.prose .copy[data-done]{color:var(--cyan)}@media (pointer:coarse){.prose .code-bar{min-height:2.75rem}.prose .copy{min-width:44px;min-height:44px;top:0;right:0}}.prose .callout{border:1px solid var(--line);border-radius:var(--r-win);background:var(--panel);padding:.9rem 1.1rem;font-size:.975rem}.prose .callout>*+*{margin-top:.5rem}.prose .callout-label{color:var(--paper);align-items:center;gap:.5rem;font-weight:600;display:flex}.prose .callout-label .icon{color:var(--dim);flex:none}.prose .callout-warning{border-color:color-mix(in oklab, var(--destructive) 55%, var(--line))}.prose .callout-warning .callout-label,.prose .callout-warning .callout-label .icon{color:color-mix(in oklab, var(--destructive) 70%, var(--paper))}.prose .step{padding-bottom:.5rem;padding-left:2.75rem;position:relative}.prose .step>*+*{margin-top:1.25rem}.prose .step:before{content:"";border-left:1px solid var(--line);position:absolute;top:2.25rem;bottom:-2.5rem;left:.9rem}.prose .step:not(:has(+.step)):before{display:none}.prose .step+.step,.prose .step+:not(.step){margin-top:2.5rem}.prose .step-h{margin-top:0;position:static}.prose .step-n{border:1px solid var(--line);background:var(--ink);width:1.8rem;height:1.8rem;color:var(--cyan);font:500 .8rem/1 var(--mono);border-radius:999px;place-items:center;display:grid;position:absolute;top:-.1rem;left:0}.prose .figure{margin-block:2rem}.prose .frame{border:1px solid var(--line);border-radius:var(--r-win);background:var(--panel);box-shadow:var(--edge), var(--depth);overflow:hidden}.prose .frame :is(img,video){width:100%;height:auto;display:block}.prose .frame.wide{overflow-x:auto}.prose .frame.wide img{min-width:680px}.prose figcaption{color:var(--dim);text-wrap:pretty;margin-top:.75rem;font-size:.875rem;line-height:1.5}.prose table{border-collapse:collapse;width:100%;font-size:.9375rem;line-height:1.55}.prose th{color:var(--paper);text-align:left;font-weight:600}.prose :is(th,td){border-bottom:1px solid var(--line);vertical-align:top;padding:.6rem .9rem .6rem 0}@media (width<=640px){.prose table{max-width:100%;display:block;overflow-x:auto}}.prose-blog{grid-template-columns:minmax(0,1fr) min(42rem,100%) minmax(0,1fr);font-size:clamp(1.0625rem,1rem + .25vw,1.1875rem);line-height:1.75;display:grid}.prose-blog>*{grid-column:2}.prose-blog>.figure{grid-column:1/-1;justify-self:center;width:min(60rem,100%);margin-block:2.5rem}.prose-blog>.figure figcaption{max-width:42rem;margin-inline:auto}.prose .tablist{border-bottom:1px solid var(--line);flex-wrap:wrap;column-gap:.25rem;display:flex}.prose .tab{min-height:2.5rem;color:var(--dim);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:0 .85rem;font:500 .9375rem/1 Geist Variable,system-ui,sans-serif}.prose .tab:hover{color:var(--paper)}.prose .tab[aria-selected=true]{border-bottom-color:var(--cyan);color:var(--paper)}.prose .tab:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px;border-radius:var(--r-ctl)}@media (pointer:coarse){.prose .tab{min-height:44px}}.prose .tabs>*+*,.prose .tab-panel>*+*{margin-top:1rem}.prose .tab-h{color:var(--paper);font-weight:600}.prose .tabs[data-ready] .tab-h{display:none}.prose .tab-panel:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:var(--r-ctl)}.prose .term-dots{gap:6px;margin-right:.75rem;display:inline-flex}.prose .term-dots i{background:var(--line);border-radius:999px;width:10px;height:10px}.prose .term-prompt{color:var(--dim);-webkit-user-select:none;user-select:none}.prose .term-typed{color:var(--paper)}.prose .term-line{color:var(--body)}.prose .term-pending .term-line:not(.term-shown){visibility:hidden}.prose .term-cursor:after{content:"";background:var(--cyan);vertical-align:-.2em;width:.55em;height:1.1em;margin-left:1px;display:inline-block}@media print{.prose .term-pending .term-line{visibility:visible}}.prose .step-cont:before{top:-2.5rem}.prose .step-cont:empty{display:none}.prose+.prose{margin-top:1.25rem}.prose-blog>.compare{grid-column:1/-1;justify-self:center;width:min(60rem,100%)}.prose .compare .fn{margin-left:.15em;font-size:.72em;line-height:0}.prose .compare .fn a{color:var(--dim);padding:0 .15em;text-decoration:none}.prose .compare .fn a:hover{color:var(--paper)}.prose .compare table{table-layout:fixed;font-size:.9375rem}.prose .compare th{color:var(--paper);padding-top:0;font-weight:600}.prose .compare th:first-child,.prose .compare td:first-child{width:26%}.prose .compare td:first-child{color:var(--paper);font-weight:500}.prose .compare td{color:var(--body)}.prose .compare td em:last-child{color:var(--dim);margin-top:.35rem;font-size:.8125rem;font-style:normal;display:block}@media (width<=640px){.prose .compare table,.prose .compare tbody,.prose .compare tr,.prose .compare td{width:auto;display:block;overflow:visible}.prose .compare thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.prose .compare tr{border:1px solid var(--line);border-radius:var(--r-win);background:var(--panel);padding:1rem 1.1rem}.prose .compare tr+tr{margin-top:.75rem}.prose .compare td{border:0;padding:0}.prose .compare td:first-child{width:auto;margin-bottom:.6rem;font-weight:600}.prose .compare td+td+td{margin-top:.75rem}.prose .compare td:not(:first-child):before{content:attr(data-label);content:attr(data-label) / "";color:var(--dim);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.15rem;font:500 .72rem/1.4 JetBrains Mono Variable,ui-monospace,monospace;display:block}}
