/* sparkle-cursor-effect.css */

/* When sparkle cursor is active, hide default cursor */
body.sparkle-cursor-active {
    cursor: none;
}

/* Container for sparkle elements */
.sparkle-cursor-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 9999;
    overflow: hidden;
}

/* Individual sparkle elements */
.sparkle {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    mix-blend-mode: screen; /* Makes sparkles blend with the background */
    will-change: transform, opacity, width, height; /* Performance optimization */
    box-shadow: 0 0 8px currentColor; /* Enhanced glow effect to match retro-games.org */
    filter: brightness(1.5);
}

/* Main cursor dot - always follows the mouse immediately */
.sparkle-cursor-dot {
    position: fixed;
    width: 8px;
    height: 8px;
    background-color: #00e5ff; /* Secondary color from your site */
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 10000;
    box-shadow: 0 0 10px #00e5ff, 0 0 15px #00e5ff; /* Enhanced glow */
    mix-blend-mode: screen;
}

/* Disable sparkle effect for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .sparkle-cursor-container,
    .sparkle-cursor-dot {
        display: none;
    }
    
    body.sparkle-cursor-active {
        cursor: auto;
    }
}

/* Disable sparkle effect for touch devices */
@media (hover: none) and (pointer: coarse) {
    .sparkle-cursor-container,
    .sparkle-cursor-dot {
        display: none;
    }
    
    body.sparkle-cursor-active {
        cursor: auto;
    }
}