#tastePulseLayer{position:fixed;inset:0;z-index:30000;pointer-events:none;overflow:hidden}.tasteBurst{position:absolute;inset:0}.tasteWave{position:absolute;left:var(--tx);top:var(--ty);width:35px;height:35px;border:2px solid #f0be2f;border-radius:50%;box-shadow:0 0 8px #fff7c0;opacity:0;animation:tasteExpand 1.45s ease-out var(--delay,0ms) forwards}.tasteWave:nth-child(2){border-color:#fffef4;box-shadow:0 0 9px #c79532aa}.tasteSpark{position:absolute;left:var(--tx);top:var(--ty);width:var(--size);height:var(--size);border-radius:50%;background:var(--flavor);box-shadow:0 0 3px #ab7b2140;opacity:0;animation:tasteScatter 1.5s ease-out var(--delay,0ms) forwards}.tasteWash{position:absolute;inset:0;background:radial-gradient(ellipse at var(--tx) var(--ty),#fffbea,#e5c367);opacity:0;animation:tasteEntry 1.1s ease-in forwards}@keyframes tasteExpand{0%{opacity:1;transform:translate(-50%,-50%) scale(.2)}65%{opacity:.65}100%{opacity:0;transform:translate(-50%,-50%) scale(12)}}@keyframes tasteScatter{0%{opacity:0;transform:translate(-50%,-50%) scale(.1)}15%{opacity:1}70%{opacity:.75}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.5)}}@keyframes tasteEntry{0%,55%{opacity:0}100%{opacity:1}}@media(prefers-reduced-motion:reduce){.tasteSpark,.tasteWash{display:none}#tastePulseLayer .tasteWave{animation:none!important;opacity:.6;transform:translate(-50%,-50%);width:90px;height:90px}}
