/* 3D Card Flip */
.perspective { perspective: 800px; }
.backface-hidden { backface-visibility: hidden; }
.rotate-y-180 { transform: rotateY(180deg); }
.rotate-y-0 { transform: rotateY(0deg); }

/* Red packet glow animation */
@keyframes redPacketGlow {
    0%, 100% { box-shadow: 0 0 5px rgba(231, 76, 60, 0.3); }
    50% { box-shadow: 0 0 20px rgba(231, 76, 60, 0.6); }
}
.ring-2.ring-red-500 { animation: redPacketGlow 2s ease-in-out infinite; }

/* Confetti-like sparkle for payer announcement */
@keyframes sparkle {
    0% { transform: scale(1) rotate(0deg); }
    25% { transform: scale(1.1) rotate(-3deg); }
    75% { transform: scale(1.1) rotate(3deg); }
    100% { transform: scale(1) rotate(0deg); }
}
.animate-bounce { animation: sparkle 0.6s ease-in-out infinite; }

/* Table striped effect */
tbody tr:nth-child(even) { background-color: rgba(255,255,255,0.02); }

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #1a1a2e; }
::-webkit-scrollbar-thumb { background: #444; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #666; }

/* Input focus */
input:focus, select:focus { outline: none; ring: 2px solid #E74C3C; }
