/* YOUR ORIGINAL STYLE (IMPROVED) */
.btn-anim {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    background-image: linear-gradient(90deg, #00FF01 0%, #000000 80%);
    color: #fff;
    padding: 12px 20px;
    text-decoration: none;
    z-index: 1;
}

/* DARK OVERLAY ANIMATION */
.btn-anim::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.7) 0%,
        rgba(0,0,0,0.6) 50%,
        rgba(0,0,0,0.7) 100%
    );
    border-radius: 30px;
    animation: blackGreenPulse 3s linear infinite;
    z-index: 0;
    pointer-events: none;
}

/* GREEN SLIDE EFFECT */
.btn-anim::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(0,255,1,0.4), transparent);
    animation: slideGreen 2s linear infinite;
    z-index: 0;
}

/* TEXT ABOVE */
.btn-anim span,
.btn-anim {
    position: relative;
    z-index: 2;
}

/* YOUR KEYFRAMES */
@keyframes slideGreen {
    0%   { transform: translateX(-100%); }
    50%  { transform: translateX(0%); }
    100% { transform: translateX(100%); }
}

/* LIGHT PULSE (optimized) */
@keyframes blackGreenPulse {
    0% { opacity: 0.8; }
    50% { opacity: 0.6; }
    100% { opacity: 0.8; }
}