/* Сентябрь: одинокий золотой лист (редкое событие) */

#septemberLeafLayer {
    position: fixed;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    overflow: hidden;
    background: transparent;
}

.sep-leaf {
    position: absolute;
    pointer-events: none;
    z-index: 20;
    animation: sepLeafDrift var(--drift-dur, 12s) ease-in-out forwards;
    opacity: 0;
    transform-origin: center center;
}

.sep-leaf.sep-leaf--reverse {
    animation-name: sepLeafDriftReverse;
}

@keyframes sepLeafDrift {
    0% {
        transform: translate(0, 0) rotate(0deg) scale(0.3);
        opacity: 0;
    }
    5% {
        opacity: 1;
        transform: translate(5vw, -5vh) rotate(15deg) scale(0.9);
    }
    20% { transform: translate(20vw, -15vh) rotate(60deg) scale(1); }
    40% { transform: translate(40vw, -5vh) rotate(120deg) scale(0.85); }
    60% { transform: translate(65vw, -20vh) rotate(200deg) scale(0.9); }
    80% { transform: translate(85vw, -10vh) rotate(280deg) scale(0.8); }
    100% {
        transform: translate(105vw, -30vh) rotate(360deg) scale(0.4);
        opacity: 0;
    }
}

@keyframes sepLeafDriftReverse {
    0% {
        transform: translate(0, 0) rotate(0deg) scale(0.3);
        opacity: 0;
    }
    5% {
        opacity: 1;
        transform: translate(-5vw, -5vh) rotate(-15deg) scale(0.9);
    }
    20% { transform: translate(-20vw, -15vh) rotate(-60deg) scale(1); }
    40% { transform: translate(-40vw, -5vh) rotate(-120deg) scale(0.85); }
    60% { transform: translate(-65vw, -20vh) rotate(-200deg) scale(0.9); }
    80% { transform: translate(-85vw, -10vh) rotate(-280deg) scale(0.8); }
    100% {
        transform: translate(-105vw, -30vh) rotate(-360deg) scale(0.4);
        opacity: 0;
    }
}

.sep-leaf-shape {
    width: 40px;
    height: 60px;
    background: linear-gradient(135deg, #f5b042 0%, #e58e26 40%, #c97a1f 100%);
    border-radius: 80% 0 80% 0;
    transform: rotate(-20deg);
    box-shadow:
        0 8px 15px rgba(180, 100, 20, 0.4),
        inset 0 -5px 8px rgba(0, 0, 0, 0.15),
        inset 2px 0 5px rgba(255, 255, 255, 0.3);
    position: relative;
}

.sep-leaf-shape::before {
    content: '';
    position: absolute;
    top: 15%;
    left: 10%;
    width: 60%;
    height: 60%;
    border-right: 1px solid rgba(160, 100, 20, 0.5);
    border-bottom: 1px solid rgba(160, 100, 20, 0.4);
    transform: rotate(20deg);
    border-radius: 0 0 30% 0;
}

.sep-leaf-shape::after {
    content: '';
    position: absolute;
    bottom: 20%;
    right: 15%;
    width: 30%;
    height: 30%;
    border-left: 1px solid rgba(160, 100, 20, 0.4);
    border-top: 1px solid rgba(160, 100, 20, 0.3);
    transform: rotate(-15deg);
    border-radius: 30% 0 0 0;
}

.sep-leaf-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    background: radial-gradient(circle,
            rgba(255, 200, 100, 0.3) 0%,
            transparent 70%);
    filter: blur(12px);
    z-index: -1;
    animation: sepLeafGlowPulse 2s ease-in-out infinite alternate;
}

@keyframes sepLeafGlowPulse {
    0% { opacity: 0.5; }
    100% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    #septemberLeafLayer {
        display: none;
    }
}
