
/* Retail Experience Framework v13.3 — Cart & Checkout Restoration */

body.woocommerce-cart.ref-cart-active,
body.woocommerce-checkout.ref-checkout-active{
  background:var(--ref-ci-page,#fafbfc);
}

.ref-commerce-header{
  margin:0 auto 24px;
  padding:clamp(24px,4vw,42px);
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:26px;
  background:
    radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--ref-primary) 12%,transparent),transparent 32%),
    linear-gradient(135deg,color-mix(in srgb,var(--ref-primary) 6%,#fff),#fff);
  box-shadow:0 18px 45px rgba(20,25,35,.07);
}

.ref-commerce-header h1{
  margin:0 0 8px;
  color:var(--ref-dark,#17233c);
  font-size:clamp(30px,4vw,46px);
  letter-spacing:-.04em;
  line-height:1;
  text-transform:none;
}

.ref-commerce-header p{margin:0;color:#667085;font-size:15px}

body.woocommerce-cart .woocommerce{
  max-width:1320px;
  margin:0 auto;
}

body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout #order_review{
  min-width:0;
}

@media(min-width:850px){
  body.woocommerce-cart .woocommerce:not(.widget_shopping_cart_content){
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);
    gap:28px;
    align-items:start;
  }

  body.woocommerce-cart .ref-commerce-header,
  body.woocommerce-cart .woocommerce-notices-wrapper,
  body.woocommerce-cart .ref-cart-trust,
  body.woocommerce-cart .cross-sells{
    grid-column:1/-1;
  }

  body.woocommerce-cart .woocommerce-cart-form{grid-column:1}
  body.woocommerce-cart .cart-collaterals{
    grid-column:2;
    grid-row:2/span 2;
    position:sticky;
    top:110px;
  }
}

body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout #order_review{
  overflow:hidden;
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 36px rgba(20,25,35,.06);
}

body.woocommerce-cart .shop_table{
  margin:0!important;
  border:0!important;
  background:#fff;
}

body.woocommerce-cart .shop_table thead th{
  padding:17px 14px;
  border-bottom:1px solid #edf0f3;
  background:#f8f9fb;
  color:#667085;
  font-size:11px;
  letter-spacing:.05em;
  text-transform:uppercase;
}

body.woocommerce-cart .shop_table td{
  padding:18px 14px;
  border-color:#edf0f3;
  vertical-align:middle;
}

body.woocommerce-cart .product-thumbnail img{
  width:88px!important;
  max-width:88px!important;
  border-radius:15px;
  background:#f7f8fa;
}

body.woocommerce-cart .ref-cart-product-name,
body.woocommerce-cart .product-name a{
  color:var(--ref-dark,#17233c);
  font-weight:750;
}

body.woocommerce-cart .quantity,
body.woocommerce-checkout .quantity{
  display:inline-flex!important;
  align-items:center;
  overflow:hidden;
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:999px;
  background:#fff;
}

body.woocommerce-cart .quantity .button,
body.woocommerce-cart .quantity input,
body.woocommerce-checkout .quantity .button,
body.woocommerce-checkout .quantity input{
  min-width:36px!important;
  height:38px!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  text-align:center;
}

body.woocommerce-cart .actions{
  padding:18px!important;
  background:#fbfbfc;
}

body.woocommerce-cart .coupon{
  display:flex;
  max-width:520px;
  gap:9px;
}

body.woocommerce-cart .coupon input{
  min-height:44px;
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:999px!important;
  background:#fff;
}

body.woocommerce-cart .button,
body.woocommerce-cart .checkout-button,
body.woocommerce-checkout #place_order{
  min-height:46px;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--ref-primary),var(--ref-secondary))!important;
  color:#fff!important;
  font-weight:800!important;
  text-transform:none!important;
  box-shadow:0 11px 26px color-mix(in srgb,var(--ref-primary) 22%,transparent)!important;
}

body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading{
  margin:0;
  padding:22px;
  border-bottom:1px solid #edf0f3;
  color:var(--ref-dark,#17233c);
  font-size:22px;
  text-transform:none;
}

body.woocommerce-cart .cart_totals .shop_table,
body.woocommerce-cart .wc-proceed-to-checkout{
  margin:0;
  padding:18px 22px;
}

.ref-cart-trust,
.ref-checkout-reassurance{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0 26px;
}

.ref-cart-trust article,
.ref-checkout-reassurance article{
  padding:17px;
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:17px;
  background:#fff;
}

.ref-cart-trust strong,
.ref-cart-trust span,
.ref-checkout-reassurance strong,
.ref-checkout-reassurance span{display:block}
.ref-cart-trust span,.ref-checkout-reassurance span{margin-top:5px;color:#667085;font-size:12px}

body.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);
  gap:28px;
  align-items:start;
}

body.woocommerce-checkout #customer_details{min-width:0}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  grid-column:2;
}
body.woocommerce-checkout #order_review{
  position:sticky;
  top:110px;
  padding:22px;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields{
  margin-bottom:18px;
  padding:24px;
}

body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-container .select2-selection{
  min-height:46px;
  border:1px solid var(--ref-ci-border,var(--ref-border,#e5e7eb));
  border-radius:13px;
  background:#fff;
  box-shadow:none;
}

@media(max-width:849px){
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout form.checkout{
    display:block;
  }

  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-checkout #order_review{
    position:static;
    margin-top:20px;
  }

  .ref-cart-trust,.ref-checkout-reassurance{grid-template-columns:1fr}

  body.woocommerce-cart .shop_table_responsive tr{
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    gap:4px 13px;
    padding:14px;
    border-bottom:1px solid #edf0f3;
  }

  body.woocommerce-cart .shop_table_responsive td{
    padding:5px 0!important;
    border:0!important;
  }

  body.woocommerce-cart .shop_table_responsive .product-thumbnail{
    display:block!important;
    grid-row:1/span 5;
    grid-column:1;
  }

  body.woocommerce-cart .shop_table_responsive .product-name,
  body.woocommerce-cart .shop_table_responsive .product-price,
  body.woocommerce-cart .shop_table_responsive .product-quantity,
  body.woocommerce-cart .shop_table_responsive .product-subtotal{
    grid-column:2;
    text-align:left!important;
  }

  body.woocommerce-cart .shop_table_responsive td::before{display:none!important}
  body.woocommerce-cart .coupon{flex-direction:column}
}
