/* ---------- Buttons ---------- */
.ew .ax-cart .woocommerce .button, .ew .ax-cart .woocommerce button.button, .ew .ax-cart .woocommerce a.button, .ew .ax-cart .woocommerce input.button, .ew .ax-cart .woocommerce-Button, .ew .ax-cart .woocommerce-button {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--wp--custom--atlas--dimension--8);
  min-height: var(--ew-target); padding: 0 var(--wp--custom--atlas--dimension--20); border-radius: var(--ew-radius-md);
  border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line-strong); background: var(--wp--preset--color--base-elevated); color: var(--ew-color-ink);
  font: var(--ew-fw-semibold) var(--wp--custom--atlas--dimension--16)/1 var(--ew-font-body); text-decoration: none; cursor: pointer; white-space: nowrap;
  transition: border-color var(--ew-duration), background var(--ew-duration);
}
.ew .ax-cart .woocommerce .button:hover, .ew .ax-cart .woocommerce-button:hover { border-color: var(--ew-color-ink); background: var(--wp--preset--color--base-elevated); color: var(--ew-color-ink); }
.ew .ax-cart .woocommerce .button.alt, .ew .ax-cart .woocommerce #place_order, .ew .ax-cart .woocommerce .checkout-button, .ew .ax-cart .woocommerce .single_add_to_cart_button, .ew .ax-cart .woocommerce-form-login__submit, .ew .ax-cart .woocommerce-form-register__submit, .ew .ax-cart .woocommerce-ResetPassword .button {
  min-height: var(--ew-control-h); background: var(--ew-color-accent); border-color: var(--ew-color-accent); color: var(--wp--preset--color--base-elevated);
}
.ew .ax-cart .woocommerce .button.alt:hover, .ew .ax-cart .woocommerce #place_order:hover, .ew .ax-cart .woocommerce .checkout-button:hover, .ew .ax-cart .woocommerce .single_add_to_cart_button:hover, .ew .ax-cart .woocommerce-form-login__submit:hover, .ew .ax-cart .woocommerce-form-register__submit:hover {
  background: var(--ew-color-accent-hover); border-color: var(--ew-color-accent-hover); color: var(--wp--preset--color--base-elevated);
}
.ew .ax-cart .woocommerce .button:disabled, .ew .ax-cart .woocommerce .button.disabled, .ew .ax-cart .woocommerce .button[disabled] { background: var(--ew-color-surface-2); border-color: var(--ew-color-line); color: var(--wp--preset--color--disabled-ink); cursor: not-allowed; opacity: 1; }
.ew .ax-cart .woocommerce .screen-reader-text { position: absolute !important; width: var(--wp--custom--atlas--dimension--1); height: var(--wp--custom--atlas--dimension--1); overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- Form rows & inputs ---------- */
.ew .ax-cart .woocommerce .form-row { display: grid; gap: var(--wp--custom--atlas--dimension--8); margin: 0 0 var(--wp--custom--atlas--dimension--16); padding: 0; min-width: 0; }
.ew .ax-cart .woocommerce .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) { font-size: var(--ew-fs-small); font-weight: var(--ew-fw-semibold); color: var(--ew-color-ink); line-height: 1.3; }
.ew .ax-cart .woocommerce .form-row .required, .ew .ax-cart .woocommerce abbr.required { color: var(--ew-color-danger); text-decoration: none; border: 0; }
.ew .ax-cart .woocommerce .input-text, .ew .ax-cart .woocommerce .form-row select, .ew .ax-cart .woocommerce .form-row textarea, .ew .ax-cart .woocommerce-Input {
  width: 100%; min-height: var(--ew-control-h); padding: 0 var(--wp--custom--atlas--dimension--16); border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line-strong);
  border-radius: var(--ew-radius-md); background: var(--wp--preset--color--base-elevated); color: var(--ew-color-ink); font: 400 var(--wp--custom--atlas--dimension--17)/1.2 var(--ew-font-body); box-shadow: none;
}
.ew .ax-cart .woocommerce .form-row textarea { min-height: var(--wp--custom--atlas--dimension--140); padding: var(--wp--custom--atlas--dimension--14) var(--wp--custom--atlas--dimension--16); line-height: 1.5; }
.ew .ax-cart .woocommerce .input-text:focus-visible, .ew .ax-cart .woocommerce .form-row select:focus-visible, .ew .ax-cart .woocommerce .form-row textarea:focus-visible { outline: none; border-color: var(--ew-color-accent); box-shadow: var(--ew-focus-ring); }
.ew .ax-cart .woocommerce-invalid .input-text, .ew .ax-cart .woocommerce-invalid select, .ew .ax-cart .woocommerce .input-text[aria-invalid="true"] { border-color: var(--ew-color-danger); }
.ew .ax-cart .woocommerce-validated .input-text { border-color: var(--ew-color-line-strong); }
.ew .ax-cart .woocommerce .form-row .description, .ew .ax-cart .woocommerce-form-row em, .ew .ax-cart .woocommerce .form-row-wide em { display: block; font-size: var(--wp--custom--atlas--dimension--14); color: var(--ew-color-muted); font-style: normal; }
.ew .ax-cart .woocommerce-form__label-for-checkbox, .ew .ax-cart .woocommerce .form-row label.checkbox { display: flex; align-items: flex-start; gap: var(--wp--custom--atlas--dimension--12); min-height: var(--ew-target); padding-top: var(--wp--custom--atlas--dimension--10); font-size: var(--wp--custom--atlas--dimension--15); line-height: 1.45; color: var(--ew-color-ink-2); cursor: pointer; }
.ew .ax-cart .woocommerce-form__input-checkbox, .ew .ax-cart .woocommerce input.input-checkbox, .ew .ax-cart .woocommerce .form-row input[type="checkbox"] { width: var(--wp--custom--atlas--dimension--22); height: var(--wp--custom--atlas--dimension--22); margin: 0; flex: none; accent-color: var(--ew-color-accent); }
.ew .ax-cart .woocommerce .password-input { position: relative; display: block; }
.ew .ax-cart .woocommerce .password-input .input-text { padding-right: var(--wp--custom--atlas--dimension--56); }
.ew .ax-cart .woocommerce .show-password-input { position: absolute; right: var(--wp--custom--atlas--dimension--4); top: var(--wp--custom--atlas--dimension--4); width: var(--ew-target); height: var(--ew-target); border: 0; background: transparent; border-radius: var(--ew-radius-sm); cursor: pointer; color: var(--ew-color-muted); }
.ew .ax-cart .woocommerce .form-row-first, .ew .ax-cart .woocommerce .form-row-last { width: auto; float: none; }
.ew .ax-cart .woocommerce-billing-fields__field-wrapper, .ew .ax-cart .woocommerce-EditAccountForm, .ew .ax-cart .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--wp--custom--atlas--dimension--16); }
.ew .ax-cart .woocommerce-billing-fields__field-wrapper > .form-row-wide, .ew .ax-cart .woocommerce-EditAccountForm > .form-row-wide, .ew .ax-cart .woocommerce-EditAccountForm > fieldset, .ew .ax-cart .woocommerce-EditAccountForm > p:not(.form-row-first):not(.form-row-last), .ew .ax-cart .woocommerce-EditAccountForm > .clear { grid-column: 1 / -1; }
.ew .ax-cart .woocommerce .clear { display: none; }
.ew .ax-cart .woocommerce-EditAccountForm fieldset, .ew .ax-cart .woocommerce-address-fields fieldset, .ew .ax-cart .woocommerce form.checkout fieldset { border: 0; margin: var(--wp--custom--atlas--dimension--8) 0 0; padding: 0; min-width: 0; }
.ew .ax-cart .woocommerce-EditAccountForm fieldset legend, .ew .ax-cart .woocommerce-address-fields fieldset legend, .ew .ax-cart .woocommerce form.checkout fieldset legend { font-family: var(--ew-font-display); font-weight: 500; font-size: var(--wp--custom--atlas--dimension--22); padding: 0; margin-bottom: var(--wp--custom--atlas--dimension--12); color: var(--ew-color-ink); }

