/* Mangaly modern cart UI (loaded last on cart page) */

body.woocommerce-cart .mangaly-cart-page,
body.mangaly-cart-page .mangaly-cart-page {
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  width: 100% !important;
}

body.woocommerce-cart .mangaly-cart-form,
body.mangaly-cart-page .mangaly-cart-form {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
}

body.woocommerce-cart .mangaly-cart-layout,
body.mangaly-cart-page .mangaly-cart-layout {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

body.woocommerce-cart .mangaly-cart-items,
body.mangaly-cart-page .mangaly-cart-items {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 110px minmax(0, 1fr) auto !important;
  grid-template-areas:
    "media title price"
    "media qty subtotal" !important;
  column-gap: 16px !important;
  row-gap: 10px !important;
  align-items: center !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  border: 1px solid #e8edf5 !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
}

body.woocommerce-cart .mangaly-cart-item-media,
body.mangaly-cart-page .mangaly-cart-item-media {
  grid-area: media !important;
  margin-left: 0 !important;
}

body.woocommerce-cart .mangaly-cart-item-media img,
body.mangaly-cart-page .mangaly-cart-item-media img {
  width: 104px !important;
  height: 104px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
}

body.woocommerce-cart .mangaly-cart-item-main,
body.mangaly-cart-page .mangaly-cart-item-main {
  display: contents !important;
}

body.woocommerce-cart .mangaly-cart-item-header,
body.mangaly-cart-page .mangaly-cart-item-header {
  display: contents !important;
}

body.woocommerce-cart .mangaly-cart-item-title-wrap,
body.mangaly-cart-page .mangaly-cart-item-title-wrap {
  grid-area: title !important;
  min-width: 0 !important;
}

body.woocommerce-cart .mangaly-cart-item-title-link,
body.mangaly-cart-page .mangaly-cart-item-title-link {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  text-decoration: none !important;
}

body.woocommerce-cart .mangaly-cart-item-title-link:hover,
body.mangaly-cart-page .mangaly-cart-item-title-link:hover {
  color: #ea580c !important;
}

body.woocommerce-cart .mangaly-cart-item-price,
body.mangaly-cart-page .mangaly-cart-item-price {
  grid-area: price !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .mangaly-cart-item-footer,
body.mangaly-cart-page .mangaly-cart-item-footer {
  display: contents !important;
}

body.woocommerce-cart .mangaly-qty-control,
body.mangaly-cart-page .mangaly-qty-control {
  grid-area: qty !important;
  justify-self: start !important;
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  border: 1px solid #dbe5f3 !important;
  padding: 3px !important;
}

body.woocommerce-cart .mangaly-qty-control-btn,
body.mangaly-cart-page .mangaly-qty-control-btn {
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #1f2937 !important;
  font-size: 18px !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
}

body.woocommerce-cart .mangaly-qty-control-btn:hover,
body.mangaly-cart-page .mangaly-qty-control-btn:hover {
  background: #eef2ff !important;
  color: #ea580c !important;
}

body.woocommerce-cart .mangaly-qty-input,
body.mangaly-cart-page .mangaly-qty-input {
  width: 56px !important;
  border: 0 !important;
  background: transparent !important;
  text-align: center !important;
  font-weight: 700 !important;
  color: #111827 !important;
  -moz-appearance: textfield !important;
}

body.woocommerce-cart .mangaly-qty-input::-webkit-outer-spin-button,
body.woocommerce-cart .mangaly-qty-input::-webkit-inner-spin-button,
body.mangaly-cart-page .mangaly-qty-input::-webkit-outer-spin-button,
body.mangaly-cart-page .mangaly-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

body.woocommerce-cart .mangaly-cart-item-subtotal,
body.mangaly-cart-page .mangaly-cart-item-subtotal {
  grid-area: subtotal !important;
  justify-self: end !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .mangaly-cart-item-remove,
body.mangaly-cart-page .mangaly-cart-item-remove {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 999px !important;
  background: #fff1f2 !important;
  color: #e11d48 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row {
  margin-top: 10px !important;
  padding: 14px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  border: 1px solid #e8edf5 !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05) !important;
}

body.woocommerce-cart .cart-collaterals,
body.mangaly-cart-page .cart-collaterals {
  width: 100% !important;
  max-width: none !important;
  margin: 16px 0 0 !important;
}

body.woocommerce-cart .mangaly-cart-update .mangaly-update-cart-btn,
body.mangaly-cart-page .mangaly-cart-update .mangaly-update-cart-btn {
  border-radius: 999px !important;
  background: #f8fafc !important;
  border: 1px solid #dbe5f3 !important;
  color: #0f172a !important;
  font-weight: 700 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals,
body.mangaly-cart-page .cart-collaterals .cart_totals {
  border-radius: 16px !important;
  border: 1px solid #e8edf5 !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08) !important;
  padding: 20px !important;
}

body.woocommerce-cart .cart_totals h2,
body.mangaly-cart-page .cart_totals h2 {
  font-size: 20px !important;
  margin-bottom: 12px !important;
}

body.woocommerce-cart .cart_totals ul#shipping_method > li,
body.mangaly-cart-page .cart_totals ul#shipping_method > li {
  border-radius: 12px !important;
  padding: 12px !important;
  border: 1px solid #e5e7eb !important;
  background: #ffffff !important;
}

body.woocommerce-cart .cart_totals ul#shipping_method > li:has(input[type="radio"]:checked),
body.mangaly-cart-page .cart_totals ul#shipping_method > li:has(input[type="radio"]:checked) {
  background: #fff7ed !important;
  border-color: #fdba74 !important;
}

body.woocommerce-cart .cart_totals .order-total td,
body.mangaly-cart-page .cart_totals .order-total td {
  font-size: 32px !important;
  font-weight: 900 !important;
}

body.woocommerce-cart .cart_totals .checkout-button,
body.mangaly-cart-page .cart_totals .checkout-button {
  width: 100% !important;
  min-height: 56px !important;
  border: none !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #f97316 0%, #ea580c 100%) !important;
  box-shadow: 0 10px 24px rgba(234, 88, 12, 0.35) !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 800 !important;
}

@media (max-width: 760px) {
  body.woocommerce-cart .mangaly-cart-page,
  body.mangaly-cart-page .mangaly-cart-page {
    padding: 0 !important;
    border-radius: 0 !important;
  }

  body.woocommerce-cart .mangaly-cart-item,
  body.mangaly-cart-page .mangaly-cart-item {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    grid-template-areas:
      "media title"
      "media price"
      "qty subtotal" !important;
    padding: 12px !important;
  }

  body.woocommerce-cart .mangaly-cart-item-media img,
  body.mangaly-cart-page .mangaly-cart-item-media img {
    width: 84px !important;
    height: 84px !important;
  }

  body.woocommerce-cart .mangaly-cart-item-title-link,
  body.mangaly-cart-page .mangaly-cart-item-title-link {
    font-size: 15px !important;
  }

  body.woocommerce-cart .mangaly-cart-item-price,
  body.mangaly-cart-page .mangaly-cart-item-price {
    text-align: left !important;
    font-size: 16px !important;
  }

  body.woocommerce-cart .mangaly-cart-item-subtotal,
  body.mangaly-cart-page .mangaly-cart-item-subtotal {
    font-size: 22px !important;
  }

  /* Mobile alignment for totals card */
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table {
    table-layout: fixed !important;
    width: 100% !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table tr {
    display: table-row !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th,
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table th,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table td {
    display: table-cell !important;
    vertical-align: top !important;
    padding: 12px 10px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table th {
    width: 40% !important;
    color: #475569 !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td,
  body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table td {
    width: 60% !important;
    text-align: right !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals tr.shipping th,
  body.mangaly-cart-page .cart-collaterals .cart_totals tr.shipping th {
    display: table-cell !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals tr.shipping td,
  body.mangaly-cart-page .cart-collaterals .cart_totals tr.shipping td {
    display: table-cell !important;
    text-align: left !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals ul#shipping_method,
  body.mangaly-cart-page .cart-collaterals .cart_totals ul#shipping_method {
    gap: 10px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals ul#shipping_method > li,
  body.mangaly-cart-page .cart-collaterals .cart_totals ul#shipping_method > li {
    padding: 10px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals ul#shipping_method > li > label,
  body.mangaly-cart-page .cart-collaterals .cart_totals ul#shipping_method > li > label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    text-align: left !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals ul#shipping_method .amount,
  body.woocommerce-cart .cart-collaterals .cart_totals ul#shipping_method .woocommerce-Price-amount,
  body.mangaly-cart-page .cart-collaterals .cart_totals ul#shipping_method .amount,
  body.mangaly-cart-page .cart-collaterals .cart_totals ul#shipping_method .woocommerce-Price-amount {
    margin-left: auto !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals .woocommerce-shipping-destination,
  body.mangaly-cart-page .cart-collaterals .cart_totals .woocommerce-shipping-destination {
    margin-top: 8px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }
}

/* Final no-gray cleanup for cart page */
body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item,
body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row,
body.woocommerce-cart .cart-collaterals .cart_totals,
body.mangaly-cart-page .cart-collaterals .cart_totals {
  border: 0 !important;
  background: #ffffff !important;
}

body.woocommerce-cart .mangaly-cart-item-media img,
body.mangaly-cart-page .mangaly-cart-item-media img,
body.woocommerce-cart .mangaly-qty-control,
body.mangaly-cart-page .mangaly-qty-control,
body.woocommerce-cart .mangaly-cart-update .mangaly-update-cart-btn,
body.mangaly-cart-page .mangaly-cart-update .mangaly-update-cart-btn {
  background: #ffffff !important;
}

/* Final edge cleanup: remove thin right-side frame artifacts */
body.woocommerce-cart .site-main .container,
body.mangaly-cart-page .site-main .container,
body.woocommerce-cart .mangaly-cart-wrap,
body.mangaly-cart-page .mangaly-cart-wrap,
body.woocommerce-cart .mangaly-cart-page,
body.mangaly-cart-page .mangaly-cart-page,
body.woocommerce-cart form.woocommerce-cart-form,
body.mangaly-cart-page form.woocommerce-cart-form {
  border: 0 !important;
  outline: 0 !important;
}

body.woocommerce-cart .mangaly-cart-wrap,
body.mangaly-cart-page .mangaly-cart-wrap,
body.woocommerce-cart form.woocommerce-cart-form,
body.mangaly-cart-page form.woocommerce-cart-form {
  overflow: hidden !important;
}

/* Unified cart look: same size and visual style for all blocks */
body.woocommerce-cart .mangaly-cart-page,
body.mangaly-cart-page .mangaly-cart-page {
  --mangaly-cart-surface-radius: 18px;
  --mangaly-cart-surface-shadow: 0 10px 26px rgba(15, 23, 42, 0.07);
  --mangaly-cart-surface-bg: #ffffff;
}

body.woocommerce-cart .mangaly-cart-items,
body.mangaly-cart-page .mangaly-cart-items {
  gap: 14px !important;
}

body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item,
body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row,
body.woocommerce-cart .cart-collaterals .cart_totals,
body.mangaly-cart-page .cart-collaterals .cart_totals {
  width: 100% !important;
  border-radius: var(--mangaly-cart-surface-radius) !important;
  background: var(--mangaly-cart-surface-bg) !important;
  border: 0 !important;
  box-shadow: var(--mangaly-cart-surface-shadow) !important;
}

body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item {
  padding: 18px !important;
}

body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row {
  margin-top: 0 !important;
  padding: 16px 18px !important;
}

body.woocommerce-cart form.woocommerce-cart-form .mangaly-cart-collaterals,
body.mangaly-cart-page form.woocommerce-cart-form .mangaly-cart-collaterals {
  margin-top: 14px !important;
  padding: 0 !important;
  border-top: 0 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals,
body.mangaly-cart-page .cart-collaterals .cart_totals {
  padding: 18px !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table,
body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table {
  border-radius: 12px !important;
  box-shadow: inset 0 0 0 1px #eef3f8 !important;
}

@media (max-width: 760px) {
  body.woocommerce-cart .mangaly-cart-item,
  body.mangaly-cart-page .mangaly-cart-item,
  body.woocommerce-cart .mangaly-cart-actions-row,
  body.mangaly-cart-page .mangaly-cart-actions-row,
  body.woocommerce-cart .cart-collaterals .cart_totals,
  body.mangaly-cart-page .cart-collaterals .cart_totals {
    border-radius: 14px !important;
  }

  body.woocommerce-cart .mangaly-cart-item,
  body.mangaly-cart-page .mangaly-cart-item {
    padding: 14px !important;
  }

  body.woocommerce-cart .mangaly-cart-actions-row,
  body.mangaly-cart-page .mangaly-cart-actions-row,
  body.woocommerce-cart .cart-collaterals .cart_totals,
  body.mangaly-cart-page .cart-collaterals .cart_totals {
    padding: 14px !important;
  }
}

/* Seamless cart mode: remove visual seams between blocks */
body.woocommerce-cart form.woocommerce-cart-form,
body.mangaly-cart-page form.woocommerce-cart-form {
  background: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08) !important;
  overflow: hidden !important;
}

body.woocommerce-cart .mangaly-cart-items,
body.mangaly-cart-page .mangaly-cart-items {
  gap: 0 !important;
}

body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item,
body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row,
body.woocommerce-cart .cart-collaterals .cart_totals,
body.mangaly-cart-page .cart-collaterals .cart_totals {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-cart .mangaly-cart-item,
body.mangaly-cart-page .mangaly-cart-item,
body.woocommerce-cart .mangaly-cart-actions-row,
body.mangaly-cart-page .mangaly-cart-actions-row {
  border-bottom: 1px solid #eef3f8 !important;
}

body.woocommerce-cart .mangaly-cart-collaterals,
body.mangaly-cart-page .mangaly-cart-collaterals {
  margin-top: 0 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table,
body.mangaly-cart-page .cart-collaterals .cart_totals table.shop_table {
  box-shadow: none !important;
}
