/* =========================================================
   DIG — Woo Cart (native) — 2 Columns Clean
   Replace ALL your old woo-cart.css with this file.
   ========================================================= */

.dig-cart-page {
  --dig-bg: #050a07;
  --dig-text: rgba(245, 250, 246, 0.92);
  --dig-muted: rgba(245, 250, 246, 0.62);
  --dig-line: rgba(45, 255, 111, 0.18);
  --dig-line2: rgba(255, 255, 255, 0.1);
  --dig-accent: #2dff6f;

  background: var(--dig-bg);
  color: var(--dig-text);
}

/* container */
.dig-cart-page .site-main,
.dig-cart-page .dig-cart-main {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 120px 16px 60px !important;
  width: 100% !important;
}

@media (max-width: 600px) {
  .dig-cart-page .site-main,
  .dig-cart-page .dig-cart-main {
    padding-top: 20px !important;
  }
}

/* title */
.dig-cart-page .woocommerce-cart h1,
.dig-cart-page .woocommerce-cart .entry-title {
  color: var(--dig-text) !important;
  font-weight: 900 !important;
  margin: 0 0 16px !important;
}

/* =========================================================
   2 Column Layout: form (left) + totals (right)
   ========================================================= */
.dig-cart-page.woocommerce-cart .woocommerce,
.dig-cart-page .woocommerce-cart .woocommerce {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

@media (min-width: 992px) {
  .dig-cart-page.woocommerce-cart .woocommerce,
  .dig-cart-page .woocommerce-cart .woocommerce {
    grid-template-columns: minmax(0, 1fr) 420px !important; /* 2 kolom */
  }
}

.dig-cart-page .woocommerce-cart-form {
  min-width: 0 !important; /* penting: cegah overflow table */
}

.dig-cart-page .cart-collaterals {
  min-width: 0 !important;
}

/* =========================================================
   Cart table -> Card list
   ========================================================= */
.dig-cart-page table.shop_table {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 !important;
}

.dig-cart-page table.shop_table thead {
  display: none !important;
}

/* ilangin label responsive bawaan Woo (data-title) */
.dig-cart-page table.shop_table td::before {
  display: none !important;
  content: none !important;
}

/* tbody jadi list */
.dig-cart-page table.shop_table tbody {
  display: grid !important;
  gap: 12px !important;
}

/* reset td default */
.dig-cart-page table.shop_table td {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  vertical-align: top !important;
}

/* tiap cart item jadi card grid */
.dig-cart-page table.shop_table tr.cart_item {
  display: grid !important;
  grid-template-columns: 44px 96px minmax(0, 1fr) 170px;
  grid-template-areas:
    "remove thumb name subtotal"
    "remove thumb price quantity";
  gap: 12px 14px;
  align-items: start;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.02);
}

/* mapping area */
.dig-cart-page tr.cart_item td.product-remove {
  grid-area: remove;
}
.dig-cart-page tr.cart_item td.product-thumbnail {
  grid-area: thumb;
}
.dig-cart-page tr.cart_item td.product-name {
  grid-area: name;
  min-width: 0;
}
.dig-cart-page tr.cart_item td.product-price {
  grid-area: price;
}
.dig-cart-page tr.cart_item td.product-quantity {
  grid-area: quantity;
  justify-self: end;
}
.dig-cart-page tr.cart_item td.product-subtotal {
  grid-area: subtotal;
  justify-self: end;
}

@media (max-width: 768px) {
  .dig-cart-page table.shop_table tr.cart_item {
    grid-template-columns: 44px 76px minmax(0, 1fr);
    grid-template-areas:
      "remove thumb name"
      "remove thumb price"
      "remove thumb quantity"
      "remove thumb subtotal";
  }
  .dig-cart-page tr.cart_item td.product-subtotal,
  .dig-cart-page tr.cart_item td.product-quantity {
    justify-self: start;
  }
}

