/* ============================================================
 * MIXORA — mixora-cart.css (Mini cart / add-to-cart drawer)
 * Version: 1.9.2 | Last updated: 2026-09-06 (bordered items, quantity stepper, modern delete icon, zero radius)
 * ------------------------------------------------------------
 * HOW TO EDIT LATER:
 * - Drawer width: --mixora-cart-width
 * - Image size: --mixora-cart-img
 * - Colors: --mixora-ink / white bg fixed (brand rule)
 * - Buttons: .elementor-button--view-cart / --checkout sections below.
 * - Woo cart HTML Elementor theke ashe; ekhane shudhu design.
 * ============================================================ */

:root {
  /* Premium fashion e-commerce: sharp edge, minimal, kono extra radius nei */
  --mixora-cart-width: min(392px, 90vw);  /* EDIT ME: drawer width (age 440px chilo) */
  --mixora-cart-img: 84px;                /* EDIT ME: product image size (square) */
  --mixora-cart-radius: 0px;              /* EDIT ME: drawer corner — 0 = sharp */
  --mixora-cart-img-radius: 0px;          /* EDIT ME: product image corner */
  --mixora-cart-pad: 22px;                /* EDIT ME: drawer er bhitorer padding */
  --mixora-cart-line: rgba(17, 17, 17, 0.1); /* divider / border rong */
}

/* Overlay (backdrop) — geometry shob obosthay ek rokom */
.elementor-menu-cart__container.mixora-detached-cart,
.mixora-detached-cart.elementor-menu-cart__container.elementor-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100300 !important;
  width: 100vw !important;
  height: 100dvh !important;
  background: rgba(0, 0, 0, 0.36) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  overflow: hidden !important;
}

/* ---------- BUG FIX: cart dan dik theke ashto na ----------
 * Age lukanor rule ta chilo 3-class (.mixora-detached-cart +
 * .elementor-menu-cart__container + .elementor-lightbox) e `scale(0)`,
 * ar dekhanor rule ta chilo 2-class e `scale(1)`.
 * Beshi specific ta jete, tai OPEN korleo container ta scale(0)-tei thakto
 * -> puro drawer shunno size e thakto -> kichui dekha jeto na.
 * Ekhon duita state ek-i specificity (3 class), tai thik moto kaj kore.
 * NOTE: duita rule e SAME number of class rakhben, noile abar ei bug hobe. */
.elementor-menu-cart__container.mixora-detached-cart:not(.elementor-menu-cart--shown) {
  background-color: transparent !important;
  transform: scale(0) !important;
  /* delay ta panel er slide-out (0.34s) er SAMAN — age 0.28s chilo, tai
   * shesh 60ms e panel ta hothat udhao hoye jeto. */
  transition: background-color 0.24s ease, transform 0s 0.34s !important;
}
.elementor-menu-cart__container.mixora-detached-cart.elementor-menu-cart--shown {
  transform: scale(1) !important;
  transition: background-color 0.24s ease, transform 0s !important;
}

/* Right drawer */
.mixora-detached-cart .elementor-menu-cart__main {
  position: fixed !important;
  inset-block: 0 !important;
  right: 0 !important;
  left: auto !important;
  z-index: 100310 !important;
  width: var(--mixora-cart-width) !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  padding: var(--mixora-cart-pad) !important;
  border: 0 !important;
  border-left: 1px solid var(--mixora-cart-line) !important;
  border-radius: var(--mixora-cart-radius) 0 0 var(--mixora-cart-radius) !important;
  background: #fff !important;
  /* Minimal: bhari shadow nei, shudhu halka separation */
  box-shadow: -12px 0 32px rgba(0, 0, 0, 0.08) !important;
  overflow: hidden !important;
  /* EDIT ME: dan dik theke ashar speed / easing */
  transition: opacity 0.24s ease, transform 0.34s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
/* Bondho: dan pashe bahire dariye thake (102% = puro dan dike sore) */
.mixora-detached-cart:not(.elementor-menu-cart--shown) .elementor-menu-cart__main {
  opacity: 0 !important;
  transform: translateX(102%) !important;
}
/* Khola: slide kore jaygay ashe */
.mixora-detached-cart.elementor-menu-cart--shown .elementor-menu-cart__main {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

/* ---------- Top section: shudhu title + close icon ----------
 * NOTE: age close icon er pashe ekta quantity badge (<em>) chilo.
 * Sheta shorano hoyeche — JS eo ar render hoy na
 * (assets/js/mixora-navigation.js -> syncCartHead()). */
.mixora-cart-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 38px !important;
  margin: 0 0 18px !important;
  padding: 0 0 16px !important;
  border-bottom: 1px solid var(--mixora-cart-line) !important;
  color: #111 !important;
  position: relative !important;
}
.mixora-cart-head strong {
  font-size: 13px !important;          /* EDIT ME: title size */
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;   /* EDIT ME: luxury spacing */
  text-transform: uppercase !important;
  line-height: 1 !important;
  margin: 0 !important;
}
/* Close icon: minimal, kono circle/bg/border nei, ghore na (no jumping) */
.mixora-detached-cart .elementor-menu-cart__close-button {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  margin: 0 !important;
  align-self: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0.75;
  transition: opacity 0.18s ease;
  padding: 0 !important;
  z-index: 2 !important;
}
.mixora-detached-cart .elementor-menu-cart__main > .elementor-menu-cart__close-button {
  position: absolute !important;
  top: var(--mixora-cart-pad) !important;
  right: var(--mixora-cart-pad) !important;
}
.mixora-cart-head .elementor-menu-cart__close-button {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  margin: 0 !important;
}
.mixora-detached-cart .elementor-menu-cart__close-button:hover {
  background: transparent !important;
  opacity: 1;
}
.mixora-detached-cart .elementor-menu-cart__close-button::before,
.mixora-detached-cart .elementor-menu-cart__close-button::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 1px !important;
  width: 20px !important;
  height: 1.5px !important;
  background: #111 !important;
  border-radius: 0 !important;
  transition: background 0.18s ease !important;
}
.mixora-detached-cart .elementor-menu-cart__close-button::before {
  transform: rotate(45deg) !important;
}
.mixora-detached-cart .elementor-menu-cart__close-button::after {
  transform: rotate(-45deg) !important;
}

