@keyframes flicker {
    0%, 93%, 100% {
        opacity: 1
    }
    94% {
        opacity: .3
    }
    96% {
        opacity: .9
    }
    98% {
        opacity: .2
    }
}

@keyframes neonPulse {
    0%, 100% {
        opacity: 1
    }
    48% {
        opacity: .88
    }
    50% {
        opacity: .7
    }
    52% {
        opacity: .92
    }
}

@keyframes gbounce {
    from {
        transform: scale(1.05) rotate(-3deg)
    }
    to {
        transform: scale(1.12) rotate(3deg)
    }
}

@keyframes popIn {
    from {
        transform: scale(0)
    }
    to {
        transform: scale(1)
    }
}

@keyframes tfloat {
    0%, 100% { transform: translateY(0) }
    50% { transform: translateY(-8px) }
}

@keyframes tshake {
    0%, 100% { transform: rotate(0) }
    25% { transform: rotate(-3deg) }
    75% { transform: rotate(3deg) }
}

@keyframes tpulse {
    0% { transform: scale(1) }
    40% { transform: scale(1.2) }
    70% { transform: scale(0.9) }
    100% { transform: scale(1) }
}

@keyframes bubblePop {
    from { transform: scale(0.5); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}

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

@keyframes blink {
    50% {
        opacity: 0
    }
}

@keyframes mscroll {
    0% {
        transform: translateX(100%)
    }
    100% {
        transform: translateX(-100%)
    }
}

@keyframes bkrBounce {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-6px) scale(1.1); }
}

@keyframes bkrWobble {
    0%, 100% { transform: rotate(0deg) scale(1); }
    25% { transform: rotate(-10deg) scale(1.08); }
    75% { transform: rotate(10deg) scale(1.08); }
}

@keyframes bkrGlow {
    0%, 100% { box-shadow: 3px 4px 0 var(--dark), 0 0 8px rgba(247,37,133,.25); }
    50% { box-shadow: 3px 4px 0 var(--dark), 0 0 20px rgba(247,37,133,.55); }
}

@keyframes bkrBtnPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

@keyframes bkrSparkle {
    0% { opacity: 1; transform: translate(-50%, -50%) scale(.5); }
    70% { opacity: 1; }
    100% { opacity: 0; transform: translate(-50%, -80%) scale(1.6); }
}

@keyframes bkrHudIn {
    from { opacity: 0; transform: translateY(-6px) scale(.95); }
    to   { opacity: 1; transform: translateY(0)    scale(1);   }
}

@keyframes thudIn {
    from { opacity: 0; transform: translateY(-8px) scale(.92); }
    to   { opacity: 1; transform: translateY(0)    scale(1);   }
}

@keyframes sparkle {
    0%, 100% { opacity: 1; transform: scale(1) rotate(0deg); }
    50%      { opacity: .6; transform: scale(1.2) rotate(20deg); }
}

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