:root{--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.scene [data-anim=rise]{animation:scene-rise .7s var(--ease-out) var(--delay,0s) backwards}.scene [data-anim=appear]{animation:scene-appear .4s var(--ease-out) var(--delay,0s) backwards}.scene [data-anim=chip]{opacity:0;animation:scene-chip 1.5s var(--ease-out) var(--delay,0s) backwards}.scene [data-anim=vanish]{opacity:0;animation:scene-vanish .22s ease var(--delay,0s) backwards}.scene [data-anim=press]{animation:scene-press .18s var(--ease-out) var(--delay,0s)}.scene [data-anim=push]{animation:scene-push .7s var(--ease-in-out) var(--delay,0s) backwards}.scene [data-anim=split]{transform-origin:100%;animation:scene-split .9s var(--ease-in-out) var(--delay,0s) backwards}.scene [data-anim=swap-out]{opacity:0;animation:scene-swap-out .3s var(--ease-out) var(--delay,0s) backwards;transform:translateY(-6px)}.scene [data-anim=swap-in]{animation:scene-swap-in .4s var(--ease-out) var(--delay,0s) backwards}.scene .fix-new:before{content:"";background:color-mix(in oklch, var(--primary) 22%, transparent);opacity:0;animation:scene-glow 1.6s ease-out var(--delay,0s) backwards;border-radius:4px;position:absolute;inset:-1px -3px}.scene .typo{-webkit-text-decoration:underline wavy color-mix(in oklch, var(--warning) 85%, transparent);text-decoration:underline wavy color-mix(in oklch, var(--warning) 85%, transparent);text-underline-offset:3px;text-decoration-thickness:1.5px}.scene .machine{background-image:repeating-linear-gradient(-45deg, color-mix(in oklch, var(--muted-foreground) 40%, transparent) 0 2px, transparent 2px 6px)}@keyframes scene-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes scene-appear{0%{opacity:0}}@keyframes scene-chip{0%{opacity:0;transform:translateY(4px)scale(.97)}20%,85%{opacity:1;transform:none}to{opacity:0}}@keyframes scene-vanish{0%{opacity:1}}@keyframes scene-press{50%{transform:scale(.96)}}@keyframes scene-push{0%{transform:translateY(calc(-1 * var(--row)))}}@keyframes scene-split{0%{transform:scaleX(0)}}@keyframes scene-swap-out{0%{opacity:1;transform:none}}@keyframes scene-swap-in{0%{opacity:0;transform:translateY(6px)}}@keyframes scene-glow{0%{opacity:0}15%{opacity:1}to{opacity:0}}.switch{justify-items:start;display:inline-grid}.switch>span{opacity:0;animation:switch-word calc(var(--count) * 2.4s) var(--ease-out) infinite;animation-delay:calc(var(--i) * 2.4s);grid-area:1/1}@keyframes switch-word{0%{opacity:0;transform:translateY(.35em)}4%,13%{opacity:1;transform:none}17%,to{opacity:0;transform:translateY(-.35em)}}@keyframes switch-fade{0%,17%,to{opacity:0}4%,13%{opacity:1}}[data-armed]:not([data-inview]) .reveal{opacity:0;transform:translateY(8px)}[data-armed]:not([data-inview]) .reveal-swap-in,[data-armed][data-inview] .reveal-swap-out{opacity:0}[data-armed][data-inview] .reveal-strike:after{transform:scaleX(1)}.reveal,.reveal-swap-in,.reveal-swap-out{transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transition-delay:var(--delay,0s)}.reveal-strike{position:relative}.reveal-strike:after{content:"";transform-origin:0;height:2px;transition:transform .5s var(--ease-in-out);transition-delay:var(--delay,0s);background:currentColor;border-radius:1px;position:absolute;top:52%;left:-2px;right:-2px;transform:scaleX(1)}[data-armed]:not([data-inview]) .reveal-strike:after{transform:scaleX(0)}@media (prefers-reduced-motion:reduce){.scene [data-anim],.scene .fix-new:before{animation:none}.scene [data-anim=rise]{animation:.3s backwards scene-appear}.switch>span{animation-name:switch-fade}[data-armed]:not([data-inview]) .reveal{transform:none}.reveal-strike:after{transition:none}}