/* Products: clean bordered cards with zero radius */
.mixora-detached-cart .widget_shopping_cart_content {
  display: flex !important;
  flex-direction: column !important;
  height: calc(100dvh - 52px) !important;
}
.mixora-detached-cart .elementor-menu-cart__products {
  flex: 1 1 auto;
  max-height: none !important;
  padding: 2px 4px 10px 0 !important;
  overflow-y: auto !important;
}

/* Product item card: clean border, padding, crisp spacing, strictly zero radius */
.mixora-detached-cart .elementor-menu-cart__product {
  display: grid !important;
  grid-template-columns: var(--mixora-cart-img) minmax(0, 1fr) 28px !important;
  gap: 0 14px !important;
  align-items: start !important;
  padding: 12px 14px !important;
  margin-bottom: 12px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  position: relative !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, opacity 0.2s ease;
}
.mixora-detached-cart .elementor-menu-cart__product:hover {
  border-color: #d1d5db !important;
}
.mixora-detached-cart .elementor-menu-cart__product.mixora-item-updating {
  opacity: 0.55 !important;
  pointer-events: none !important;
}

/* Square image, radius 0 */
.mixora-detached-cart .elementor-menu-cart__product-image {
  border-radius: 0 !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.mixora-detached-cart .elementor-menu-cart__product-image img {
  width: var(--mixora-cart-img) !important;
  height: var(--mixora-cart-img) !important;   /* square */
  border-radius: 0 !important;
  object-fit: cover;
  background: #f7f7f7;
  display: block;
}

/* Product details wrapper */
.mixora-detached-cart .mixora-cart-product-details {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  width: 100% !important;
  padding-right: 4px !important;
}

/* Product title & price: reduced gap */
.mixora-detached-cart .elementor-menu-cart__product-name {
  align-self: stretch !important;
  margin: 0 0 3px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
}
.mixora-detached-cart .elementor-menu-cart__product-name a {
  color: #111 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 0.18s ease;
}
.mixora-detached-cart .elementor-menu-cart__product-name a:hover {
  color: #000 !important;
}
.mixora-detached-cart .elementor-menu-cart__product-price {
  align-self: start !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
.mixora-detached-cart .elementor-menu-cart__product-price .quantity {
  display: none !important; /* Hide old text quantity, stepper below is used */
}

/* Quantity Stepper Feature */
.mixora-detached-cart .mixora-cart-qty-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid #d4d4d8 !important;
  background: #ffffff !important;
  border-radius: 0 !important;
  height: 28px !important;
  max-width: 96px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  user-select: none;
}
.mixora-detached-cart .mixora-qty-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 100% !important;
  min-height: 26px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #fafafa !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease, color 0.15s ease;
  -webkit-appearance: none;
}
.mixora-detached-cart .mixora-qty-btn:hover:not(:disabled) {
  background: #111 !important;
  color: #fff !important;
}
.mixora-detached-cart .mixora-qty-btn:active:not(:disabled) {
  background: #333 !important;
  color: #fff !important;
}
.mixora-detached-cart .mixora-qty-btn:disabled {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
}
.mixora-detached-cart .mixora-qty-input {
  width: 34px !important;
  height: 100% !important;
  border: 0 !important;
  border-left: 1px solid #e5e5e5 !important;
  border-right: 1px solid #e5e5e5 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  color: #111 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  pointer-events: none;
  -moz-appearance: textfield;
}
.mixora-detached-cart .mixora-qty-input:focus,
.mixora-detached-cart .mixora-qty-input:active,
.mixora-detached-cart .mixora-qty-input:focus-visible,
.mixora-detached-cart .mixora-qty-input:hover {
  outline: none !important;
  box-shadow: none !important;
  border-left: 1px solid #e5e5e5 !important;
  border-right: 1px solid #e5e5e5 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}
.mixora-detached-cart .mixora-cart-qty-wrapper:focus-within {
  outline: none !important;
  box-shadow: none !important;
  border-color: #d4d4d8 !important;
}
.mixora-detached-cart .mixora-qty-input::-webkit-outer-spin-button,
.mixora-detached-cart .mixora-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Modern Delete Icon on the right */
.mixora-detached-cart .elementor-menu-cart__product-remove {
  position: relative !important;
  right: auto !important;
  top: 0 !important;
  bottom: auto !important;
  inset-inline-end: auto !important;
  align-self: start !important;
  width: 28px !important;
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  opacity: 1 !important;
  padding: 0 !important;
  overflow: visible !important;
}

/* Hide Elementor default CSS cross lines */
.mixora-detached-cart .elementor-menu-cart__product-remove::before,
.mixora-detached-cart .elementor-menu-cart__product-remove::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

.mixora-detached-cart .elementor-menu-cart__product-remove > a,
.mixora-detached-cart .elementor-menu-cart__product-remove .mixora-modern-delete-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  padding: 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #71717a !important;
  cursor: pointer !important;
  transition: color 0.18s ease, transform 0.18s ease;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  position: relative !important;
  overflow: visible !important;
  font-size: 0 !important;
  z-index: 2 !important;
}
.mixora-detached-cart .elementor-menu-cart__product-remove > a:hover,
.mixora-detached-cart .elementor-menu-cart__product-remove .mixora-modern-delete-btn:hover {
  color: #dc2626 !important;
  transform: scale(1.15);
  background: transparent !important;
}
.mixora-detached-cart .elementor-menu-cart__product-remove svg,
.mixora-detached-cart .mixora-modern-delete-btn svg,
.mixora-detached-cart .mixora-delete-icon {
  width: 17px !important;
  height: 17px !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  display: block !important;
}

