/* APPARELLY BLANK — V58 Clean Cart Reset */

/* CART PAGE FOUNDATION */
body.woocommerce-cart {
  background: #080808 !important;
  color: #efe8d8 !important;
}

body.woocommerce-cart .entry-header,
body.woocommerce-cart .page-title,
body.woocommerce-cart .hero-section {
  display: none !important;
}

body.logged-in.woocommerce-cart .ablk-cart-v51 {
  padding-top: clamp(96px, 9vw, 150px) !important;
}

body.woocommerce-cart .ablk-cart-v51 {
  width: min(100% - 28px, 1320px) !important;
  margin: 0 auto !important;
  padding-bottom: clamp(90px, 10vw, 150px) !important;
}

/* HERO */
body.woocommerce-cart .ablk-v51-cart-hero {
  min-height: clamp(330px, 42vw, 520px) !important;
  display: grid !important;
  align-content: end !important;
  gap: 18px !important;
  padding: clamp(24px, 5vw, 62px) !important;
  border: 1px solid rgba(239,232,216,.14) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(243,196,0,.18), transparent 32%),
    radial-gradient(circle at 10% 76%, rgba(31,107,67,.20), transparent 36%),
    linear-gradient(135deg, #131313, #070707 70%) !important;
  box-shadow: 0 28px 90px rgba(0,0,0,.26) !important;
}

