body {
    font-family: 'Inter', sans-serif;
    overflow-x: hidden;
}

/* Custom Animations */
@keyframes ticker {
    0% {
        transform: rotate(0deg);
    }

    50% {
        transform: rotate(-25deg);
    }

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

.animate-ticker {
    animation: ticker 0.1s infinite linear;
}

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

    40% {
        transform: rotate(-25deg);
    }

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

.knocking {
    animation: knock 0.15s ease-out forwards;
}

@keyframes pulse-custom {

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

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

.animate-pulse-custom {
    animation: pulse-custom 1.5s infinite;
}

@keyframes zoomInPop {
    0% {
        opacity: 0;
        transform: scale(0.5) translateY(20px);
    }

    80% {
        transform: scale(1.05) translateY(0);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.animate-zoom-in {
    animation: zoomInPop 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes float {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

.animate-float {
    animation: float 3s ease-in-out infinite;
}

.writing-vertical {
    writing-mode: vertical-rl;
    text-orientation: mixed;
}

/* GPU Acceleration for smoother spinning - Removed perspective to prevent 3D wobble */
.wheel-gpu {
    will-change: transform;
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Custom Scrollbar for Terms Modal */
.custom-scrollbar::-webkit-scrollbar {
    width: 8px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #555;
}