.voucher-embedded-checkout { width:100%; min-width:0; }
.voucher-checkout-native[inert] { opacity:.45; }
.voucher-checkout-status { margin:0 0 16px; color:inherit; font:inherit; }
/* Spectra's step 5 owns the addresses. WooCommerce keeps the mounted native
   components, validation, payment controls, terms and pickup-point integrations. */
.voucher-embedded-checkout:not(.voucher-checkout-account-required) .wp-block-woocommerce-checkout-contact-information-block,
.voucher-embedded-checkout .wp-block-woocommerce-checkout-shipping-address-block,
.voucher-embedded-checkout .wp-block-woocommerce-checkout-billing-address-block,
.voucher-embedded-checkout .wp-block-woocommerce-checkout-express-payment-block { display:none!important; }
.voucher-embedded-checkout .wc-block-components-sidebar-layout { flex-direction:column; }
.voucher-embedded-checkout .wc-block-components-main,
.voucher-embedded-checkout .wc-block-components-sidebar { width:100%!important; padding:0; }
.voucher-embedded-checkout .wc-block-components-sidebar { margin:0 0 16px; }
/* WooCommerce's sticky totals are intended for a two-column checkout.
   Here totals and fields share one column inside the Spectra container. */
.voucher-embedded-checkout .wc-block-components-sidebar,
.voucher-embedded-checkout .wc-block-components-sidebar.is-sticky {
    position:static!important;
    top:auto!important;
    bottom:auto!important;
    align-self:stretch;
}

.voucher-checkout-status[hidden],
.voucher-cart-sync[hidden], .voucher-cart-sync-status[hidden],
.voucher-add-to-cart-template[hidden] { display:none!important; }
.voucher-checkout-retry { margin-inline-start:12px; font:inherit; cursor:pointer; }
/* Spectra owns the actual status block and its frame, without copied styles. */
.voucher-checkout-status-template:not([data-vs-status-ready="1"]),
.voucher-checkout-status-container:not([data-vs-status-ready="1"]),
.voucher-checkout-status-template[hidden],
.voucher-checkout-status-container[hidden],
.voucher-checkout-status-template .uagb-heading-text[hidden]{display:none!important}

/* A single native Checkout and form remain mounted. Contents removes only the
   two layout boxes, making the native steps and totals flex items in one column.
   No splitting/cloning: WooCommerce otherwise force-adds mandatory fields. */
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-components-sidebar-layout.wc-block-checkout {
    display:flex;
    flex-direction:column!important;
    /* Progressive enhancement: keyboard/reading order follows the visual order
       in browsers implementing CSS reading-flow. No positive tabindex hacks. */
    reading-flow:flex-visual;
}
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__main,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form { display:contents; }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > * { order:100; }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-express-payment-block,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-contact-information-block,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-address-block,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-billing-address-block { order:0; }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-method-block,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-pickup-options-block,
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-methods-block { order:var(--vs-checkout-shipping-order); }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-payment-block { order:var(--vs-checkout-payment-order); }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__sidebar { order:var(--vs-checkout-summary-order)!important; }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-terms-block { order:200; }
.voucher-embedded-checkout.vs-checkout-ordered .wc-block-checkout__form > .wp-block-woocommerce-checkout-actions-block { order:210; }
/* The primary summary keeps its native mobile expand/collapse control. */
.voucher-embedded-checkout.vs-checkout-ordered .checkout-order-summary-block-fill-wrapper { display:none!important; }
/* Keep React mounted so the first automatic save can populate the checkout.
   Only its empty-cart view is suppressed, scoped to the configurator. */
.voucher-embedded-checkout[data-vs-has-items="0"] .voucher-checkout-native{display:none!important}
