/* Stickerhuis Shop UX - single visual finish for account/cart/checkout.
 * Deliberately presentation-only. Never hide/remove checkout, shipping or payment fields.
 * Loaded LAST on these pages, after legacy Shop UX layers.
 */
body.woocommerce-account,
body.woocommerce-cart,
body.woocommerce-checkout:not(.woocommerce-order-received) {
  --shux-ui-ink: #191919;
  --shux-ui-muted: #777;
  --shux-ui-orange: #ff4b22;
  --shux-ui-line: #e8e7e6;
  --shux-ui-soft: #f7f7f7;
  --shux-ui-paper: #fff;
  --shux-ui-card-radius: 23px;
}

/* ---------- ACCOUNT: the same heading, padding, cards and form language ---------- */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) {
  box-sizing: border-box;
  min-width: 0;
  background: var(--shux-ui-paper);
  color: var(--shux-ui-ink);
  border: 1px solid var(--shux-ui-line);
  border-radius: var(--shux-ui-card-radius);
  padding: clamp(20px, 3vw, 42px);
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) :where(h1, h2, h3, h4) {
  color: var(--shux-ui-ink) !important;
  margin-top: 0;
  line-height: 1.15 !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) h1,
body.woocommerce-account .e-my-account-tab h1,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .elementor-heading-title:is(h1, h2) {
  font-family: Impact, 'Anton', 'Arial Narrow', sans-serif !important;
  font-size: clamp(32px, 3vw, 44px) !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 10px !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) :where(h2, h3),
body.woocommerce-account .e-my-account-tab :where(.woocommerce-Address-title h3, .woocommerce-order-details__title, .woocommerce-column__title) {
  font-family: Impact, 'Anton', 'Arial Narrow', sans-serif !important;
  font-size: clamp(23px, 2.3vw, 30px) !important;
  font-weight: 800 !important;
  letter-spacing: -.015em;
  margin-bottom: 17px !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) > p:first-of-type,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .shux-account-intro {
  color: var(--shux-ui-muted);
  font-size: 15px;
  line-height: 1.6;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) a:not(.button):not(.woocommerce-button) {
  color: var(--shux-ui-orange);
  text-decoration: none;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) a:not(.button):hover { text-decoration: underline; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) a:focus-visible,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) button:focus-visible {
  outline: 2px solid var(--shux-ui-orange);
  outline-offset: 3px;
}