/* =========================================================
   Remove button (merah & rapi)
   ========================================================= */
.dig-cart-page td.product-remove {
  display: flex !important;
  align-items: start !important;
  justify-content: start !important;
}

.dig-cart-page a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 40px !important;
  height: 40px !important;
  border-radius: 12px !important;

  line-height: 1 !important;
  text-indent: 0 !important;

  border: 1px solid rgba(255, 77, 77, 0.75) !important;
  background: rgba(255, 77, 77, 0.12) !important;
  color: #ff4d4d !important;

  font-weight: 900 !important;
  font-size: 20px !important;
}
.dig-cart-page a.remove:hover {
  background: rgba(255, 77, 77, 0.18) !important;
  border-color: rgba(255, 77, 77, 0.95) !important;
}

/* =========================================================
   Thumbnail
   ========================================================= */
.dig-cart-page td.product-thumbnail {
  width: 96px !important;
}
.dig-cart-page td.product-thumbnail a {
  display: block !important;
}
.dig-cart-page td.product-thumbnail img {
  width: 96px !important;
  height: 96px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  display: block !important;
}

/* =========================================================
   Name + variation
   ========================================================= */
.dig-cart-page td.product-name a {
  color: var(--dig-text) !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  display: inline-block;
  max-width: 100%;
}
.dig-cart-page td.product-name a:hover {
  color: var(--dig-accent) !important;
}

/* variation list rapih */
.dig-cart-page td.product-name dl.variation {
  margin: 8px 0 0 !important;
  color: rgba(245, 250, 246, 0.6) !important;
  font-size: 13px !important;
}
.dig-cart-page td.product-name dl.variation dt,
.dig-cart-page td.product-name dl.variation dd {
  margin: 0 !important;
}
.dig-cart-page td.product-name dl.variation dt {
  font-weight: 800 !important;
  opacity: 0.9;
}
.dig-cart-page td.product-name dl.variation dd {
  margin-bottom: 6px !important;
}

/* =========================================================
   Price / Subtotal
   ========================================================= */
.dig-cart-page td.product-price {
  color: rgba(245, 250, 246, 0.72) !important;
  font-weight: 800 !important;
}
.dig-cart-page td.product-price .amount {
  color: rgba(245, 250, 246, 0.78) !important;
}

.dig-cart-page td.product-subtotal {
  font-weight: 900 !important;
}
.dig-cart-page td.product-subtotal .amount {
  color: var(--dig-accent) !important;
  font-weight: 900 !important;
}

/* =========================================================
   Quantity
   ========================================================= */
.dig-cart-page td.product-quantity .quantity {
  height: 46px !important;
  display: inline-flex !important;
  align-items: stretch !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

.dig-cart-page td.product-quantity input.qty {
  width: 70px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--dig-text) !important;
  text-align: center !important;
  outline: none !important;
}

/* hide qty for virtual items */
.dig-cart-page tr.dig-cart-virtual td.product-quantity {
  display: none !important;
}

/* =========================================================
   Actions row (coupon + buttons) — full width, rapi
   ========================================================= */
.dig-cart-page table.shop_table tr:last-child td.actions {
  grid-column: 1 / -1 !important;
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* actions wrapper */
.dig-cart-page td.actions {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 6px !important;
}

/* coupon */
.dig-cart-page td.actions .coupon {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  flex: 1 1 420px;
  min-width: 0;
}

.dig-cart-page td.actions .coupon input.input-text {
  height: 44px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: var(--dig-text) !important;
  padding: 0 12px !important;
  outline: none !important;

  width: min(340px, 100%) !important; /* biar gak kepotong jadi "Kode ki" */
}

.dig-cart-page td.actions button.button,
.dig-cart-page td.actions button[name="update_cart"] {
  height: 44px !important;
  border-radius: 999px !important;
  padding: 0 16px !important;
  font-weight: 900 !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: rgba(245, 250, 246, 0.9) !important;
}

.dig-cart-page td.actions button.button:hover {
  border-color: rgba(45, 255, 111, 0.35) !important;
  background: rgba(45, 255, 111, 0.1) !important;
}

/* update cart ke kanan di desktop */
@media (min-width: 992px) {
  .dig-cart-page td.actions button[name="update_cart"] {
    margin-left: auto !important;
  }
}

/* =========================================================
   Totals (right column)
   ========================================================= */
.dig-cart-page .cart-collaterals {
  position: sticky;
  top: 120px;
}

.dig-cart-page .cart_totals {
  width: 100% !important;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.02);
  padding: 16px;
}

