/* Release 39: faithful cart and checkout blueprint composition. Loaded last. */

body.muf-modern.woocommerce-cart,
body.muf-modern.woocommerce-checkout {
  overflow-x: clip;
  background: #fff !important;
}
body.muf-modern.woocommerce-cart .muf-commerce-main,
body.muf-modern.woocommerce-checkout .muf-commerce-main {
  padding: 42px 0 82px !important;
  background: #fff !important;
}
body.muf-modern.woocommerce-cart .ops-cart-inner,
body.muf-modern.woocommerce-checkout .ops-co-wrap {
  width: min(1180px, calc(100% - 44px)) !important;
  max-width: 1180px !important;
}

/* Basket: open white item list, compact grey summary, no oversized card. */
body.muf-modern.woocommerce-cart .ops-cart-steps { display: none !important; }
body.muf-modern.woocommerce-cart .ops-cart-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 32px !important;
  align-items: start !important;
}
body.muf-modern.woocommerce-cart .ops-cart-main {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.muf-modern.woocommerce-cart .ops-cart-main > h2 {
  margin: 0 0 22px !important;
  font-size: 34px !important;
  letter-spacing: -.045em !important;
}
body.muf-modern.woocommerce-cart .ops-cart-main > h2 span {
  margin-top: 3px !important;
  font-size: 13px !important;
}
body.muf-modern.woocommerce-cart .ops-cart-table,
body.muf-modern.woocommerce-cart .ops-cart-table tbody {
  display: block !important;
  width: 100% !important;
}
body.muf-modern.woocommerce-cart .ops-cart-table thead { display: none !important; }
body.muf-modern.woocommerce-cart .ops-cart-table tr.muf-cart-row {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 112px 110px !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 17px 0 !important;
  border-bottom: 1px solid #dfded9 !important;
}
body.muf-modern.woocommerce-cart .ops-cart-table tr.muf-cart-row:first-child { border-top: 1px solid #dfded9 !important; }
body.muf-modern.woocommerce-cart .ops-cart-table tr.muf-cart-row > td {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}
body.muf-modern.woocommerce-cart .muf-cart-row__product { grid-column: 1 !important; }
body.muf-modern.woocommerce-cart .muf-cart-row__unit,
body.muf-modern.woocommerce-cart .muf-cart-row__remove { display: none !important; }
body.muf-modern.woocommerce-cart .muf-cart-row__quantity { grid-column: 2 !important; justify-self: end; }
body.muf-modern.woocommerce-cart .muf-cart-row__total {
  grid-column: 3 !important;
  justify-self: end;
  color: #e17d00 !important;
  font-size: 16px !important;
  font-weight: 850 !important;
  text-align: right !important;
}
body.muf-modern.woocommerce-cart .muf-cart-row__total del {
  display: block;
  margin-top: 3px;
  color: #878a84;
  font-size: 12px;
  font-weight: 560;
}
body.muf-modern.woocommerce-cart .muf-cart-row__product > div {
  align-items: flex-start !important;
  gap: 14px !important;
}
body.muf-modern.woocommerce-cart .muf-cart-row__product > div > a {
  width: 112px !important;
  flex: 0 0 112px !important;
}
body.muf-modern.woocommerce-cart .ops-cart-table img {
  width: 112px !important;
  height: 92px !important;
  border-radius: 7px !important;
  object-fit: cover !important;
}
body.muf-modern.woocommerce-cart .muf-cart-item__content {
  min-width: 0;
  padding-top: 2px;
}
body.muf-modern.woocommerce-cart .muf-cart-item__content > a {
  display: block;
  max-width: 420px;
  color: #171914 !important;
  font-size: 14px !important;
  font-weight: 780 !important;
  line-height: 1.32 !important;
}
body.muf-modern.woocommerce-cart .muf-cart-item__sku {
  margin: 5px 0 0 !important;
  color: #8a8d87 !important;
  font-size: 10px !important;
}
.muf-cart-item__actions {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-top: 10px;
}
.muf-cart-item__actions :is(button, a) {
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #4f534d !important;
  font-size: 11px !important;
  font-weight: 560 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  cursor: pointer;
}
.muf-cart-item__actions button.is-saved { color: #2c8150 !important; }
body.muf-modern.woocommerce-cart .ops-qty {
  grid-template-columns: 34px 38px 34px !important;
  min-width: 106px !important;
}
.muf-cart-footer-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 18px;
}
.muf-cart-footer-actions :is(a, button) {
  min-height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #30332e !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
body.muf-modern.woocommerce-cart .ops-delivery-section {
  margin-top: 30px !important;
  padding: 20px !important;
  border: 1px solid #deddd7 !important;
  border-radius: 8px !important;
  background: #faf9f6 !important;
}
body.muf-modern.woocommerce-cart .ops-sidebar {
  position: sticky !important;
  top: 118px !important;
}
body.muf-modern.woocommerce-cart .ops-summary {
  padding: 24px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #f5f5f5 !important;
  box-shadow: none !important;
}
body.muf-modern.woocommerce-cart .ops-summary > h3 {
  margin-bottom: 16px !important;
  font-size: 21px !important;
}
body.muf-modern.woocommerce-cart .ops-summary > .ops-sum-row { order: 1 !important; }
body.muf-modern.woocommerce-cart .ops-summary > .muf-cart-saving {
  order: 1 !important;
  color: #e17d00 !important;
  font-size: 12px !important;
  font-weight: 760 !important;
}
body.muf-modern.woocommerce-cart .ops-summary > .ops-sum-row.grand { order: 2 !important; }
body.muf-modern.woocommerce-cart .ops-summary > .muf-cart-coupon-label { order: 3 !important; }
body.muf-modern.woocommerce-cart .ops-summary > .ops-coupon-row { order: 4 !important; }
body.muf-modern.woocommerce-cart .ops-summary > .ops-checkout-btn { order: 5 !important; }
body.muf-modern.woocommerce-cart .ops-summary > .muf-cart-assurances { order: 6 !important; }
.muf-cart-coupon-label {
  margin: 15px 0 7px !important;
  padding-top: 15px;
  border-top: 1px solid #dbdad5;
  color: #343732;
  font-size: 11px;
  font-weight: 650;
}
body.muf-modern.woocommerce-cart .ops-coupon-row {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
body.muf-modern.woocommerce-cart .ops-checkout-btn { margin-top: 14px !important; }
body.muf-modern.woocommerce-cart .ops-sidebar > a { display: none !important; }

/* Checkout: the reference is a full-width sequence, not a split-screen form. */
body.muf-modern.woocommerce-checkout .ops-co-wrap { padding: 0 !important; }
body.muf-modern.woocommerce-checkout form.checkout,
body.muf-modern.woocommerce-checkout .ops-co-grid,
body.muf-modern.woocommerce-checkout .ops-co-main {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.muf-modern.woocommerce-checkout .ops-co-title {
  margin: 0 0 20px !important;
  padding: 0 !important;
  font-size: 36px !important;
}
body.muf-modern.woocommerce-checkout .ops-co-title::after {
  content: "Fast, safe and secure. Email verification required." !important;
  margin-top: 5px !important;
  font-size: 13px !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-contact,
body.muf-modern.woocommerce-checkout .muf-checkout-delivery,
body.muf-modern.woocommerce-checkout .muf-checkout-payment {
  display: block !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  padding: 20px !important;
  border: 1px solid #d9dce1 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.muf-modern.woocommerce-checkout :is(.muf-checkout-contact,.muf-checkout-delivery,.muf-checkout-payment) > .ops-co-h3 {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 16px !important;
  font-size: 18px !important;
  font-weight: 820 !important;
}
body.muf-modern.woocommerce-checkout :is(.muf-checkout-contact,.muf-checkout-delivery,.muf-checkout-payment) > .ops-co-h3::before {
  display: inline-grid !important;
  width: 26px !important;
  height: 26px !important;
  flex: 0 0 26px !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #30333a !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-contact > .ops-co-h3::before { content: "1" !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-delivery > .ops-co-h3::before { content: "2" !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-payment > .ops-co-h3::before { content: "3" !important; }
.muf-checkout-contact__grid {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(400px, 1.2fr);
  gap: 18px;
  align-items: start;
}
body.muf-modern.woocommerce-checkout .muf-checkout-contact__grid #billing_email_field { grid-column: 1 !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-contact__grid :is(.muf-checkout-otp,#weo-checkout-otp-wrapper) {
  grid-column: 2 !important;
  grid-row: 1 / span 2;
  margin: 0 !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-contact__grid .woocommerce-account-fields {
  grid-column: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
body.muf-modern.woocommerce-checkout .woocommerce-billing-fields:empty,
body.muf-modern.woocommerce-checkout .woocommerce-additional-fields:empty { display: none !important; }
body.muf-modern.woocommerce-checkout #ops-checkout-boxes {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-bottom: 18px;
}
body.muf-modern.woocommerce-checkout #ops-checkout-boxes .ops-collection-card { grid-column: 1; grid-row: 1; }
body.muf-modern.woocommerce-checkout #ops-checkout-boxes .ops-pallet-card { grid-column: 2; grid-row: 1; }
body.muf-modern.woocommerce-checkout #ops-checkout-boxes .ops-addr-box { grid-column: 1; grid-row: 2; }
body.muf-modern.woocommerce-checkout #ops-checkout-boxes .ops-pallet-zone-wrap { grid-column: 1 / -1; grid-row: 3; }
body.muf-modern.woocommerce-checkout .ops-method-card {
  min-height: 62px !important;
  padding: 13px 14px !important;
  border-radius: 6px !important;
}
.muf-checkout-address {
  padding-top: 18px;
  border-top: 1px solid #e1e2e4;
}
.muf-checkout-address__intro {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
}
.muf-checkout-address__intro strong { font-size: 14px; }
.muf-checkout-address__intro span { color: #71746f; font-size: 11px; }
body.muf-modern.woocommerce-checkout .muf-checkout-address .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-address :is(#billing_first_name_field,#billing_last_name_field,#billing_postcode_field,#billing_city_field,#billing_state_field,#billing_phone_field,#billing_office_field) {
  grid-column: span 1 !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-address :is(#billing_country_field,#billing_company_field) { grid-column: span 2 !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-address :is(#billing_address_1_field,#billing_address_2_field) { grid-column: 1 / -1 !important; }
body.muf-modern.woocommerce-checkout .form-row label { margin-bottom: 4px !important; font-size: 11px !important; }
body.muf-modern.woocommerce-checkout .form-row :is(input.input-text,textarea,select),
body.muf-modern.woocommerce-checkout .select2-selection {
  min-height: 43px !important;
  border-radius: 5px !important;
}
body.muf-modern.woocommerce-checkout .select2-selection__rendered { line-height: 41px !important; }
body.muf-modern.woocommerce-checkout .select2-selection__arrow { height: 41px !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-address .woocommerce-shipping-fields { margin-top: 15px; }
.muf-checkout-address__notes { margin-top: 14px; }
.muf-checkout-address__notes textarea { min-height: 76px !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-payment { padding-bottom: 18px !important; }
.muf-checkout-review {
  margin: 0 0 18px;
  padding: 16px;
  border: 1px solid #e0e1e3;
  border-radius: 6px;
  background: #fafafa;
}
.muf-checkout-review h4 { margin: 0 0 10px; font-size: 14px; }
body.muf-modern.woocommerce-checkout .muf-checkout-review .ops-order-table {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 0 22px !important;
}
body.muf-modern.woocommerce-checkout .muf-checkout-review .ops-order-table tbody,
body.muf-modern.woocommerce-checkout .muf-checkout-review .ops-order-table tr { display: contents !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-review .ops-order-table td { min-width: 0 !important; padding: 9px 0 !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-review .ops-order-grand { margin-top: 12px !important; padding-top: 12px !important; }
body.muf-modern.woocommerce-checkout .muf-checkout-payment #payment { padding-top: 14px !important; border-top: 1px solid #dedfe1 !important; }
body.muf-modern.woocommerce-checkout .ops-co-aside { display: none !important; }

@media (max-width: 900px) {
  body.muf-modern.woocommerce-cart .ops-cart-grid { grid-template-columns: 1fr !important; }
  body.muf-modern.woocommerce-cart .ops-sidebar { position: static !important; }
  .muf-checkout-contact__grid { grid-template-columns: 1fr !important; }
  body.muf-modern.woocommerce-checkout .muf-checkout-contact__grid :is(.muf-checkout-otp,#weo-checkout-otp-wrapper) {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  body.muf-modern.woocommerce-checkout .muf-checkout-contact__grid .woocommerce-account-fields { grid-column: 1 !important; }
  body.muf-modern.woocommerce-checkout .muf-checkout-address .woocommerce-billing-fields__field-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.muf-modern.woocommerce-checkout .muf-checkout-address :is(#billing_country_field,#billing_company_field,#billing_address_1_field,#billing_address_2_field) { grid-column: 1 / -1 !important; }
}

@media (max-width: 620px) {
  body.muf-modern.woocommerce-cart .muf-commerce-main,
  body.muf-modern.woocommerce-checkout .muf-commerce-main { padding: 24px 0 58px !important; }
  body.muf-modern.woocommerce-cart .ops-cart-inner,
  body.muf-modern.woocommerce-checkout .ops-co-wrap { width: min(100% - 24px, 1180px) !important; }
  body.muf-modern.woocommerce-cart .ops-cart-table tr.muf-cart-row {
    grid-template-columns: minmax(0, 1fr) 100px !important;
    gap: 12px !important;
  }
  body.muf-modern.woocommerce-cart .muf-cart-row__product { grid-column: 1 / -1 !important; }
  body.muf-modern.woocommerce-cart .muf-cart-row__quantity { grid-column: 1 !important; justify-self: start; margin-left: 98px; }
  body.muf-modern.woocommerce-cart .muf-cart-row__total { grid-column: 2 !important; }
  body.muf-modern.woocommerce-cart .muf-cart-row__product > div > a { width: 84px !important; flex-basis: 84px !important; }
  body.muf-modern.woocommerce-cart .ops-cart-table img { width: 84px !important; height: 76px !important; }
  body.muf-modern.woocommerce-cart .ops-cart-main > h2 { font-size: 29px !important; }
  body.muf-modern.woocommerce-cart .ops-delivery-section { padding: 15px !important; }
  .muf-cart-footer-actions { margin-top: 14px; }
  body.muf-modern.woocommerce-checkout .ops-co-title { font-size: 31px !important; }
  body.muf-modern.woocommerce-checkout .muf-checkout-contact,
  body.muf-modern.woocommerce-checkout .muf-checkout-delivery,
  body.muf-modern.woocommerce-checkout .muf-checkout-payment { padding: 15px !important; }
  body.muf-modern.woocommerce-checkout #ops-checkout-boxes { grid-template-columns: 1fr !important; }
  body.muf-modern.woocommerce-checkout #ops-checkout-boxes :is(.ops-collection-card,.ops-pallet-card,.ops-addr-box,.ops-pallet-zone-wrap) {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  body.muf-modern.woocommerce-checkout .muf-checkout-address .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr !important; }
  body.muf-modern.woocommerce-checkout .muf-checkout-address .woocommerce-billing-fields__field-wrapper > * { grid-column: 1 !important; }
  .muf-checkout-address__intro { display: grid; gap: 4px; }
  .muf-checkout-otp__actions { grid-template-columns: 1fr 84px !important; }
}
