/* Keep native WooCommerce fields and payment controls within the plugin's card layout. */
.sm-page .woocommerce-billing-fields h3,
.sm-page .woocommerce-additional-fields h3 { margin: 0 0 1.25rem; font-size: 1.125rem; font-weight: 700; }
.sm-page .form-row { margin: 0 0 1rem; }
.sm-page .form-row label { display: block; margin-bottom: .5rem; }
.sm-page .form-row .woocommerce-input-wrapper { display: block; }
.sm-page .form-row .input-text,
.sm-page .form-row select,
.sm-page .select2-container .select2-selection--single {
    width: 100%; min-height: 48px; border: 1px solid var(--color-border, #d1d5db);
    border-radius: var(--radius-sm, 12px); padding: .65rem .85rem; color: inherit;
    background: transparent; font: inherit;
}
.sm-page .form-row textarea { min-height: 100px; }
.sm-page .form-row .input-text:focus { outline: 2px solid var(--color-primary, #d3283d); outline-offset: 2px; }
.sm-page #payment { margin-top: 1.5rem; background: transparent; }
.sm-page #payment ul.payment_methods { padding: 0; list-style: none; border: 0; }
.sm-page #payment ul.payment_methods li { padding: 1rem 0; }
.sm-page #payment .payment_box { border-radius: 12px; }
.sm-page #payment .place-order { padding: 1rem 0 0; }
.sm-page #place_order { width: 100%; padding: 1rem; border: 0; border-radius: 12px; background: var(--color-primary, #d3283d); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.sm-page .sm-shipping-table { width: 100%; border: 0; }
.sm-page .sm-shipping-table th, .sm-page .sm-shipping-table td { padding: .5rem 0; border: 0; }
.sm-page .sm-shipping-table ul { margin: 0; padding: 0; list-style: none; }
@media (max-width: 600px) {
    .sm-page .form-row-first, .sm-page .form-row-last { float: none; width: 100%; }
}