.dig-cart-page .cart_totals h2 {
  margin: 0 0 12px !important;
  color: var(--dig-text) !important;
  font-weight: 900 !important;
  font-size: 28px !important;
}

.dig-cart-page .cart_totals table {
  width: 100% !important;
  border: 0 !important;
  margin: 0 0 12px !important;
}

.dig-cart-page .cart_totals th,
.dig-cart-page .cart_totals td {
  border: 0 !important;
  padding: 10px 0 !important;
  color: rgba(245, 250, 246, 0.8) !important;
}

.dig-cart-page .cart_totals .order-total td {
  color: var(--dig-accent) !important;
  font-weight: 900 !important;
}

.dig-cart-page .wc-proceed-to-checkout {
  margin: 0 !important;
  padding: 0 !important;
}

.dig-cart-page .wc-proceed-to-checkout a.checkout-button {
  width: 100% !important;
  border-radius: 999px !important;
  height: 52px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-weight: 900 !important;
  background: var(--dig-accent) !important;
  color: #062012 !important;
  border: 1px solid rgba(45, 255, 111, 0.7) !important;
}

/* =========================================================
   Notices (biar nyatu)
   ========================================================= */
.dig-cart-page .woocommerce-message,
.dig-cart-page .woocommerce-info,
.dig-cart-page .woocommerce-error {
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: rgba(245, 250, 246, 0.9) !important;
}

/* =========================================================
   Small fixes for theme conflicts
   ========================================================= */
.dig-cart-page .woocommerce-cart-form__contents {
  margin: 0 !important;
}

.dig-cart-page .woocommerce-cart-form__contents tr {
  box-shadow: none !important;
}

.woocommerce .cart-collaterals::after,
.woocommerce .cart-collaterals::before,
.woocommerce-page .cart-collaterals::after,
.woocommerce-page .cart-collaterals::before {
  display: none !important;
}
/* =========================================================
   PATCH — Cart Totals Shipping (Biteship) clean
   Paste at VERY BOTTOM of woo-cart.css
   ========================================================= */

.dig-cart-page .cart_totals .shop_table {
  background: transparent !important;
}

/* row spacing dalam totals */
.dig-cart-page .cart_totals .shop_table tr th,
.dig-cart-page .cart_totals .shop_table tr td {
  vertical-align: top !important;
}

/* bikin subtotal/total lebih “rapi” */
.dig-cart-page .cart_totals .shop_table tr.cart-subtotal td,
.dig-cart-page .cart_totals .shop_table tr.order-total td {
  text-align: right !important;
}

/* ===== Shipping block ===== */
.dig-cart-page .cart_totals tr.woocommerce-shipping-totals td {
  padding-top: 12px !important;
}

/* list metode shipping */
.dig-cart-page .cart_totals #shipping_method,
.dig-cart-page .cart_totals ul.woocommerce-shipping-methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 8px 0 10px !important;

  display: grid !important;
  gap: 10px !important;
}

/* tiap item shipping jadi card kecil */
.dig-cart-page .cart_totals ul.woocommerce-shipping-methods li {
  margin: 0 !important;
  padding: 10px 12px !important;

  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.03) !important;

  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px !important;
  align-items: start !important;
}

