@keyframes toggle-pulse {
    0% {
        transform: scale(1.05);
    }

    50% {
        transform: scale(1.08);
    }

    100% {
        transform: scale(1.05);
    }
}

/* Smooth gradient transition */
@keyframes gradient-smooth {
    0% {
        background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
    }

    50% {
        background: linear-gradient(135deg, var(--accent-color), var(--primary-color));
    }

    100% {
        background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
    }
}

@keyframes bounce {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-15px);
    }
}

@keyframes rotateOrbit {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes orbit {
    0% {
        transform: translate(-50%, -50%) rotate(0deg) translateX(50px);
    }

    100% {
        transform: translate(-50%, -50%) rotate(360deg) translateX(50px);
    }
}

@keyframes fadePulse {

    0%,
    100% {
        opacity: 0.6;
    }

    50% {
        opacity: 1;
    }
}

@keyframes container-pulse {
    0% {
        transform: translateY(0) scale(1);
    }

    50% {
        transform: translateY(-2px) scale(1.005);
    }

    100% {
        transform: translateY(0) scale(1);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scoreboard-fade-up {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}