/* Keep Woo's auto-column cart grid and clearfix cells from sizing the PDP.
 * Presentation only: native variation events, prices and wallet visibility stay owned by Woo. */
body.single-product.wm-globalized-product .wm-mm010-buy-column .wp-block-add-to-cart-form,
body.single-product.wm-globalized-product .wm-mm010-buy-column form.cart {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
}
body.single-product.wm-globalized-product .wm-mm010-buy-column form.cart,
body.single-product.wm-globalized-product .wm-mm010-buy-column .variations_button {
    grid-auto-flow: row;
    grid-template-columns: minmax(0, 1fr) !important;
}
body.single-product.wm-globalized-product .wm-mm010-buy-column form.cart::before,
body.single-product.wm-globalized-product .wm-mm010-buy-column form.cart::after,
body.single-product.wm-globalized-product .wm-mm010-buy-column .variations_button::before,
body.single-product.wm-globalized-product .wm-mm010-buy-column .variations_button::after {
    display: none;
}
/* Outer slot keeps its last measured height only during a variation refresh. */
body.single-product.wm-globalized-product .wm-mm010-wallet-slot {
    min-width: 0;
    width: 100%;
}
/* Reserve each mounted wallet button's configured 48px before its iframe paints.
 * Stripe still owns display/hidden state; empty containers reserve no space. */
body.single-product.wm-globalized-product .wm-mm010-payment-stack
#wc-stripe-express-checkout-element > .StripeElement:not([hidden]):has(iframe) {
    min-height: 48px;
}
