.site-header[data-v-e9df6613]{transition:transform .25s ease-out,background-color .16s ease-out,border-color .16s ease-out}.site-header--hidden[data-v-e9df6613]{transform:translateY(-100%)}.site-header--menu-open[data-v-e9df6613]{background:var(--color-paper)}.site-menu-panel[data-v-e9df6613]{top:var(--site-header-height,61px);height:calc(100dvh - var(--site-header-height,61px));overscroll-behavior:none}.site-menu-panel__paper[data-v-e9df6613]{padding-bottom:max(2rem, env(safe-area-inset-bottom))}.site-menu-enter-active[data-v-e9df6613],.site-menu-leave-active[data-v-e9df6613]{transition:opacity .18s ease-out,transform .18s ease-out}.site-menu-enter-from[data-v-e9df6613],.site-menu-leave-to[data-v-e9df6613]{opacity:0;transform:translateY(-8px)}.site-header--hidden[data-v-e9df6613]:focus-within{transform:none}@media (prefers-reduced-motion:reduce){.site-header[data-v-e9df6613],.site-menu-enter-active[data-v-e9df6613],.site-menu-leave-active[data-v-e9df6613]{transition:none}}.spring-object__label[data-v-29f7aeb3]{font-family:var(--font-mono);font-size:var(--text-label);font-variant-numeric:tabular-nums}.spring-object--vertical .spring-object__label[data-v-29f7aeb3]{paint-order:stroke fill;stroke:var(--color-paper);stroke-width:3px;stroke-linejoin:round}.spring-object--overlay .spring-object__label[data-v-29f7aeb3]{stroke:color-mix(in oklch, var(--color-paper) 70%, transparent)}.spring-object__mark[data-v-29f7aeb3]{animation:.26s ease-out spring-object-mark-29f7aeb3}@keyframes spring-object-mark-29f7aeb3{0%{r:12;opacity:0}}@media (prefers-reduced-motion:reduce){.spring-object__mark[data-v-29f7aeb3]{animation:none}}.showcase-pulse[data-v-4915dbd3]{animation:1.8s ease-in-out infinite showcase-pulse-4915dbd3}@keyframes showcase-pulse-4915dbd3{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.showcase-pulse[data-v-4915dbd3]{animation:none}}.blueprint[data-v-ff9318de]{background-color:var(--color-stage);background-image:linear-gradient(var(--color-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-line) 1px, transparent 1px);background-size:40px 40px;background-position:0 var(--blueprint-rule-offset,0px)}.blueprint__caption[data-v-ff9318de]{background:var(--color-stage);color:var(--color-mute);font-family:var(--font-mono);letter-spacing:.04em;pointer-events:none;padding:2px;font-size:10px;line-height:1;position:absolute;top:10px;left:10px}.blueprint__place[data-v-ff9318de]{position:absolute}.blueprint__footprint[data-v-ff9318de]{box-sizing:border-box;border:1.5px dashed var(--color-ghost-line);color:var(--color-mute);font-family:var(--font-mono);letter-spacing:.04em;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;place-items:center;font-size:12px;font-weight:500;line-height:1;display:grid;position:absolute;inset:0}.blueprint__footprint[data-v-ff9318de]:before{content:"";position:absolute;inset:-22px}.blueprint__footprint-label[data-v-ff9318de]{background:var(--color-stage);border-radius:4px;padding:3px 6px}.blueprint__footprint[data-v-ff9318de]:active{background:var(--color-accent-wash)}.blueprint-footprint-enter-active[data-v-ff9318de]{transition:opacity .24s ease-out}.blueprint-footprint-leave-active[data-v-ff9318de]{transition:opacity 80ms ease-in}.blueprint-footprint-enter-from[data-v-ff9318de],.blueprint-footprint-leave-to[data-v-ff9318de]{opacity:0}.hero-trace[data-v-7806a2e2]{--hero-fade-length:calc(var(--hero-paper-top) + 32px);--hero-fade-floor:.1;--hero-fade-gain:1;top:calc(-1 * var(--site-header-height,61px));height:calc(100% + var(--site-header-height,61px));-webkit-mask-image:linear-gradient(to bottom, rgb(0 0 0/var(--hero-fade-floor)) 0, rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .016)) calc(var(--hero-fade-length) * .25), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .054)) calc(var(--hero-fade-length) * .4), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .109)) calc(var(--hero-fade-length) * .5), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .196)) calc(var(--hero-fade-length) * .6), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .326)) calc(var(--hero-fade-length) * .7), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .511)) calc(var(--hero-fade-length) * .8), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .707)) calc(var(--hero-fade-length) * .88), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .87)) calc(var(--hero-fade-length) * .94), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .967)) calc(var(--hero-fade-length) * .98), #000 calc(var(--hero-fade-length) * 1));mask-image:linear-gradient(to bottom, rgb(0 0 0/var(--hero-fade-floor)) 0, rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .016)) calc(var(--hero-fade-length) * .25), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .054)) calc(var(--hero-fade-length) * .4), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .109)) calc(var(--hero-fade-length) * .5), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .196)) calc(var(--hero-fade-length) * .6), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .326)) calc(var(--hero-fade-length) * .7), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .511)) calc(var(--hero-fade-length) * .8), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .707)) calc(var(--hero-fade-length) * .88), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .87)) calc(var(--hero-fade-length) * .94), rgb(0 0 0/calc(var(--hero-fade-floor) + (1 - var(--hero-fade-floor)) * var(--hero-fade-gain) * .967)) calc(var(--hero-fade-length) * .98), #000 calc(var(--hero-fade-length) * 1))}html.dark .hero-trace[data-v-7806a2e2]{--hero-fade-floor:.16;--hero-fade-gain:1.2}.hero-trace__stroke[data-v-7806a2e2]{fill:none;stroke:var(--color-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.hero-trace__release[data-v-7806a2e2]{fill:var(--color-stage);stroke:var(--color-accent);stroke-width:1.5px}.hero-trace__catch[data-v-7806a2e2]{fill:var(--color-accent)}.hero[data-v-a8d21e22]{--hero-chrome-extension:max(98px, calc(100lvh - 100svh + 58px), env(safe-area-inset-bottom,0px));min-height:calc(100svh - var(--site-header-height,61px) + var(--hero-chrome-extension));scroll-margin-top:var(--site-header-height,61px)}.hero__extension[data-v-a8d21e22]{height:var(--hero-chrome-extension)}.duo-preview[data-v-7236fe6b]{place-items:center;display:grid}@media (width>=48rem){.duo-preview[data-v-7236fe6b]{min-height:min(580px,70vh)}}.motion-overlay[data-v-e2219b3d]{z-index:2147482000;opacity:0;pointer-events:none;width:48px;height:100%;transition:opacity .18s ease-out;position:fixed;top:0;left:calc(50% - 24px)}.motion-overlay--shown[data-v-e2219b3d]{opacity:1;transition-duration:.12s}@media (prefers-reduced-motion:reduce){.motion-overlay[data-v-e2219b3d]{transition:none}}