/* ---------- Subtotal: border SORANO ----------
 * DUITA jayga theke border ashto:
 *   1. amader nijer `border-top: 1px solid ...`
 *   2. Elementor Pro-r default rule: `.elementor-menu-cart__subtotal` e
 *      `border-width: var(--subtotal-divider-*-width, 1px)` - CHAR dik-e 1px!
 * Tai `border: 0` er shathe Elementor er variable char-tao 0 kora holo,
 * nahole bam/dan/niche er 1px theke jeto.
 * EDIT ME: border abar chaile --subtotal-divider-top-width: 1px korun. */
.mixora-detached-cart .elementor-menu-cart__subtotal {
  --subtotal-divider-top-width: 0px;
  --subtotal-divider-right-width: 0px;
  --subtotal-divider-bottom-width: 0px;
  --subtotal-divider-left-width: 0px;
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #111 !important;
  font-size: 17px !important;
  font-weight: 800 !important;
}

/* Buttons */
.mixora-detached-cart .elementor-menu-cart__footer-buttons {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  padding-top: 16px !important;
}
/* Sharp edge, kono transform/shadow hover nei (no jumping, no floating) */
.mixora-detached-cart .elementor-menu-cart__footer-buttons .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;      /* EDIT ME: button height (tap-friendly) */
  border-radius: 0 !important;      /* sharp */
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em;           /* EDIT ME: luxury spacing */
  text-transform: uppercase;
  box-shadow: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}
/* EDIT ME: View Cart = transparent + 1px solid #111 */
.mixora-detached-cart .elementor-button--view-cart {
  border: 1px solid #111 !important;
  background: transparent !important;
  color: #111 !important;
}
.mixora-detached-cart .elementor-button--view-cart:hover {
  background: #111 !important;
  color: #fff !important;
}
/* EDIT ME: Checkout = solid black */
.mixora-detached-cart .elementor-button--checkout {
  border: 1px solid #111 !important;
  background: #111 !important;
  color: #fff !important;
}
.mixora-detached-cart .elementor-button--checkout:hover {
  background: #000 !important;
  border-color: #000 !important;
}

/* ---------- Cart khullei page KAPAKAPI — er fix ----------
 * Drawer khullei body te overflow:hidden boshe. Tokhon browser er scrollbar ta
 * hariye jay -> page ~15px chowra hoye jay -> puro header ek jhatka dey.
 * scrollbar-gutter: stable scrollbar er jayga ta SHOB SOMOY dhore rakhe,
 * tai lock/unlock e ar kono shift hoy na. */
