.oven-anim svg{overflow:visible}.oven-anim #pizza{transform-origin:360px 322px;transform:translate(-230px);opacity:0}.oven-anim #flames{transform-origin:360px 280px;opacity:0}.oven-anim #steam{transform-origin:360px 240px;opacity:0}.oven-anim.step-1 #pizza{opacity:1;transform:translate(-230px);animation:pizza-in .9s cubic-bezier(.2,.9,.2,1) forwards}@keyframes pizza-in{to{transform:translate(0)}}.oven-anim.step-2 #pizza{opacity:1;transform:translate(0)}.oven-anim.step-2 #flames{opacity:1;animation:flames-pulse .9s ease-in-out infinite}.oven-anim.step-2 #glow{opacity:.75;animation:glow-pulse 1.1s ease-in-out infinite}@keyframes flames-pulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.03)}}@keyframes glow-pulse{0%,to{opacity:.55}50%{opacity:.85}}.oven-anim.step-3 #flames{opacity:1;animation:flames-pulse .85s ease-in-out infinite}.oven-anim.step-3 #steam{opacity:1;animation:steam-rise 1.2s ease-in-out infinite}.oven-anim.step-3 #pizza{opacity:1;transform:translate(0);animation:pizza-wobble .9s ease-in-out infinite}@keyframes steam-rise{0%,to{transform:translateY(6px);opacity:.35}50%{transform:translateY(-6px);opacity:.65}}@keyframes pizza-wobble{0%,to{transform:translate(0) scale(1)}50%{transform:translate(0) scale(1.01)}}.oven-anim.step-4 #flames{opacity:.25;animation:none}.oven-anim.step-4 #steam{opacity:0;animation:none}.oven-anim.step-4 #pizza{opacity:1;transform:translate(0);animation:pizza-out .9s cubic-bezier(.2,.9,.2,1) forwards}@keyframes pizza-out{0%{transform:translate(0) scale(1)}35%{transform:translate(0) scale(1.03)}to{transform:translate(230px) scale(1)}}@media (prefers-reduced-motion: reduce){.oven-anim *{animation:none!important;transition:none!important}.oven-anim #pizza{opacity:1;transform:translate(0)}.oven-anim #flames{opacity:.6}.oven-anim #steam{opacity:0}}.scrollFade{position:relative;overflow:hidden}.scrollFade:before,.scrollFade:after{content:"";position:absolute;left:0;right:0;height:32px;pointer-events:none;z-index:5;opacity:0;transition:opacity .18s ease}.scrollFade:before{top:0;background:linear-gradient(to bottom,hsl(var(--background)),hsl(var(--background) / 0))}.scrollFade:after{bottom:0;background:linear-gradient(to top,hsl(var(--background)),hsl(var(--background) / 0))}.scrollFade[data-top="1"]:before{opacity:1}.scrollFade[data-bottom="1"]:after{opacity:1}.cartListScroll{overflow-y:auto;height:100%}
