/* ===== Cart page — replacing default WooCommerce styling with the site's design system ===== */
.woocommerce-cart .entry-title,.woocommerce-cart h1.entry-title{font-family:var(--sb-font-display);}

/* Cart items table */
table.shop_table.cart,.woocommerce-cart-form table.shop_table{border:1.5px solid var(--sb-border);border-radius:var(--sb-radius);border-collapse:separate;border-spacing:0;overflow:hidden;width:100%;}
table.shop_table.cart thead th{background:var(--sb-primary-pale);font-family:var(--sb-font-condensed);font-size:12px;text-transform:uppercase;letter-spacing:.3px;padding:14px 16px;text-align:left;border:none;}
table.shop_table.cart tbody td{border-top:1px solid var(--sb-border);padding:16px;vertical-align:middle;}
table.shop_table.cart tbody tr:first-child td{border-top:0;}

/* Product thumbnail */
table.shop_table.cart td.product-thumbnail{width:90px;}
table.shop_table.cart td.product-thumbnail img{width:78px;height:78px;object-fit:cover;border-radius:var(--sb-radius-sm);border:1px solid var(--sb-border);}
table.shop_table.cart td.product-name{font-size:14px;color:var(--sb-ink);}
table.shop_table.cart td.product-name a{font-weight:600;color:var(--sb-ink);}
table.shop_table.cart td.product-name dl.variation{font-size:12px;color:var(--sb-muted);margin-top:4px;}
table.shop_table.cart td.product-name dl.variation dt,
table.shop_table.cart td.product-name dl.variation dd{display:inline;margin:0;}
table.shop_table.cart td.product-price,table.shop_table.cart td.product-subtotal{font-weight:600;font-size:14px;white-space:nowrap;}

/* Remove (×) button — proper circular icon instead of a floating red x */
table.shop_table.cart td.product-remove{width:44px;text-align:center;}
table.shop_table.cart td.product-remove a.remove{display:inline-flex!important;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--sb-primary-pale)!important;color:var(--sb-primary)!important;font-size:16px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s;}
table.shop_table.cart td.product-remove a.remove:hover{background:var(--sb-primary)!important;color:#fff!important;}

/* Quantity stepper */
table.shop_table.cart .quantity{display:inline-block;}
table.shop_table.cart .quantity .qty{width:64px;padding:9px 10px;border:1.5px solid var(--sb-border);border-radius:var(--sb-radius-sm);font-size:14px;text-align:center;}

/* Coupon row + update cart button */
table.shop_table.cart td.actions{padding:18px 16px;background:#fafafa;}
.woocommerce-cart-form .coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.woocommerce-cart-form .coupon label{display:none;}
.woocommerce-cart-form .coupon input#coupon_code{flex:0 1 220px;min-width:160px;padding:11px 14px;border:1.5px solid var(--sb-border);border-radius:var(--sb-radius-sm);font-size:14px;}
.woocommerce-cart-form .coupon input#coupon_code:focus{border-color:var(--sb-primary);outline:none;}
.woocommerce-cart-form .coupon button.button[name=apply_coupon]{background:var(--sb-ink);color:#fff;border-radius:var(--sb-radius-sm);padding:11px 22px;font-family:var(--sb-font-condensed);font-weight:700;font-size:12px;text-transform:uppercase;white-space:nowrap;}
table.shop_table.cart button[name=update_cart]{background:#fff;color:var(--sb-ink);border:1.5px solid var(--sb-border)!important;border-radius:var(--sb-radius-sm);padding:11px 22px;font-family:var(--sb-font-condensed);font-weight:700;font-size:12px;text-transform:uppercase;margin-left:auto;display:block;}
table.shop_table.cart button[name=update_cart]:not(:disabled):hover{border-color:var(--sb-primary);color:var(--sb-primary);}
table.shop_table.cart button[name=update_cart]:disabled{opacity:.4;cursor:not-allowed;}

/* Cart totals box */
.cart-collaterals{margin-top:32px;}
.cart-collaterals .cart_totals h2{font-family:var(--sb-font-display);font-size:19px;margin:0 0 16px;}
.cart_totals table.shop_table{border:1.5px solid var(--sb-border);border-radius:var(--sb-radius);border-collapse:separate;border-spacing:0;overflow:hidden;width:100%;}
.cart_totals table.shop_table th,.cart_totals table.shop_table td{padding:14px 18px;border-top:1px solid var(--sb-border);font-size:14px;}
.cart_totals table.shop_table tr:first-child th,.cart_totals table.shop_table tr:first-child td{border-top:0;}
.cart_totals table.shop_table .order-total th,.cart_totals table.shop_table .order-total td{background:var(--sb-primary-pale);font-weight:700;font-size:16px;}
.cart_totals .woocommerce-shipping-destination{font-size:12px;color:var(--sb-muted);}
.cart_totals .shipping-calculator-button{color:var(--sb-primary);font-size:12px;font-weight:600;text-decoration:underline;}
.wc-proceed-to-checkout a.checkout-button{width:100%;text-align:center;padding:16px!important;font-size:14px!important;border-radius:var(--sb-radius-sm)!important;margin-top:16px;display:block;}

@media(max-width:767px){
  table.shop_table.cart thead{display:none;}
  table.shop_table.cart,table.shop_table.cart tbody,table.shop_table.cart tr,table.shop_table.cart td{display:block;width:100%;}
  table.shop_table.cart tr{padding:14px;border-top:1px solid var(--sb-border);position:relative;}
  table.shop_table.cart tr:first-child{border-top:0;}
  table.shop_table.cart td{border:none!important;padding:4px 0!important;}
  table.shop_table.cart td.product-thumbnail{position:absolute;top:14px;left:14px;width:auto;}
  table.shop_table.cart td.product-name{padding-left:94px!important;min-height:78px;}
  table.shop_table.cart td.product-price,table.shop_table.cart td.product-quantity,table.shop_table.cart td.product-subtotal{padding-left:94px!important;}
  table.shop_table.cart td.product-price::before{content:'Price: ';color:var(--sb-muted);font-size:11px;text-transform:uppercase;}
  table.shop_table.cart td.product-subtotal::before{content:'Subtotal: ';color:var(--sb-muted);font-size:11px;text-transform:uppercase;}
  table.shop_table.cart td.product-remove{position:absolute;top:14px;right:14px;width:auto;}
  table.shop_table.cart td.actions{padding-left:14px!important;}
  .woocommerce-cart-form .coupon{flex-direction:column;align-items:stretch;}
  table.shop_table.cart button[name=update_cart]{margin-left:0;width:100%;}
}
