*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--vp-bg);color:var(--vp-text);font-family:var(--vp-font);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:hidden}img,svg,video{max-width:100%}a{color:inherit}::selection{background:var(--vp-accent);color:var(--vp-accent-text)}:focus-visible{outline:2px solid var(--vp-accent);outline-offset:2px}.skip{z-index:200;border-radius:var(--vp-radius);background:var(--vp-accent);color:var(--vp-accent-text);padding:.6rem 1rem;font-weight:500;position:absolute;top:0;left:-9999px}.skip:focus{top:1rem;left:1rem}.editor:where(.astro-a6e4hkwz){border-radius:var(--vp-radius);color:#f8f8f2;background:#272822;margin:0;overflow:hidden}.editor__bar:where(.astro-a6e4hkwz){height:var(--vp-control);background:#1e1f1c;justify-content:space-between;align-items:stretch;display:flex}.editor__tab:where(.astro-a6e4hkwz){height:var(--vp-control);font-family:var(--vp-font-mono);color:#f8f8f2;background:#272822;align-items:center;padding:0 1rem;font-size:.8rem;display:flex;box-shadow:inset 0 2px #f8f8f2}.editor__copy:where(.astro-a6e4hkwz){width:var(--vp-control);height:var(--vp-control);color:#c8c8c0;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.editor__copy:where(.astro-a6e4hkwz):hover{color:#fff;background:#3e3d32}.editor__copy-done:where(.astro-a6e4hkwz),.editor__copy:where(.astro-a6e4hkwz).is-copied .editor__copy-icon:where(.astro-a6e4hkwz){display:none}.editor__copy:where(.astro-a6e4hkwz).is-copied .editor__copy-done:where(.astro-a6e4hkwz){color:#a6e22e;display:grid}.editor__copy-icon:where(.astro-a6e4hkwz){display:grid}.editor__body:where(.astro-a6e4hkwz) pre{font-family:var(--vp-font-mono);counter-reset:line;margin:0;padding:.9rem 0;font-size:.875rem;line-height:1.7;overflow-x:auto;background:0 0!important}.editor__body:where(.astro-a6e4hkwz) code{font-family:inherit}.editor__body:where(.astro-a6e4hkwz) .line{min-width:100%;padding-right:1rem;display:inline-block}.editor__body:where(.astro-a6e4hkwz) .line:before{counter-increment:line;content:counter(line);text-align:right;color:#9f9d8c;user-select:none;border-right:1px solid #3e3d32;width:2.25rem;margin-right:1rem;padding-right:.75rem;display:inline-block}.page:where(.astro-lcdefpme){--pad:clamp(1rem, 2.4vw, 1.75rem);border-inline:1px solid var(--vp-grid);background-image:linear-gradient(90deg, var(--vp-grid) 1px, transparent 1px);background-position:-1px 0;background-size:25% 100%;max-width:1200px;margin:0 auto}.row:where(.astro-lcdefpme){border-top:1px solid var(--vp-grid);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative}.row:where(.astro-lcdefpme):before,.row:where(.astro-lcdefpme):after{content:"";background:linear-gradient(var(--vp-faint), var(--vp-faint)) center / 1px 100% no-repeat, linear-gradient(var(--vp-faint), var(--vp-faint)) center / 100% 1px no-repeat;pointer-events:none;width:13px;height:13px;position:absolute;top:-7px}.row:where(.astro-lcdefpme):before{left:-7px}.row:where(.astro-lcdefpme):after{right:-7px}.head:where(.astro-lcdefpme){padding:clamp(3.5rem, 7vw, 5.5rem) var(--pad) clamp(2rem, 4vw, 3rem);grid-column:1/3}.head__credit:where(.astro-lcdefpme){font-family:var(--vp-font-mono);color:var(--vp-muted);margin-top:.75rem;font-size:.8rem}.head__lead:where(.astro-lcdefpme){color:var(--vp-muted);margin-top:1.1rem;font-size:1.2rem}h1:where(.astro-lcdefpme),h2:where(.astro-lcdefpme),h3:where(.astro-lcdefpme){color:var(--vp-text-strong);font-family:var(--vp-font-pixel);letter-spacing:0;margin:0;font-weight:400}h2:where(.astro-lcdefpme){text-wrap:balance;font-size:clamp(2.3rem,4.4vw,3.4rem);line-height:1.05}p:where(.astro-lcdefpme){margin:0}code:where(.astro-lcdefpme){font-family:var(--vp-font-mono)}.sr-only:where(.astro-lcdefpme){clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.btn:where(.astro-lcdefpme){height:var(--vp-control);border-radius:var(--vp-radius);font:500 .85rem/1 var(--vp-font-mono);white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn--primary:where(.astro-lcdefpme){background:var(--vp-accent);border-color:var(--vp-accent);color:var(--vp-accent-text)}.btn--primary:where(.astro-lcdefpme):hover{background:var(--vp-accent-hover);border-color:var(--vp-accent-hover)}.btn--secondary:where(.astro-lcdefpme){background:var(--vp-bg);border-color:var(--vp-border-strong);color:var(--vp-text-strong)}.btn--secondary:where(.astro-lcdefpme):hover{background:var(--vp-surface-2)}.btn--icon:where(.astro-lcdefpme){width:var(--vp-control);padding:0}:where(.astro-lcdefpme)[aria-pressed=true] .toggle__pause:where(.astro-lcdefpme),:where(.astro-lcdefpme)[aria-pressed=false] .toggle__play:where(.astro-lcdefpme){display:none}.toggle__pause:where(.astro-lcdefpme),.toggle__play:where(.astro-lcdefpme){align-items:center;gap:.5rem;display:inline-flex}.theme-icon:where(.astro-lcdefpme){display:grid}:where(.astro-lcdefpme)[data-theme-toggle][aria-pressed=false] .theme-icon--moon:where(.astro-lcdefpme),:where(.astro-lcdefpme)[data-theme-toggle][aria-pressed=true] .theme-icon--sun:where(.astro-lcdefpme){display:none}.nav:where(.astro-lcdefpme){z-index:50;background:var(--vp-bg);border-bottom:1px solid var(--vp-grid);position:sticky;top:0}.nav__inner:where(.astro-lcdefpme){align-items:center;gap:2rem;max-width:1200px;height:64px;margin:0 auto;padding:0 clamp(1rem,2.4vw,1.75rem);display:flex}.brand:where(.astro-lcdefpme){font-family:var(--vp-font-pixel);color:var(--vp-text-strong);white-space:nowrap;align-items:center;gap:.6rem;font-size:1.15rem;text-decoration:none;display:inline-flex}.nav__links:where(.astro-lcdefpme){gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.nav__links:where(.astro-lcdefpme) a:where(.astro-lcdefpme){height:var(--vp-control);border-radius:var(--vp-radius);color:var(--vp-muted);align-items:center;padding:0 .75rem;font-size:.875rem;text-decoration:none;display:flex}.nav__links:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{color:var(--vp-text-strong);background:var(--vp-surface-2)}.nav__actions:where(.astro-lcdefpme){gap:.5rem;margin-left:auto;display:flex}.hero:where(.astro-lcdefpme){background:#000;height:calc(100svh - 64px);min-height:640px;position:relative;overflow:hidden}.hero__video:where(.astro-lcdefpme){position:absolute;inset:0}.hero__video:where(.astro-lcdefpme) vega-player:where(.astro-lcdefpme){height:100%}.hero__video:where(.astro-lcdefpme) vega-player:where(.astro-lcdefpme)::part(video){object-fit:cover}.hero__grid:where(.astro-lcdefpme){--pad:clamp(1rem, 2.4vw, 1.75rem);z-index:2;pointer-events:none;background-image:linear-gradient(90deg,#ffffff38 1px,#0000 1px);background-position:-1px 0;background-size:25% 100%;border-inline:1px solid #ffffff38;grid-template-rows:1fr auto 76px;grid-template-columns:repeat(4,minmax(0,1fr));width:min(1200px,100%);display:grid;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.hero__panel:where(.astro-lcdefpme){padding:var(--pad);background:var(--vp-bg);border-block:1px solid var(--vp-grid);pointer-events:auto;grid-column:1/3;align-self:center}.hero:where(.astro-lcdefpme) h1:where(.astro-lcdefpme){text-wrap:balance;font-size:clamp(2.9rem,5.6vw,4.9rem);line-height:1.02}.hero__lead:where(.astro-lcdefpme){color:var(--vp-muted);margin-top:1.25rem;font-size:1.2rem;line-height:1.6}.hero__ctas:where(.astro-lcdefpme){flex-wrap:wrap;gap:.5rem;margin-top:1.75rem;display:flex}.hero__sound:where(.astro-lcdefpme){margin:var(--pad);pointer-events:auto;grid-area:1/3;place-self:start end}.hero__sound:where(.astro-lcdefpme)[hidden]{display:none}.hero__credit:where(.astro-lcdefpme){padding:.85rem var(--pad);border-bottom:1px solid var(--vp-grid);background:var(--vp-bg);font-family:var(--vp-font-mono);color:var(--vp-muted);pointer-events:auto;grid-area:1/4;align-self:start;gap:.25rem;font-size:.75rem;display:grid}.hero__credit-label:where(.astro-lcdefpme){color:var(--vp-text-strong)}.install:where(.astro-lcdefpme){width:100%;height:var(--vp-control);border:1px solid var(--vp-border);border-radius:var(--vp-radius);background:var(--vp-surface);color:var(--vp-muted);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:.75rem;margin-top:.5rem;padding:0 0 0 1rem;display:flex}.install:where(.astro-lcdefpme):hover{border-color:var(--vp-border-strong)}.install:where(.astro-lcdefpme) code:where(.astro-lcdefpme){text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--vp-text);flex:1;font-size:.8rem;overflow:hidden}.install__icon:where(.astro-lcdefpme),.install__done:where(.astro-lcdefpme){width:var(--vp-control);height:100%;color:var(--vp-muted);flex:none;place-items:center;display:grid}.install__done:where(.astro-lcdefpme){color:var(--vp-text-strong);display:none}.install:where(.astro-lcdefpme):hover .install__icon:where(.astro-lcdefpme){color:var(--vp-text-strong)}.install:where(.astro-lcdefpme).is-copied .install__icon:where(.astro-lcdefpme){display:none}.install:where(.astro-lcdefpme).is-copied .install__done:where(.astro-lcdefpme){display:grid}.frameworks:where(.astro-lcdefpme){border-top:0;align-items:center;overflow:hidden}.frameworks:where(.astro-lcdefpme):before,.frameworks:where(.astro-lcdefpme):after{display:none}.frameworks__title:where(.astro-lcdefpme){padding:var(--pad);font-family:var(--vp-font);color:var(--vp-muted);grid-column:1/4;font-size:1.15rem;font-weight:500}.frameworks__toggle:where(.astro-lcdefpme){padding:var(--pad);grid-column:4;justify-self:end}.marquee:where(.astro-lcdefpme){width:100%;padding-bottom:calc(var(--pad) * 1.5);grid-column:1/-1;display:flex;overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.marquee__track:where(.astro-lcdefpme){flex:none;gap:4.5rem;margin:0;padding:0 2.25rem;list-style:none;animation:45s linear infinite marquee;display:flex}.marquee:where(.astro-lcdefpme):hover .marquee__track:where(.astro-lcdefpme),.marquee:where(.astro-lcdefpme).is-paused .marquee__track:where(.astro-lcdefpme){animation-play-state:paused}.marquee:where(.astro-lcdefpme) li:where(.astro-lcdefpme){font-family:var(--vp-font-pixel);white-space:nowrap;color:var(--vp-text);font-size:1.9rem}@keyframes marquee{to{transform:translate(-100%)}}@media (prefers-reduced-motion:reduce){.marquee:where(.astro-lcdefpme){padding-inline:var(--pad);mask-image:none}.marquee__track:where(.astro-lcdefpme){flex-wrap:wrap;flex:1;gap:.75rem 2rem;padding:0;animation:none}.marquee__track:where(.astro-lcdefpme)[aria-hidden=true],.frameworks__toggle:where(.astro-lcdefpme){display:none}}.tabs:where(.astro-lcdefpme){padding:0 calc(var(--pad) - .75rem);border-bottom:1px solid var(--vp-grid);scrollbar-width:none;grid-column:1/-1;gap:.25rem;display:flex;overflow-x:auto}.tabs:where(.astro-lcdefpme)::-webkit-scrollbar{display:none}.tabs:where(.astro-lcdefpme) :where(.astro-lcdefpme)[role=tab]{height:var(--vp-control);color:var(--vp-muted);font:500 .85rem var(--vp-font-mono);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:0 .75rem}.tabs:where(.astro-lcdefpme) :where(.astro-lcdefpme)[role=tab]:hover{color:var(--vp-text-strong);border-bottom-color:var(--vp-border-strong)}.tabs:where(.astro-lcdefpme) :where(.astro-lcdefpme)[role=tab][aria-selected=true]{color:var(--vp-text-strong);border-bottom-color:var(--vp-text-strong)}.tabs:where(.astro-lcdefpme) :where(.astro-lcdefpme)[role=tab]:focus-visible{outline-offset:-4px}.panel:where(.astro-lcdefpme){grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.panel:where(.astro-lcdefpme)[hidden]{display:none}.panel__code:where(.astro-lcdefpme){padding:var(--pad);flex-direction:column;grid-column:1/3;gap:.6rem;display:flex}.panel__code:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){font-size:1.75rem}.panel__code:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--vp-muted);margin-bottom:1rem;font-size:1.05rem}.panel__live:where(.astro-lcdefpme){padding:var(--pad);flex-direction:column;grid-column:3/5;justify-content:center;gap:1rem;display:flex}.panel__live:where(.astro-lcdefpme) vega-player:where(.astro-lcdefpme){border-radius:var(--vp-radius);overflow:hidden}.api__log:where(.astro-lcdefpme){font-family:var(--vp-font-mono);color:#f8f8f2;margin:0;padding:1rem;font-size:.85rem;line-height:1.7;overflow-x:auto}.api:where(.astro-lcdefpme){gap:.75rem;display:grid}.api__buttons:where(.astro-lcdefpme){flex-wrap:wrap;gap:.5rem;display:flex}.api__log:where(.astro-lcdefpme){border-radius:var(--vp-radius);background:#272822;min-height:9.5rem}.features:where(.astro-lcdefpme){grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.features:where(.astro-lcdefpme) li:where(.astro-lcdefpme){border-top:1px solid var(--vp-grid)}.features:where(.astro-lcdefpme) a:where(.astro-lcdefpme){height:100%;padding:var(--pad);color:var(--vp-muted);flex-direction:column;gap:.6rem;text-decoration:none;transition:background .15s;display:flex}.features:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{background:var(--vp-surface)}.features__icon:where(.astro-lcdefpme){width:24px;height:24px;color:var(--vp-text-strong);margin-bottom:1rem;display:block}.features:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){font-size:1.45rem}.features:where(.astro-lcdefpme) p:where(.astro-lcdefpme){font-size:1rem;line-height:1.55}.stats:where(.astro-lcdefpme){border-top:1px solid var(--vp-grid);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat:where(.astro-lcdefpme){padding:var(--pad);flex-direction:column;gap:.4rem;display:flex}.stat:where(.astro-lcdefpme) strong:where(.astro-lcdefpme){font-family:var(--vp-font-pixel);color:var(--vp-text-strong);font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,4.4vw,3.4rem);font-weight:400;line-height:1}.stat:where(.astro-lcdefpme)>span:where(.astro-lcdefpme){color:var(--vp-muted);font-size:1rem}.suites:where(.astro-lcdefpme){border-top:1px solid var(--vp-grid);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.suite:where(.astro-lcdefpme){padding:var(--pad)}.suite__head:where(.astro-lcdefpme){justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.6rem;display:flex}.suite__name:where(.astro-lcdefpme){font-family:var(--vp-font-pixel);color:var(--vp-text-strong);font-size:1.35rem}.suite__result:where(.astro-lcdefpme){font-family:var(--vp-font-mono);color:var(--vp-text-strong);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.suite__text:where(.astro-lcdefpme){color:var(--vp-muted);font-size:.95rem}.footnote:where(.astro-lcdefpme){padding:var(--pad);border-top:1px solid var(--vp-grid);color:var(--vp-muted);grid-column:1/-1;font-size:.875rem}.footnote:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--vp-text-strong);text-underline-offset:3px}.cta:where(.astro-lcdefpme){border-bottom:1px solid var(--vp-grid);align-items:end}.cta__text:where(.astro-lcdefpme){padding:clamp(3.5rem, 7vw, 5.5rem) var(--pad) var(--pad);grid-column:1/3}.cta__text:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--vp-muted);margin-top:1rem;font-size:1.15rem}.cta__actions:where(.astro-lcdefpme){padding:var(--pad);flex-wrap:wrap;grid-column:3/5;gap:.5rem;display:flex}.footer:where(.astro-lcdefpme){background:var(--vp-bg)}.pixels:where(.astro-lcdefpme){width:100%;display:block}.footer__demo:where(.astro-lcdefpme){align-items:center}.footer__demo-text:where(.astro-lcdefpme){padding:clamp(3rem, 6vw, 4.5rem) var(--pad);grid-column:1/3}.footer__demo-text:where(.astro-lcdefpme) h2:where(.astro-lcdefpme){font-size:clamp(2rem,3.6vw,2.8rem)}.footer__demo-text:where(.astro-lcdefpme)>p:where(.astro-lcdefpme){color:var(--vp-muted);margin:.9rem 0 1.5rem;font-size:1.1rem}.footer__demo-player:where(.astro-lcdefpme){padding:var(--pad);grid-column:3/5;justify-items:start;gap:.75rem;display:grid}.ambient:where(.astro-lcdefpme){border-radius:var(--vp-radius);pointer-events:none;width:100%;overflow:hidden}.footer__links:where(.astro-lcdefpme){padding-bottom:3rem}.footer__brand:where(.astro-lcdefpme){padding:var(--pad);grid-column:1}.footer__brand:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--vp-muted);margin-top:.75rem;font-size:.85rem}.footer__cols:where(.astro-lcdefpme){grid-column:2/5;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.footer__cols:where(.astro-lcdefpme)>div:where(.astro-lcdefpme){padding:var(--pad)}.footer:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){margin-bottom:.9rem;font-size:1.2rem}.footer:where(.astro-lcdefpme) ul:where(.astro-lcdefpme){gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.footer:where(.astro-lcdefpme) ul:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--vp-muted);font-size:.875rem;text-decoration:none}.footer:where(.astro-lcdefpme) ul:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{color:var(--vp-text-strong);text-decoration:underline}@media (width<=1024px){.nav__links:where(.astro-lcdefpme){display:none}.page:where(.astro-lcdefpme){background-size:50% 100%}.head:where(.astro-lcdefpme),.frameworks__title:where(.astro-lcdefpme),.panel__code:where(.astro-lcdefpme),.panel__live:where(.astro-lcdefpme),.cta__text:where(.astro-lcdefpme),.cta__actions:where(.astro-lcdefpme),.footer__demo-text:where(.astro-lcdefpme),.footer__demo-player:where(.astro-lcdefpme){grid-column:1/-1}.frameworks__title:where(.astro-lcdefpme){grid-column:1/4}.panel__live:where(.astro-lcdefpme){padding-top:0}.features:where(.astro-lcdefpme),.stats:where(.astro-lcdefpme),.suites:where(.astro-lcdefpme){grid-template-columns:repeat(2,minmax(0,1fr))}.footer__brand:where(.astro-lcdefpme),.footer__cols:where(.astro-lcdefpme){grid-column:1/-1}.hero__panel:where(.astro-lcdefpme){grid-column:1/4}.hero__credit:where(.astro-lcdefpme){grid-column:3/5}}@media (width<=720px){.nav__docs:where(.astro-lcdefpme){display:none}.nav__inner:where(.astro-lcdefpme){gap:1rem}.page:where(.astro-lcdefpme){background-size:100% 100%}.hero:where(.astro-lcdefpme){background:var(--vp-bg);height:auto;min-height:0}.hero__video:where(.astro-lcdefpme){position:relative}.hero__video:where(.astro-lcdefpme) vega-player:where(.astro-lcdefpme){height:auto}.hero__grid:where(.astro-lcdefpme){background:0 0;border:0;width:auto;display:block;position:static;transform:none}.hero__panel:where(.astro-lcdefpme){padding:2rem var(--pad);border-block:0}.hero__credit:where(.astro-lcdefpme){padding:0 var(--pad) 2rem;border:0}.hero__sound:where(.astro-lcdefpme){margin:0 var(--pad) 1.5rem}.frameworks__title:where(.astro-lcdefpme),.frameworks__toggle:where(.astro-lcdefpme){grid-column:1/-1;justify-self:start}.frameworks__toggle:where(.astro-lcdefpme){padding-top:0}.features:where(.astro-lcdefpme),.stats:where(.astro-lcdefpme),.footer__cols:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr)}.stats:where(.astro-lcdefpme){grid-template-columns:repeat(2,minmax(0,1fr))}.suites:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr)}.hero__ctas:where(.astro-lcdefpme) .btn:where(.astro-lcdefpme),.cta__actions:where(.astro-lcdefpme) .btn:where(.astro-lcdefpme){flex:auto}.row:where(.astro-lcdefpme):before,.row:where(.astro-lcdefpme):after{display:none}}
