/* Keep WooCommerce forms, notices, shipping and gateway hooks intact. */
.rm-commerce-page #main .container { max-width: 1440px; }
.rm-commerce-page #main .content { width:100%; border:0; }
:is(body,#top) .rm-commerce { box-sizing:border-box; max-width:var(--rm-width); margin:24px auto; padding:clamp(20px,4vw,48px); background:var(--rm-background);background-image:linear-gradient(to bottom,var(--rm-background),var(--rm-background-bottom,var(--rm-background))); color:var(--rm-text); border-radius:var(--rm-radius); font:var(--rm-size)/1.55 var(--rm-font); }
:is(body,#top) .rm-commerce * { box-sizing:border-box; }
:is(body,#top) .rm-commerce a { color:var(--rm-accent); }
:is(body,#top) .rm-commerce .rm-back-menu { display:inline-block; margin-bottom:24px; font-weight:650; text-decoration:none; }
:is(body,#top) .rm-commerce .rm-commerce-steps { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:28px; font-size:.8em; }
:is(body,#top) .rm-commerce .rm-commerce-steps>* { padding:8px 16px; border:1px solid var(--rm-border); border-radius:999px; color:var(--rm-muted); text-decoration:none; }
:is(body,#top) .rm-commerce .rm-commerce-steps>[aria-current] { color:var(--rm-on-accent); background:var(--rm-accent); border-color:var(--rm-accent); }
:is(body,#top) .rm-commerce .rm-commerce-header>span { color:var(--rm-accent); font-size:.7em; font-weight:700; letter-spacing:.16em; }
:is(body,#top) .rm-commerce h2,:is(body,#top) .rm-commerce h3,:is(body,#top) .rm-commerce h4 { font-family:inherit; color:var(--rm-text); text-transform:none; letter-spacing:normal; }
:is(body,#top) .rm-commerce .rm-commerce-header h2 { margin:10px 0 30px; font-size:clamp(30px,4vw,48px); line-height:1.15; }
:is(body,#top) .rm-commerce h2,:is(body,#top) .rm-commerce h3 { font-size:1.25em; }
:is(body,#top) .rm-commerce p,:is(body,#top) .rm-commerce label { color:var(--rm-text); }
:is(body,#top) .rm-commerce :focus-visible { outline:3px solid var(--rm-accent); outline-offset:3px; }
:is(body,#top) .rm-commerce .button,:is(body,#top) .rm-commerce button[type=submit],:is(body,#top) .rm-commerce #place_order { background:var(--rm-accent)!important; color:var(--rm-on-accent)!important; border:1px solid var(--rm-accent)!important; border-radius:calc(var(--rm-radius)*.7); padding:14px 20px; font:700 .9em/1.4 var(--rm-font); text-transform:none; letter-spacing:normal; text-decoration:none; height:auto; box-shadow:none; }
:is(body,#top) .rm-commerce .button:disabled { opacity:.5; }
:is(body,#top) .rm-commerce input.input-text,:is(body,#top) .rm-commerce select,:is(body,#top) .rm-commerce textarea { background:var(--rm-surface)!important; color:var(--rm-text)!important; border:1px solid var(--rm-border)!important; border-radius:calc(var(--rm-radius)*.6)!important; min-height:46px; padding:12px!important; width:100%; font:inherit; box-shadow:none!important; }
:is(body,#top) .rm-commerce input[type=radio],:is(body,#top) .rm-commerce input[type=checkbox] { accent-color:var(--rm-accent); }
:is(body,#top) .rm-commerce textarea { min-height:110px; }
:is(body,#top) .rm-commerce .select2-selection { background:var(--rm-surface); border-color:var(--rm-border); border-radius:calc(var(--rm-radius)*.6); min-height:46px; padding:7px; }
:is(body,#top) .rm-commerce .select2-selection__rendered { color:var(--rm-text)!important; }
:is(body,#top) .rm-commerce .woocommerce-notices-wrapper { grid-column:1/-1; }
:is(body,#top) .rm-commerce .woocommerce-error,:is(body,#top) .rm-commerce .woocommerce-message,:is(body,#top) .rm-commerce .woocommerce-info { background:var(--rm-surface); color:var(--rm-text); border:1px solid var(--rm-border); border-left:4px solid var(--rm-accent); border-radius:calc(var(--rm-radius)*.6); margin:0 0 20px; }
:is(body,#top) .rm-commerce .woocommerce-notices-wrapper:empty { display:none; }
/* Cart: items and a separate summary panel, matching the menu cards. */
:is(body,#top).woocommerce-cart .rm-commerce>.woocommerce { display:grid; grid-template-columns:minmax(0,1fr) minmax(290px,.48fr); gap:24px; align-items:start; }
:is(body,#top) .rm-commerce .woocommerce-cart-form,:is(body,#top) .rm-commerce .cart-collaterals,:is(body,#top) .rm-commerce #customer_details,:is(body,#top) .rm-commerce #order_review { background:var(--rm-surface); border:1px solid var(--rm-border); border-radius:var(--rm-radius); padding:24px; min-width:0; }
:is(body,#top) .rm-commerce .cart-collaterals { width:auto!important; }
:is(body,#top) .rm-commerce .cart-collaterals .cart_totals { float:none!important; width:100%!important; }
:is(body,#top) .rm-commerce table.shop_table { width:100%; margin:0; border:0; border-collapse:collapse; border-radius:0; background:transparent; color:var(--rm-text); font-size:.87em; }
:is(body,#top) .rm-commerce table.shop_table th,:is(body,#top) .rm-commerce table.shop_table td { background:transparent!important; color:var(--rm-text); border:0; border-bottom:1px solid var(--rm-border); padding:16px 8px; text-transform:none; letter-spacing:normal; font-size:inherit; vertical-align:middle; }
:is(body,#top) .rm-commerce table.shop_table thead th { color:var(--rm-muted); font-weight:500; font-size:.82em; }
:is(body,#top) .rm-commerce table.shop_table .product-name { font-weight:650; }
:is(body,#top) .rm-commerce table.shop_table .product-name a { color:var(--rm-text); text-decoration:none; }
:is(body,#top) .rm-commerce table.shop_table .product-thumbnail img { width:64px; min-width:48px; height:64px; object-fit:cover; border-radius:10px; }
:is(body,#top) .rm-commerce table.shop_table .product-price { display:none; }
:is(body,#top) .rm-commerce table.shop_table .product-remove { width:30px; padding-left:0; }
:is(body,#top) .rm-commerce a.remove { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:1px solid var(--rm-border); border-radius:50%; color:var(--rm-muted)!important; background:transparent; text-decoration:none; }
:is(body,#top) .rm-commerce a.remove:hover { color:var(--rm-on-accent)!important; background:var(--rm-accent); }
:is(body,#top) .rm-commerce .quantity { display:flex; float:none; width:auto; min-width:100px; align-items:center; }
:is(body,#top) .rm-commerce .quantity input.qty { min-width:44px; width:52px; padding:8px!important; text-align:center; margin:0; }
:is(body,#top) .rm-commerce .quantity input.minus,:is(body,#top) .rm-commerce .quantity input.plus { border:1px solid var(--rm-border); border-radius:50%; width:28px; height:28px; color:var(--rm-text); background:var(--rm-surface); padding:0; }
:is(body,#top) .rm-commerce .shop_table .actions { padding:20px 0 0; border:0; }
:is(body,#top) .rm-commerce .coupon { display:flex; flex-wrap:wrap; gap:8px; }
:is(body,#top) .rm-commerce .coupon input { width:150px!important; margin:0!important; }
:is(body,#top) .rm-commerce .wc-proceed-to-checkout { padding:20px 0 0; }
:is(body,#top) .rm-commerce .wc-proceed-to-checkout .button { display:block; margin:0; text-align:center; }
:is(body,#top) .rm-commerce .cart-empty,:is(body,#top) .rm-commerce .return-to-shop,:is(body,#top) .rm-commerce .woocommerce-message { grid-column:1/-1; }
:is(body,#top) .rm-commerce .cart-empty { padding:35px; }
:is(body,#top) .rm-commerce .return-to-shop { text-align:center; }
:is(body,#top) .rm-commerce .order-total { font-size:1.12em; }
:is(body,#top) .rm-commerce .woocommerce-shipping-destination,:is(body,#top) .rm-commerce .woocommerce-shipping-methods { font-size:.86em; }
/* Native checkout retains its AJAX fragments and all gateway controls. */
:is(body,#top) .rm-commerce form.checkout { display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,.7fr); gap:0 28px; align-items:start; width:100%; }
:is(body,#top) .rm-commerce form.checkout> :not(#customer_details):not(#order_review):not(#order_review_heading) { grid-column:1/-1; }
:is(body,#top) .rm-commerce #customer_details { grid-column:1; grid-row:span 3; width:100%; }
:is(body,#top) .rm-commerce #customer_details .col-1,:is(body,#top) .rm-commerce #customer_details .col-2 { float:none; width:100%; margin:0; }
:is(body,#top) .rm-commerce #customer_details h3 { margin:0 0 22px; }
:is(body,#top) .rm-commerce #customer_details .woocommerce-additional-fields { margin-top:26px; }
:is(body,#top) .rm-commerce #order_review_heading { grid-column:2; margin:0; padding:20px 24px 0; background:var(--rm-surface); border:1px solid var(--rm-border); border-bottom:0; border-radius:var(--rm-radius) var(--rm-radius) 0 0; }
:is(body,#top) .rm-commerce #order_review { grid-column:2; border-top:0; border-radius:0 0 var(--rm-radius) var(--rm-radius); width:100%; float:none; }
:is(body,#top) .rm-commerce .form-row { padding:0; margin:0 0 18px; }
:is(body,#top) .rm-commerce .form-row label { display:block; margin:0 0 6px; font-size:.85em; font-weight:600; }
:is(body,#top) .rm-commerce .form-row label.checkbox,:is(body,#top) .rm-commerce .form-row label.radio { display:inline; }
:is(body,#top) .rm-commerce #payment { background:transparent!important; border-radius:0; }
:is(body,#top) .rm-commerce #payment ul.payment_methods { padding:20px 0; border-bottom:1px solid var(--rm-border); }
:is(body,#top) .rm-commerce #payment ul.payment_methods li { background:var(--rm-background); border:1px solid var(--rm-border); border-radius:calc(var(--rm-radius)*.6); margin:8px 0; padding:12px; }
:is(body,#top) .rm-commerce #payment div.payment_box { background:var(--rm-surface); color:var(--rm-text); border:1px solid var(--rm-border); border-radius:8px; margin:12px 0 0; }
:is(body,#top) .rm-commerce #payment div.payment_box:before { display:none; }
:is(body,#top) .rm-commerce #payment .place-order { padding:20px 0 0; }
:is(body,#top) .rm-commerce #place_order { width:100%; float:none; margin-top:16px; }
:is(body,#top) .rm-commerce .woocommerce-privacy-policy-text { font-size:.77em; color:var(--rm-muted); }
:is(body,#top) .rm-commerce .woocommerce-checkout-review-order-table .product-name { width:65%; }
:is(body,#top) .rm-commerce .woocommerce-checkout-review-order-table .product-total { text-align:right; }
:is(body,#top) .rm-commerce .woocommerce-order { grid-column:1/-1; }
@media(max-width:1000px) {
 :is(body,#top).woocommerce-cart .rm-commerce>.woocommerce,:is(body,#top) .rm-commerce form.checkout { grid-template-columns:1fr; }
 :is(body,#top) .rm-commerce #customer_details { grid-column:1; grid-row:auto; margin-bottom:24px; }
 :is(body,#top) .rm-commerce #order_review,:is(body,#top) .rm-commerce #order_review_heading { grid-column:1; }
}
@media(max-width:600px) {
 :is(body,#top) .rm-commerce { padding:22px 12px; margin:0 auto; border-radius:0; }
 :is(body,#top) .rm-commerce .woocommerce-cart-form,:is(body,#top) .rm-commerce .cart-collaterals,:is(body,#top) .rm-commerce #customer_details,:is(body,#top) .rm-commerce #order_review { padding:16px; }
 :is(body,#top) .rm-commerce #order_review_heading { padding:20px 16px 0; }
 :is(body,#top) .rm-commerce .form-row-first,:is(body,#top) .rm-commerce .form-row-last { width:100%!important; float:none; }
 :is(body,#top) .rm-commerce .rm-commerce-steps { gap:6px; }
 :is(body,#top) .rm-commerce .rm-commerce-steps>* { padding:7px 11px; }
 :is(body,#top) .rm-commerce table.cart td { padding:12px 4px; }
 :is(body,#top) .rm-commerce table.cart .product-thumbnail { display:block; }
 :is(body,#top) .rm-commerce table.cart .product-thumbnail:before { display:none; }
 :is(body,#top) .rm-commerce table.cart .quantity { display:inline-flex; }
 :is(body,#top) .rm-commerce table.cart .actions .button { width:100%; margin-top:10px; }
}

/* Neutralize Enfold table stripes and gradient quantity controls only in this panel. */
:is(body,#top) .rm-commerce table.shop_table tr { background:transparent!important; }
:is(body,#top) .rm-commerce .quantity .minus,:is(body,#top) .rm-commerce .quantity .plus { background:var(--rm-surface)!important; background-image:none!important; color:var(--rm-text)!important; border:1px solid var(--rm-border)!important; border-radius:50%!important; padding:0!important; width:28px!important; height:28px!important; min-height:28px!important; box-shadow:none!important; }
:is(body,#top) .rm-commerce a.remove { color:var(--rm-text)!important; background:transparent!important; font:22px/1 var(--rm-font)!important; text-indent:0!important; }
:is(body,#top) .rm-commerce a.remove:hover { color:var(--rm-on-accent)!important; background:var(--rm-accent)!important; }
:is(body,#top) .rm-commerce .amount { color:inherit; }
:is(body,#top) .rm-commerce .wc-proceed-to-checkout a { border-radius:calc(var(--rm-radius)*.7)!important; }

/* Keep checkout details readable when Enfold styles nested label spans. */
:is(body,#top) .rm-commerce label span,
:is(body,#top) .rm-commerce .amount .woocommerce-Price-currencySymbol { color:inherit; }
:is(body,#top) .rm-commerce label .optional { color:var(--rm-muted); }
:is(body,#top) .rm-commerce input.input-text::placeholder,
:is(body,#top) .rm-commerce textarea::placeholder { color:var(--rm-muted); opacity:1; }
