/* Retail Experience Framework v13.6.1 — Canonical basket */
body.woocommerce-cart.ref-commerce-classic{
  --ref-cart-card:#fff;
  --ref-cart-border:var(--ref-ci-border,#e3e7ec);
  --ref-cart-text:var(--ref-dark,#17233c);
  --ref-cart-muted:#667085;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{
  display:block!important;
  width:min(1240px,calc(100% - 36px))!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:0!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-source-empty{
  display:none!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 380px!important;
  gap:28px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
  align-items:start!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__products,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{
  position:sticky!important;
  top:110px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .woocommerce-cart-form,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .cart_totals{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid var(--ref-cart-border)!important;
  border-radius:24px!important;
  background:var(--ref-cart-card)!important;
  box-shadow:0 18px 44px rgba(20,30,45,.075)!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table{
  display:table!important;
  width:100%!important;
  table-layout:fixed!important;
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart thead{display:table-header-group!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart tbody{display:table-row-group!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart tr{display:table-row!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart th,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td{display:table-cell!important;box-sizing:border-box!important}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart thead th{
  padding:15px 10px!important;
  border-bottom:1px solid #edf0f3!important;
  background:#f8f9fb!important;
  color:var(--ref-cart-muted)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart tbody td{
  padding:16px 10px!important;
  border-bottom:1px solid #edf0f3!important;
  vertical-align:middle!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-remove{width:42px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-thumbnail{width:84px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-name{width:auto!important;min-width:0!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-price{width:84px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-quantity{width:116px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-subtotal{width:88px!important}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-thumbnail img{
  display:block!important;
  width:66px!important;
  height:66px!important;
  max-width:66px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  border-radius:13px!important;
  background:#f8f9fb!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-name,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-name a{
  color:var(--ref-cart-text)!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  font-weight:700!important;
  line-height:1.38!important;
  visibility:visible!important;
  opacity:1!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-price,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-subtotal{
  white-space:nowrap!important;
  color:var(--ref-cart-text)!important;
  font-weight:700!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .quantity{
  display:grid!important;
  grid-template-columns:34px 38px 34px!important;
  width:106px!important;
  min-width:106px!important;
  height:38px!important;
  overflow:hidden!important;
  border:1px solid #dfe4e9!important;
  border-radius:999px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row td.actions{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:14px!important;
  width:100%!important;
  padding:18px!important;
  background:#fafbfc!important;
  align-items:center!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row__native,
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row__right{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row__right{justify-content:flex-end!important;min-width:0!important}
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .coupon{
  display:grid!important;
  grid-template-columns:minmax(130px,1fr) auto!important;
  flex:1 1 330px!important;
  max-width:470px!important;
  gap:8px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .coupon input{width:100%!important;min-width:0!important;margin:0!important}
body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .button{width:auto!important;min-width:145px!important;margin:0!important;white-space:nowrap!important}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .cart_totals>h2{margin:0!important;padding:22px!important;border-bottom:1px solid #edf0f3!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .cart_totals table{width:calc(100% - 40px)!important;margin:0 20px!important;table-layout:auto!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .cart_totals th,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .cart_totals td{padding:14px 0!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .wc-proceed-to-checkout{padding:18px 20px 22px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .wc-proceed-to-checkout>*{width:100%!important;max-width:100%!important;margin-inline:0!important}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-cart-trust,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart__cross-sells{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-cart-trust{margin-top:24px!important}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart__cross-sells{margin-top:32px!important}

@media(max-width:1000px){
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart{grid-template-columns:minmax(0,1fr) 340px!important;gap:20px!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-thumbnail{width:76px!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-price{width:76px!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-quantity{width:108px!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-subtotal{width:80px!important}
}
@media(max-width:849px){
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{width:calc(100% - 22px)!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart{display:block!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{position:static!important;margin-top:22px!important}
}
@media(max-width:700px){
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table thead{display:none!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table,
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table tbody{display:block!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table tr.cart_item{
    display:grid!important;
    grid-template-columns:34px 74px minmax(0,1fr)!important;
    gap:4px 10px!important;
    padding:14px!important;
  }
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table tr.cart_item td{display:block!important;width:auto!important;padding:4px 0!important;border:0!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-remove{grid-column:1!important;grid-row:1!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-thumbnail{grid-column:2!important;grid-row:1/span 5!important}
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-name,
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-price,
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-quantity,
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-subtotal{grid-column:3!important}
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row{display:block!important}
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row td.actions{display:grid!important;grid-template-columns:1fr!important}
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row__native,
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row__right{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .coupon{grid-template-columns:1fr!important;width:100%!important;max-width:none!important}
  body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .button{width:100%!important}
}


/* ==========================================================
   v13.6.1 — Full-width host and sticky-header clearance
   ========================================================== */
body.woocommerce-cart.ref-commerce-classic .page-wrapper{
  overflow:visible!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{
  position:relative!important;
  display:block!important;
  width:min(1280px,calc(100vw - 48px))!important;
  max-width:1280px!important;
  margin:38px auto 0!important;
  padding:0 0 56px!important;
  box-sizing:border-box!important;
}

body.admin-bar.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{
  margin-top:42px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart{
  grid-template-columns:minmax(0,1fr) 360px!important;
  gap:24px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{
  top:150px!important;
}

body.admin-bar.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{
  top:182px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart table.shop_table{
  table-layout:auto!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-remove{
  width:38px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-thumbnail{
  width:78px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-price{
  width:76px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-quantity{
  width:108px!important;
}
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart .product-subtotal{
  width:82px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart thead th,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart tbody td{
  padding-left:8px!important;
  padding-right:8px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-thumbnail img{
  width:62px!important;
  height:62px!important;
  max-width:62px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-name,
body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart td.product-name a{
  font-size:13px!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row td.actions{
  grid-template-columns:minmax(145px,auto) minmax(0,1fr)!important;
}

body.woocommerce-cart.ref-commerce-classic .ref-cart-actions-row .coupon{
  max-width:430px!important;
}

@media(max-width:1100px){
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{
    width:calc(100vw - 30px)!important;
  }
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host .ref-canonical-cart{
    grid-template-columns:minmax(0,1fr) 330px!important;
    gap:18px!important;
  }
}

@media(max-width:849px){
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart-host{
    width:calc(100vw - 22px)!important;
    margin-top:24px!important;
  }
  body.woocommerce-cart.ref-commerce-classic .ref-canonical-cart__summary{
    top:auto!important;
  }
}


/* ==========================================================
   v13.6.2 — Basket control alignment
   Visual-only patch: quantities and basket action heights.
   ========================================================== */

/* Compact, balanced quantity pill. */
body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity{
  display:grid!important;
  grid-template-columns:30px 34px 30px!important;
  width:94px!important;
  min-width:94px!important;
  height:32px!important;
  min-height:32px!important;
  align-items:stretch!important;
  overflow:hidden!important;
  border:1px solid #e1e4e8!important;
  border-radius:999px!important;
  background:#fff!important;
}

body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity .button,
body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity input.qty{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  line-height:30px!important;
  text-align:center!important;
}

body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity .button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(
    135deg,
    var(--ref-primary,#ad002b),
    var(--ref-secondary,#d13a63)
  )!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
}

body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity input.qty{
  background:#fff!important;
  color:var(--ref-cart-text,#17233c)!important;
  font-size:13px!important;
  font-weight:650!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
}

body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity input.qty::-webkit-inner-spin-button,
body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart td.product-quantity .quantity input.qty::-webkit-outer-spin-button{
  margin:0!important;
  -webkit-appearance:none!important;
}

/* Keep the quantity column proportional to the smaller control. */
body.woocommerce-cart.ref-commerce-classic
.ref-canonical-cart .product-quantity{
  width:102px!important;
  min-width:102px!important;
}

/* Equalise all native basket action controls. */
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row__native .button,
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row__right .button,
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row .coupon input{
  box-sizing:border-box!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  line-height:40px!important;
}

/* Continue shopping should be compact and never wrap. */
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row__native .button{
  display:inline-flex!important;
  width:auto!important;
  min-width:170px!important;
  padding:0 20px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  font-size:13px!important;
  line-height:1!important;
}

/* Coupon and update controls align to the same baseline. */
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row .coupon input{
  padding:0 16px!important;
  border-radius:999px!important;
  line-height:normal!important;
}

body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row__right .button{
  display:inline-flex!important;
  padding:0 20px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  line-height:1!important;
}

/* Slightly tighten the action row now that controls are equal height. */
body.woocommerce-cart.ref-commerce-classic
.ref-cart-actions-row td.actions{
  gap:12px!important;
  padding:16px!important;
}

@media(max-width:700px){
  body.woocommerce-cart.ref-commerce-classic
  .ref-cart-actions-row__native .button,
  body.woocommerce-cart.ref-commerce-classic
  .ref-cart-actions-row__right .button,
  body.woocommerce-cart.ref-commerce-classic
  .ref-cart-actions-row .coupon input{
    width:100%!important;
  }
}


/* ==========================================================
   v13.6.3 — Version-independent canonical cart mounting
   ========================================================== */

body.woocommerce-cart.ref-canonical-cart-mounted
.woocommerce.ref-canonical-cart-source-empty{
  display:none!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
}

/*
 * The mounted host is the only width authority. This rule deliberately does
 * not depend on a release number or data attribute value.
 */
body.woocommerce-cart
.ref-canonical-cart-host
> .ref-canonical-cart[data-ref-cart-template]{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
