/* Fire Particles Effect */
.fire-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 9999;
    overflow: visible;
    mix-blend-mode: screen;
}

.fire-particle {
    position: absolute;
    top: 0;
    width: 3px;
    height: 3px;
    background: radial-gradient(circle, rgba(255, 190, 60, 1) 0%, rgba(255, 120, 0, 0.6) 50%, transparent 100%);
    border-radius: 50%;
    opacity: 0;
    animation: rise linear infinite;
    box-shadow: 
        0 0 10px rgba(255, 160, 40, 0.85),
        0 0 20px rgba(255, 110, 0, 0.5);
}

@keyframes rise {
    0% {
        opacity: 0;
        transform: translateY(0) translateX(0) scale(1);
    }
    10% {
        opacity: 0.65;
    }
    50% {
        opacity: 0.9;
    }
    80% {
        opacity: 0.5;
    }
    100% {
        opacity: 0;
        transform: translateY(-60vh) translateX(var(--drift)) scale(0.3);
    }
}

/* Variações de tamanho das partículas */
.fire-particle.small {
    width: 2px;
    height: 2px;
    box-shadow: 
        0 0 8px rgba(255, 160, 40, 0.7),
        0 0 16px rgba(255, 110, 0, 0.35);
}

.fire-particle.medium {
    width: 4px;
    height: 4px;
    box-shadow: 
        0 0 12px rgba(255, 160, 40, 0.9),
        0 0 22px rgba(255, 110, 0, 0.55);
}

.fire-particle.large {
    width: 5px;
    height: 5px;
    box-shadow: 
        0 0 15px rgba(255, 170, 50, 1),
        0 0 26px rgba(255, 110, 0, 0.65);
}

/* Variações de cor das partículas */
.fire-particle.ember {
    background: radial-gradient(circle, rgba(255, 110, 20, 1) 0%, rgba(210, 60, 0, 0.65) 50%, transparent 100%);
}

.fire-particle.spark {
    background: radial-gradient(circle, rgba(255, 235, 150, 1) 0%, rgba(255, 185, 30, 0.75) 50%, transparent 100%);
}

.fire-particle.glow {
    background: radial-gradient(circle, rgba(255, 215, 120, 1) 0%, rgba(255, 155, 45, 0.6) 50%, transparent 100%);
}

/* Camadas de profundidade */
.fire-particles-layer-1 {
    z-index: 9997;
}

.fire-particles-layer-2 {
    z-index: 9998;
    opacity: 0.85;
}

.fire-particles-layer-3 {
    z-index: 9999;
    opacity: 0.7;
}

/* Responsive - reduzir partículas em mobile */
@media (max-width: 768px) {
    .fire-particle {
        width: 2px;
        height: 2px;
    }
    
    .fire-particle.small {
        width: 1.5px;
        height: 1.5px;
    }
    
    .fire-particle.medium {
        width: 2.5px;
        height: 2.5px;
    }
    
    .fire-particle.large {
        width: 3px;
        height: 3px;
    }
}

/* Performance optimization */
@media (prefers-reduced-motion: reduce) {
    .fire-particles {
        display: none;
    }
}