/* ---------- Notices ---------- */
.ew .ax-cart .woocommerce-message, .ew .ax-cart .woocommerce-info, .ew .ax-cart .woocommerce-error, .ew .ax-cart .woocommerce-noreviews, .ew .ax-cart .woocommerce p.no-comments {
  position: relative; display: block; list-style: none; margin: 0 0 var(--wp--custom--atlas--dimension--20); padding: var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--48); border: var(--wp--custom--atlas--dimension--1) solid; border-top-width: var(--wp--custom--atlas--dimension--1); border-radius: var(--ew-radius-md);
  font-size: var(--ew-fs-small); line-height: 1.5; color: var(--ew-color-ink); background: var(--ew-color-accent-soft); border-color: var(--wp--preset--color--notice-info-border);
}
.ew .ax-cart .woocommerce-message::before, .ew .ax-cart .woocommerce-info::before, .ew .ax-cart .woocommerce-error::before {
  content: ""; position: absolute; left: var(--wp--custom--atlas--dimension--16); top: var(--wp--custom--atlas--dimension--17); width: var(--wp--custom--atlas--dimension--20); height: var(--wp--custom--atlas--dimension--20); border-radius: 50%; font-family: inherit;
  background: currentColor; -webkit-mask: var(--ew-notice-icon) center / contain no-repeat; mask: var(--ew-notice-icon) center / contain no-repeat;
}
.ew .ax-cart .woocommerce-info { --ew-notice-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 7.5v.5'/%3E%3C/svg%3E"); }
.ew .ax-cart .woocommerce-info::before { color: var(--ew-color-accent); }
.ew .ax-cart .woocommerce-message { background: var(--ew-color-success-soft); border-color: var(--wp--preset--color--notice-success-border); color: var(--wp--preset--color--notice-success-ink); --ew-notice-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E"); }
.ew .ax-cart .woocommerce-message::before { color: var(--ew-color-success); }
.ew .ax-cart .woocommerce-error { background: var(--ew-color-danger-soft); border-color: var(--wp--preset--color--notice-error-border); color: var(--wp--preset--color--notice-error-ink); --ew-notice-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v6M12 16.5v.5'/%3E%3C/svg%3E"); }
.ew .ax-cart .woocommerce-error::before { color: var(--ew-color-danger); }
.ew .ax-cart .woocommerce-error li { margin: 0; }
.ew .ax-cart .woocommerce-error li + li { margin-top: var(--wp--custom--atlas--dimension--6); }
.ew .ax-cart .woocommerce-message .button, .ew .ax-cart .woocommerce-info .button { float: right; margin: var(--wp--custom--atlas--dimension--negative-6) 0 0 var(--wp--custom--atlas--dimension--12); min-height: var(--wp--custom--atlas--dimension--40); }
.ew .ax-cart .woocommerce-message a:not(.button), .ew .ax-cart .woocommerce-info a:not(.button), .ew .ax-cart .woocommerce-error a { color: inherit; font-weight: 600; }

/* ---------- Tables (cart, totals, review, orders) ---------- */
.ew .ax-cart .woocommerce table.shop_table { width: 100%; border-collapse: separate; border-spacing: 0; margin: 0; border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); border-radius: var(--ew-radius-lg); background: var(--wp--preset--color--base-elevated); font-size: var(--wp--custom--atlas--dimension--16); overflow: hidden; }
.ew .ax-cart .woocommerce table.shop_table th, .ew .ax-cart .woocommerce table.shop_table td { padding: var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--20); border: 0; border-bottom: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); text-align: left; vertical-align: middle; }
.ew .ax-cart .woocommerce table.shop_table thead th { font-size: var(--wp--custom--atlas--dimension--13); font-weight: var(--ew-fw-semibold); letter-spacing: .04em; text-transform: uppercase; color: var(--ew-color-muted); background: var(--ew-color-bg); }
.ew .ax-cart .woocommerce table.shop_table tbody tr:last-child td, .ew .ax-cart .woocommerce table.shop_table tbody tr:last-child th, .ew .ax-cart .woocommerce table.shop_table tfoot tr:last-child th, .ew .ax-cart .woocommerce table.shop_table tfoot tr:last-child td { border-bottom: 0; }
.ew .ax-cart .woocommerce-Price-amount { font-variant-numeric: tabular-nums; white-space: nowrap; }
.ew .ax-cart .woocommerce .product-name a { color: var(--ew-color-ink); font-weight: 600; text-decoration: none; }
.ew .ax-cart .woocommerce .product-name a:hover { text-decoration: underline; }
.ew .ax-cart .woocommerce .product-name dl.variation { display: flex; flex-wrap: wrap; gap: var(--wp--custom--atlas--dimension--2) var(--wp--custom--atlas--dimension--6); margin: var(--wp--custom--atlas--dimension--4) 0 0; font-size: var(--wp--custom--atlas--dimension--14); color: var(--ew-color-muted); }
.ew .ax-cart .woocommerce .product-name dl.variation dt { font-weight: 500; }
.ew .ax-cart .woocommerce .product-name dl.variation dd, .ew .ax-cart .woocommerce .product-name dl.variation p { margin: 0; }
.ew .ax-cart .woocommerce .product-thumbnail img, .ew .ax-cart .woocommerce .product-thumbnail .ax-code { width: var(--wp--custom--atlas--dimension--48); height: auto; border-radius: var(--ew-radius-sm); }
.ew .ax-cart .woocommerce .product-thumbnail .ax-code { height: var(--wp--custom--atlas--dimension--34); }
.ew .ax-cart .woocommerce .product-remove { width: var(--wp--custom--atlas--dimension--56); }
.ew .ax-cart .woocommerce a.remove { display: inline-flex; align-items: center; justify-content: center; width: var(--ew-target); height: var(--ew-target); border-radius: var(--ew-radius-md); border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line-strong); color: var(--ew-color-ink-2) !important; font-size: var(--wp--custom--atlas--dimension--22); line-height: 1; text-decoration: none; background: var(--wp--preset--color--base-elevated); }
.ew .ax-cart .woocommerce a.remove:hover { border-color: var(--ew-color-danger); color: var(--ew-color-danger) !important; background: var(--ew-color-danger-soft); }
.ew .ax-cart .woocommerce .quantity .qty { width: var(--wp--custom--atlas--dimension--88); min-height: var(--ew-target); padding: 0 var(--wp--custom--atlas--dimension--8); text-align: center; border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line-strong); border-radius: var(--ew-radius-md); font: 500 var(--wp--custom--atlas--dimension--17)/1 var(--ew-font-body); font-variant-numeric: tabular-nums; }
.ew .ax-cart .woocommerce td.actions { background: var(--ew-color-bg); }
.ew .ax-cart .woocommerce td.actions > * { vertical-align: middle; }
.ew .ax-cart .woocommerce td.actions { text-align: right; }
.ew .ax-cart .woocommerce td.actions .coupon { float: left; display: flex; gap: var(--wp--custom--atlas--dimension--8); align-items: center; }
.ew .ax-cart .woocommerce td.actions .coupon .input-text { width: var(--wp--custom--atlas--dimension--220); min-height: var(--ew-target); }
.ew .ax-cart .woocommerce .product-subtotal, .ew .ax-cart .woocommerce .product-price, .ew .ax-cart .woocommerce .product-total { text-align: right !important; }
.ew .ax-cart .woocommerce thead .product-subtotal, .ew .ax-cart .woocommerce thead .product-price, .ew .ax-cart .woocommerce thead .product-total { text-align: right !important; }

