/* Mining shake effects */
.game-container.mining-effect-1 {
    animation: miningWobble1 0.4s ease-in-out;
}

.game-container.mining-effect-2 {
    animation: miningWobble2 0.6s ease-in-out;
}

.game-container.mining-effect-3 {
    animation: miningWobble3 0.8s ease-in-out;
}

@keyframes miningWobble1 {
    0% { transform: translateX(0) translateY(0) rotate(0deg); }
    20% { transform: translateX(-0.8px) translateY(0.5px) rotate(-0.2deg); }
    40% { transform: translateX(0.5px) translateY(-0.8px) rotate(0.15deg); }
    60% { transform: translateX(-0.3px) translateY(0.6px) rotate(-0.1deg); }
    80% { transform: translateX(0.4px) translateY(-0.2px) rotate(0.05deg); }
    100% { transform: translateX(0) translateY(0) rotate(0deg); }
}

@keyframes miningWobble2 {
    0% { transform: translateX(0) translateY(0) rotate(0deg); }
    15% { transform: translateX(-1.2px) translateY(0.8px) rotate(-0.3deg); }
    30% { transform: translateX(0.9px) translateY(-1.1px) rotate(0.25deg); }
    45% { transform: translateX(-0.7px) translateY(1.0px) rotate(-0.2deg); }
    60% { transform: translateX(0.8px) translateY(-0.4px) rotate(0.15deg); }
    75% { transform: translateX(-0.3px) translateY(0.5px) rotate(-0.1deg); }
    90% { transform: translateX(0.2px) translateY(-0.1px) rotate(0.03deg); }
    100% { transform: translateX(0) translateY(0) rotate(0deg); }
}

@keyframes miningWobble3 {
    0% { transform: translateX(0) translateY(0) rotate(0deg); }
    12% { transform: translateX(-1.5px) translateY(1.0px) rotate(-0.4deg); }
    24% { transform: translateX(1.2px) translateY(-1.4px) rotate(0.35deg); }
    36% { transform: translateX(-1.0px) translateY(1.3px) rotate(-0.3deg); }
    48% { transform: translateX(1.1px) translateY(-0.6px) rotate(0.25deg); }
    60% { transform: translateX(-0.5px) translateY(0.8px) rotate(-0.15deg); }
    72% { transform: translateX(0.4px) translateY(-0.3px) rotate(0.1deg); }
    84% { transform: translateX(-0.2px) translateY(0.2px) rotate(-0.05deg); }
    96% { transform: translateX(0.1px) translateY(-0.1px) rotate(0.02deg); }
    100% { transform: translateX(0) translateY(0) rotate(0deg); }
}

/* CRT Effect */
.game-container::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    background: 
        linear-gradient(transparent 3px, rgb(242, 8, 66, 0.4) 3px, rgba(0, 255, 0, 0.035) 6px, transparent 6px),
        radial-gradient(ellipse at center, transparent 70%, rgba(0, 0, 0, 0.3) 100%);
    background-size: 200% 6px, 200% 200%;
    animation: scanlines 2s infinite linear;
}

@keyframes flicker {
    0% { opacity: 1; }
    98% { opacity: 1; }
    99% { opacity: 1; }
    100% { opacity: 1; }
}

@keyframes scanlines {
    0% { background-position: 0% 0%, 0% 0%; }
    100% { background-position: 0% 100%, 0% 0%; }
}