@keyframes float-star{0%,to{transform:translateY(0) rotate(0deg);opacity:.3}50%{transform:translateY(-15px) rotate(5deg);opacity:.6}}@keyframes float-heart{0%,to{transform:translateY(0) scale(1);opacity:.2}50%{transform:translateY(-20px) scale(1.1);opacity:.4}}@keyframes pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.5}}@keyframes sparkle{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:.6;transform:scale(1.2)}}@keyframes pop-star{0%{transform:scale(0) rotate(0deg);opacity:0}70%{transform:scale(1.2) rotate(15deg);opacity:1}to{transform:scale(1) rotate(0deg);opacity:1}}@keyframes pop-heart{0%{transform:scale(0);opacity:0}70%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.floating-decoration{pointer-events:none;position:fixed;will-change:transform,opacity}.star-small{animation:float-star 4s ease-in-out infinite;height:1rem;width:1rem}.star-medium{animation:float-star 6s ease-in-out infinite;height:1.5rem;width:1.5rem}.star-large{animation:float-star 8s ease-in-out infinite;height:2rem;width:2rem}.heart-small{animation:float-heart 4s ease-in-out infinite;height:1rem;width:1rem}.heart-medium{animation:float-heart 6s ease-in-out infinite;height:1.5rem;width:1.5rem}.heart-large{animation:float-heart 8s ease-in-out infinite;height:2rem;width:2rem}.pulse{animation:pulse 3s ease-in-out infinite}.delay-1{animation-delay:1s}.delay-2{animation-delay:2s}.delay-3{animation-delay:3s}.hover-star{fill:#ec4899;color:rgb(236 72 153/var(--tw-text-opacity,1));animation:pop-star .5s forwards}.hover-heart,.hover-star{pointer-events:none;position:absolute;height:1rem;width:1rem;--tw-text-opacity:1;opacity:0}.hover-heart{fill:#8b5cf6;color:rgb(139 92 246/var(--tw-text-opacity,1));animation:pop-heart .5s forwards}.card-decoration{opacity:.1}.bg-pattern,.card-decoration{pointer-events:none;position:absolute}.bg-pattern{inset:0;overflow:hidden;opacity:.05}.bg-pattern-star{fill:#f9a8d4;--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.bg-pattern-heart{fill:#c4b5fd;--tw-text-opacity:1;color:rgb(196 181 253/var(--tw-text-opacity,1))}