/* Fly-to-cart animation (additive — does not alter cart behavior) */
.fly-to-cart-flyer {
    position: fixed;
    z-index: 100000;
    pointer-events: none;
    box-sizing: border-box;
    border-radius: 26%;
    overflow: hidden;
    background: #ffffff;
    border: none;
    box-shadow:
        0 0 18px 6px rgba(255, 82, 102, 0.34),
        0 0 32px 10px rgba(255, 130, 150, 0.24),
        0 0 48px 14px rgba(255, 170, 185, 0.16);
    will-change: left, top, width, height;
    opacity: 1;
    transform: translateZ(0);
}

.fly-to-cart-flyer__inner {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 14%;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fly-to-cart-flyer__img,
.fly-to-cart-flyer img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
    opacity: 1 !important;
    visibility: visible !important;
    background: transparent;
    border-radius: 0;
}

@keyframes fly-to-cart-target-pulse {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.18);
    }
}

.fly-to-cart-target-pulse {
    animation: fly-to-cart-target-pulse 0.35s ease-out;
}

@media (prefers-reduced-motion: reduce) {
    .fly-to-cart-flyer,
    .fly-to-cart-target-pulse {
        animation: none !important;
        transition: none !important;
    }
}
