/* ── Price badge — inline RIGHT of qty input ────────────────────────── */
.woocommerce-variation-add-to-cart,
.variations_button {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.wc-inline-price {
    display: inline-flex;
    align-items: center;
    font-size: 1.4rem;
    font-weight: 700;
    color: #333;
    opacity: 0;
    transform: translateX( -6px );
    transition: opacity 0.25s ease, transform 0.25s ease;
    white-space: nowrap;
    pointer-events: none;
}

.wc-inline-price--visible {
    opacity: 1;
    transform: translateX( 0 );
}

/* Push Add to Cart button to full width below qty+price row */
.woocommerce-variation-add-to-cart .single_add_to_cart_button,
.variations_button .single_add_to_cart_button {
    flex: 0 0 100%;
}

/* ── AJAX button: loading state ─────────────────────────────────────── */
.single_add_to_cart_button.loading {
    opacity: 0.75;
    cursor: wait;
}

.single_add_to_cart_button.loading::after {
    content: '';
    display: inline-block;
    width: 13px;
    height: 13px;
    margin-left: 8px;
    border: 2px solid rgba( 255, 255, 255, 0.45 );
    border-top-color: #fff;
    border-radius: 50%;
    animation: wc-spin 0.6s linear infinite;
    vertical-align: middle;
}

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

/* ── AJAX button: success / error states ────────────────────────────── */
.single_add_to_cart_button.added {
    background-color: #4a7c4e !important;
}

.single_add_to_cart_button.wc-ajax-error {
    background-color: #b32d2d !important;
}