/* Premium Floating Leaf Animation System */
.vck-leaf-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1; /* Ensures it stays behind extremely high overlays but above background */
    overflow: hidden;
}

.vck-leaf-fall {
    position: absolute;
    top: -15%;
    will-change: top, opacity;
    animation-name: vck-fall-animation;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.vck-leaf-sway {
    display: block;
    will-change: transform;
    animation-name: vck-sway-animation;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    /* Soft, premium drop shadow for depth */
    filter: drop-shadow(0px 10px 15px rgba(0, 0, 0, 0.1)) drop-shadow(0px 4px 6px rgba(0, 0, 0, 0.05));
    opacity: 0.85;
}

/* Depth of Field Classes for 3D Parallax Effect */
.vck-leaf-blur-heavy {
    filter: blur(5px) drop-shadow(0px 15px 20px rgba(0, 0, 0, 0.15));
    opacity: 0.4;
}

.vck-leaf-blur-light {
    filter: blur(2px) drop-shadow(0px 10px 15px rgba(0, 0, 0, 0.1));
    opacity: 0.6;
}

/* Keyframes */
@keyframes vck-fall-animation {
    0% {
        top: -15%;
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    85% {
        opacity: 1;
    }
    100% {
        top: 110%;
        opacity: 0;
    }
}

@keyframes vck-sway-animation {
    0% {
        transform: translateX(-30px) rotate(-45deg);
    }
    50% {
        transform: translateX(30px) rotate(45deg);
    }
    100% {
        transform: translateX(-30px) rotate(-45deg);
    }
}
