@property --_lb-floor{syntax:"<number>";inherits:false;initial-value:0}@property --lb-press-x{syntax:"<percentage>";inherits:false;initial-value:50%}@property --_lb-press-r{syntax:"<length>";inherits:false;initial-value:130px}@property --lb-press-y{syntax:"<percentage>";inherits:false;initial-value:50%}@property --_lb-pressed{syntax:"<number>";inherits:false;initial-value:0}@property --_lb-solid{syntax:"<number>";inherits:false;initial-value:0}@layer liquid-blur{:root{--lb-transparency:.5;--lb-depth:.5;--lb-stretch:2;--lb-tint:#007aff;--lb-tint-text:#fff;--lb-fill-light:#fff;--lb-fill-dark:#3a3a3a;--lb-text-light:#000;--lb-text-dark:#fff;--lb-shade-color:#000;--lb-shine-color:#fff;--lb-highlight-size:1;--lb-swell:1.1;--_lb-spring:linear(0, .0138, .0504, .1035, .1676, .2385, .3127, .3875, .4606, .5307, .5965, .6573, .7128, .7626, .8069, .8458, .8795, .9083, .9328, .9532, .97, .9836, .9944, 1.0028, 1.0091, 1.0136, 1.0168, 1.0187, 1.0197, 1.0199, 1.0196, 1.0188, 1.0177, 1.0164, 1.015, 1.0135, 1.012, 1.0105, 1.0091, 1.0079, 1.0067, 1.0056, 1.0046, 1.0037, 1.003, 1.0023, 1.0017, 1.0013, 1);--_lb-spring-duration:.558s;--_lb-hair:.5px;--_lb-light-alpha:.72;--_lb-light-alpha-clear:.3;--_lb-light-tint-alpha:.85;--_lb-light-blur:8px;--_lb-light-saturate:2;--_lb-light-rim-top:.5;--_lb-light-rim-bottom:.3;--_lb-light-edge:.08;--_lb-light-shadow:.06;--_lb-light-shade:.06;--_lb-light-shade-size:18px;--_lb-light-shade-v:.4;--_lb-light-shade-focus:.65;--_lb-light-glow:.2;--_lb-light-glow-size:12px;--_lb-light-press:.8;--_lb-dark-alpha:.62;--_lb-dark-alpha-clear:.25;--_lb-dark-tint-alpha:.8;--_lb-dark-blur:10px;--_lb-dark-saturate:2;--_lb-dark-rim-top:.3;--_lb-dark-rim-bottom:.2;--_lb-dark-edge:.5;--_lb-dark-shadow:0;--_lb-dark-shade:.25;--_lb-dark-shade-size:18px;--_lb-dark-shade-v:.4;--_lb-dark-shade-focus:.65;--_lb-dark-glow:.08;--_lb-dark-glow-size:4px;--_lb-dark-press:.13}@media (resolution<1.5x){:root{--_lb-hair:1px}}:root,[data-theme=light]{--lb-dark:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lb-dark:1}}[data-theme=dark]{--lb-dark:1}.lb{--_lb-alpha:calc(var(--_lb-light-alpha) + (var(--_lb-dark-alpha) - var(--_lb-light-alpha)) * var(--lb-dark));--_lb-alpha-clear:calc(var(--_lb-light-alpha-clear) + (var(--_lb-dark-alpha-clear) - var(--_lb-light-alpha-clear)) * var(--lb-dark));--_lb-tint-alpha:calc(var(--_lb-light-tint-alpha) + (var(--_lb-dark-tint-alpha) - var(--_lb-light-tint-alpha)) * var(--lb-dark));--_lb-blur:calc(var(--_lb-light-blur) + (var(--_lb-dark-blur) - var(--_lb-light-blur)) * var(--lb-dark));--_lb-saturate:calc(var(--_lb-light-saturate) + (var(--_lb-dark-saturate) - var(--_lb-light-saturate)) * var(--lb-dark));--_lb-rim-top:calc(var(--_lb-light-rim-top) + (var(--_lb-dark-rim-top) - var(--_lb-light-rim-top)) * var(--lb-dark));--_lb-rim-bottom:calc(var(--_lb-light-rim-bottom) + (var(--_lb-dark-rim-bottom) - var(--_lb-light-rim-bottom)) * var(--lb-dark));--_lb-edge:calc(var(--_lb-light-edge) + (var(--_lb-dark-edge) - var(--_lb-light-edge)) * var(--lb-dark));--_lb-shadow:calc(var(--_lb-light-shadow) + (var(--_lb-dark-shadow) - var(--_lb-light-shadow)) * var(--lb-dark));--_lb-shade:calc(var(--_lb-light-shade) + (var(--_lb-dark-shade) - var(--_lb-light-shade)) * var(--lb-dark));--_lb-shade-size:calc(var(--_lb-light-shade-size) + (var(--_lb-dark-shade-size) - var(--_lb-light-shade-size)) * var(--lb-dark));--_lb-shade-v:calc(var(--_lb-light-shade-v) + (var(--_lb-dark-shade-v) - var(--_lb-light-shade-v)) * var(--lb-dark));--_lb-shade-focus:calc(var(--_lb-light-shade-focus) + (var(--_lb-dark-shade-focus) - var(--_lb-light-shade-focus)) * var(--lb-dark));--_lb-glow:calc(var(--_lb-light-glow) + (var(--_lb-dark-glow) - var(--_lb-light-glow)) * var(--lb-dark));--_lb-glow-size:calc(var(--_lb-light-glow-size) + (var(--_lb-dark-glow-size) - var(--_lb-light-glow-size)) * var(--lb-dark));--_lb-press:calc(var(--_lb-light-press) + (var(--_lb-dark-press) - var(--_lb-light-press)) * var(--lb-dark));--_color:var(--lb-fill,color-mix(in srgb, var(--lb-fill-dark) calc(var(--lb-dark) * 100%), var(--lb-fill-light)));--_a-default:var(--_lb-alpha);--_a-clear:var(--_lb-alpha-clear);--_t:max(var(--lb-transparency), var(--_lb-floor,0));--_alpha:max(var(--_lb-solid,0), calc(var(--_a-default) + (1 - var(--_a-default)) * max(0, 1 - 2 * var(--_t)) - (var(--_a-default) - var(--_a-clear)) * max(0, 2 * var(--_t) - 1)));--_fill:color-mix(in srgb, var(--_color) calc(var(--_alpha) * 100%), transparent);--_blur:calc(var(--_lb-blur) * (1 - .4 * max(0, 2 * var(--_t) - 1)));--_backdrop:blur(var(--_blur)) saturate(var(--_lb-saturate));--_k:calc(2 * var(--lb-depth));--_s:var(--_lb-shade-size);--_sv:calc(var(--_lb-shade-size) * .6);--_a:calc(var(--_lb-shade) * var(--_k));--_v:calc(var(--_a) * var(--_lb-shade-v));--_p:calc(2 + var(--_lb-shade-focus) * 4);--_ends:linear-gradient(to right, color-mix(in srgb, var(--lb-shade-color) calc(var(--_a) * 100%), transparent) 0, color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.875, var(--_p))) * 100%), transparent) calc(var(--_s) * .125), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.75, var(--_p))) * 100%), transparent) calc(var(--_s) * .25), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.625, var(--_p))) * 100%), transparent) calc(var(--_s) * .375), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.5, var(--_p))) * 100%), transparent) calc(var(--_s) * .5), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.375, var(--_p))) * 100%), transparent) calc(var(--_s) * .625), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.25, var(--_p))) * 100%), transparent) calc(var(--_s) * .75), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.125, var(--_p))) * 100%), transparent) calc(var(--_s) * .875), transparent min(50%, var(--_s)), transparent max(50%, calc(100% - var(--_s))), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.125, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .875), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.25, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .75), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.375, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .625), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.5, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .5), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.625, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .375), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.75, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .25), color-mix(in srgb, var(--lb-shade-color) calc((var(--_a) * pow(.875, var(--_p))) * 100%), transparent) calc(100% - var(--_s) * .125), color-mix(in srgb, var(--lb-shade-color) calc(var(--_a) * 100%), transparent) 100%);--_rows:linear-gradient(to bottom, color-mix(in srgb, var(--lb-shade-color) calc(var(--_v) * 100%), transparent) 0, color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.875, var(--_p))) * 100%), transparent) calc(var(--_sv) * .125), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.75, var(--_p))) * 100%), transparent) calc(var(--_sv) * .25), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.625, var(--_p))) * 100%), transparent) calc(var(--_sv) * .375), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.5, var(--_p))) * 100%), transparent) calc(var(--_sv) * .5), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.375, var(--_p))) * 100%), transparent) calc(var(--_sv) * .625), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.25, var(--_p))) * 100%), transparent) calc(var(--_sv) * .75), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.125, var(--_p))) * 100%), transparent) calc(var(--_sv) * .875), transparent min(50%, var(--_sv)), transparent max(50%, calc(100% - var(--_sv))), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.125, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .875), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.25, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .75), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.375, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .625), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.5, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .5), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.625, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .375), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.75, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .25), color-mix(in srgb, var(--lb-shade-color) calc((var(--_v) * pow(.875, var(--_p))) * 100%), transparent) calc(100% - var(--_sv) * .125), color-mix(in srgb, var(--lb-shade-color) calc(var(--_v) * 100%), transparent) 100%);--_g:calc(var(--_lb-glow) * var(--_k));--_glow:linear-gradient(to bottom, color-mix(in srgb, var(--lb-shine-color) calc(min(1, var(--_g))*100%) , transparent) 0, transparent var(--_lb-glow-size), transparent calc(100% - var(--_lb-glow-size)), color-mix(in srgb, var(--lb-shine-color) calc(min(1, var(--_g) * .6)*100%) , transparent) 100%);color:var(--lb-text,color-mix(in srgb, var(--lb-text-dark) calc(var(--lb-dark) * 100%), var(--lb-text-light)));background:var(--_glow),var(--_ends),var(--_rows),var(--_fill);backdrop-filter:var(--_backdrop);box-shadow:inset 0 var(--_lb-hair) 0 color-mix(in srgb,var(--lb-shine-color) calc(min(1,var(--_lb-rim-top) * var(--_k))*100%),transparent),inset 0 calc(var(--_lb-hair) * -1) 0 color-mix(in srgb,var(--lb-shine-color) calc(min(1,var(--_lb-rim-bottom) * var(--_k))*100%),transparent),0 0 0 var(--_lb-hair) color-mix(in srgb,var(--lb-shade-color) calc(var(--_lb-edge) * 100%),transparent),0 2px 10px -3px color-mix(in srgb,var(--lb-shade-color) calc(var(--_lb-shadow) * 100%),transparent);border-radius:9999px}.lb.lb-clear{--_lb-floor:1}.lb.lb-tinted{--_color:var(--lb-tint);--_a-default:var(--_lb-tint-alpha);--_a-clear:calc(var(--_lb-tint-alpha) * .6);color:var(--lb-tint-text)}:is(.lb,.lb-group>*):is(.lb-highlight,.lb-swell,.lb-stretch,.lb-interactive){-webkit-tap-highlight-color:transparent}:root:not([data-lb-interaction]) .lb:is(.lb-highlight,.lb-swell,.lb-interactive){transition:scale var(--_lb-spring-duration) var(--_lb-spring),--_lb-pressed .42s ease-out}:root:not([data-lb-interaction]) .lb:is(.lb-highlight,.lb-swell,.lb-interactive):active{--_lb-pressed:1;transition:scale var(--_lb-spring-duration) var(--_lb-spring),--_lb-pressed .12s ease-out}.lb:is(.lb-highlight,.lb-interactive){--_h:calc(var(--_lb-press) * var(--_lb-pressed,0));--_w:.25;--_highlight:radial-gradient(circle calc(var(--_lb-press-r,130px) * var(--lb-highlight-size)) at var(--lb-press-x,50%) var(--lb-press-y,50%), color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * 1) * 100%), transparent) 0%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .956) * 100%), transparent) 10%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .833) * 100%), transparent) 20%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .663) * 100%), transparent) 30%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .481) * 100%), transparent) 40%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .317) * 100%), transparent) 50%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .189) * 100%), transparent) 60%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .1) * 100%), transparent) 70%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .046) * 100%), transparent) 80%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * .015) * 100%), transparent) 90%, color-mix(in srgb, var(--lb-shine-color) calc(var(--_h) * (var(--_w) + (1 - var(--_w)) * 0) * 100%), transparent) 100%);background:var(--_highlight),var(--_glow),var(--_ends),var(--_rows),var(--_fill)}:root:not([data-lb-interaction]) .lb:is(.lb-swell,.lb-interactive):active{scale:var(--lb-swell)}:is(.lb,.lb-group>*):is(.lb-stretch,.lb-interactive){touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.lb.lb-group{--lb-merge:24px;backdrop-filter:none;box-shadow:none;background:0 0;border-radius:0;position:relative}.lb-group>.lb-group__glass{pointer-events:none;background:var(--_fill);backdrop-filter:var(--_backdrop);position:absolute}.lb-group>.lb-group__paint{pointer-events:none;position:absolute}.lb-group__glass>.lb-group__volume{pointer-events:none;will-change:transform;position:absolute}.lb-group:not([data-lb-melted])>:is(.lb-group__glass,.lb-group__paint){visibility:hidden}.lb-group>:not(.lb-group__glass,.lb-group__paint){z-index:1;position:relative}.lb-group[data-lb-melted]>.lb{backdrop-filter:none;box-shadow:none;background:0 0}.lb-group[data-lb-melted]>.lb:is(.lb-highlight,.lb-interactive){background:var(--_highlight)}.lb-group[data-lb-melted]>.lb.lb-tinted{background:var(--_fill)}.lb-group[data-lb-melted]>.lb.lb-tinted:is(.lb-highlight,.lb-interactive){background:var(--_highlight),var(--_fill)}[data-lb-material=solid] :is(.lb,.lb-group__glass){--_lb-solid:1;backdrop-filter:none}@media (prefers-reduced-transparency:reduce){:is(.lb,.lb-group__glass){--_lb-solid:1;backdrop-filter:none}}@media (prefers-contrast:more){.lb{--_lb-solid:1;--_lb-edge:.6}}@media (forced-colors:active){.lb:not(.lb-group){outline-offset:-1px;outline:1px solid canvastext}.lb-group[data-lb-melted]>.lb{outline:none}.lb-group__glass>.lb-group__volume{display:none}}@media (prefers-reduced-motion:reduce){:root:not([data-lb-interaction]) .lb:is(.lb-swell,.lb-interactive):active{scale:1}}}:root{--ink:#171717;--ink-2:#17171780;--ink-3:#1717175c;--ink-4:#17171733;--ink-hover:#000;--on-ink:#fff;--ground:#fff;--wash:#f3f3f2;--pill:#ececec;--pill-hover:#e4e4e4;--thumb:#fff;--hair:#17171717;--glow:#17171729;--shot:0 30px 80px #00000024;--font:"Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--glide:cubic-bezier(.22, 1, .36, 1);--settle:cubic-bezier(.2, .9, .3, 1.02);--page-pad:24px;--max-w:1280px;--edge:max(var(--page-pad), calc((100% - var(--max-w)) / 2 + var(--page-pad)));--radius:18px;--lb-text-light:#171717;--lb-text-dark:#f5f5f7;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f5f5f7;--ink-2:#f5f5f78f;--ink-3:#f5f5f761;--ink-4:#f5f5f733;--ink-hover:#fff;--on-ink:#0a0a0a;--ground:#0a0a0a;--wash:#151515;--pill:#232323;--pill-hover:#2c2c2c;--thumb:#3a3a3c;--hair:#ffffff1a;--glow:#ffffff29;--shot:0 30px 80px #0009;color-scheme:dark}}:root[data-theme=dark]{--ink:#f5f5f7;--ink-2:#f5f5f78f;--ink-3:#f5f5f761;--ink-4:#f5f5f733;--ink-hover:#fff;--on-ink:#0a0a0a;--ground:#0a0a0a;--wash:#151515;--pill:#232323;--pill-hover:#2c2c2c;--thumb:#3a3a3c;--hair:#ffffff1a;--glow:#ffffff29;--shot:0 30px 80px #0009;color-scheme:dark}@media (width<=720px){:root{--page-pad:20px}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px}body{background:var(--ground);color:var(--ink);font:400 16px/1.55 var(--font);font-feature-settings:"cv11", "ss03";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;transition:background-color .3s,color .3s}h1,h2,h3,h4,p,figure,ul,ol,dl,dd,pre{margin:0}h1,h2,h3,h4{font:inherit}b,strong{color:var(--ink);font-weight:500}.lb :is(b,strong){color:inherit}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:0;padding:0}:where(button:not(.lb)){color:inherit;background:0 0}input{font:inherit;color:inherit}svg{flex:none;display:block}::selection{background:#007aff38}:focus-visible{outline-offset:2px;border-radius:999px;outline:2px solid #0a84ff}code{font-family:var(--mono);background:var(--pill);color:var(--ink);white-space:nowrap;border-radius:6px;padding:.12em .4em;font-size:.875em}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nav{z-index:50;padding:0 var(--edge);pointer-events:none;margin-top:12px;position:sticky;top:12px}.nav__bar{pointer-events:auto;align-items:center;gap:24px;height:52px;padding:0 6px 0 16px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-weight:500;display:flex}.brand__by{color:var(--ink-3);font-weight:400}.nav__links{gap:22px;margin-left:auto;display:flex}.nav__links a{color:var(--ink-3);transition:color .15s}.nav__links a:hover{color:var(--ink)}.nav__end{align-items:center;gap:6px;display:flex}.nav__links+.nav__end{margin-left:4px}.icon-link{width:40px;height:40px;color:var(--ink-2);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid}.icon-link:hover{color:var(--ink);background:var(--hair)}@media (width<=860px){.nav__links{display:none}.nav__links+.nav__end{margin-left:auto}}@media (width<=640px){.brand__by{display:none}}.mark{--s:1;width:calc(36px * var(--s));height:calc(20px * var(--s));isolation:isolate;flex:none;position:relative}.mark:before,.mark:after{content:"";z-index:-1;border-radius:50%;position:absolute}.mark:before{aspect-ratio:1;background:#ff4f81;width:56%;top:-14%;left:4%}.mark:after{aspect-ratio:1;background:#2f7bff;width:52%;bottom:-16%;right:2%}.mark .lb{--lb-depth:.7;--lb-transparency:.8;position:absolute;inset:0}.mark--hero{--s:4}.button{white-space:nowrap;height:44px;transition:transform .25s var(--glide), background-color .15s, box-shadow .25s var(--glide);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:500;display:inline-flex}.button:active{transform:scale(.98)}.button--ink{background:var(--ink);color:var(--on-ink)}.button--ink:hover{background:var(--ink-hover);transform:translateY(-1px);box-shadow:0 10px 24px #0000002e}.button--wash{background:var(--pill);color:var(--ink)}.button--wash:hover{background:var(--pill-hover)}.breathe{isolation:isolate;position:relative}.breathe:before{content:"";background:var(--glow);filter:blur(22px);z-index:-1;border-radius:999px;animation:2.6s ease-in-out infinite alternate breathe;position:absolute;inset:-6px}@keyframes breathe{0%{opacity:.55;transform:scale(.94)}to{opacity:1;transform:scale(1.04)}}.seg{background:var(--pill);isolation:isolate;border-radius:999px;padding:3px;display:inline-flex;position:relative}.seg button{z-index:1;height:30px;color:var(--ink-3);border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:14px;font-weight:500;transition:color .2s;display:inline-flex;position:relative}.seg button:hover{color:var(--ink-2)}.seg button[aria-pressed=true]{color:var(--ink)}.seg__thumb{z-index:0;background:var(--thumb);width:0;transition:transform .45s var(--settle), width .45s var(--settle);border-radius:999px;position:absolute;top:3px;bottom:3px;left:0;box-shadow:0 1px 3px #0000001a,0 0 0 .5px #0000000a}.seg.is-instant .seg__thumb{transition:none}.seg--glass{background:0 0;padding:0}.seg--glass button{justify-content:center;width:36px;height:36px;padding:0}.seg--glass .seg__thumb{background:var(--hair);box-shadow:none;top:0;bottom:0}.hero{padding:clamp(56px, 9vw, 112px) var(--edge) 48px}.hero .mark{margin-bottom:40px}.lead{color:var(--ink-2);text-wrap:pretty;max-width:62ch}.lead a,.prose a{color:var(--ink);border-bottom:1px solid var(--hair);transition:border-color .15s}.lead a:hover,.prose a:hover{border-color:var(--ink)}.inline-icon{vertical-align:-3px;margin:0 2px 0 4px;display:inline-block}.actions{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}.fine{color:var(--ink-3);margin-top:16px}.fine a{color:var(--ink-2);border-bottom:1px solid var(--hair)}.fine a:hover{color:var(--ink)}.rise{opacity:0;animation:rise .9s var(--glide) forwards;animation-delay:calc(var(--i,0) * 80ms + 60ms);transform:translateY(14px)}@keyframes rise{to{opacity:1;transform:none}}.js .reveal{opacity:0;transition:opacity .9s var(--glide), transform .9s var(--glide);transition-delay:var(--d,0s);transform:translateY(14px)}.js .reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rise,.js .reveal{opacity:1;transition:none;animation:none;transform:none}.breathe:before{animation:none}}.block{padding:clamp(64px, 9vw, 120px) var(--edge) 0}.block>.lead{margin-bottom:40px}.block--wash{background:var(--wash);margin-top:clamp(64px,9vw,120px);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(56px,7vw,88px)}.bd{position:absolute;inset:0;overflow:hidden}.bd[hidden]{display:none}.bd-aurora,.bd-stripes{contain:strict}.bd-aurora:before,.bd-stripes:before{content:"";will-change:transform;position:absolute;top:0;left:0}.js .bd:not(.is-live):before{animation-play-state:paused}.bd-aurora{background:#f4ecff}.bd-aurora:before{background:radial-gradient(38% 55% at 18% 28%,#ff4f81 0,#0000 70%),radial-gradient(42% 50% at 78% 22%,#ffb020 0,#0000 70%),radial-gradient(48% 60% at 62% 82%,#2f7bff 0,#0000 70%),radial-gradient(36% 48% at 14% 86%,#1fd1a5 0,#0000 70%),radial-gradient(30% 40% at 46% 46%,#b45cff 0,#0000 70%);width:160%;height:160%;animation:22s ease-in-out infinite alternate drift}:root[data-theme=dark] .bd-aurora{background-color:#120a22}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bd-aurora{background-color:#120a22}}@keyframes drift{0%{transform:translate(0)}50%{transform:translate(-37.5%,-11.25%)}to{transform:translate(-15%,-37.5%)}}.bd-stripes:before{background:repeating-linear-gradient(115deg,#ff3b30 0 26px,#ff9500 26px 52px,#fc0 52px 78px,#34c759 78px 104px,#0a84ff 104px 130px,#af52de 130px 156px) 0 0/400px 400px;width:calc(100% + 400px);height:100%;animation:16s linear infinite slide;left:-400px}@keyframes slide{to{transform:translate(400px)}}.bd-type{background:var(--ground);color:var(--ink);letter-spacing:-.04em;white-space:nowrap;user-select:none;flex-direction:column;justify-content:center;font-size:clamp(44px,7vw,76px);font-weight:600;line-height:.95;display:flex}.bd-type span:nth-child(2n){color:#0a84ff;padding-left:.6em}.bd-type span:nth-child(3n){color:#ff4f81;padding-left:.3em}.bd-dots{background:radial-gradient(circle at center, var(--ink) 0 2.2px, transparent 2.6px) 0 0 / 18px 18px, var(--wash)}@media (prefers-reduced-motion:reduce){.bd-aurora:before,.bd-stripes:before{animation:none}}.stage{padding:0 var(--edge)}.stage__panel{background:var(--wash);border-radius:var(--radius);animation:settle 1.1s var(--settle) .35s both;padding:clamp(16px,4vw,56px)}@keyframes settle{0%{opacity:0;transform:translateY(24px)scale(.985)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.stage__panel{animation:none}}.stage__hint{text-align:center;color:var(--ink-3);margin-top:16px}.screen{background:var(--ground);height:clamp(520px,52vw,660px);box-shadow:var(--shot), 0 0 0 .5px var(--hair);isolation:isolate;border-radius:16px;position:relative;overflow:hidden}.feed{overflow-anchor:none;position:absolute;inset:0;overflow:hidden}.feed__track{will-change:transform}.feed__loop{padding:84px clamp(16px,3vw,32px) 24px}.feed__title{letter-spacing:-.03em;margin-bottom:20px;font-size:clamp(26px,3vw,32px);font-weight:600;line-height:1.1}.feed__head{margin:28px 0 12px;font-weight:600}.features{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.feature{aspect-ratio:16/9;color:#fff;border-radius:14px;flex-direction:column;justify-content:flex-end;padding:18px;display:flex;position:relative;overflow:hidden}.feature small{letter-spacing:.06em;text-transform:uppercase;opacity:.8;font-size:12px;font-weight:600}.feature strong{color:#fff;letter-spacing:-.02em;font-size:clamp(18px,2.2vw,26px);font-weight:600;line-height:1.15}.covers{grid-template-columns:repeat(5,1fr);gap:18px 14px;display:grid}.cover__art{aspect-ratio:1;border-radius:10px;margin-bottom:8px;box-shadow:0 0 0 .5px #0000000f}.cover__name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:1.3;overflow:hidden}.cover__by{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.3;overflow:hidden}.tracks{padding:0;list-style:none}.track{border-bottom:1px solid var(--hair);grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:8px 0;font-size:14px;display:grid}.track__art{border-radius:6px;width:44px;height:44px}.track__by{color:var(--ink-3);font-size:13px}.track__time{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:13px}@media (width<=900px){.covers{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.features{grid-template-columns:1fr}.covers{grid-template-columns:repeat(2,1fr)}}.screen__top{pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute;top:14px;left:14px;right:14px}.screen__top>*{pointer-events:auto}.round{place-items:center;width:44px;height:44px;display:grid}.pair{align-items:center;height:44px;padding:0 4px;display:flex}.pair button{border-radius:999px;place-items:center;width:36px;height:36px;display:grid}.screen__seg{align-items:center;height:44px;margin:0 auto;padding:4px;display:flex}.screen__seg .seg{background:0 0;padding:0}.screen__seg .seg button{height:36px;padding:0 16px}.screen__seg .seg button:not([aria-pressed=true]):hover{color:var(--ink-3)}.screen__seg .seg__thumb{background:var(--hair);box-shadow:none;top:0;bottom:0}.screen__bottom{pointer-events:none;justify-content:center;align-items:flex-end;gap:10px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.screen__bottom>*{pointer-events:auto}.player{flex:0 440px;align-items:center;gap:12px;min-width:0;height:56px;padding:0 8px 0 12px;display:flex}.player__art{border-radius:8px;flex:none;width:40px;height:40px}.player__meta{flex:1;min-width:0;font-size:14px;line-height:1.25}.player__meta span{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.player__meta strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.player button{border-radius:999px;place-items:center;width:40px;height:40px;display:grid}.player [data-play] .is-pause,.player [data-play][aria-pressed=true] .is-play{display:none}.player [data-play][aria-pressed=true] .is-pause{display:block}.screen__bottom .round{width:56px;height:56px}@media (width<=640px){.screen__seg .seg button{padding:0 11px}.screen__top .pair{display:none}}.play{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.play__stage{border-radius:var(--radius);isolation:isolate;height:100%;min-height:480px;position:relative;overflow:hidden}.play__samples{place-content:center;justify-items:center;gap:22px;height:100%;min-height:480px;padding:32px;display:grid;position:relative}.sample-row{align-items:center;gap:8px;display:flex}.sample-button{height:52px;padding:0 28px;font-weight:500}.sample-round{place-items:center;width:52px;height:52px;display:grid}.sample-card{text-align:left;border-radius:24px;width:min(320px,100%);padding:20px 22px}.sample-card p{opacity:.62;margin-top:2px;font-size:14px}.controls{display:grid}.control{border-top:1px solid var(--hair);grid-template-columns:112px 1fr;align-items:center;gap:16px;min-height:60px;padding:10px 0;display:grid}.control:last-of-type{border-bottom:1px solid var(--hair)}.control__label{font-weight:500}.control__body{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.control output{text-align:right;min-width:36px;color:var(--ink-3);font:13px var(--mono);font-variant-numeric:tabular-nums}.range{--p:50%;-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;flex:1;min-width:0;height:28px;margin:0}.range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ink) var(--p), var(--pill) var(--p));border-radius:999px;height:4px}.range::-moz-range-track{background:linear-gradient(to right, var(--ink) var(--p), var(--pill) var(--p));border-radius:999px;height:4px}.range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;transition:transform .2s var(--settle);background:#fff;border-radius:50%;margin-top:-9px;box-shadow:0 1px 4px #0000003d,0 0 0 .5px #00000014}.range::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 4px #0000003d,0 0 0 .5px #00000014}.range:active::-webkit-slider-thumb{transform:scale(1.12)}.range:focus-visible{outline:none}.range:focus-visible::-webkit-slider-thumb{outline-offset:2px;outline:2px solid #0a84ff}.chip{background:var(--pill);height:32px;color:var(--ink-2);transition:background-color .15s, color .15s, transform .25s var(--glide);border-radius:999px;padding:0 14px;font-size:14px;font-weight:500}.chip:hover{color:var(--ink)}.chip:active{transform:scale(.96)}.chip[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.swatch{background:var(--c);width:26px;height:26px;transition:transform .25s var(--settle), box-shadow .2s;border-radius:50%;box-shadow:inset 0 0 0 .5px #0000001f}.swatch:hover{transform:scale(1.08)}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--ground), 0 0 0 4px var(--c)}.play__code{margin-top:20px}.play__note{color:var(--ink-3);margin-top:12px;font-size:14px}@media (width<=980px){.play{grid-template-columns:minmax(0,1fr)}.play__stage,.play__samples{min-height:420px}}@media (width<=480px){.control{grid-template-columns:1fr;gap:10px;padding:14px 0}}.code{background:var(--wash);border-radius:14px;min-width:0;margin-block:20px;position:relative}.code__bar{color:var(--ink-3);align-items:center;gap:12px;padding:10px 10px 0 18px;font-size:14px;display:flex}.code__bar .seg{background:var(--ground)}.code__bar .seg__thumb{background:var(--pill);box-shadow:none}.code pre,.code .astro-code{font:13.5px/1.7 var(--mono);tab-size:2;scrollbar-width:thin;margin:0;padding:18px 64px 18px 20px;overflow-x:auto;background:0 0!important}.code pre code{font-size:inherit;white-space:pre;background:0 0;border-radius:0;padding:0}.code__copy{width:36px;height:36px;color:var(--ink-3);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:absolute;top:9px;right:9px}.code__bar~.code__copy{top:6px}.code__copy:hover{color:var(--ink);background:var(--hair)}.code__copy .is-done,.code__copy.is-copied .is-idle{display:none}.code__copy.is-copied .is-done{color:#30a14e;display:block}.astro-code,.astro-code span{color:var(--shiki-light)}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .astro-code,:root:not([data-theme=light]) .astro-code span{color:var(--shiki-dark)}}.tk-cmd,.tk-tag{color:#1c6b48}.tk-attr{color:#b07d48}.tk-str{color:#b56959}.tk-mute{color:var(--ink-3)}:root[data-theme=dark] :is(.tk-cmd,.tk-tag){color:#4d9375}:root[data-theme=dark] .tk-attr{color:#bd976a}:root[data-theme=dark] .tk-str{color:#c98a7d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) :is(.tk-cmd,.tk-tag){color:#4d9375}:root:not([data-theme=light]) .tk-attr{color:#bd976a}:root:not([data-theme=light]) .tk-str{color:#c98a7d}}.docs{padding:clamp(64px, 9vw, 120px) var(--edge) 0;grid-template-columns:200px minmax(0,1fr);align-items:start;gap:64px;display:grid}.toc{gap:2px;display:grid;position:sticky;top:96px}.toc__title{color:var(--ink-3);margin-bottom:10px}.toc a{color:var(--ink-3);padding:4px 0 4px 14px;transition:color .15s;position:relative}.toc a:before{content:"";background:var(--ink);width:5px;height:5px;transition:transform .35s var(--settle);border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)scale(0)}.toc a:hover{color:var(--ink-2)}.toc a[aria-current=true]{color:var(--ink)}.toc a[aria-current=true]:before{transform:translateY(-50%)scale(1)}.doc{max-width:780px}.doc+.doc{margin-top:clamp(80px,9vw,112px)}.doc>.lead{margin-bottom:28px}.anchor{color:inherit;position:relative;border:0!important}.anchor:after{content:"#";color:var(--ink-4);opacity:0;margin-right:8px;transition:opacity .15s;position:absolute;right:100%}.anchor:hover:after{opacity:1}.prose{color:var(--ink-2);max-width:66ch}.prose+.code,.code+.prose,.prose+.prose,.steps+.prose,.rows+.prose,.prose+.rows{margin-top:20px}.steps{counter-reset:step;gap:28px;padding:0;list-style:none;display:grid}.step{counter-increment:step;grid-template-columns:28px minmax(0,1fr);gap:14px;display:grid}.step:before{content:counter(step);background:var(--pill);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;font-weight:500;display:grid}.step>div>p{color:var(--ink-2);margin:2px 0 12px}@media (width<=980px){.docs{grid-template-columns:minmax(0,1fr);gap:0}.toc{display:none}}.rows{display:grid}.row{border-top:1px solid var(--hair);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px 40px;padding:22px 0;display:grid}.row:last-child{border-bottom:1px solid var(--hair)}.row p{color:var(--ink-2)}.row p b{margin-bottom:2px;display:block}.tile{isolation:isolate;border-radius:14px;place-items:center;height:128px;display:grid;position:relative;overflow:hidden}.tile .lb:not(.round){height:44px;padding:0 22px;font-weight:500}@media (width<=720px){.row{grid-template-columns:1fr}}.vars{display:grid}.vars__group{padding:28px 0 8px;font-weight:500}.vars__group:first-child{padding-top:0}.var{border-top:1px solid var(--hair);grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr) minmax(0,1.6fr);align-items:baseline;gap:8px 24px;padding:14px 0;display:grid}.var code{background:0 0;padding:0}.var__default code{color:var(--ink-3)}.var__what{color:var(--ink-2)}@media (width<=720px){.var{grid-template-columns:1fr auto}.var__what{grid-column:1/-1}}.grid{grid-template-columns:repeat(3,1fr);gap:40px 32px;padding:0;list-style:none;display:grid}.grid svg{margin-bottom:14px}.grid p{color:var(--ink-2)}@media (width<=980px){.grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.grid{grid-template-columns:1fr;gap:32px}}.faq{display:grid}.faq details{border-top:1px solid var(--hair)}.faq details:last-child{border-bottom:1px solid var(--hair)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary svg{color:var(--ink-3);transition:transform .4s var(--settle)}.faq details[open] summary svg{transform:rotate(45deg)}.faq summary:focus-visible{border-radius:8px}.faq .answer{color:var(--ink-2);max-width:66ch;padding:0 40px 24px 0}.faq .answer .code{margin-top:14px}.end{padding:clamp(64px, 9vw, 112px) var(--edge);background:var(--wash);text-align:center;justify-items:center;margin-top:clamp(80px,10vw,140px);display:grid}.end .mark{margin-bottom:32px}.end .lead{max-width:46ch}.end .actions{justify-content:center}.foot{margin:0 var(--edge);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding:26px 0 40px;display:flex}.foot a{color:var(--ink-2);transition:color .15s}.foot a:hover{color:var(--ink)}.foot__by{align-items:center;gap:8px;display:inline-flex}@media (width<=720px){.foot{flex-direction:column}}.grid--doc{grid-template-columns:repeat(2,1fr);gap:32px 40px}@media (width<=560px){.grid--doc{grid-template-columns:1fr}}.play__code pre{min-height:calc(10.2em + 36px)}.play__code pre code,.play__code .ln{min-width:100%;display:inline-block}.play__code .ln--add{background:#0a84ff1a;border-left:2px solid #0a84ff;min-width:calc(100% + 84px);margin:0 -64px 0 -20px;padding:0 64px 0 18px}.play__note{min-height:2lh}.dot{background:var(--c);width:10px;height:10px;box-shadow:inset 0 0 0 .5px var(--ink-4);vertical-align:-1px;border-radius:50%;margin-right:8px;display:inline-block}.prose b code{white-space:normal;overflow-wrap:anywhere}.nav__links a[aria-current=page]{color:var(--ink)}.nav__docs{color:var(--ink-2);padding:0 10px;font-weight:500;display:none}.nav__docs[aria-current=page]{color:var(--ink)}@media (width<=860px){.nav__docs{display:block}}.docs-head{padding:clamp(56px, 8vw, 96px) var(--edge) 0}.docs-head+.docs{padding-top:56px}.quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.quick__step{color:var(--ink-2);align-items:center;gap:10px;margin-bottom:12px;display:flex}.quick__step b{background:var(--pill);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}@media (width<=980px){.quick{grid-template-columns:minmax(0,1fr)}}.topics{border-top:1px solid var(--hair);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px;padding:0;list-style:none;display:grid}.topics li{border-bottom:1px solid var(--hair)}.topics a{gap:4px;height:100%;padding:24px 24px 26px 0;display:grid}.topics b{align-items:center;gap:6px;display:inline-flex}.topics b svg{color:var(--ink-3);transition:transform .35s var(--settle), color .15s}.topics a:hover b svg{color:var(--ink);transform:translate(3px)}.topics span{color:var(--ink-2)}@media (width<=980px){.topics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.topics{grid-template-columns:minmax(0,1fr)}}.theme-cycle,.theme-cycle svg{display:none}.theme-cycle[data-current=auto] .is-auto,.theme-cycle[data-current=light] .is-light,.theme-cycle[data-current=dark] .is-dark{display:block}@media (width<=520px){.theme-seg{display:none}.theme-cycle{display:grid}.nav__bar{gap:12px;padding-left:12px}.nav__end{gap:2px}}.screen__bottom .round{flex:none}@media (width<=560px){.player{gap:10px;padding-right:6px}.player .player__next{display:none}.screen__bottom .round{width:56px;height:56px}}.mark--hero:before{animation:blob-a 1.2s var(--settle) .1s both}.mark--hero:after{animation:blob-b 1.2s var(--settle) .22s both}.js .mark--on-reveal:not(.is-in):before,.js .mark--on-reveal:not(.is-in):after{animation-play-state:paused}@keyframes blob-a{0%{opacity:0;transform:translate(-60%,40%)scale(.4)}}@keyframes blob-b{0%{opacity:0;transform:translate(60%,-40%)scale(.4)}}@media (prefers-reduced-motion:reduce){.mark--hero:before,.mark--hero:after{animation:none}}@supports (corner-shape:squircle){:root{--radius:26px}code,.track__art{border-radius:9px}.stage__panel,.play__stage{border-radius:var(--radius)}.screen{border-radius:24px}.feature,.code,.tile{border-radius:20px}.cover__art{border-radius:15px}.player__art{border-radius:12px}.sample-card{border-radius:34px}:is(code,.stage__panel,.screen,.feature,.cover__art,.track__art,.player__art,.play__stage,.sample-card,.code,.tile){corner-shape:squircle}}