/* Cart layout: items left, totals right */
.ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) { display: grid; grid-template-columns: minmax(0, 1fr) var(--wp--custom--atlas--dimension--380); gap: var(--wp--custom--atlas--dimension--32); align-items: start; }
.ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) > .woocommerce-notices-wrapper:empty { display: none; }
.ew .ax-cart .woocommerce .cart-collaterals { width: auto; min-width: 0; }
.ew .ax-cart .woocommerce .cart-collaterals .cart_totals { float: none; width: auto; background: var(--wp--preset--color--base-elevated); border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); border-radius: var(--ew-radius-lg); box-shadow: var(--ew-shadow-2); padding: var(--wp--custom--atlas--dimension--22) var(--wp--custom--atlas--dimension--24) var(--wp--custom--atlas--dimension--24); }
.ew .ax-cart .woocommerce .cart_totals h2 { font-family: var(--ew-font-display); font-weight: 500; font-size: var(--wp--custom--atlas--dimension--26); margin: 0 0 var(--wp--custom--atlas--dimension--8); }
.ew .ax-cart .woocommerce .cart_totals table.shop_table { border: 0; border-radius: 0; }
.ew .ax-cart .woocommerce .cart_totals table.shop_table th, .ew .ax-cart .woocommerce .cart_totals table.shop_table td { padding: var(--wp--custom--atlas--dimension--12) 0; background: none; }
.ew .ax-cart .woocommerce .cart_totals table.shop_table th { font-weight: 500; color: var(--ew-color-muted); text-transform: none; letter-spacing: 0; font-size: var(--wp--custom--atlas--dimension--16); }
.ew .ax-cart .woocommerce .cart_totals td { text-align: right; }
.ew .ax-cart .woocommerce .cart_totals .order-total th { color: var(--ew-color-ink); font-weight: 600; }
.ew .ax-cart .woocommerce .cart_totals .order-total .woocommerce-Price-amount { font-family: var(--ew-font-display); font-size: var(--wp--custom--atlas--dimension--30); font-weight: 500; }
.ew .ax-cart .woocommerce .wc-proceed-to-checkout { padding: var(--wp--custom--atlas--dimension--8) 0 0; }
.ew .ax-cart .woocommerce .wc-proceed-to-checkout .checkout-button { width: 100%; font-size: var(--wp--custom--atlas--dimension--17); margin: 0; }
.ew .ax-cart .woocommerce .cart-empty.woocommerce-info { margin-bottom: var(--wp--custom--atlas--dimension--16); }
.ew .ax-cart .woocommerce .return-to-shop .button { min-height: var(--ew-control-h); }