/* Orders: keep Woo links/actions and statuses functional; a light, clear row system. */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table {
  width: 100%;
  border: 0 !important;
  border-collapse: collapse !important;
  background: transparent !important;
  box-shadow: none !important;
  margin: 22px 0 !important;
  overflow: visible !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table :is(th,td),
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table :is(th,td) {
  border: 0 !important;
  border-bottom: 1px solid var(--shux-ui-line) !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 20px 12px !important;
  vertical-align: middle;
  color: var(--shux-ui-ink);
  text-align: left;
  font-size: 14px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table thead th,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table thead th {
  font-size: 12px;
  color: var(--shux-ui-muted);
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table tbody tr:last-child td { border-bottom: 0 !important; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a { font-weight: 800; color: var(--shux-ui-ink); }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details tfoot tr:last-child td { font-weight: 800; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table .button,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) a.woocommerce-button,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) button.button,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) button[type='submit'] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 43px;
  width: auto;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--shux-ui-orange) !important;
  color: #fff !important;
  padding: 10px 19px !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  text-align: center;
  box-shadow: none !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table .button:hover,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) a.woocommerce-button:hover,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) button.button:hover { background: #e6421d !important; }
/* Woo's order status classes change with the actual order. No text assumptions. */
body.woocommerce-account .woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status,
body.woocommerce-account .woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status,
body.woocommerce-account .woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status {
  font-weight: 750;
}
body.woocommerce-account .woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status { color: #069c54 !important; }
body.woocommerce-account .woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status { color: #f24b2c !important; }

/* Addresses are two balanced cards, rather than italic, unframed text. */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses:before,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses:after { display: none !important; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses > .woocommerce-Address {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  padding: 22px !important;
  background: var(--shux-ui-soft);
  border: 1px solid var(--shux-ui-line);
  border-radius: 18px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Address-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Address-title h3 { margin: 0 !important; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Address-title a.edit {
  float: none !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 750;
  white-space: nowrap;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) address,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Address address,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-column address {
  font-style: normal !important;
  line-height: 1.75 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow-wrap: anywhere;
}

/* Account data & edit-address: same restrained form as the configurator. */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(.form-row, p.form-row) { margin-bottom: 17px; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form label {
  display: block;
  color: var(--shux-ui-ink) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 1.5;
  margin-bottom: 7px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(input.input-text, input[type='text'], input[type='email'], input[type='password'], input[type='tel'], select, textarea),
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .select2-selection {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  min-height: 48px;
  border: 1px solid #dedede !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: var(--shux-ui-ink) !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  line-height: 1.35;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(input, select, textarea):focus {
  border-color: var(--shux-ui-orange) !important;
  outline: 2px solid rgb(255 75 34 / 13%);
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(.form-row-first,.form-row-last) { box-sizing: border-box; }
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form fieldset {
  clear: both;
  min-width: 0;
  margin: 24px 0 !important;
  padding: 22px !important;
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: 17px !important;
  background: #fff;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form fieldset legend {
  width: auto !important;
  margin: 0 0 4px;
  padding: 0 8px;
  color: var(--shux-ui-ink);
  font-size: 17px !important;
  font-weight: 750 !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) :is(em, .woocommerce-form-row .description) {
  font-size: 13px;
  color: var(--shux-ui-muted);
  line-height: 1.5;
}

/* View order: readable single frame, no Woo table grid, no yellow <mark>. */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) mark {
  background: #fff0ec !important;
  color: var(--shux-ui-ink) !important;
  padding: 2px 5px;
  border-radius: 5px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details {
  width: 100%;
  margin: 25px 0;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table {
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: 16px !important;
  border-collapse: separate !important;
  border-spacing: 0;
  overflow: hidden !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table tfoot th,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table tfoot td {
  background: #fff !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details .shux-item-options {
  margin-top: 12px;
  border: 1px solid var(--shux-ui-line);
  border-radius: 11px;
  background: #fff;
  max-width: 440px;
  font-size: 13px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details .shux-item-options > summary {
  cursor: pointer;
  font-size: 13px;
  font-weight: 750;
  padding: 11px 14px;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details .shux-item-options > :not(summary) {
  padding: 12px 14px !important;
  margin: 0 !important;
  line-height: 1.55;
}
/* Woo's clearfix pseudo-elements become grid items unless explicitly removed. */
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details .woocommerce-columns::before,
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details .woocommerce-columns::after {
  display: none !important;
  content: none !important;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details .woocommerce-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 20px;
  width: 100%;
  margin: 0;
}
body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details .woocommerce-column {
  box-sizing: border-box;
  float: none !important;
  clear: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 20px;
  min-width: 0;
  border: 1px solid var(--shux-ui-line);
  border-radius: 17px;
  background: #fff;
}

/* Logged-out account forms live OUTSIDE :is(.woocommerce-MyAccount-content, .shux-account-custom).
 * Keep these rules independent of JS tabs (registration may be disabled).
 * Elementor equalizes form heights inline; let wrapped text determine height.
 */
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) {
  box-sizing: border-box;
  display: block;
  width: 100% !important;
  max-width: 560px;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: clamp(22px, 3vw, 35px) !important;
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: var(--shux-ui-card-radius) !important;
  background: var(--shux-ui-paper) !important;
  color: var(--shux-ui-ink) !important;
  line-height: 1.6;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) .form-row {
  float: none !important;
  box-sizing: border-box;
  width: 100% !important;
  margin: 0 0 17px !important;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) label {
  display: block;
  color: var(--shux-ui-ink) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.5;
  margin-bottom: 8px;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) input.input-text {
  box-sizing: border-box;
  display: block;
  width: 100% !important;
  min-width: 0;
  min-height: 50px;
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: 12px !important;
  background: var(--shux-ui-soft) !important;
  color: var(--shux-ui-ink) !important;
  padding: 12px 14px !important;
  font-size: 16px !important;
  line-height: 1.4;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) .password-input { display: block; position: relative; width: 100%; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) .password-input input.input-text { padding-right: 48px !important; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) :is(button.button, input.button) {
  float: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  max-width: 100%;
  white-space: normal;
  border: 0 !important;
  border-radius: 12px !important;
  padding: 12px 22px !important;
  background: var(--shux-ui-orange) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
  cursor: pointer;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) :is(button.button, input.button):hover { background: #e6421d !important; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) label.woocommerce-form-login__rememberme {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px !important;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) input[type='checkbox'] { flex: 0 0 auto; width: auto; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) a { color: #c83717 !important; text-decoration: underline; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) a:hover { color: var(--shux-ui-ink) !important; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) :is(input, button, a):focus-visible,
body.woocommerce-account .shca-auth-tabs .shca-auth-tab:focus-visible {
  outline: 2px solid var(--shux-ui-orange) !important;
  outline-offset: 3px;
}
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) .woocommerce-LostPassword { margin: 18px 0 0 !important; }
body.woocommerce-account :is(.woocommerce, .elementor-widget-woocommerce-my-account) form:is(.login, .register, .lost_reset_password) .woocommerce-privacy-policy-text { overflow-wrap: anywhere; }

/* ---------- CART: one border around totals; optical centering of X and currency ---------- */
/* Elementor's .e-cart-totals wraps .cart_totals; only the OUTER level gets a card. */
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-totals {
  background: #fff !important;
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: 23px !important;
  padding: clamp(18px, 2.2vw, 28px) !important;
  box-shadow: none !important;
}
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-totals :is(.cart_totals, .cart-collaterals, .e-cart-totals__container, .e-cart-totals__table, .e-cart-totals__table-wrapper),
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-totals .cart_totals > div {
  width: 100%;
  max-width: none;
  padding: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-totals h2 { margin-top: 0 !important; }
/* Elementor may also draw a frame around the entire column. Its totals card
 * owns the one visible border. Do not change the column's sticky behavior. */
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.woocommerce-cart .elementor-widget-woocommerce-cart :is(.e-cart-totals__title, .cart_totals > h2),
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page :is(.e-checkout__order_review_heading, .e-checkout__title) {
  font-family: Impact, 'Anton', 'Arial Narrow', sans-serif !important;
  font-size: clamp(23px, 2.2vw, 29px) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}
/* For classic WooCommerce, use just the original cart_totals as the card. */
body.woocommerce-cart .woocommerce:not(.elementor-widget-woocommerce-cart) .cart-collaterals .cart_totals {
  background: #fff !important;
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: 23px !important;
  padding: 24px !important;
  box-shadow: none !important;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-remove a.remove {
  display: grid !important;
  place-items: center !important;
  padding: 0 0 2px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  text-indent: 0 !important;
  line-height: 1 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 600 !important;
  translate: none !important;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-remove a.remove::before,
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-remove a.remove::after { display: none !important; content: none !important; }
/* Woo prints the currency symbol in its own span, sometimes styled orange by a theme. */
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-subtotal,
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-subtotal :is(.woocommerce-Price-amount, .woocommerce-Price-amount bdi, .woocommerce-Price-currencySymbol) {
  color: var(--shux-ui-ink) !important;
  font-family: Impact, 'Anton', 'Arial Narrow', sans-serif !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  vertical-align: baseline !important;
  letter-spacing: inherit !important;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-subtotal .woocommerce-Price-currencySymbol {
  display: inline !important;
  position: static !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* Progress indicator: equal columns, centering and no shifting labels. */
body.woocommerce-cart .shux-checkout-steps,
body.woocommerce-checkout:not(.woocommerce-order-received) .shux-checkout-steps {
  width: 100%;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  align-items: stretch;
  gap: clamp(7px, 1.1vw, 17px) !important;
  margin: 0 0 28px !important;
}
body.woocommerce-cart .shux-checkout-steps .shux-step,
body.woocommerce-checkout:not(.woocommerce-order-received) .shux-checkout-steps .shux-step {
  display: flex !important;
  flex-wrap: wrap;
  min-width: 0;
  min-height: 55px;
  padding: 8px 5px 13px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  line-height: 1.25 !important;
  font-family: inherit !important;
  font-size: 14px !important;
  box-sizing: border-box;
}
body.woocommerce-cart .shux-checkout-steps .shux-step-index,
body.woocommerce-checkout:not(.woocommerce-order-received) .shux-checkout-steps .shux-step-index {
  display: inline-grid !important;
  flex: 0 0 30px;
  place-items: center;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50%;
  line-height: 1;
}

/* ---------- CHECKOUT: the Elementor column is the card, not every child ---------- */
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page .e-checkout__column-start > .e-checkout__column-inner,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page .e-checkout__column-end > .e-checkout__column-inner {
  border: 1px solid var(--shux-ui-line) !important;
  border-radius: var(--shux-ui-card-radius) !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page :is(.e-checkout__order_review, .e-checkout__order_review-2, .e-checkout__payment, .woocommerce-checkout-review-order, .woocommerce-checkout-payment) {
  box-shadow: none !important;
}
/* Nesting can differ between Elementor releases; remove inner boxes only in known order-review/payment wrappers. */
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page .e-checkout__column-end :is(.e-checkout__order_review, .e-checkout__order_review-2) :is(.e-checkout__order_review, .woocommerce-checkout-review-order, .woocommerce-checkout-review-order-table),
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page .e-checkout__column-end > div > :is(.e-checkout__order_review, .e-checkout__order_review-2, .e-checkout__payment),
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-widget-woocommerce-checkout-page .e-checkout__column-end .e-checkout__payment .woocommerce-checkout-payment {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) { padding: 21px 16px; border-radius: 19px; }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses,
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr; }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-Addresses > .woocommerce-Address { padding: 18px !important; }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(.form-row-first,.form-row-last) {
    float: none !important;
    width: 100% !important;
    padding: 0 !important;
  }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) form :is(input,select,textarea) { font-size: 16px !important; }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table,
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table tbody,
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table tr,
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table td {
    display: block !important;
    width: 100%;
    box-sizing: border-box;
  }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table thead { display: none !important; }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table tbody tr {
    border: 1px solid var(--shux-ui-line) !important;
    border-radius: 15px;
    margin: 0 0 14px;
    padding: 11px 14px;
  }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table td {
    padding: 8px 0 !important;
    text-align: left !important;
    border: 0 !important;
  }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-orders-table td:before {
    float: none !important;
    display: inline-block !important;
    padding-right: 9px;
    font-size: 12px;
    color: var(--shux-ui-muted);
    font-weight: 550;
  }
  body.woocommerce-account :is(.woocommerce-MyAccount-content, .shux-account-custom) .woocommerce-order-details table.shop_table :is(th,td) { padding: 13px 9px !important; }
  body.woocommerce-cart .shux-checkout-steps .shux-step,
  body.woocommerce-checkout:not(.woocommerce-order-received) .shux-checkout-steps .shux-step {
    display: grid !important;
    justify-items: center !important;
    align-content: center !important;
    text-align: center !important;
    min-height: 69px;
    gap: 6px !important;
    font-size: clamp(10px, 2.8vw, 12px) !important;
    padding: 8px 2px 13px !important;
  }
  body.woocommerce-cart .shux-checkout-steps .shux-step-index,
  body.woocommerce-checkout:not(.woocommerce-order-received) .shux-checkout-steps .shux-step-index {
    width: 27px !important;
    height: 27px !important;
    flex-basis: 27px;
  }
  body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-totals { padding: 18px !important; }
}
