/*
 * Plus212 AJAX Add to Cart
 * Scoped single-product button states.
 */

form.cart .single_add_to_cart_button,
form.cart .single_add_to_cart_button:hover,
form.cart .single_add_to_cart_button:focus,
form.cart .single_add_to_cart_button:focus-visible,
form.cart .single_add_to_cart_button:active,
form.cart .single_add_to_cart_button:disabled,
form.cart .single_add_to_cart_button.disabled,
form.cart .single_add_to_cart_button.loading,
form.cart .single_add_to_cart_button.added,
form.cart button[name="add-to-cart"],
form.cart button[name="add-to-cart"]:hover,
form.cart button[name="add-to-cart"]:focus,
form.cart button[name="add-to-cart"]:focus-visible,
form.cart button[name="add-to-cart"]:active,
form.cart button[name="add-to-cart"]:disabled,
form.cart button[name="add-to-cart"].disabled,
form.cart button[name="add-to-cart"].loading,
form.cart button[name="add-to-cart"].added,
form.cart input[name="add-to-cart"],
form.cart input[name="add-to-cart"]:hover,
form.cart input[name="add-to-cart"]:focus,
form.cart input[name="add-to-cart"]:focus-visible,
form.cart input[name="add-to-cart"]:active,
form.cart input[name="add-to-cart"]:disabled,
form.cart input[name="add-to-cart"].disabled,
form.cart input[name="add-to-cart"].loading,
form.cart input[name="add-to-cart"].added {
    background-color: #000 !important;
    background-image: linear-gradient(135deg, #000 0%, #1f1f1f 100%) !important;
    border-color: #000 !important;
    color: #fff !important;
    box-shadow: none !important;
    opacity: 1 !important;
    text-decoration: none !important;
    -webkit-text-fill-color: #fff !important;
}

form.cart .single_add_to_cart_button:hover,
form.cart button[name="add-to-cart"]:hover,
form.cart input[name="add-to-cart"]:hover {
    background-color: #1b1b1b !important;
    background-image: linear-gradient(135deg, #1b1b1b 0%, #000 100%) !important;
}

form.cart .single_add_to_cart_button:focus-visible,
form.cart button[name="add-to-cart"]:focus-visible,
form.cart input[name="add-to-cart"]:focus-visible {
    outline: 2px solid #fff !important;
    outline-offset: -4px !important;
}

form.cart .single_add_to_cart_button.loading,
form.cart button[name="add-to-cart"].loading,
form.cart input[name="add-to-cart"].loading {
    background-image: linear-gradient(
        110deg,
        #000 0%,
        #000 35%,
        #333 50%,
        #000 65%,
        #000 100%
    ) !important;
    background-size: 220% 100% !important;
    animation: p212aatc-loading 1.1s linear infinite !important;
    cursor: wait !important;
}

form.cart .single_add_to_cart_button.added,
form.cart button[name="add-to-cart"].added,
form.cart input[name="add-to-cart"].added {
    background-color: #111 !important;
    background-image: linear-gradient(135deg, #000 0%, #303030 50%, #000 100%) !important;
}

form.cart .single_add_to_cart_button:disabled,
form.cart .single_add_to_cart_button.disabled,
form.cart .single_add_to_cart_button.p212aatc-awaiting-selection,
form.cart button[name="add-to-cart"]:disabled,
form.cart button[name="add-to-cart"].disabled,
form.cart button[name="add-to-cart"].p212aatc-awaiting-selection,
form.cart input[name="add-to-cart"]:disabled,
form.cart input[name="add-to-cart"].disabled,
form.cart input[name="add-to-cart"].p212aatc-awaiting-selection {
    background-color: #242424 !important;
    background-image: linear-gradient(135deg, #242424 0%, #454545 100%) !important;
    border-color: #242424 !important;
    color: #bdbdbd !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #bdbdbd !important;
}

form.cart + a.added_to_cart.wc-forward,
form.cart a.added_to_cart.wc-forward,
.single-product form.cart ~ a.added_to_cart.wc-forward {
    display: none !important;
}

.elementor-menu-cart__product.p212aatc-removing,
.woocommerce-mini-cart-item.p212aatc-removing,
.mini_cart_item.p212aatc-removing {
    opacity: 0.45 !important;
    pointer-events: none !important;
    transition: opacity 160ms ease !important;
}

.elementor-menu-cart__product.p212aatc-removing::after,
.woocommerce-mini-cart-item.p212aatc-removing::after,
.mini_cart_item.p212aatc-removing::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border: 2px solid rgba(0, 0, 0, 0.18);
    border-top-color: #000;
    border-radius: 50%;
    animation: p212aatc-spin 650ms linear infinite;
}

.elementor-menu-cart__product.p212aatc-removing,
.woocommerce-mini-cart-item.p212aatc-removing,
.mini_cart_item.p212aatc-removing {
    position: relative;
}

@keyframes p212aatc-loading {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: -100% 0;
    }
}

@keyframes p212aatc-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    form.cart .single_add_to_cart_button.loading,
    form.cart button[name="add-to-cart"].loading,
    form.cart input[name="add-to-cart"].loading {
        animation: none !important;
    }

    .elementor-menu-cart__product.p212aatc-removing::after,
    .woocommerce-mini-cart-item.p212aatc-removing::after,
    .mini_cart_item.p212aatc-removing::after {
        animation: none !important;
    }
}
