/* Impact Wave Position Fix - Center Origin */

/* Impact waves should start from exact center point - SUBTLE VERSION */
.impact-wave {
    position: absolute !important;
    top: 50% !important;  /* Center of impact-point container */
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 0;
    height: 0;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.3); /* Much subtler */
    pointer-events: none;
    opacity: 0;
    z-index: 20; /* Above everything else */
}

/* Override the default positioning */
.impact-wave.active {
    animation: shockwaveFromCenter 2s ease-out forwards !important;
}

/* Subtle shockwave animation */
@keyframes shockwaveFromCenter {
    0% {
        width: 0;
        height: 0;
        opacity: 0.8;
        border-width: 2px;
        transform: translate(-50%, -50%) scale(1);
        box-shadow: 0 0 10px rgba(255, 255, 255, 0.3);
    }
    50% {
        width: 400px;
        height: 400px;
        opacity: 0.3;
        border-width: 1px;
        transform: translate(-50%, -50%) scale(1);
    }
    100% {
        width: 800px;
        height: 800px;
        opacity: 0;
        border-width: 0.5px;
        transform: translate(-50%, -50%) scale(1);
        box-shadow: none;
    }
}

/* Hide second and third waves - only use one subtle wave */
.impact-wave.wave2,
.impact-wave.wave3 {
    display: none !important; /* Hide extra waves */
}

/* Enhanced impact flash at center - MAIN EFFECT */
.impact-flash {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, 
        rgba(255, 255, 255, 1) 0%, 
        rgba(255, 240, 200, 0.9) 20%,
        rgba(255, 220, 150, 0.6) 40%,
        rgba(255, 200, 100, 0.3) 60%,
        rgba(255, 255, 255, 0) 80%);
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    z-index: 30;
}

.impact-flash.active {
    animation: flashBurst 0.8s ease-out forwards !important;
}

@keyframes flashBurst {
    0% {
        width: 20px;
        height: 20px;
        opacity: 1;
        filter: blur(0px) brightness(3);
        box-shadow: 
            0 0 50px rgba(255, 255, 255, 1),
            0 0 100px rgba(255, 240, 200, 0.8),
            0 0 150px rgba(255, 220, 150, 0.6);
    }
    30% {
        width: 200px;
        height: 200px;
        opacity: 1;
        filter: blur(1px) brightness(2);
        box-shadow: 
            0 0 80px rgba(255, 255, 255, 0.8),
            0 0 120px rgba(255, 240, 200, 0.6);
    }
    60% {
        width: 400px;
        height: 400px;
        opacity: 0.7;
        filter: blur(3px) brightness(1.5);
    }
    100% {
        width: 600px;
        height: 600px;
        opacity: 0;
        filter: blur(15px) brightness(1);
        box-shadow: none;
    }
}