/* ---------- Breakpoints ---------- */
@container ew (max-width: 1023px) {
  .ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: 1fr; }
  .ew .ax-cart .woocommerce form.woocommerce-checkout { grid-template-columns: 1fr; }
  .ew .ax-cart .woocommerce form.woocommerce-checkout #customer_details, .ew .ax-cart .woocommerce form.woocommerce-checkout #order_review_heading, .ew .ax-cart .woocommerce form.woocommerce-checkout #order_review { grid-column: 1; grid-row: auto; }
  .ew .ax-cart .woocommerce form.woocommerce-checkout #order_review_heading { margin-top: var(--wp--custom--atlas--dimension--28); }
  .ew .ax-cart .woocommerce-MyAccount-navigation { flex-basis: 100%; max-width: none; }
  .ew .ax-cart .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: var(--wp--custom--atlas--dimension--6); }
  .ew .ax-cart .woocommerce-MyAccount-navigation li { flex: none; }
  .ew .ax-cart .woocommerce-MyAccount-navigation li a { background: var(--wp--preset--color--base-elevated); box-shadow: 0 0 0 var(--wp--custom--atlas--dimension--1) var(--ew-color-line); }
  .ew .ax-cart .woocommerce-MyAccount-navigation li.is-active a { box-shadow: inset 0 var(--wp--custom--atlas--dimension--negative-3) 0 var(--ew-color-accent), 0 0 0 var(--wp--custom--atlas--dimension--1) var(--ew-color-line); }
  .ew .ax-cart .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0; border: 0; }
  .ew .ax-cart .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@container ew (max-width: 759px) {
  /* Woo responsive tables: one card per row, labels from data-title */
  .ew .ax-cart .woocommerce table.shop_table_responsive thead { position: absolute; width: var(--wp--custom--atlas--dimension--1); height: var(--wp--custom--atlas--dimension--1); overflow: hidden; clip: rect(0 0 0 0); }
  .ew .ax-cart .woocommerce table.shop_table_responsive, .ew .ax-cart .woocommerce table.shop_table_responsive tbody, .ew .ax-cart .woocommerce table.shop_table_responsive tr, .ew .ax-cart .woocommerce table.shop_table_responsive tbody th, .ew .ax-cart .woocommerce table.shop_table_responsive tbody td { display: block; }
  .ew .ax-cart .woocommerce table.shop_table_responsive { border: 0; background: transparent; overflow: visible; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr { background: var(--wp--preset--color--base-elevated); border: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); border-radius: var(--ew-radius-md); padding: var(--wp--custom--atlas--dimension--4) var(--wp--custom--atlas--dimension--16); margin-bottom: var(--wp--custom--atlas--dimension--12); }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td, .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr th { display: flex; justify-content: space-between; align-items: center; gap: var(--wp--custom--atlas--dimension--16); padding: var(--wp--custom--atlas--dimension--12) 0; text-align: right !important; border-bottom: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td:last-child { border-bottom: 0; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td::before, .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr th::before { content: attr(data-title); font-size: var(--wp--custom--atlas--dimension--14); font-weight: 500; color: var(--ew-color-muted); text-align: left; flex: none; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td.product-thumbnail { display: none; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td.product-remove { justify-content: flex-end; border-bottom: 0; padding-bottom: 0; width: auto; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td.product-remove::before { display: none; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td.product-name { display: block; text-align: left !important; }
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody tr td.product-name::before { display: none; }
  .ew .ax-cart .woocommerce table.shop_table_responsive td.actions { display: grid !important; gap: var(--wp--custom--atlas--dimension--10); background: var(--wp--preset--color--base-elevated); text-align: left !important; }
  .ew .ax-cart .woocommerce table.shop_table_responsive td.actions::before { display: none; }
  .ew .ax-cart .woocommerce td.actions .coupon { float: none; display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .ew .ax-cart .woocommerce td.actions .coupon .input-text { width: 100%; }
  .ew .ax-cart .woocommerce td.actions .button { width: 100%; }
  .ew .ax-cart .woocommerce-billing-fields__field-wrapper, .ew .ax-cart .woocommerce-EditAccountForm { grid-template-columns: 1fr; }
  .ew .ax-cart .woocommerce-billing-fields, .ew .ax-cart .woocommerce-additional-fields:not(:empty) { padding: var(--wp--custom--atlas--dimension--18) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--4); }
  .ew .ax-cart .woocommerce #payment { padding: var(--wp--custom--atlas--dimension--18) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--20); }
  .ew .ax-cart .woocommerce-checkout-review-order-table th, .ew .ax-cart .woocommerce-checkout-review-order-table td { padding: var(--wp--custom--atlas--dimension--14) var(--wp--custom--atlas--dimension--16); }
  .ew .ax-cart .woocommerce .cart-collaterals .cart_totals { padding: var(--wp--custom--atlas--dimension--18) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--20); }
  .ew .ax-cart .woocommerce .u-columns.col2-set#customer_login { grid-template-columns: 1fr; }
  .ew .ax-cart .woocommerce form.woocommerce-form-login, .ew .ax-cart .woocommerce form.woocommerce-form-register, .ew .ax-cart .woocommerce form.lost_reset_password { padding: var(--wp--custom--atlas--dimension--18) var(--wp--custom--atlas--dimension--16) var(--wp--custom--atlas--dimension--4); }
  .ew .ax-cart .woocommerce ul.products { grid-template-columns: 1fr; gap: var(--wp--custom--atlas--dimension--12); }
  .ew .ax-cart .woocommerce-message .button, .ew .ax-cart .woocommerce-info .button { float: none; display: flex; margin: var(--wp--custom--atlas--dimension--10) 0 0; width: 100%; }
}

/* ---------- Alignment & responsive-table refinements (render-checked) ---------- */
.ew .ax-cart .woocommerce table.shop_table td.actions { text-align: right; }
.ew .ax-cart .woocommerce .cart_totals table.shop_table td, .ew .ax-cart .woocommerce-checkout-review-order-table tfoot td { text-align: right; }
.ew .ax-cart .woocommerce-checkout-review-order-table tfoot tr:first-child th, .ew .ax-cart .woocommerce-checkout-review-order-table tfoot tr:first-child td { border-top: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); }
@container ew (max-width: 759px) {
  .ew .ax-cart .woocommerce table.shop_table_responsive tbody th:not([data-title]) { display: none; }
  .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tbody tr { border: 0; border-radius: 0; padding: 0; margin: 0; border-bottom: var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line); background: none; }
  .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tbody tr:last-child { border-bottom: 0; }
  .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tbody td { border-bottom: 0; }
  .ew .ax-cart .woocommerce table.shop_table_responsive td.actions { text-align: left !important; }
}
.ew .ax-cart .woocommerce .button.woocommerce-form-login__submit, .ew .ax-cart .woocommerce .button.woocommerce-form-register__submit, .ew .ax-cart .woocommerce-ResetPassword .button, .ew .ax-cart .woocommerce-EditAccountForm .button {
  min-height: var(--ew-control-h); background: var(--ew-color-accent); border-color: var(--ew-color-accent); color: var(--wp--preset--color--base-elevated);
}
.ew .ax-cart .woocommerce .button.woocommerce-form-login__submit:hover, .ew .ax-cart .woocommerce .button.woocommerce-form-register__submit:hover { background: var(--ew-color-accent-hover); border-color: var(--ew-color-accent-hover); color: var(--wp--preset--color--base-elevated); }
.ew .ax-cart .woocommerce-form-register__submit { width: 100%; }
.ew .ax-cart .woocommerce-orders-table__cell-order-date, .ew .ax-cart .woocommerce-orders-table__cell-order-number { white-space: nowrap; }
/* Plan cards generated by atlas-ui.js from Woo's price_html */
.ew .ax-cart .woocommerce .ax-plan__price .price { margin: 0; font-size: var(--wp--custom--atlas--dimension--14); color: var(--ew-color-muted); }
.ew .ax-cart .woocommerce .ax-plan__price .woocommerce-Price-amount { font-size: var(--wp--custom--atlas--dimension--20); font-weight: 600; color: var(--ew-color-ink); }
.ew .ax-cart .woocommerce .ax-plan[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }

/* Bounded native-data mappings over unchanged supplied Atlas full Cart/Classic Checkout primitives. */
.ew .ax-cart .woocommerce .esw-cart-label {display:none;}
.ew .ax-cart .woocommerce .product-meta {display:flex;flex-wrap:wrap;gap:var(--wp--custom--atlas--dimension--2) var(--wp--custom--atlas--dimension--6);margin-top:var(--wp--custom--atlas--dimension--4);font-size:var(--wp--custom--atlas--dimension--14);color:var(--ew-color-muted);}
.ew .ax-cart .woocommerce .product-meta__label {font-weight:500;}
.ew .ax-cart .woocommerce .wr-reward-balance__title {font-family:var(--ew-font-display);font-weight:500;font-size:var(--wp--custom--atlas--dimension--26);line-height:1.2;margin:0 0 var(--wp--custom--atlas--dimension--16);}
.ew .ax-cart .woocommerce .wr-reward-balance__row {margin-bottom:var(--wp--custom--atlas--dimension--16);}
.ew .ax-cart .woocommerce .wr-reward-balance__balance {display:flex;align-items:center;gap:var(--wp--custom--atlas--dimension--8);}
.ew .ax-cart .woocommerce .wr-reward-balance__balance > svg {width:var(--wp--custom--atlas--dimension--20);height:var(--wp--custom--atlas--dimension--20);flex:none;}
.ew .ax-cart .woocommerce .wr-reward-balance__actions {margin-top:var(--wp--custom--atlas--dimension--8);}
.ew .ax-cart .woocommerce .wr-reward-balance__badge {display:inline-flex;align-items:center;gap:var(--wp--custom--atlas--dimension--6);padding:var(--wp--custom--atlas--dimension--4) var(--wp--custom--atlas--dimension--8);border-radius:var(--wp--custom--border--radius--pill);font-size:var(--wp--custom--atlas--dimension--13);line-height:1.2;font-weight:500;border:var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line);}
.ew .ax-cart .woocommerce .wr-reward-balance__badge.is-ok {color:var(--ew-color-success);background:var(--ew-color-success-soft);border-color:var(--wp--preset--color--notice-success-border);}
.ew .ax-cart .woocommerce .wr-reward-balance__badge.is-bad {color:var(--ew-color-danger);background:var(--ew-color-danger-soft);border-color:var(--wp--preset--color--notice-error-border);}
.ew .ax-cart .woocommerce .woocommerce-shipping-destination {font-size:var(--wp--custom--atlas--dimension--14);line-height:1.5;color:var(--ew-color-muted);margin-top:var(--wp--custom--atlas--dimension--8);}
/* Native country options/selection remain. Closed enhanced face maps to Atlas52px input+var(--wp--custom--atlas--dimension--20) vector. */
.ew .ax-cart .woocommerce .woocommerce-billing-fields .select2-container {width:100%!important;max-width:100%;min-width:0;}
.ew .ax-cart .woocommerce .woocommerce-billing-fields .select2-container .select2-selection--single {position:relative;display:flex;align-items:center;height:var(--ew-control-h);min-height:var(--ew-control-h);margin:0;padding:0 var(--wp--custom--atlas--dimension--16);border:var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line-strong);border-radius:var(--ew-radius-md);background:var(--wp--preset--color--base-elevated);color:var(--ew-color-ink);font:400 var(--wp--custom--atlas--dimension--17)/1.2 var(--ew-font-body);}
.ew .ax-cart .woocommerce .woocommerce-billing-fields .select2-selection__rendered {padding:0;line-height:1.2;color:var(--ew-color-ink);}
.ew .ax-cart .woocommerce .woocommerce-billing-fields .select2-container .select2-selection__arrow {top:50%;right:var(--wp--custom--atlas--dimension--16);width:var(--wp--custom--atlas--dimension--20);height:var(--wp--custom--atlas--dimension--20);transform:translateY(-50%);}
.ew .ax-cart .woocommerce .woocommerce-billing-fields .select2-container .select2-selection__arrow b {display:block;position:static;width:var(--wp--custom--atlas--dimension--20);height:var(--wp--custom--atlas--dimension--20);margin:0;border:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;}
/* Native Cart shipping summary: preserve its label, method and full address in one readable column. */
@container ew (max-width:759px) {
 .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals td {
  display:grid !important; grid-template-columns:minmax(0,1fr); align-items:start; gap:var(--wp--custom--atlas--dimension--8); text-align:left !important;
 }
 .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals td::before {text-align:left;}
 .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals ul#shipping_method {margin:0;padding:0;}
 .ew .ax-cart .woocommerce .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals .woocommerce-shipping-destination {margin:0;overflow-wrap:anywhere;}
}
/* Canonical Atlas money nowrap extended to native customPoints cells; no amount/unit change. */
.ew .ax-cart .woocommerce .woocommerce-cart-form td.product-price,.ew .ax-cart .woocommerce .woocommerce-cart-form td.product-subtotal { white-space: nowrap; }

/* Original supplied Cart heading and content spacing; own the native block-theme boundary. */
.esw-cart-head {padding:var(--wp--custom--atlas--dimension--48) 0 var(--wp--custom--atlas--dimension--40);border-bottom:var(--wp--custom--atlas--dimension--1) solid var(--ew-color-line);background:var(--ew-color-surface);}
.esw-cart-head .ew-wrap {display:grid;gap:var(--wp--custom--atlas--dimension--14);}
.ax-cart {padding-top:var(--wp--custom--atlas--dimension--40);padding-bottom:var(--wp--custom--atlas--dimension--96);}
.ew .ax-cart > .woocommerce {max-width:none;}
.ew .ax-cart .woocommerce-cart-form {margin:0;}
/* Atlas splits Cart into table + 380px totals from 1024px, but the native table's min-content (~725px: thumb, nowrap prices,
   quantity, remove) only fits beside the totals from ~1240px. Between, keep the tablet stack so the table never runs under
   the totals card. 375/768 (<=1023) and 1440 are unchanged. */
@container ew (min-width: 1024px) and (max-width: 1239px) { .ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: 1fr; } }
/* Two columns: the table track never shrinks below the table's min-content, so an unusually wide table pushes the totals
   instead of running under them (identical when it fits, as at 1440). */
