@keyframes flash {
    0% { opacity: 0; }
    15% { opacity: 0.95; }
    100% { opacity: 0; }
}

@keyframes countdown-pop {
    0% { transform: scale(0.3); opacity: 0; }
    50% { transform: scale(1.15); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}

@keyframes pulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

@keyframes slide-up {
    from { transform: translateY(30px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

.flash--active {
    animation: flash 0.35s ease-out forwards;
}

.countdown__number.pop {
    animation: countdown-pop 0.7s ease-out forwards;
}

.screen--active .animate-in {
    animation: slide-up 0.3s ease-out both;
}

.screen--active .animate-in:nth-child(2) { animation-delay: 0.05s; }
.screen--active .animate-in:nth-child(3) { animation-delay: 0.1s; }
.screen--active .animate-in:nth-child(4) { animation-delay: 0.15s; }