html {
  scrollbar-gutter: stable;
}

body.mixora-cart-open { overflow: hidden !important; }

/* ---------- Zero Border Radius Enforcement (Brand Rule) ---------- */
.mixora-detached-cart,
.mixora-detached-cart *,
.mixora-detached-cart .elementor-menu-cart__main,
.mixora-detached-cart .elementor-menu-cart__product,
.mixora-detached-cart .elementor-menu-cart__product-image,
.mixora-detached-cart .elementor-menu-cart__product-image img,
.mixora-detached-cart .mixora-cart-qty-wrapper,
.mixora-detached-cart .mixora-qty-btn,
.mixora-detached-cart .mixora-qty-input,
.mixora-detached-cart .mixora-modern-delete-btn,
.mixora-detached-cart .elementor-menu-cart__footer-buttons .elementor-button {
  border-radius: 0 !important;
}

/* ---------- Mobile: full-fit drawer, tap-friendly, no overflow ---------- */
@media (max-width: 767px) {
  :root {
    --mixora-cart-img: 72px;   /* Clean mobile product image */
    --mixora-cart-pad: 16px;
  }
  .mixora-detached-cart .elementor-menu-cart__main {
    width: min(92vw, 360px) !important;  /* Responsive mobile drawer width */
    max-width: 100vw !important;
    padding: var(--mixora-cart-pad) !important;
  }
  /* Buttons: single column, comfortable touch target */
  .mixora-detached-cart .elementor-menu-cart__footer-buttons {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .mixora-detached-cart .elementor-menu-cart__footer-buttons .elementor-button {
    min-height: 48px !important;   /* Tap-friendly target */
    width: 100% !important;
  }
  /* Product card mobile spacing */
  .mixora-detached-cart .elementor-menu-cart__product {
    grid-template-columns: var(--mixora-cart-img) minmax(0, 1fr) 26px !important;
    gap: 0 10px !important;
    padding: 10px 12px !important;
    margin-bottom: 10px !important;
  }
  .mixora-detached-cart .elementor-menu-cart__product-name a {
    font-size: 13px !important;
  }
  .mixora-detached-cart .elementor-menu-cart__product-price {
    font-size: 13.5px !important;
    margin-bottom: 6px !important;
  }
  .mixora-detached-cart .mixora-cart-qty-wrapper {
    height: 26px !important;
    max-width: 90px !important;
  }
  .mixora-detached-cart .mixora-qty-btn {
    width: 24px !important;
    min-height: 24px !important;
    font-size: 14px !important;
  }
  .mixora-detached-cart .mixora-qty-input {
    width: 30px !important;
    font-size: 12px !important;
  }
}

/* ============================================================
 * MIXORA — Cart Page (post 18) — Minimal, sharp, header-matched
 * Version: 1.0.0 | 2026-09-07
 * Targets: WooCommerce Cart via Elementor Cart widget (.mx-cart-widget)
 * Shell width = header/footer same vars.
 * ============================================================ */

/* ---------- Page background & typography ---------- */
body.woocommerce-cart {
  background: #f8f8f9 !important;
}
body.woocommerce-cart,
body.woocommerce-cart button,
body.woocommerce-cart input,
body.woocommerce-cart select,
body.woocommerce-cart textarea,
body.woocommerce-cart .shop_table,
body.woocommerce-cart .product-name a,
body.woocommerce-cart .amount,
body.woocommerce-cart .cart_totals h2,
body.woocommerce-cart .checkout-button,
body.woocommerce-cart .elementor-heading-title {
  font-family: "Red Hat Display", sans-serif !important;
}

/* ---------- Shell: exact header width (1370px) ---------- */
body.mx-cart-body .mx-cart-page,
body.woocommerce-cart .mx-cart-page {
  width: 100% !important;
}

body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-shell,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-shell,
.mx-cart-page .mx-cart-shell {
  display: flex !important;
  --display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  background: transparent !important;
  --padding-top: 24px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  padding-top: 24px !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner {
  display: flex !important;
  --display: flex !important;
  flex-direction: column !important;
  width: min(calc(100vw - (var(--mixora-shell-gutter, 32px) * 2)), var(--mixora-shell-width, 1370px)) !important;
  max-width: var(--mixora-shell-width, 1370px) !important;
  margin-inline: auto !important;
  --content-width: min(calc(100vw - (var(--mixora-shell-gutter, 32px) * 2)), var(--mixora-shell-width, 1370px)) !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-inner,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-inner {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  box-sizing: border-box !important;
}

body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-widget {
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-cart:not(.mx-cart-body) .woocommerce {
  width: min(calc(100vw - (var(--mixora-shell-gutter, 32px) * 2)), var(--mixora-shell-width, 1370px)) !important;
  max-width: var(--mixora-shell-width, 1370px) !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  .mx-cart-page .elementor-element.mx-cart-shell {
    --padding-top: 20px !important;
    --padding-bottom: 0px !important;
    padding-top: 20px !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    --padding-left: 0px !important;
    --padding-right: 0px !important;
  }
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner,
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner,
  body.woocommerce-cart:not(.mx-cart-body) .woocommerce {
    width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    max-width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    --content-width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    margin-inline: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-inner,
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media (max-width: 767px) {
  .mx-cart-page .elementor-element.mx-cart-shell {
    --padding-top: 12px !important;
    --padding-bottom: 0px !important;
    padding-top: 12px !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    --padding-left: 0px !important;
    --padding-right: 0px !important;
  }
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner,
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-shell > .e-con-inner,
  body.woocommerce-cart:not(.mx-cart-body) .woocommerce {
    width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    max-width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    --content-width: calc(100vw - (var(--mixora-shell-gutter-mobile, 12px) * 2)) !important;
    margin-inline: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-inner,
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
  }
  .mx-cart-page .mx-cart-inner {
    --padding-top: 0px !important;
    --padding-bottom: 0px !important;
    padding-bottom: 0 !important;
  }
}

/* Heading — center (as before) */
body.mx-cart-body .mx-cart-heading .elementor-heading-title {
  font-size: 30px !important;
  letter-spacing: 0.9px;
  text-align: center !important;
}
body.mx-cart-body .mx-cart-heading {
  text-align: center !important;
}
@media (max-width: 767px) {
  body.mx-cart-body .mx-cart-heading .elementor-heading-title {
    font-size: 18px !important;
    text-align: center !important;
  }
}

/* ---------- CART DETAILS LAYOUT: two columns desktop, stacked mobile ---------- */
body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget .woocommerce,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-widget .woocommerce {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget .e-cart__container,
body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-widget .e-cart__container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.85fr) !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 991px) {
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget .e-cart__container,
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-widget .e-cart__container {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

/* Cart widget itself must be 100% of shell (header width) */
body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget {
  width: 100% !important;
  max-width: 100% !important;
  --content-width: 100% !important;
}
/* Details sections width = header width (shell already = header) */
body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget .woocommerce-cart-form,
body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget .cart_totals {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Hide Change Address / shipping calculator — not needed */
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .shipping-calculator-form,
body.woocommerce-cart .woocommerce-shipping-destination,
body.mx-cart-body .woocommerce-shipping-calculator {
  display: none !important;
}
body.woocommerce-cart a.shipping-calculator-button {
  display: none !important;
}

/* ---------- Cart table as clean single card (NO double border) ---------- */
.mx-cart-page .mx-cart-widget .woocommerce-cart-form {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  padding: 28px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
  box-sizing: border-box !important;
}

/* Remove Elementor default inner box borders to prevent double box */
.mx-cart-page .mx-cart-widget .e-shop-table,
.mx-cart-page .mx-cart-widget .e-shop-table.e-cart-section,
.mx-cart-page .mx-cart-widget .e-cart-section {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.mx-cart-page .mx-cart-widget .shop_table.cart {
  border: 0 !important;
  border-collapse: collapse !important;
  width: 100%;
  font-family: "Red Hat Display", sans-serif !important;
  background: transparent !important;
  margin: 0 !important;
}

.mx-cart-page .mx-cart-widget .shop_table.cart thead th {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #6b7280 !important;
  padding: 0 10px 12px !important;
  border: 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  background: transparent !important;
  text-align: left !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart thead th:last-child,
.mx-cart-page .mx-cart-widget .shop_table.cart td:last-child {
  text-align: right !important;
}

.mx-cart-page .mx-cart-widget .shop_table.cart tbody td {
  padding: 16px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid #f5f5f7 !important;
  vertical-align: middle !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Product link */
.mx-cart-page .mx-cart-widget .shop_table.cart .product-name a {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #111 !important;
  line-height: 1.35;
  text-decoration: none !important;
  text-align: left !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-name,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-name,
body.woocommerce-cart .shop_table.cart .product-name,
body.woocommerce-cart .shop_table.cart .product-name a,
body.woocommerce-cart .shop_table.cart .product-name * {
  text-align: left !important;
  justify-content: flex-start !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-price bdi,
.mx-cart-page .mx-cart-widget .shop_table.cart .product-subtotal bdi {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111 !important;
}

/* Thumbnail */
.mx-cart-page .mx-cart-widget .shop_table.cart .product-thumbnail img {
  width: 80px !important;
  height: 80px !important;
  object-fit: cover;
  border-radius: var(--mixora-header-radius, 0px) !important;
  background: #f7f7f7;
  display: block;
}

/* Quantity: thumb-friendly stepper */
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  border: 1px solid #e5e7eb !important;
  background: #fff !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  overflow: hidden;
  height: 40px;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty {
  width: 44px !important;
  height: 40px !important;
  border: 0 !important;
  border-left: 1px solid #e5e7eb !important;
  border-right: 1px solid #e5e7eb !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111 !important;
  background: #fff !important;
  padding: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  -moz-appearance: textfield;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty:focus,
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty:active,
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty:focus-visible,
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty:hover {
  outline: none !important;
  box-shadow: none !important;
  border-left: 1px solid #e5e7eb !important;
  border-right: 1px solid #e5e7eb !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity:focus-within {
  outline: none !important;
  box-shadow: none !important;
  border-color: #e5e7eb !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty::-webkit-outer-spin-button,
.mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Remove icon */
.mx-cart-page .mx-cart-widget .shop_table.cart .product-remove a {
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #9ca3af !important;
  font-size: 18px !important;
  border: 1px solid transparent !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  text-decoration: none !important;
  transition: color 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .product-remove a:hover {
  color: #dc2626 !important;
  border-color: #fee2e2 !important;
  background: #fef2f2 !important;
}

/* Coupon + update cart row */
.mx-cart-page .mx-cart-widget .shop_table.cart td.actions {
  padding: 16px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .coupon {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  float: none !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .coupon #coupon_code {
  height: 44px !important;
  min-width: 180px !important;
  border: 1px solid #e5e7eb !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  padding: 0 14px !important;
  font-size: 14px !important;
  background: #fff !important;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .coupon .button,
.mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"] {
  height: 44px !important;
  padding: 0 18px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  border: 1px solid #111 !important;
  background: #fff !important;
  color: #111 !important;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
}
.mx-cart-page .mx-cart-widget .shop_table.cart .coupon .button:hover,
.mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"]:hover {
  background: #111 !important;
  color: #fff !important;
}

/* ---------- Cart totals: clean single card (NO double border) ---------- */
.mx-cart-page .mx-cart-widget .e-cart-totals,
.mx-cart-page .mx-cart-widget .e-cart-totals.e-cart-section {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  padding: 28px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Remove inner border from cart_totals inside e-cart-totals */
.mx-cart-page .mx-cart-widget .cart_totals {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  float: none !important;
}

.mx-cart-page .mx-cart-widget .cart_totals h2 {
  font-family: "Red Hat Display", sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  margin: 0 0 16px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #f1f3f5 !important;
}
.mx-cart-page .mx-cart-widget .cart_totals .shop_table {
  border: 0 !important;
  font-family: "Red Hat Display", sans-serif;
}
.mx-cart-page .mx-cart-widget .cart_totals .shop_table th {
  font-weight: 500 !important;
  color: #6b7280 !important;
  text-align: left !important;
  padding: 10px 0 !important;
  border: 0 !important;
  border-top: 1px solid #f0f0f0 !important;
}
.mx-cart-page .mx-cart-widget .cart_totals .shop_table td {
  text-align: right !important;
  padding: 10px 0 !important;
  border: 0 !important;
  border-top: 1px solid #f0f0f0 !important;
  font-weight: 600 !important;
  color: #111 !important;
}
.mx-cart-page .mx-cart-widget .cart_totals .order-total th,
.mx-cart-page .mx-cart-widget .cart_totals .order-total td {
  font-size: 16px !important;
  font-weight: 800 !important;
  border-top: 1px solid #111 !important;
}

/* Proceed to checkout: sharp black */
.mx-cart-page .mx-cart-widget .wc-proceed-to-checkout {
  padding: 16px 0 0 !important;
}
.mx-cart-page .mx-cart-widget .wc-proceed-to-checkout .checkout-button,
.mx-cart-page .mx-cart-widget .wc-proceed-to-checkout a.checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 54px !important;
  background: #111 !important;
  color: #fff !important;
  border: 1px solid #111 !important;
  border-radius: var(--mixora-header-radius, 0px) !important;
  font-family: "Red Hat Display", sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 6px 20px rgba(17,17,17,0.12);
  transition: background 0.18s ease, transform 0.12s ease;
}
.mx-cart-page .mx-cart-widget .wc-proceed-to-checkout .checkout-button:hover {
  background: #000 !important;
  border-color: #000 !important;
  transform: translateY(-1px);
}

/* /* ==========================================================================
 * MIXORA — Mobile Cart Page Clean Redesign (No double borders, no empty boxes)
 * ========================================================================== */
@media (max-width: 767px) {
  /* Page container clearance for fixed bottom navigation bar */
  body.woocommerce-cart .mx-cart-page .elementor-element.mx-cart-widget,
  body.mx-cart-body .mx-cart-page .elementor-element.mx-cart-widget,
  body.woocommerce-cart .e-cart__container,
  body.mx-cart-body .e-cart__container {
    padding-bottom: 24px !important;
  }

  /* Hide default WooCommerce table header and repetitive pseudo-labels */
  body.woocommerce-cart .shop_table.cart thead,
  body.mx-cart-body .shop_table.cart thead,
  body.woocommerce-cart .shop_table.cart td::before,
  body.mx-cart-body .shop_table.cart td::before {
    display: none !important;
    content: none !important;
  }

  /* 1. Outer Cart Form: Clean Single Card (White bg, subtle 1px border, 0px radius) */
  .mx-cart-page .mx-cart-widget .woocommerce-cart-form {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0px !important;
    padding: 16px 14px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.03) !important;
    box-sizing: border-box !important;
    margin-bottom: 20px !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    margin: 0 !important;
    background: transparent !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart tbody {
    display: block !important;
    width: 100% !important;
  }

  /* 2. Product Row: NO inner box border! Clean divider line between items */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item,
  body.mx-cart-body .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 12px !important;
    row-gap: 6px !important;
    position: relative !important;
    padding: 16px 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #f0f0f3 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item:last-of-type {
    border-bottom: 1px solid #f0f0f3 !important;
    padding-bottom: 16px !important;
  }

  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item td,
  body.mx-cart-body .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item td {
    border: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  /* 2a. Product Thumbnail: Left Column (Row 1 to 4) */
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-thumbnail {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 4 !important;
    position: static !important;
    width: 74px !important;
    height: 74px !important;
    margin: 0 !important;
    display: block !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-thumbnail a {
    display: block !important;
    width: 74px !important;
    height: 74px !important;
    overflow: hidden !important;
    border: 1px solid #f1f2f4 !important;
    border-radius: 0px !important;
    background: #f8fafc !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-thumbnail img {
    width: 74px !important;
    height: 74px !important;
    object-fit: cover !important;
    border-radius: 0px !important;
    display: block !important;
  }

  /* 2b. Product Remove '×': Top Right (Row 1, Col 3 - Dedicated grid cell, NEVER overlaps title) */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item .product-remove,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-remove {
    grid-column: 3 / 4 !important;
    grid-row: 1 / 2 !important;
    position: static !important;
    width: 24px !important;
    height: 24px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    justify-self: end !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    z-index: 2 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-remove a,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-remove a.remove {
    width: 24px !important;
    height: 24px !important;
    font-size: 20px !important;
    line-height: 1 !important;
    color: #94a3b8 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
    padding: 0 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-remove a:hover {
    color: #ef4444 !important;
    background: transparent !important;
  }

  /* 2c. Product Title: Row 1, Col 2 (Proper isolated cell) */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item .product-name,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-name {
    grid-column: 2 / 3 !important;
    grid-row: 1 / 2 !important;
    padding: 0 6px 0 0 !important;
    margin: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    text-align: left !important;
    justify-self: start !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-name a {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: #111827 !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    word-break: break-word !important;
    text-align: left !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-name * {
    text-align: left !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-name a:hover {
    color: #000000 !important;
  }

  /* Variation (e.g. Size: L) */
  .mx-cart-page .mx-cart-widget .shop_table.cart .variation,
  .mx-cart-page .mx-cart-widget .shop_table.cart dl.variation,
  .mx-cart-page .mx-cart-widget .shop_table.cart dl.variation dt,
  .mx-cart-page .mx-cart-widget .shop_table.cart dl.variation dd,
  .mx-cart-page .mx-cart-widget .shop_table.cart dl.variation p {
    font-size: 12px !important;
    color: #64748b !important;
    margin: 3px 0 0 !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    background: transparent !important;
    padding: 0 !important;
    display: block !important;
    text-align: left !important;
  }

  /* 2d. Unit Price: Middle Line (Row 2, Col 2) */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item .product-price,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-price {
    grid-column: 2 / 3 !important;
    grid-row: 2 / 3 !important;
    display: block !important;
    text-align: left !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-price bdi {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #64748b !important;
    text-align: left !important;
  }

  /* 2e. Quantity Stepper: Bottom Left (Row 3, Col 2) */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item .product-quantity,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity {
    grid-column: 2 / 3 !important;
    grid-row: 3 / 4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 2px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity.mixora-qty {
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) 32px !important;
    width: 104px !important;
    height: 34px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 0px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty__btn {
    width: 32px !important;
    height: 32px !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.15s ease !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty__btn:hover:not(:disabled) {
    background: #f1f5f9 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty__btn:disabled {
    opacity: 0.3 !important;
    cursor: not-allowed !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity input.qty {
    width: 100% !important;
    height: 32px !important;
    border: 0 !important;
    border-left: 1px solid #e2e8f0 !important;
    border-right: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #111827 !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    -moz-appearance: textfield;
  }

  /* 2f. Subtotal: Bottom Right (Row 3, Col 3) — Clean bold text aligned to bottom */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr.cart_item .product-subtotal,
  .mx-cart-page .mx-cart-widget .shop_table.cart .product-subtotal {
    grid-column: 3 / 4 !important;
    grid-row: 3 / 4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    align-self: flex-end !important;
    background: transparent !important;
    padding: 0 0 6px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .product-subtotal bdi {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    letter-spacing: -0.01em !important;
  }

  /* 3. Actions Row (Update Cart): Clean row, NO second border */
  body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr:not(.cart_item),
  body.mx-cart-body .mx-cart-page .mx-cart-widget .shop_table.cart tbody tr:not(.cart_item) {
    display: block !important;
    position: static !important;
    padding: 14px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart td.actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"] {
    width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    border-radius: 0px !important;
    background: #f8fafc !important;
    color: #475569 !important;
    border: 1px solid #e2e8f0 !important;
    transition: all 0.15s ease !important;
    cursor: pointer !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"]:hover:not(:disabled) {
    background: #111827 !important;
    color: #ffffff !important;
    border-color: #111827 !important;
  }

  .mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"]:disabled,
  .mx-cart-page .mx-cart-widget .shop_table.cart .button[name="update_cart"][aria-disabled="true"] {
    opacity: 0.55 !important;
    border-color: #f1f5f9 !important;
    background: #f8fafc !important;
    color: #94a3b8 !important;
    cursor: default !important;
  }

  /* 4. Cart Totals Card: Clean White Card (Matching single card design) */
  .mx-cart-page .mx-cart-widget .e-cart-totals,
  .mx-cart-page .mx-cart-widget .e-cart-totals.e-cart-section {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0px !important;
    padding: 20px 16px !important;
    margin-bottom: 16px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.03) !important;
    box-sizing: border-box !important;
  }

  .mx-cart-page .mx-cart-widget .cart_totals {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mx-cart-page .mx-cart-widget .cart_totals h2 {
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #111827 !important;
    margin: 0 0 14px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #f1f2f4 !important;
  }

  /* 5. Checkout Button: Sharp 0px Black Button */
  .mx-cart-page .mx-cart-widget .wc-proceed-to-checkout {
    padding: 16px 0 0 !important;
  }

  .mx-cart-page .mx-cart-widget .wc-proceed-to-checkout .checkout-button,
  .mx-cart-page .mx-cart-widget .wc-proceed-to-checkout a.checkout-button {
    min-height: 48px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    border-radius: 0px !important;
    background: #111827 !important;
    color: #ffffff !important;
    border: 1px solid #111827 !important;
    box-shadow: 0 4px 14px rgba(17, 24, 39, 0.1) !important;
  }
}

/* Compact gap above footer on Cart page */
body.woocommerce-cart .elementor-location-footer,
body.mx-cart-body .elementor-location-footer {
  margin-top: 24px !important;
}
@media (max-width: 767px) {
  body.woocommerce-cart .elementor-location-footer,
  body.mx-cart-body .elementor-location-footer {
    margin-top: 16px !important;
  }
}

/* ==========================================================================
   MIXORA — Cart quantity stepper sharp square corners (0 radius)
   --------------------------------------------------------------------------
   Requirement: cart page quantity box and +/- buttons must be square
   (border-radius: 0), keep spacing/size/layout unchanged.
   Covers JS-injected .mixora-qty wrapper (site-polish.js) for both
   desktop and mobile, and overrides WooCommerce default 999px / var radius.
   ========================================================================== */
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .quantity.mixora-qty,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity input.qty,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .qty,
.woocommerce-cart .shop_table.cart .product-quantity .quantity,
.woocommerce-cart .shop_table.cart .product-quantity .quantity.mixora-qty,
.woocommerce-cart .shop_table.cart .product-quantity .mixora-qty__btn,
.woocommerce-cart .shop_table.cart .product-quantity .mixora-qty .mixora-qty__btn {
  border-radius: 0 !important;
}
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty__btn,
body.woocommerce-cart .mx-cart-page .mx-cart-widget .shop_table.cart .product-quantity .mixora-qty .mixora-qty__btn,
.woocommerce-cart .shop_table.cart .product-quantity .mixora-qty__btn,
.woocommerce-cart form.woocommerce-cart-form .quantity.mixora-qty,
.woocommerce-cart form.woocommerce-cart-form .quantity.mixora-qty .mixora-qty__btn,
.woocommerce-cart form.woocommerce-cart-form .quantity.mixora-qty input.qty {
  border-radius: 0 !important;
}