@container ew (min-width: 1240px) { .ew .ax-cart .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: minmax(min-content, 1fr) var(--wp--custom--atlas--dimension--380); } }
@container ew (max-width:639px) {.esw-cart-head {padding:var(--wp--custom--atlas--dimension--32) 0 var(--wp--custom--atlas--dimension--28);}}

/* Frozen native Cart readability3772e1c1: intrinsic shipping label and atomic metadata groups. */
.ew .ax-cart .woocommerce .woocommerce-cart-form td.product-name .product-meta {gap:var(--wp--custom--atlas--dimension--8);}
.ew .ax-cart .woocommerce .woocommerce-cart-form td.product-name .product-meta__item {display:inline-flex;align-items:baseline;gap:var(--wp--custom--atlas--dimension--4);white-space:nowrap;}
.ew .ax-cart .woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals th {white-space:nowrap;padding-inline-end:var(--wp--custom--atlas--dimension--8);}
.ew .ax-cart .woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals .woocommerce-shipping-destination {overflow-wrap:anywhere;}

/* Frozen native empty Cart bc5efdf4: original States primitive and exact native subtree. */
.ew .ax-cart .esw-cart-empty {display:grid;justify-items:start;gap:var(--wp--custom--atlas--dimension--12);padding:var(--wp--custom--atlas--dimension--32);border:var(--wp--custom--atlas--dimension--1) dashed var(--ew-color-line-strong);border-radius:var(--ew-radius-lg);background:var(--wp--preset--color--base-elevated);}
.ew .ax-cart .esw-cart-empty p {color:var(--ew-color-ink-2);}
/* Native Classic empty Cart mapped to supplied States.ax-empty; no extra copy/control/controller. */
.ew .ax-cart .woocommerce > .esw-cart-empty {display:grid;justify-items:start;gap:var(--wp--custom--atlas--dimension--12);width:100%;max-width:none;}
.ew .ax-cart .esw-cart-empty .woocommerce-notices-wrapper:empty {display:none;}
.ew .ax-cart .esw-cart-empty .wc-empty-cart-message {margin:0;}
.ew .ax-cart .esw-cart-empty .wc-empty-cart-message .wc-block-components-notice-banner {box-sizing:border-box;display:flex;align-items:center;gap:var(--wp--custom--atlas--dimension--12);margin:0;padding:0 !important;border:0 !important;border-radius:0;background:transparent !important;color:var(--ew-color-ink) !important;}
.ew .ax-cart .esw-cart-empty .wc-empty-cart-message .wc-block-components-notice-banner > svg {display:block;flex:none;width:var(--wp--custom--atlas--dimension--24);height:var(--wp--custom--atlas--dimension--24);margin:0;padding:0;border-radius:0;background:none;fill:var(--ew-color-accent);color:var(--ew-color-accent);}
.ew .ax-cart .esw-cart-empty .wc-block-components-notice-banner__content {min-width:0;font:500 var(--wp--custom--atlas--dimension--24)/1.15 var(--ew-font-display);overflow-wrap:anywhere;}
.ew .ax-cart .esw-cart-empty .return-to-shop {margin:0;}
.ew .ax-cart .esw-cart-empty .return-to-shop a.button {display:inline-flex;align-items:center;justify-content:center;gap:var(--wp--custom--atlas--dimension--10);min-height:var(--ew-control-h);margin:0;padding:0 var(--wp--custom--atlas--dimension--22);border:var(--wp--custom--atlas--dimension--1) solid var(--ew-color-accent);border-radius:var(--ew-radius-md);background:var(--ew-color-accent);color:var(--wp--preset--color--base-elevated);font:600 var(--wp--custom--atlas--dimension--16)/1.2 var(--ew-font-body);text-decoration:none;}
.ew .ax-cart .esw-cart-empty .return-to-shop a.button:hover {background:var(--ew-color-accent-hover);border-color:var(--ew-color-accent-hover);}
.ew .ax-cart .esw-cart-empty .return-to-shop a.button:focus-visible {outline:none;box-shadow:var(--ew-focus-ring);}

