@layer base{*,:before,:after{box-sizing:border-box}body{background:var(--er-background);color:var(--er-foreground);font-family:var(--er-font-sans);letter-spacing:var(--er-tracking-ui);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}a{color:inherit}}@layer components{.er-floating{z-index:var(--er-z-overlay);width:max-content;max-width:calc(100vw - 1rem);transform-origin:var(--er-transform-origin,center);outline:none;position:fixed;top:0;left:0}.er-pop-enter-active,.er-pop-leave-active{transition:opacity var(--er-duration) var(--er-ease), transform var(--er-duration) var(--er-ease)}.er-pop-enter-from,.er-pop-leave-to{opacity:0;transform:scale(.96)}.er-popover{border:1px solid var(--er-border);border-radius:var(--er-radius-md);background:var(--er-popover);width:18rem;color:var(--er-popover-foreground);box-shadow:var(--er-shadow-md);padding:1rem;font-size:.875rem}.er-swatch-group{flex-wrap:wrap;gap:.5rem;display:flex}.er-swatch{min-width:2.5rem;height:var(--er-control-md);border:1px solid var(--er-input);border-radius:var(--er-radius-control);background:var(--er-input-background);color:var(--er-foreground);font-size:.875rem;font-weight:var(--er-weight-medium);cursor:pointer;user-select:none;transition:background-color var(--er-duration), border-color var(--er-duration), box-shadow var(--er-duration);place-items:center;padding:0 .75rem;line-height:1;display:inline-grid;position:relative}.er-swatch:hover{background:var(--er-accent)}.er-swatch[data-state=on]{border-color:var(--er-primary);background:var(--er-primary);color:var(--er-primary-foreground)}.er-swatch input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.er-swatch:has(input:focus-visible){outline:2px solid var(--er-ring);outline-offset:2px}.er-swatch[data-color]{border-color:color-mix(in oklab, var(--er-foreground) 20%, transparent);background:var(--er-swatch-color);border-radius:50%;width:2rem;min-width:0;height:2rem;padding:0}.er-swatch[data-color][data-state=on]{border-color:color-mix(in oklab, var(--er-foreground) 20%, transparent);background:var(--er-swatch-color);box-shadow:0 0 0 2px var(--er-background), 0 0 0 4px var(--er-primary)}.er-swatch[data-unavailable]{color:var(--er-muted-foreground);cursor:not-allowed}.er-swatch[data-unavailable]:hover{background:var(--er-input-background)}.er-swatch[data-unavailable]:after{content:"";border-radius:inherit;background:linear-gradient(to top right, transparent calc(50% - 1px), var(--er-muted-foreground) calc(50% - 1px), var(--er-muted-foreground) calc(50% + 1px), transparent calc(50% + 1px));pointer-events:none;position:absolute;inset:0}.er-swatch[data-color][data-unavailable],.er-swatch[data-color][data-unavailable]:hover{background:color-mix(in oklab, var(--er-swatch-color) 35%, var(--er-background))}}:root{color-scheme:light dark;--er-background:light-dark(oklch(100% 0 0),oklch(14.5% 0 0));--er-foreground:light-dark(oklch(14.5% 0 0),oklch(98.5% 0 0));--er-card:light-dark(oklch(100% 0 0),oklch(20.5% 0 0));--er-card-foreground:light-dark(oklch(14.5% 0 0),oklch(98.5% 0 0));--er-popover:light-dark(oklch(100% 0 0),oklch(22.5% 0 0));--er-popover-foreground:light-dark(oklch(14.5% 0 0),oklch(98.5% 0 0));--er-primary:light-dark(oklch(20.5% 0 0),oklch(92.2% 0 0));--er-primary-foreground:light-dark(oklch(98.5% 0 0),oklch(20.5% 0 0));--er-secondary:light-dark(oklch(96.5% 0 0),oklch(26.9% 0 0));--er-secondary-foreground:light-dark(oklch(20.5% 0 0),oklch(98.5% 0 0));--er-muted:light-dark(oklch(96.5% 0 0),oklch(26.9% 0 0));--er-muted-foreground:light-dark(oklch(50% 0 0),oklch(70.8% 0 0));--er-accent:light-dark(oklch(96.5% 0 0),oklch(30% 0 0));--er-accent-foreground:light-dark(oklch(20.5% 0 0),oklch(98.5% 0 0));--er-destructive:light-dark(oklch(55% .22 27),oklch(71% .18 24));--er-destructive-foreground:light-dark(oklch(98.5% 0 0),oklch(16% .02 25));--er-success:light-dark(oklch(55% .15 150),oklch(72% .17 150));--er-warning:light-dark(oklch(62% .15 70),oklch(80% .15 80));--er-info:light-dark(oklch(55% .16 250),oklch(72% .14 245));--er-chart-1:light-dark(#2a78d6,#3987e5);--er-chart-2:light-dark(#eb6834,#d95926);--er-chart-3:light-dark(#1baf7a,#199e70);--er-chart-4:light-dark(#eda100,#c98500);--er-chart-5:light-dark(#e87ba4,#d55181);--er-chart-6:#008300;--er-chart-7:light-dark(#4a3aa7,#9085e9);--er-chart-8:light-dark(#e34948,#e66767);--er-border:light-dark(oklch(91.5% 0 0),oklch(100% 0 0/.12));--er-input:light-dark(oklch(87% 0 0),oklch(100% 0 0/.18));--er-input-background:light-dark(#0000,oklch(100% 0 0/.04));--er-ring:light-dark(oklch(45% 0 0),oklch(75% 0 0));--er-overlay:oklch(0% 0 0/.55);--er-scrim:oklch(0% 0 0);--er-radius:.625rem;--er-radius-sm:calc(var(--er-radius) - 4px);--er-radius-md:calc(var(--er-radius) - 2px);--er-radius-lg:var(--er-radius);--er-radius-xl:calc(var(--er-radius) + 4px);--er-radius-control:var(--er-radius-md);--er-radius-pill:999px;--er-control-sm:2rem;--er-control-md:2.25rem;--er-control-lg:2.5rem;--er-font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--er-font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--er-font-display:var(--er-font-sans);--er-font-prose:var(--er-font-sans);--er-weight-medium:500;--er-weight-semibold:600;--er-weight-heading:650;--er-weight-display:700;--er-tracking-ui:0em;--er-tracking-heading:1;--er-display-case:none;--er-type-min:1;--er-type-max:1.125;--er-type-ratio-min:1.2;--er-type-ratio-max:1.3;--er-type-from:20rem;--er-type-range:60;--er-shadow-xs:0 1px 2px 0 oklch(0% 0 0/.05);--er-shadow-sm:0 1px 3px 0 oklch(0% 0 0/.1), 0 1px 2px -1px oklch(0% 0 0/.1);--er-shadow-md:0 4px 6px -1px oklch(0% 0 0/.1), 0 2px 4px -2px oklch(0% 0 0/.1);--er-shadow-lg:0 10px 15px -3px oklch(0% 0 0/.12), 0 4px 6px -4px oklch(0% 0 0/.12);--er-duration:.15s;--er-ease:cubic-bezier(.16, 1, .3, 1);--er-z-overlay:50;--er-z-toast:100}.light,[data-theme=light]{color-scheme:light}.dark,[data-theme=dark]{color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--er-duration:0s}}:root{--site-width:68rem;--site-gutter:clamp(1.25rem, 4vw, 2.5rem);--site-soft:light-dark(oklch(97.2% 0 0),oklch(19% 0 0));--site-ink:light-dark(oklch(20% 0 0),oklch(96% 0 0));--site-accent:light-dark(oklch(52% .19 258),oklch(72% .15 250));--site-accent-foreground:light-dark(#fff,#000);--site-nav-height:3rem;scroll-behavior:smooth;scroll-padding-top:calc(var(--site-nav-height) + 1rem)}:root[data-base]{--site-soft:light-dark(color-mix(in oklch, var(--er-muted) 80%, var(--er-background)),color-mix(in oklch, var(--er-muted) 35%, var(--er-background)));--site-ink:var(--er-foreground)}:root[data-accent]{--site-accent:var(--er-primary);--site-accent-foreground:var(--er-primary-foreground)}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}body{background:var(--er-background);color:var(--site-ink);font-family:var(--er-font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}.wrap{width:100%;max-width:var(--site-width);padding-inline:var(--site-gutter);box-sizing:border-box;margin-inline:auto}.skip{z-index:100;background:var(--er-primary);color:var(--er-primary-foreground);border-radius:.5rem;padding:.5rem .75rem;position:absolute;top:-4rem;left:.5rem}.skip:focus{top:.5rem}.nav{z-index:40;height:var(--site-nav-height);background:color-mix(in oklch, var(--er-background) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid color-mix(in oklch, var(--er-border) 70%, transparent);position:sticky;top:0}.nav .wrap{align-items:center;gap:1.5rem;height:100%;display:flex}.nav-brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.nav-mark{background:var(--site-ink);clip-path:polygon(0 0,62% 0,100% 38%,100% 100%,0 100%);border-radius:.3rem;flex:none;width:1.05rem;height:1.05rem}.nav-links{gap:clamp(.75rem,2.5vw,1.75rem);margin-inline-start:auto;font-size:.8125rem;display:flex}.nav-links a{opacity:.8;white-space:nowrap;text-decoration:none}.nav-links a:hover,.nav-links a[aria-current=page]{opacity:1}.nav-theme{width:2rem;height:2rem;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.nav-theme:hover{background:var(--er-accent)}.nav-theme svg{width:1rem;height:1rem}@media (width<=34rem){.nav-links .optional{display:none}}.eyebrow{color:var(--site-accent);margin:0 0 .75rem;font-size:1.0625rem;font-weight:600}.display{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2.75rem,8.5vw,6rem);font-weight:600;line-height:1.03}.headline{letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(2.1rem,5.6vw,3.75rem);font-weight:600;line-height:1.06}.title{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;line-height:1.15}.lede{max-width:40rem;color:var(--er-muted-foreground);text-wrap:pretty;margin:1.25rem auto 0;font-size:clamp(1.125rem,2.1vw,1.4375rem);line-height:1.4}.muted{color:var(--er-muted-foreground)}.center{text-align:center}.section{padding-block:clamp(4.5rem,11vw,9rem)}.section.soft{background:var(--site-soft)}.section.dark{color:oklch(96% 0 0);background:#000}.pills{flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;margin-top:2rem;display:flex}.pill{background:var(--site-accent);color:var(--site-accent-foreground);border-radius:999px;align-items:center;gap:.35rem;padding:.7rem 1.35rem;font-size:1.0625rem;font-weight:500;text-decoration:none;display:inline-flex}.pill:hover{filter:brightness(1.08)}.pill.quiet{color:var(--site-accent);background:0 0;padding-inline:.25rem}.pill.quiet:after{content:"›";font-size:1.2em;line-height:1}.pill.quiet:hover{filter:none;text-decoration:underline}.command{border:1px solid var(--er-border);background:var(--er-card);max-width:100%;font-family:var(--er-font-mono);border-radius:999px;align-items:center;gap:.75rem;padding:.6rem .6rem .6rem 1.1rem;font-size:.9375rem;display:inline-flex}.command code{white-space:nowrap;overflow-x:auto}.command code:before{content:"$ ";color:var(--er-muted-foreground)}.copy{background:var(--er-secondary);color:var(--er-secondary-foreground);font:500 .75rem var(--er-font-sans);cursor:pointer;border:0;border-radius:999px;flex:none;padding:.3rem .7rem}.copy:hover{background:var(--er-accent)}.code{border:1px solid var(--er-border);background:var(--er-card);border-radius:.875rem;margin:0;position:relative;overflow:hidden}.code>.copy{position:absolute;top:.6rem;right:.6rem}.code pre{font-family:var(--er-font-mono);tab-size:2;margin:0;padding:1rem 1.15rem;font-size:.8125rem;line-height:1.65;overflow-x:auto;background:0 0!important}.code pre,.code pre span{color:light-dark(var(--shiki-light),var(--shiki-dark))}.code-label{border-bottom:1px solid var(--er-border);font:500 .75rem var(--er-font-mono);color:var(--er-muted-foreground);padding:.55rem 1.15rem}.pm-tabs{background:var(--er-muted);border-radius:999px;gap:.15rem;margin-bottom:.6rem;padding:.2rem;display:inline-flex}.pm-tabs button{color:var(--er-muted-foreground);font:500 .8125rem var(--er-font-sans);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.3rem .8rem}:root:not([data-pm]) .pm-tabs button[data-pm=npm],:root[data-pm=npm] .pm-tabs button[data-pm=npm],:root[data-pm=pnpm] .pm-tabs button[data-pm=pnpm],:root[data-pm=yarn] .pm-tabs button[data-pm=yarn],:root[data-pm=bun] .pm-tabs button[data-pm=bun]{background:var(--er-background);color:var(--site-ink);box-shadow:0 1px 2px #0000001f}.pm [data-pm-panel]{display:none}:root:not([data-pm]) .pm [data-pm-panel=npm],:root[data-pm=npm] .pm [data-pm-panel=npm],:root[data-pm=pnpm] .pm [data-pm-panel=pnpm],:root[data-pm=yarn] .pm [data-pm-panel=yarn],:root[data-pm=bun] .pm [data-pm-panel=bun]{display:block}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(1.5rem)}.js [data-reveal].seen{opacity:1;transform:none}}.footer{border-top:1px solid var(--er-border);background:var(--site-soft);color:var(--er-muted-foreground);padding-block:2.5rem 3.5rem;font-size:.8125rem}.footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.footer nav{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.doc{padding-block:clamp(3rem,7vw,5rem) clamp(4rem,9vw,7rem)}.doc-head{max-width:44rem;margin-bottom:3rem}.doc-head .lede{margin-inline:0}.prose{max-width:44rem;font-size:1.0625rem;line-height:1.6}.prose h2{letter-spacing:-.02em;margin:3.5rem 0 1rem;font-size:1.75rem;font-weight:600;line-height:1.2}.prose h3{letter-spacing:-.01em;margin:2.25rem 0 .75rem;font-size:1.25rem;font-weight:600}.prose p,.prose ul,.prose ol{margin:0 0 1rem}.prose li{margin-bottom:.4rem}.prose a,.caption a{color:var(--site-accent);text-underline-offset:.18em;text-decoration:underline 1px}.prose :not(pre)>code{background:var(--er-muted);font-family:var(--er-font-mono);border-radius:.35rem;padding:.1em .35em;font-size:.875em}.prose .code,.prose .pm{margin-bottom:1.25rem}.prose table{border-collapse:collapse;width:100%;margin-bottom:1.5rem;font-size:.9375rem}.prose th,.prose td{border-bottom:1px solid var(--er-border);text-align:left;vertical-align:top;padding:.6rem .75rem .6rem 0}.prose th{font-weight:600}.table-scroll{overflow-x:auto}.site-theme{gap:.5rem;width:min(17rem,100vw - 2rem);display:grid}.site-theme-title{margin:0;font-weight:600}.site-theme-label{color:var(--er-muted-foreground);margin:.25rem 0 0;font-size:.8125rem}.site-theme-command{border-radius:var(--er-radius-sm);background:var(--er-muted);font-family:var(--er-font-mono);margin-top:.25rem;padding:.375rem .5rem;font-size:.75rem}.site-theme-link{color:var(--er-primary);font-size:.8125rem}
