/* BLD Cart Tidy 1.0.0: classic WooCommerce cart page ([woocommerce_cart], page 11).
   Matches the new checkout (bld-checkout-tiles 2.0.1): Inter, white rounded cards with a soft shadow on a light background,
   blue #087cf0 accents, links #3d8ef0, no orange. Everything is scoped to body.bldcart (cart page, preview or public).
   Nothing is removed from the page; items listed in REPORT.md are only visually hidden or collapsed. */
body.bldcart {
  --bldcart-bg:#f4f7fb; --bldcart-card:#fff; --bldcart-line:#e6ebf2; --bldcart-line2:#eef2f7; --bldcart-ink:#292e4d; --bldcart-muted:#5b6b7f;
  --bldcart-blue:#087cf0; --bldcart-blue-d:#066ad0; --bldcart-tint:#eaf3fe; --bldcart-link:#3d8ef0; --bldcart-err:#d93025;
  --bldcart-shadow:0 8px 26px rgb(29 52 90 / 6.7%); --bldcart-ring:0 0 0 3px rgb(8 124 240 / 18%);
  --bldcart-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* ---------- page ---------- */
body.bldcart .container-wrap, body.bldcart .container-wrap .main-content { background-color:var(--bldcart-bg) !important; }
body.bldcart .woocommerce, body.bldcart .woocommerce *:not(svg):not(path) { font-family:var(--bldcart-font) !important; }
body.bldcart .woocommerce { color:var(--bldcart-ink); padding-top:8px; padding-bottom:24px; }
body.bldcart .woocommerce a:not(.button):not(.remove) { color:var(--bldcart-link) !important; }
body.bldcart .woocommerce a:not(.button):not(.remove):hover { color:var(--bldcart-blue) !important; }

/* Two columns on desktop: items left, Cart Totals right (sticky). Anything else (notices, empty-cart message) spans the width. */
@media (min-width:1000px) {
  body.bldcart .woocommerce:has(> .woocommerce-cart-form) { display:grid !important; grid-template-columns:minmax(0,1fr) 380px; column-gap:28px; align-items:start; }
  body.bldcart .woocommerce:has(> .woocommerce-cart-form) > * { grid-column:1 / -1; }
  body.bldcart .woocommerce:has(> .woocommerce-cart-form) > .woocommerce-cart-form { grid-column:1; }
  body.bldcart .woocommerce:has(> .woocommerce-cart-form) > .cart-collaterals { grid-column:2; position:sticky; top:110px; }
}
body.bldcart .woocommerce::before, body.bldcart .woocommerce::after { display:none !important; }
body.bldcart .cart-collaterals { width:auto !important; float:none !important; margin:0 !important; }
body.bldcart .cart-collaterals .cart_totals { float:none !important; width:auto !important; margin:0 !important; }
body.bldcart .cart-collaterals .cross-sells { float:none !important; width:auto !important; }

body.bldcart .woocommerce .woocommerce-Price-currencySymbol { color:inherit !important; }

/* ---------- notices ---------- */
body.bldcart .woocommerce-notices-wrapper:empty { display:none; }
body.bldcart .woocommerce-message, body.bldcart .woocommerce-info, body.bldcart .woocommerce-error {
  background:var(--bldcart-card) !important; color:var(--bldcart-ink) !important; border:1px solid var(--bldcart-line) !important; border-left:4px solid var(--bldcart-blue) !important;
  border-radius:12px !important; box-shadow:var(--bldcart-shadow) !important; padding:12px 16px !important; margin:0 0 12px !important;
  font-size:14px !important; line-height:1.45 !important; list-style:none !important; outline:none !important; display:block;
}
body.bldcart .woocommerce-error { border-left-color:var(--bldcart-err) !important; }
body.bldcart .woocommerce-error li { margin:0 !important; padding:0 !important; color:var(--bldcart-ink) !important; }
body.bldcart .woocommerce-message::before, body.bldcart .woocommerce-info::before, body.bldcart .woocommerce-error::before { display:none !important; }
body.bldcart .woocommerce-message:focus, body.bldcart .woocommerce-error:focus, body.bldcart .woocommerce-info:focus { outline:none !important; box-shadow:var(--bldcart-shadow) !important; }
body.bldcart .woocommerce-message a, body.bldcart .woocommerce-info a, body.bldcart .woocommerce-error a { color:var(--bldcart-link) !important; font-weight:600; text-decoration:underline; text-underline-offset:2px; background:none !important; }
/* Hidden: "View cart" inside notices on the cart page (it links to this same page). */
body.bldcart-hide-notice-link .woocommerce-notices-wrapper .woocommerce-message a.wc-forward[href*="/cart"] { display:none !important; }

/* ---------- items card ---------- */
body.bldcart form.woocommerce-cart-form {
  background:var(--bldcart-card) !important; border:1px solid var(--bldcart-line) !important; border-radius:18px !important; box-shadow:var(--bldcart-shadow) !important;
  padding:6px 20px !important; margin:0 0 20px !important;
}
body.bldcart table.shop_table.cart { border:0 !important; margin:0 !important; width:100% !important; border-collapse:collapse !important; background:transparent !important; }
body.bldcart table.shop_table.cart thead th {
  font-size:11.5px !important; font-weight:600 !important; letter-spacing:.06em !important; text-transform:uppercase !important; color:var(--bldcart-muted) !important;
  padding:12px 8px !important; border:0 !important; border-bottom:1px solid var(--bldcart-line2) !important; background:transparent !important;
}
body.bldcart table.shop_table.cart tr.cart_item { background:transparent !important; }
body.bldcart table.shop_table.cart tr.cart_item td {
  padding:12px 8px !important; border:0 !important; border-bottom:1px solid var(--bldcart-line2) !important; vertical-align:middle !important; background:transparent !important;
  font-size:14.5px !important; color:var(--bldcart-ink) !important; line-height:1.35 !important;
}
body.bldcart table.shop_table.cart td.product-thumbnail { width:80px !important; }
body.bldcart table.shop_table.cart td.product-thumbnail a { display:block; width:64px; height:64px; }
body.bldcart table.shop_table.cart td.product-thumbnail img {
  width:64px !important; height:64px !important; max-width:none !important; min-width:0 !important; object-fit:cover !important; border-radius:10px !important;
  background:var(--bldcart-bg); border:1px solid var(--bldcart-line2); display:block !important; margin:0 !important; box-shadow:none !important;
}
body.bldcart table.shop_table.cart td.product-name a { color:var(--bldcart-ink) !important; font-weight:600 !important; font-size:15px !important; text-decoration:none !important; }
body.bldcart table.shop_table.cart td.product-name a:hover { color:var(--bldcart-blue) !important; }
body.bldcart table.shop_table.cart td.product-name dl.variation { display:block !important; margin:3px 0 0 !important; padding:0 !important; font-size:12.5px !important; color:var(--bldcart-muted) !important; line-height:1.4 !important; border:0 !important; }
body.bldcart table.shop_table.cart td.product-name dl.variation dt,
body.bldcart table.shop_table.cart td.product-name dl.variation dd { display:inline !important; float:none !important; margin:0 !important; padding:0 !important; font-weight:400 !important; font-size:12.5px !important; color:var(--bldcart-muted) !important; clear:none !important; }
body.bldcart table.shop_table.cart td.product-name dl.variation dd p { display:inline !important; margin:0 !important; padding:0 !important; }
/* Hidden: the variation labels ("Package Size:", "Strength:"); the values stay, e.g. "1 Vial · 5MG". */
body.bldcart table.shop_table.cart td.product-name dl.variation dt { display:none !important; }
body.bldcart table.shop_table.cart td.product-name dl.variation dd ~ dd::before { content:"\00B7"; padding:0 5px 0 0; }
body.bldcart table.shop_table.cart td.product-price { color:var(--bldcart-muted) !important; }
body.bldcart table.shop_table.cart td.product-subtotal { font-weight:700 !important; }

/* Remove (x): small grey circle; the invisible ::after keeps a 44px hit area on phones. */
body.bldcart table.shop_table.cart td.product-remove { width:40px !important; }
body.bldcart table.shop_table.cart a.remove {
  position:relative; display:inline-flex !important; align-items:center; justify-content:center; width:26px !important; height:26px !important;
  border-radius:50% !important; background:#f1f4f8 !important; color:#6b7a90 !important; font-size:17px !important; line-height:1 !important; font-weight:400 !important;
  border:0 !important; text-decoration:none !important; transition:background-color .15s, color .15s; margin:0 !important;
}
body.bldcart table.shop_table.cart a.remove::after { content:""; position:absolute; inset:-9px; border-radius:50%; }
body.bldcart table.shop_table.cart a.remove:hover { background:#fdecea !important; color:var(--bldcart-err) !important; }
body.bldcart table.shop_table.cart a.remove:focus-visible { box-shadow:var(--bldcart-ring) !important; outline:none !important; }

/* Quantity: one compact pill. */
body.bldcart .woocommerce-cart-form .quantity {
  display:inline-flex !important; align-items:stretch; height:34px; border:1px solid #d7deea !important; border-radius:999px !important; background:#fff !important;
  overflow:visible !important; width:auto !important; margin:0 !important; padding:0 !important; float:none !important; box-shadow:none !important;
}
body.bldcart .woocommerce-cart-form .quantity input.minus,
body.bldcart .woocommerce-cart-form .quantity input.plus {
  width:32px !important; height:34px !important; min-width:0 !important; margin:-1px 0 !important; padding:0 !important; border:0 !important; background:transparent !important;
  color:var(--bldcart-ink) !important; font-size:17px !important; line-height:1 !important; border-radius:999px !important; cursor:pointer; box-shadow:none !important; position:relative; z-index:1;
}
body.bldcart .woocommerce-cart-form .quantity input.minus:hover, body.bldcart .woocommerce-cart-form .quantity input.plus:hover { color:var(--bldcart-blue) !important; background:var(--bldcart-tint) !important; }
body.bldcart .woocommerce-cart-form .quantity input.qty {
  width:34px !important; height:32px !important; min-width:0 !important; padding:0 !important; margin:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important;
  text-align:center !important; font-size:14.5px !important; font-weight:600 !important; color:var(--bldcart-ink) !important; -moz-appearance:textfield; appearance:textfield;
}
body.bldcart .woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button, body.bldcart .woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
body.bldcart .woocommerce-cart-form .quantity:focus-within { border-color:var(--bldcart-blue) !important; box-shadow:var(--bldcart-ring) !important; }
body.bldcart .woocommerce-cart-form .quantity input:focus { outline:none !important; }

/* ---------- actions row: coupon + update cart ---------- */
body.bldcart table.shop_table.cart td.actions { padding:14px 0 12px !important; border:0 !important; background:transparent !important; text-align:left !important; }
body.bldcart table.shop_table.cart td.actions::before { display:none !important; }
body.bldcart td.actions .bldcart-coupon-toggle {
  background:none !important; border:0 !important; padding:0 !important; margin:0 !important; color:var(--bldcart-link) !important; font-size:14px !important; font-weight:600 !important;
  cursor:pointer; box-shadow:none !important; text-transform:none !important; letter-spacing:0 !important; min-height:32px; display:inline-flex; align-items:center; gap:6px; position:relative;
}
body.bldcart td.actions .bldcart-coupon-toggle::after { content:""; width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg) translateY(-2px); transition:transform .15s; }
body.bldcart td.actions.bldcart-coupon-open .bldcart-coupon-toggle::after { transform:rotate(-135deg) translateY(-1px); }
body.bldcart td.actions .bldcart-coupon-toggle:hover { color:var(--bldcart-blue) !important; }
body.bldcart td.actions .bldcart-coupon-toggle:focus-visible { outline:none; box-shadow:var(--bldcart-ring) !important; border-radius:6px; }
body.bldcart td.actions.bldcart-has-toggle:not(.bldcart-coupon-open) .coupon { display:none !important; }
body.bldcart td.actions .coupon { display:flex !important; flex-wrap:wrap; gap:8px; align-items:flex-start; float:none !important; width:100% !important; max-width:440px; margin:8px 0 0 !important; padding:0 !important; }
body.bldcart td.actions .coupon label.screen-reader-text { position:absolute !important; }
body.bldcart td.actions .coupon #coupon_code {
  flex:1 1 140px; width:auto !important; min-width:0 !important; height:42px !important; margin:0 !important; padding:0 14px !important; border:1px solid #d7deea !important; border-radius:10px !important;
  background:#fff !important; color:var(--bldcart-ink) !important; font-size:14.5px !important; box-shadow:none !important; float:none !important;
}
body.bldcart td.actions .coupon #coupon_code::placeholder { color:#8a97a8 !important; opacity:1; }
body.bldcart td.actions .coupon #coupon_code:focus { border-color:var(--bldcart-blue) !important; box-shadow:var(--bldcart-ring) !important; outline:none !important; }
body.bldcart td.actions .coupon #coupon_code.has-error { border-color:var(--bldcart-err) !important; box-shadow:0 0 0 1px var(--bldcart-err) !important; }
body.bldcart td.actions .coupon .coupon-error-notice { flex:1 0 100%; order:3; margin:0 !important; padding:0 !important; color:var(--bldcart-err) !important; font-size:13px !important; line-height:1.4 !important; background:none !important; border:0 !important; }
body.bldcart td.actions .button {
  height:42px !important; min-height:42px !important; line-height:1 !important; padding:0 18px !important; margin:0 !important; border-radius:10px !important; font-size:14px !important; font-weight:600 !important;
  text-transform:none !important; letter-spacing:0 !important; box-shadow:none !important; float:none !important; width:auto !important; opacity:1 !important;
  background:#fff !important; color:var(--bldcart-blue) !important; border:1px solid var(--bldcart-blue) !important; transition:background-color .15s, color .15s;
}
body.bldcart td.actions .button:hover { background:var(--bldcart-tint) !important; }
body.bldcart td.actions .button:focus-visible { box-shadow:var(--bldcart-ring) !important; outline:none !important; }
/* Hidden while disabled: "Update cart" appears as soon as a quantity changes. */
body.bldcart td.actions button[name="update_cart"] { float:right !important; }
body.bldcart td.actions button[name="update_cart"]:disabled { display:none !important; }
body.bldcart td.actions button[name="update_cart"]:not(:disabled) { background:var(--bldcart-blue) !important; color:#fff !important; }
body.bldcart td.actions button[name="update_cart"]:not(:disabled):hover { background:var(--bldcart-blue-d) !important; }

/* ---------- Cart Totals card ---------- */
body.bldcart .cart_totals {
  background:var(--bldcart-card) !important; border:1px solid var(--bldcart-line) !important; border-radius:18px !important; box-shadow:var(--bldcart-shadow) !important; padding:22px 22px 20px !important;
}
body.bldcart .cart_totals h2 { font-size:19px !important; line-height:1.3 !important; font-weight:700 !important; color:var(--bldcart-ink) !important; letter-spacing:-.01em !important; margin:0 0 10px !important; padding:0 !important; text-transform:none !important; }
body.bldcart .cart_totals table.shop_table { border:0 !important; margin:0 !important; width:100% !important; background:transparent !important; border-collapse:collapse !important; border-radius:0 !important; }
body.bldcart .cart_totals table.shop_table, body.bldcart .cart_totals table.shop_table tbody { display:block !important; }
body.bldcart .cart_totals table.shop_table tr { display:flex !important; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:4px 12px; background:transparent !important; border-top:1px solid var(--bldcart-line2) !important; border-bottom:0 !important; padding:12px 0 !important; margin:0 !important; }
body.bldcart .cart_totals table.shop_table th,
body.bldcart .cart_totals table.shop_table td {
  display:block !important; padding:0 !important; border:0 !important; background:transparent !important;
  font-size:14.5px !important; line-height:1.4 !important; vertical-align:top !important; color:var(--bldcart-ink) !important; text-align:left !important; width:auto !important; float:none !important;
}
body.bldcart .cart_totals table.shop_table th { font-weight:500 !important; color:var(--bldcart-muted) !important; text-transform:none !important; letter-spacing:0 !important; }
body.bldcart .cart_totals table.shop_table td { text-align:right !important; font-weight:600 !important; }
body.bldcart .cart_totals table.shop_table td::before { display:none !important; content:none !important; }
body.bldcart .cart_totals table.shop_table tr:first-child { border-top:0 !important; padding-top:4px !important; }

/* Shipping: label on its own line, the real WooCommerce methods as a tidy radio list below. */
body.bldcart .cart_totals tr.woocommerce-shipping-totals th { flex:1 0 100%; padding-bottom:4px !important; }
body.bldcart .cart_totals tr.woocommerce-shipping-totals td { flex:1 0 100%; text-align:left !important; font-weight:400 !important; }
body.bldcart .cart_totals #shipping_method { list-style:none !important; margin:0 !important; padding:0 !important; border:1px solid #e3e9f2 !important; border-radius:12px !important; overflow:hidden; background:#fff; }
body.bldcart .cart_totals #shipping_method li {
  position:relative; margin:0 !important; padding:0 !important; border-top:1px solid #e3e9f2 !important; text-align:left !important; line-height:1.3 !important; transition:background-color .15s; float:none !important;
  display:flex !important; align-items:center;
}
body.bldcart .cart_totals #shipping_method li:first-child { border-top:0 !important; }
body.bldcart .cart_totals #shipping_method li:has(input:checked) { background:var(--bldcart-tint) !important; }
body.bldcart .cart_totals #shipping_method li input.shipping_method[type="radio"] {
  position:absolute !important; left:12px; top:50%; transform:translateY(-50%); margin:0 !important; width:16px !important; height:16px !important; accent-color:var(--bldcart-blue); float:none !important; z-index:1;
}
body.bldcart .cart_totals #shipping_method li input.shipping_method[type="hidden"] + label { padding-left:12px !important; }
body.bldcart .cart_totals #shipping_method li label {
  flex:1; display:flex !important; justify-content:space-between; align-items:center; gap:10px; margin:0 !important; padding:10px 12px 10px 38px !important; min-height:40px;
  font-size:14px !important; font-weight:500 !important; color:var(--bldcart-ink) !important; cursor:pointer; text-align:left !important; line-height:1.3 !important;
}
body.bldcart .cart_totals #shipping_method li label .amount { font-weight:700 !important; color:var(--bldcart-ink) !important; white-space:nowrap; }
body.bldcart .cart_totals #shipping_method li label::before, body.bldcart .cart_totals #shipping_method li label::after { display:none !important; }
body.bldcart .cart_totals #shipping_method li input.shipping_method[type="radio"]:focus-visible { outline:none; box-shadow:var(--bldcart-ring); border-radius:50%; }
body.bldcart .cart_totals .woocommerce-shipping-destination { margin:8px 0 0 !important; font-size:12.5px !important; color:var(--bldcart-muted) !important; text-align:left !important; }
body.bldcart .cart_totals .woocommerce-shipping-destination strong { color:var(--bldcart-muted) !important; font-weight:600 !important; }
body.bldcart .cart_totals .woocommerce-shipping-calculator { margin:2px 0 0 !important; text-align:left !important; }
body.bldcart .cart_totals .shipping-calculator-button {
  position:relative; display:inline-flex !important; align-items:center; font-size:13px !important; font-weight:600 !important; color:var(--bldcart-link) !important; text-decoration:none !important; margin:0 !important; padding:2px 0 !important;
}
body.bldcart .cart_totals .shipping-calculator-button::after { content:""; position:absolute; left:0; right:0; top:50%; height:44px; transform:translateY(-50%); background:none !important; border:0 !important; width:auto; margin:0; }
body.bldcart .cart_totals .shipping-calculator-form { margin-top:10px !important; }
body.bldcart .cart_totals .shipping-calculator-form input.input-text, body.bldcart .cart_totals .shipping-calculator-form select { border:1px solid #d7deea !important; border-radius:10px !important; background:#fff !important; min-height:42px; font-size:14.5px !important; }
body.bldcart .cart_totals .shipping-calculator-form button.button { background:#fff !important; color:var(--bldcart-blue) !important; border:1px solid var(--bldcart-blue) !important; border-radius:10px !important; text-transform:none !important; font-weight:600 !important; box-shadow:none !important; }

/* Total: the one strong row, with a clear divider above it. */
body.bldcart .cart_totals table.shop_table tr.order-total { border-top:1px solid #d3dce8 !important; padding-top:16px !important; align-items:center; }
body.bldcart .cart_totals tr.order-total th { font-size:16px !important; font-weight:700 !important; color:var(--bldcart-ink) !important; }
body.bldcart .cart_totals tr.order-total td, body.bldcart .cart_totals tr.order-total td strong, body.bldcart .cart_totals tr.order-total td .amount { font-size:21px !important; font-weight:800 !important; color:var(--bldcart-ink) !important; }
body.bldcart .cart_totals tr.cart-discount td, body.bldcart .cart_totals tr.cart-discount th { color:#137a3a !important; }
body.bldcart .cart_totals .woocommerce-remove-coupon { color:var(--bldcart-link) !important; font-size:12.5px; font-weight:500; }
body.bldcart .cart_totals small, body.bldcart .cart_totals .includes_tax { color:var(--bldcart-muted) !important; font-weight:400 !important; font-size:12px !important; }

/* Proceed to checkout: full-width blue button, lock icon like the checkout's pay button. */
body.bldcart .wc-proceed-to-checkout { padding:16px 0 0 !important; margin:0 !important; }
body.bldcart .wc-proceed-to-checkout a.checkout-button {
  display:flex !important; align-items:center; justify-content:center; gap:9px; width:100% !important; height:54px !important; min-height:54px; margin:0 !important; padding:0 20px !important;
  background:var(--bldcart-blue) !important; color:#fff !important; border:0 !important; border-radius:10px !important; box-shadow:0 6px 18px rgb(8 124 240 / 24%) !important;
  font-size:16px !important; font-weight:700 !important; line-height:1 !important; text-transform:none !important; letter-spacing:0 !important; text-decoration:none !important; transition:background-color .15s, transform .15s;
}
body.bldcart .wc-proceed-to-checkout a.checkout-button::before {
  content:""; width:14px; height:16px; flex:0 0 auto; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 16'%3E%3Cpath d='M3 7V5a4 4 0 1 1 8 0v2h.5A1.5 1.5 0 0 1 13 8.5v6A1.5 1.5 0 0 1 11.5 16h-9A1.5 1.5 0 0 1 1 14.5v-6A1.5 1.5 0 0 1 2.5 7H3zm2 0h4V5a2 2 0 1 0-4 0v2z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 16'%3E%3Cpath d='M3 7V5a4 4 0 1 1 8 0v2h.5A1.5 1.5 0 0 1 13 8.5v6A1.5 1.5 0 0 1 11.5 16h-9A1.5 1.5 0 0 1 1 14.5v-6A1.5 1.5 0 0 1 2.5 7H3zm2 0h4V5a2 2 0 1 0-4 0v2z'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.bldcart .wc-proceed-to-checkout a.checkout-button::after { display:none !important; }
body.bldcart .wc-proceed-to-checkout a.checkout-button:hover { background:var(--bldcart-blue-d) !important; }
body.bldcart .wc-proceed-to-checkout a.checkout-button:focus-visible { outline:none !important; box-shadow:0 0 0 3px #fff, 0 0 0 6px var(--bldcart-blue) !important; }

/* Block overlay during AJAX updates: white, not the theme default. */
body.bldcart .blockUI.blockOverlay { background:#fff !important; opacity:.6 !important; border-radius:18px; }

/* Empty cart (after removing the last item). */
body.bldcart .wc-empty-cart-message .cart-empty { background:#fff !important; border-radius:18px !important; border:1px solid var(--bldcart-line) !important; box-shadow:var(--bldcart-shadow) !important; color:var(--bldcart-ink) !important; }
body.bldcart .return-to-shop a.button { background:var(--bldcart-blue) !important; color:#fff !important; border-radius:12px !important; text-transform:none !important; box-shadow:none !important; }

/* ---------- phones / small tablets: compact item rows ---------- */
@media (max-width:768px) {
  body.bldcart form.woocommerce-cart-form { padding:4px 14px !important; border-radius:16px !important; }
  body.bldcart table.shop_table.cart thead { display:none !important; }
  body.bldcart table.shop_table.cart, body.bldcart table.shop_table.cart tbody { display:block !important; }
  body.bldcart table.shop_table.cart tr.cart_item {
    display:grid !important; grid-template-columns:64px minmax(0,1fr) auto; grid-template-areas:"thumb name remove" "thumb price price" "thumb qty subtotal";
    column-gap:12px; row-gap:2px; align-items:center; padding:12px 0 !important; border-bottom:1px solid var(--bldcart-line2) !important; margin:0 !important; position:relative;
  }
  body.bldcart table.shop_table.cart tr.cart_item td {
    display:block !important; padding:0 !important; border:0 !important; text-align:left !important; width:auto !important; min-width:0; float:none !important; background:transparent !important;
  }
  /* Hidden on phones: the per-cell labels ("Product:", "Price:", "Quantity:", "Subtotal:"), replaced by the compact layout. */
  body.bldcart table.shop_table.cart tr.cart_item td::before { display:none !important; content:none !important; }
  body.bldcart table.shop_table.cart td.product-thumbnail { grid-area:thumb; align-self:start; display:block !important; width:64px !important; }
  body.bldcart table.shop_table.cart td.product-name { grid-area:name; align-self:end; padding-right:4px !important; }
  body.bldcart table.shop_table.cart td.product-name a { font-size:14.5px !important; }
  body.bldcart table.shop_table.cart td.product-price { grid-area:price; font-size:12.5px !important; line-height:1.3 !important; }
  body.bldcart table.shop_table.cart td.product-price::after { content:" each"; }
  /* Hidden on phones when it only repeats the line subtotal (quantity 1); shown as "$35.00 each" from quantity 2. */
  body.bldcart table.shop_table.cart tr.cart_item:has(input.qty[value="1"]) td.product-price { display:none !important; }
  body.bldcart table.shop_table.cart td.product-quantity { grid-area:qty; justify-self:start; margin-top:6px !important; }
  body.bldcart table.shop_table.cart td.product-subtotal { grid-area:subtotal; justify-self:end; margin-top:6px !important; font-size:15px !important; }
  body.bldcart table.shop_table.cart td.product-remove { grid-area:remove; align-self:start; justify-self:end; width:auto !important; }
  /* Phones: 44px hit areas without making the controls look bigger. */
  body.bldcart .woocommerce-cart-form .quantity input.minus, body.bldcart .woocommerce-cart-form .quantity input.plus { width:44px !important; height:44px !important; margin:-6px 0 !important; }
  body.bldcart .woocommerce-cart-form .quantity input.minus { margin-left:-8px !important; }
  body.bldcart .woocommerce-cart-form .quantity input.plus { margin-right:-8px !important; }
  body.bldcart .woocommerce-cart-form .quantity input.minus:hover, body.bldcart .woocommerce-cart-form .quantity input.plus:hover { background:transparent !important; }
  body.bldcart .woocommerce-cart-form .quantity input.qty { width:44px !important; height:44px !important; margin:-6px 0 !important; }
  body.bldcart table.shop_table.cart td.product-name > a { display:inline-block; padding:14px 0 !important; margin:-14px 0 !important; position:relative; }
  body.bldcart table.shop_table.cart tr:not(.cart_item) { display:block !important; }
  body.bldcart table.shop_table.cart td.actions { display:block !important; padding:12px 0 10px !important; }
  body.bldcart td.actions .bldcart-coupon-toggle { min-height:44px; }
  body.bldcart td.actions .coupon { max-width:none; }
  body.bldcart td.actions .button, body.bldcart td.actions .coupon #coupon_code { height:44px !important; min-height:44px !important; }
  body.bldcart td.actions button[name="update_cart"] { float:none !important; width:100% !important; margin-top:10px !important; }
  body.bldcart .cart_totals { padding:18px 16px 16px !important; border-radius:16px !important; }
  body.bldcart .cart_totals #shipping_method li label { min-height:44px; }
}

/* Salient's "rounded" button style forces border-radius:200px !important with a longer selector; restate ours with more weight. */
body.bldcart[data-button-style] .woocommerce .wc-proceed-to-checkout a.checkout-button { border-radius:10px !important; }
body.bldcart[data-button-style] .woocommerce table.shop_table.cart td.actions .button,
body.bldcart[data-button-style] .woocommerce .cart_totals .shipping-calculator-form button.button { border-radius:10px !important; }
body.bldcart[data-button-style] .woocommerce .return-to-shop a.button { border-radius:12px !important; }