/* radio */
.dig-cart-page
  .cart_totals
  ul.woocommerce-shipping-methods
  input.shipping_method {
  margin-top: 2px !important;
  accent-color: var(--dig-accent);
}

/* label shipping: bikin text wrap rapi */
.dig-cart-page .cart_totals ul.woocommerce-shipping-methods label {
  margin: 0 !important;
  color: rgba(245, 250, 246, 0.86) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
}

/* harga shipping: hijau */
.dig-cart-page .cart_totals ul.woocommerce-shipping-methods label .amount {
  color: var(--dig-accent) !important;
  font-weight: 900 !important;
}

/* destination text */
.dig-cart-page .cart_totals .woocommerce-shipping-destination {
  margin: 10px 0 12px !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.02) !important;
  color: rgba(245, 250, 246, 0.7) !important;
  line-height: 1.5 !important;
}
.dig-cart-page .cart_totals .woocommerce-shipping-destination strong {
  color: rgba(245, 250, 246, 0.88) !important;
}

/* ===== Shipping calculator ===== */
.dig-cart-page .cart_totals form.woocommerce-shipping-calculator {
  margin: 0 !important;
}

/* tombol "Ubah alamat" */
.dig-cart-page .cart_totals a.shipping-calculator-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 40px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: rgba(245, 250, 246, 0.88) !important;

  text-decoration: none !important;
  font-weight: 900 !important;
  margin: 2px 0 10px !important;
}
.dig-cart-page .cart_totals a.shipping-calculator-button:hover {
  border-color: rgba(45, 255, 111, 0.35) !important;
  background: rgba(45, 255, 111, 0.1) !important;
}

/* form section */
.dig-cart-page .cart_totals .shipping-calculator-form {
  margin-top: 10px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.02) !important;
}

/* field wrapper */
.dig-cart-page .cart_totals .shipping-calculator-form .form-row {
  margin: 0 0 10px !important;
}
.dig-cart-page .cart_totals .shipping-calculator-form label {
  display: block !important;
  margin: 0 0 6px !important;
  color: rgba(245, 250, 246, 0.8) !important;
  font-weight: 800 !important;
  font-size: 13px !important;
}

/* input/select */
.dig-cart-page .cart_totals .shipping-calculator-form .input-text,
.dig-cart-page .cart_totals .shipping-calculator-form select {
  width: 100% !important;
  height: 44px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: rgba(245, 250, 246, 0.92) !important;
  padding: 0 12px !important;
  outline: none !important;
}

/* select2 inside totals */
.dig-cart-page .cart_totals .select2-container {
  width: 100% !important;
}
.dig-cart-page .cart_totals .select2-container .select2-selection--single {
  height: 44px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  display: flex !important;
  align-items: center !important;
}
.dig-cart-page .cart_totals .select2-container .select2-selection__rendered {
  color: rgba(245, 250, 246, 0.92) !important;
  padding: 0 12px !important;
}
.dig-cart-page .cart_totals .select2-container .select2-selection__arrow {
  height: 44px !important;
}

/* tombol perbarui shipping */
.dig-cart-page .cart_totals .shipping-calculator-form button.button {
  width: 100% !important;
  height: 44px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: rgba(245, 250, 246, 0.9) !important;
}
.dig-cart-page .cart_totals .shipping-calculator-form button.button:hover {
  border-color: rgba(45, 255, 111, 0.35) !important;
  background: rgba(45, 255, 111, 0.1) !important;
}

/* supaya di mobile totals gak terlalu nempel */
@media (max-width: 991px) {
  .dig-cart-page .cart-collaterals {
    position: static !important;
    top: auto !important;
  }
}
.woocommerce-shipping-totals.shipping {
  display: flex;
  flex-direction: column;
}
tr.order-total,
tr.cart-subtotal {
  display: flex;
  align-items: center;
}
.cart_totals th {
  background: none !important;
}
