/* Июнь: рой светлячков (редкое событие) */

#juneFirefliesLayer {
    position: fixed;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    overflow: hidden;
    background: transparent;
}

.jun-ff {
    position: absolute;
    width: 8px;
    height: 8px;
    background: radial-gradient(circle,
            #ffff80 0%,
            #ffdd44 40%,
            #88aa00 70%,
            transparent 100%);
    border-radius: 50%;
    filter: blur(1px);
    box-shadow: 0 0 10px #ffee55, 0 0 20px #ccff00;
    pointer-events: none;
    animation: junFfLife var(--life, 6s) ease-out forwards;
    animation-delay: var(--appear-delay, 0s);
    opacity: 0;
    transform: translate(0, 0) scale(0);
}

@keyframes junFfLife {
    0% {
        opacity: 0;
        transform: translate(0, 0) scale(0.2);
    }
    8% {
        opacity: 0.9;
        transform: translate(0, 0) scale(1);
    }
    25% {
        opacity: 0.8;
        transform: translate(var(--dx1, 20px), var(--dy1, -10px)) scale(0.9);
    }
    50% {
        opacity: 0.6;
        transform: translate(var(--dx2, 60px), var(--dy2, -30px)) scale(0.7);
    }
    80% {
        opacity: 0.25;
        transform: translate(var(--dx3, 120px), var(--dy3, -70px)) scale(0.4);
    }
    100% {
        opacity: 0;
        transform: translate(var(--dx4, 200px), var(--dy4, -120px)) scale(0.1);
    }
}

@media (prefers-reduced-motion: reduce) {
    #juneFirefliesLayer {
        display: none;
    }
}