/* A native actions row with only serialized hidden inputs keeps its DOM without a painted empty band. */
.ew .woocommerce-cart-form__contents tr.esw-cart-actions--hidden-only,
.ew .woocommerce-cart-form__contents tr.esw-cart-actions--hidden-only > td.actions {margin:0;padding:0;border:0;background:transparent;}
/* The phone card table paints every tbody row/cell as a card (0,4,3)/(0,5,2); keep the hidden-only row unpainted there too. */
.ew .ax-cart .woocommerce table.shop_table_responsive tbody tr.esw-cart-actions--hidden-only,
.ew .ax-cart .woocommerce table.shop_table_responsive tbody tr.esw-cart-actions--hidden-only > td.actions {margin:0;padding:0;border:0;background:transparent;}

/* Original Atlas intrinsic totals columns and shipping-list rhythm over native Woo defaults. */
.ew .ax-cart .woocommerce .cart_totals table.shop_table th {width:auto;}
.ew .ax-cart .woocommerce .cart_totals ul#shipping_method > li {margin:0;line-height:inherit;}

/* Original Atlas intrinsic Cart columns over native Woo block-theme width constraints. */
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents th.product-thumbnail,
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents td.product-thumbnail {width:auto;min-width:0;}
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents td.product-quantity {min-width:0;}
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents td.product-thumbnail img {max-width:none;}
/* Native legacy coin-spacing is not part of the Atlas literal Points unit. */
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents td.product-price .fp-srp-point-price,
.ew .ax-cart .woocommerce table.woocommerce-cart-form__contents td.product-subtotal .fp-srp-point-price {margin-left:0;}