body.woocommerce-cart .ablk-v48-kicker {
  margin: 0 !important;
  color: #f3c400 !important;
  font-size: .76rem !important;
  font-weight: 950 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .ablk-cart-v51 h1 {
  max-width: 980px !important;
  margin: 0 !important;
  color: #efe8d8 !important;
  font-family: Impact, Haettenschweiler, "Arial Black", system-ui, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: -.045em !important;
  font-size: clamp(3.2rem, 8vw, 8rem) !important;
  line-height: .84 !important;
}

body.woocommerce-cart .ablk-v48-lede {
  max-width: 820px !important;
  margin: 0 !important;
  color: rgba(239,232,216,.78) !important;
  font-size: clamp(1rem, 1.2vw, 1.15rem) !important;
  line-height: 1.55 !important;
}

/* TRUST CARDS */
body.woocommerce-cart .ablk-v51-cart-trust {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 18px 0 !important;
}

body.woocommerce-cart .ablk-v51-trust-card {
  padding: 18px !important;
  border: 1px solid rgba(239,232,216,.14) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(135deg, rgba(239,232,216,.06), rgba(239,232,216,.015)),
    #101014 !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.22) !important;
}

body.woocommerce-cart .ablk-v51-trust-card h2 {
  margin: 0 0 8px !important;
  color: #f3c400 !important;
  font-size: .76rem !important;
  font-weight: 950 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .ablk-v51-trust-card p {
  margin: 0 !important;
  color: rgba(239,232,216,.72) !important;
  line-height: 1.5 !important;
}

/* CART SHELL */
body.woocommerce-cart .ablk-v51-cart-shell {
  margin-top: 18px !important;
  padding: clamp(16px, 2.6vw, 34px) !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  border: 1px solid rgba(239,232,216,.14) !important;
  border-radius: 24px !important;
  background:
    linear-gradient(135deg, rgba(239,232,216,.05), rgba(239,232,216,.015)),
    #101014 !important;
  box-shadow: 0 28px 90px rgba(0,0,0,.26) !important;
}

/* IMPORTANT: stable single-column WooCommerce layout */
body.woocommerce-cart .ablk-v51-cart-shell .woocommerce,
body.woocommerce-cart .ablk-v51-cart-shell .woocommerce-cart-form,
body.woocommerce-cart .ablk-v51-cart-shell .cart-collaterals,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals {
  display: block !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  position: static !important;
  transform: none !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .woocommerce-cart-form {
  margin-bottom: 22px !important;
}

/* TABLES */
body.woocommerce-cart .ablk-v51-cart-shell table.shop_table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid rgba(239,232,216,.14) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, rgba(239,232,216,.045), rgba(239,232,216,.015)),
    #0d0d10 !important;
}

body.woocommerce-cart .ablk-v51-cart-shell table.shop_table th,
body.woocommerce-cart .ablk-v51-cart-shell table.shop_table td,
body.woocommerce-cart .ablk-v51-cart-shell table.shop_table span,
body.woocommerce-cart .ablk-v51-cart-shell table.shop_table a {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
}

body.woocommerce-cart .ablk-v51-cart-shell table.shop_table th {
  padding: 16px !important;
  color: #efe8d8 !important;
  font-size: .72rem !important;
  font-weight: 950 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  background: rgba(239,232,216,.06) !important;
}

body.woocommerce-cart .ablk-v51-cart-shell table.shop_table td {
  padding: 16px !important;
  color: rgba(239,232,216,.82) !important;
  border-color: rgba(239,232,216,.12) !important;
  vertical-align: middle !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .product-name a {
  color: #efe8d8 !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .amount,
body.woocommerce-cart .ablk-v51-cart-shell .product-price,
body.woocommerce-cart .ablk-v51-cart-shell .product-subtotal {
  color: #f3c400 !important;
  font-weight: 950 !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .product-thumbnail img {
  width: 84px !important;
  height: 84px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  background: #080808 !important;
}

/* COUPON */
body.woocommerce-cart .ablk-v51-cart-shell td.actions {
  padding: 18px !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .coupon {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

body.woocommerce-cart .ablk-v51-cart-shell input#coupon_code,
body.woocommerce-cart .ablk-v51-cart-shell .coupon .input-text {
  width: min(100%, 320px) !important;
  height: 50px !important;
  min-height: 50px !important;
  max-height: 50px !important;
  resize: none !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  padding: 0 18px !important;
  line-height: 50px !important;
  background: #080808 !important;
  color: #efe8d8 !important;
  border: 1px solid rgba(239,232,216,.22) !important;
}

/* BUTTONS */
body.woocommerce-cart .ablk-v51-cart-shell button,
body.woocommerce-cart .ablk-v51-cart-shell .button,
body.woocommerce-cart .ablk-v51-cart-shell .checkout-button {
  min-height: 50px !important;
  border-radius: 999px !important;
  background: #f3c400 !important;
  color: #080808 !important;
  border: 0 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

/* TOTALS */
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals {
  margin-top: 22px !important;
  padding: clamp(18px, 2.5vw, 30px) !important;
  border: 1px solid rgba(243,196,0,.30) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(243,196,0,.14), transparent 36%),
    linear-gradient(135deg, rgba(239,232,216,.05), rgba(239,232,216,.015)),
    #101014 !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.28) !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .cart_totals h2 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  color: #efe8d8 !important;
  font-family: Impact, Haettenschweiler, "Arial Black", system-ui, sans-serif !important;
  font-size: clamp(2.2rem, 4vw, 4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.035em !important;
  text-transform: uppercase !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .cart_totals table,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals tbody,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals tr,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals th,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals td {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  word-break: normal !important;
  white-space: normal !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .cart_totals table {
  width: 100% !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .cart_totals th,
body.woocommerce-cart .ablk-v51-cart-shell .cart_totals td {
  padding: 14px !important;
  color: rgba(239,232,216,.82) !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .wc-proceed-to-checkout {
  padding: 18px 0 0 !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .wc-proceed-to-checkout .checkout-button {
  display: flex !important;
  width: 100% !important;
  min-height: 56px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Hide express buttons on cart only. Keep express payments on checkout. */
body.woocommerce-cart .wcpay-payment-request-wrapper,
body.woocommerce-cart .wc-stripe-payment-request-wrapper,
body.woocommerce-cart #wcpay-payment-request-wrapper,
body.woocommerce-cart .payment-request-button,
body.woocommerce-cart .express-payment-methods,
body.woocommerce-cart .wc-block-components-express-payment,
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart .paypal-buttons,
body.woocommerce-cart .apple-pay-button,
body.woocommerce-cart .gpay-button {
  display: none !important;
}

/* SUPPORT CTA */
body.woocommerce-cart .ablk-v48-support-cta {
  margin-top: clamp(24px, 4vw, 56px) !important;
  padding: clamp(18px, 3vw, 40px) !important;
  border: 1px solid rgba(239,232,216,.14) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(243,196,0,.14), transparent 30%),
    linear-gradient(135deg, rgba(239,232,216,.06), rgba(239,232,216,.015)),
    #101014 !important;
}

body.woocommerce-cart .ablk-v48-support-cta h2 {
  margin: 0 0 12px !important;
  color: #efe8d8 !important;
  font-family: Impact, Haettenschweiler, "Arial Black", system-ui, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: -.035em !important;
}

body.woocommerce-cart .ablk-v48-support-cta p {
  color: rgba(239,232,216,.78) !important;
}

/* MOBILE + TABLET (matches up to the 981px desktop grid — no dead zone) */
@media (max-width: 980px) {
  body.logged-in.woocommerce-cart .ablk-cart-v51 {
    padding-top: 78px !important;
  }

  body.woocommerce-cart .ablk-cart-v51 {
    width: calc(100% - 22px) !important;
  }

  body.woocommerce-cart .ablk-v51-cart-hero {
    min-height: 360px !important;
    padding: 22px !important;
    border-radius: 18px !important;
  }

  body.woocommerce-cart .ablk-cart-v51 h1 {
    font-size: clamp(3rem, 14vw, 5.4rem) !important;
  }

  body.woocommerce-cart .ablk-v51-cart-trust {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell {
    padding: 12px !important;
    border-radius: 18px !important;
  }

  /* Single column below 981px — overrides Blocksy's wrapper grid */
  body.woocommerce-cart .ablk-v51-cart-shell .ct-woocommerce-cart-form {
    display: block !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table,
  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table tbody,
  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table tr,
  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table td {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table thead {
    display: none !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table tr.cart_item {
    padding: 12px !important;
    margin-bottom: 14px !important;
    border: 1px solid rgba(239,232,216,.12) !important;
    border-radius: 18px !important;
    background: rgba(239,232,216,.035) !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table td {
    padding: 8px 0 !important;
    border: 0 !important;
    text-align: left !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-thumbnail img {
    width: 72px !important;
    height: 72px !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-name {
    font-size: .88rem !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell input#coupon_code,
  body.woocommerce-cart .ablk-v51-cart-shell .coupon .input-text,
  body.woocommerce-cart .ablk-v51-cart-shell .coupon button,
  body.woocommerce-cart .ablk-v51-cart-shell button[name="update_cart"] {
    width: 100% !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals {
    padding: 16px !important;
    border-radius: 18px !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals table,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals tbody,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals tr,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals th,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals td {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals th,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals td {
    padding: 8px 0 !important;
  }

  body.woocommerce-cart .ablk-v48-support-cta {
    margin-bottom: 150px !important;
  }
}

/* APPARELLY BLANK — V58 visible browser test */
body.woocommerce-cart .ablk-v51-cart-shell {
  outline: 4px solid #f3c400 !important;
  outline-offset: 8px !important;
}

/* APPARELLY BLANK — V59 Final Cart Cleanup */

/* Remove V58 visible browser test outline */
body.woocommerce-cart .ablk-v51-cart-shell {
  outline: none !important;
  outline-offset: 0 !important;
}

/* Slightly reduce cart panel canyon */
body.woocommerce-cart .ablk-v51-cart-shell {
  padding-bottom: clamp(18px, 2.6vw, 34px) !important;
}

body.woocommerce-cart .ablk-v51-cart-shell .woocommerce-cart-form,
body.woocommerce-cart .ablk-v51-cart-shell .cart-collaterals {
  margin-bottom: 0 !important;
}

/* Desktop: keep table + totals balanced without over-stretching.
   Blocksy wraps the form + totals in .ct-woocommerce-cart-form and grids
   THAT wrapper (2fr/1fr) — so we tune Blocksy's grid instead of adding
   our own on .woocommerce (which would push the whole wrapper into one
   narrow column). */
@media (min-width: 981px) {
  body.woocommerce-cart .ablk-v51-cart-shell .ct-woocommerce-cart-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(340px, 420px) !important;
    gap: clamp(24px, 3vw, 44px) !important;
    align-items: start !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .woocommerce-cart-form {
    min-width: 0 !important;
    margin-bottom: 0 !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .cart-collaterals,
  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals {
    min-width: 0 !important;
    margin-top: 0 !important;
  }
}

/* Mobile + tablet: make cart item read like a card */
@media (max-width: 980px) {
  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table tr.cart_item {
    display: grid !important;
    grid-template-columns: 76px 1fr !important;
    gap: 10px 12px !important;
    align-items: start !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell table.shop_table tr.cart_item td {
    padding: 0 !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-name,
  body.woocommerce-cart .ablk-v51-cart-shell .product-price,
  body.woocommerce-cart .ablk-v51-cart-shell .product-quantity,
  body.woocommerce-cart .ablk-v51-cart-shell .product-subtotal,
  body.woocommerce-cart .ablk-v51-cart-shell .product-remove {
    grid-column: 2 !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-price,
  body.woocommerce-cart .ablk-v51-cart-shell .product-subtotal {
    display: inline-flex !important;
    width: auto !important;
    margin-right: 8px !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .product-remove {
    justify-content: flex-start !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .cart_totals {
    margin-top: 18px !important;
  }

  body.woocommerce-cart .ablk-v51-cart-shell .wc-proceed-to-checkout .checkout-button {
    font-size: .76rem !important;
    letter-spacing: .11em !important;
  }

  body.woocommerce-cart .ablk-v48-support-cta {
    margin-top: 18px !important;
  }
}
