/**
 * Pure Kopi Luwak — Cart page (rebuilt 2026-09-17, shares the checkout-v2 design tokens)
 * Loaded ONLY on the cart page. Uses !important throughout because Shopkeeper and the child
 * style.css style every one of these elements with high-specificity rules.
 */

:root {
  --ck-bg: #f5f0e8; --ck-surface: #ffffff; --ck-ink: #1a1410; --ck-muted: #7a6f66; --ck-faint: #a39a90;
  --ck-line: #e6dfd4; --ck-line-strong: #cfc5b8; --ck-accent: #c25b18; --ck-radius: 8px; --ck-radius-sm: 6px;
}

/* ─── Page ─── */
body.woocommerce-cart { background: var(--ck-bg) !important; }
body.woocommerce-cart *, body.woocommerce-cart input, body.woocommerce-cart button, body.woocommerce-cart a { font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important; }
body.woocommerce-cart .site-content, body.woocommerce-cart #content, body.woocommerce-cart .entry-content { background: var(--ck-bg) !important; }
body.woocommerce-cart .page_header_overlay, body.woocommerce-cart .page-header, body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-info, body.woocommerce-cart #gbt-custom-notification-notice, body.woocommerce-cart .page-notifications { display: none !important; }

body.woocommerce-cart .woocommerce, body.woocommerce-cart #primary .woocommerce {
  max-width: 1120px !important; margin: 0 auto !important; padding: 36px 32px 96px !important; box-sizing: border-box !important;
  display: grid !important; grid-template-columns: minmax(0, 1fr) 384px !important; column-gap: 64px !important; align-items: start !important;
}
body.woocommerce-cart .woocommerce > * { grid-column: 1 !important; min-width: 0 !important; }
body.woocommerce-cart .woocommerce > .cart-collaterals { grid-column: 2 !important; grid-row: 1 / span 10 !important; position: sticky !important; top: 96px !important; width: auto !important; float: none !important; margin: 0 !important; }
body.woocommerce-cart .woocommerce > .woocommerce-cart-empty, body.woocommerce-cart .woocommerce > .pkl-empty-cart, body.woocommerce-cart .woocommerce > .cart-empty { grid-column: 1 / -1 !important; }

/* ─── Upsell banner (echoed with inline styles from functions.php) ─── */
body.woocommerce-cart .woocommerce-cart-form > div[style] {
  border-radius: var(--ck-radius) !important; border: 1px solid #f0d9c6 !important; border-left: 3px solid var(--ck-accent) !important;
  margin: 0 0 16px !important; padding: 16px 20px !important; background: #fdf6ef !important;
}

/* ─── Items card ─── */
body.woocommerce-cart .woocommerce-cart-form { background: var(--ck-surface) !important; border: 1px solid var(--ck-line) !important; border-radius: var(--ck-radius) !important; padding: 8px 28px !important; margin: 0 !important; box-shadow: none !important; }
body.woocommerce-cart .woocommerce-cart-form > div[style] { margin-top: 20px !important; }
body.woocommerce-cart table.shop_table.cart { display: block !important; width: 100% !important; border: 0 !important; margin: 0 !important; background: transparent !important; border-collapse: collapse !important; }
body.woocommerce-cart table.shop_table.cart thead { display: none !important; }
body.woocommerce-cart table.shop_table.cart tbody { display: block !important; width: 100% !important; }
body.woocommerce-cart table.shop_table.cart tr { display: block !important; }
body.woocommerce-cart table.shop_table.cart tr.cart_item {
  display: grid !important; grid-template-columns: 24px 84px minmax(0, 1fr) 128px 96px !important; column-gap: 18px !important; align-items: center !important;
  padding: 22px 0 !important; border-bottom: 1px solid var(--ck-line) !important;
}
body.woocommerce-cart table.shop_table.cart tr.cart_item:last-of-type { border-bottom: 0 !important; }
body.woocommerce-cart table.shop_table.cart tr.cart_item td { display: block !important; padding: 0 !important; border: 0 !important; background: transparent !important; width: auto !important; text-align: left !important; vertical-align: middle !important; }
body.woocommerce-cart table.shop_table.cart tr.cart_item td::before { display: none !important; content: none !important; }
body.woocommerce-cart table.shop_table.cart td.product-remove a.remove {
  display: flex !important; align-items: center !important; justify-content: center !important; width: 24px !important; height: 24px !important; border-radius: 50% !important;
  color: var(--ck-faint) !important; background: transparent !important; border: 0 !important; font-size: 18px !important; line-height: 1 !important; text-decoration: none !important; font-weight: 400 !important;
}
body.woocommerce-cart table.shop_table.cart td.product-remove a.remove:hover { color: var(--ck-ink) !important; background: #f3ede4 !important; }
body.woocommerce-cart table.shop_table.cart td.product-thumbnail a { display: block !important; }
body.woocommerce-cart table.shop_table.cart td.product-thumbnail img { width: 84px !important; height: 84px !important; object-fit: cover !important; display: block !important; border-radius: var(--ck-radius-sm) !important; margin: 0 !important; }
body.woocommerce-cart table.shop_table.cart td.product-name a { font-size: 15px !important; font-weight: 500 !important; line-height: 1.4 !important; color: var(--ck-ink) !important; text-decoration: none !important; }
body.woocommerce-cart table.shop_table.cart td.product-name dl.variation { margin: 4px 0 0 !important; font-size: 12px !important; color: var(--ck-muted) !important; }
body.woocommerce-cart table.shop_table.cart td.product-name dl.variation dt { display: none !important; }
body.woocommerce-cart table.shop_table.cart td.product-name dl.variation dd { margin: 0 !important; display: inline !important; }
body.woocommerce-cart table.shop_table.cart td.product-name dl.variation dd p { display: inline !important; margin: 0 !important; }
body.woocommerce-cart table.shop_table.cart td.product-price { display: none !important; }
body.woocommerce-cart table.shop_table.cart td.product-quantity { display: flex !important; justify-content: center !important; }
body.woocommerce-cart table.shop_table.cart td.product-subtotal { text-align: right !important; font-size: 15px !important; font-weight: 600 !important; color: var(--ck-ink) !important; white-space: nowrap !important; }
body.woocommerce-cart table.shop_table.cart tr:has(> td.actions), body.woocommerce-cart table.shop_table.cart td.actions, body.woocommerce-cart .cart .actions { display: none !important; }

/* Quantity stepper */
body.woocommerce-cart .quantity { display: inline-flex !important; align-items: stretch !important; height: 44px !important; border: 1px solid var(--ck-line-strong) !important; border-radius: var(--ck-radius-sm) !important; overflow: hidden !important; background: #fff !important; margin: 0 !important; width: auto !important; }
body.woocommerce-cart .quantity input[type=number], body.woocommerce-cart .quantity input.qty {
  width: 48px !important; height: 100% !important; border: 0 !important; border-radius: 0 !important; text-align: center !important; font-size: 15px !important; font-weight: 500 !important; color: var(--ck-ink) !important;
  background: transparent !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; -moz-appearance: textfield !important; appearance: textfield !important;
}
body.woocommerce-cart .quantity input::-webkit-outer-spin-button, body.woocommerce-cart .quantity input::-webkit-inner-spin-button { -webkit-appearance: none !important; margin: 0 !important; }
body.woocommerce-cart .quantity button, body.woocommerce-cart .quantity .qty-btn, body.woocommerce-cart .quantity .minus, body.woocommerce-cart .quantity .plus, body.woocommerce-cart .quantity a {
  width: 40px !important; height: 100% !important; border: 0 !important; background: transparent !important; color: var(--ck-ink) !important; font-size: 18px !important; line-height: 1 !important; cursor: pointer !important;
  display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; box-shadow: none !important; text-decoration: none !important; position: static !important;
}
body.woocommerce-cart .quantity button:hover, body.woocommerce-cart .quantity a:hover { background: #f3ede4 !important; }

/* ─── Totals card ─── */
body.woocommerce-cart .cart_totals { background: var(--ck-surface) !important; border: 1px solid var(--ck-line) !important; border-radius: var(--ck-radius) !important; padding: 24px 28px 28px !important; margin: 0 !important; width: auto !important; float: none !important; box-shadow: none !important; }
body.woocommerce-cart .cart_totals::before, body.woocommerce-cart .cart_totals::after { display: none !important; content: none !important; }
body.woocommerce-cart .cart-collaterals .cart_totals h2, body.woocommerce-cart .cart_totals > h2 {
  font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; color: var(--ck-ink) !important;
  margin: 0 0 6px !important; padding: 0 0 14px !important; border-bottom: 1px solid var(--ck-line) !important; line-height: 1.4 !important;
}
body.woocommerce-cart .cart_totals table { width: 100% !important; border: 0 !important; border-collapse: collapse !important; margin: 0 !important; background: transparent !important; }
body.woocommerce-cart .cart_totals table th, body.woocommerce-cart .cart_totals table td { border: 0 !important; background: transparent !important; padding: 12px 0 !important; vertical-align: middle !important; font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important; }
body.woocommerce-cart .cart_totals table th { text-align: left !important; font-weight: 400 !important; color: var(--ck-muted) !important; width: 40% !important; }
body.woocommerce-cart .cart_totals table td { text-align: right !important; color: var(--ck-ink) !important; font-weight: 500 !important; }
body.woocommerce-cart .cart_totals table td::before { display: none !important; content: none !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td,
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td { display: table-cell !important; text-align: right !important; vertical-align: top !important; }
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th { vertical-align: top !important; padding-top: 14px !important; }
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td ul, body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td li,
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td label, body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td p {
  display: block !important; margin: 0 !important; padding: 0 !important; list-style: none !important; text-align: right !important; float: none !important; font-size: 14px !important; font-weight: 500 !important; color: var(--ck-ink) !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td p.woocommerce-shipping-destination { font-size: 12px !important; color: var(--ck-muted) !important; font-weight: 400 !important; margin-top: 4px !important; line-height: 1.45 !important; }
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td .shipping-calculator-button {
  display: inline-block !important; margin-top: 6px !important; font-size: 10px !important; font-weight: 600 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; color: var(--ck-accent) !important; text-decoration: none !important; border: 0 !important; background: none !important; padding: 0 !important; float: none !important;
}
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td .shipping-calculator-form { margin-top: 12px !important; text-align: left !important; }
body.woocommerce-cart .cart_totals .shipping-calculator-form .form-row { margin: 0 0 10px !important; }
body.woocommerce-cart .cart_totals .shipping-calculator-form input, body.woocommerce-cart .cart_totals .shipping-calculator-form select, body.woocommerce-cart .cart_totals .shipping-calculator-form .select2-selection--single {
  height: 44px !important; border: 1px solid var(--ck-line-strong) !important; border-radius: var(--ck-radius-sm) !important; padding: 0 12px !important; font-size: 14px !important; box-shadow: none !important; width: 100% !important; box-sizing: border-box !important;
}
body.woocommerce-cart .cart_totals .shipping-calculator-form button { height: 44px !important; border-radius: var(--ck-radius-sm) !important; background: var(--ck-ink) !important; color: #fff !important; border: 0 !important; font-size: 12px !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; padding: 0 18px !important; }
body.woocommerce-cart .cart_totals table tr.order-total th, body.woocommerce-cart .cart_totals table tr.order-total td { border-top: 1px solid var(--ck-line) !important; padding-top: 16px !important; font-weight: 600 !important; color: var(--ck-ink) !important; font-size: 15px !important; }
body.woocommerce-cart .cart_totals table tr.order-total td .amount { font-size: 22px !important; font-weight: 600 !important; letter-spacing: -0.01em !important; }
body.woocommerce-cart .cart_totals .amount { color: inherit !important; }

/* Proceed + express */
body.woocommerce-cart .wc-proceed-to-checkout { padding: 0 !important; margin: 20px 0 0 !important; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button, body.woocommerce-cart a.checkout-button.button {
  display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 56px !important; box-sizing: border-box !important;
  margin: 0 !important; padding: 0 24px !important; background: var(--ck-ink) !important; color: #fff !important; border: 0 !important; border-radius: var(--ck-radius-sm) !important;
  font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; line-height: 1 !important; text-decoration: none !important; box-shadow: none !important; transition: background 0.15s !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background: var(--ck-accent) !important; color: #fff !important; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::before, body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after { display: none !important; content: none !important; }
body.woocommerce-cart #wc-stripe-express-checkout-element { margin: 12px 0 0 !important; }
body.woocommerce-cart #wc-stripe-express-checkout-element * { background: transparent !important; }
body.woocommerce-cart #wc-stripe-express-checkout-button-separator, body.woocommerce-cart .wc-stripe-payment-request-button-separator-container { display: none !important; }
body.woocommerce-cart .wc-proceed-to-checkout + #wc-stripe-express-checkout-element::before,
body.woocommerce-cart .cart_totals #wc-stripe-express-checkout-element:not(:empty)::before {
  content: "or check out with" !important; display: block !important; text-align: center !important; font-size: 10px !important; letter-spacing: 0.16em !important; text-transform: uppercase !important; color: var(--ck-muted) !important; margin: 4px 0 10px !important;
}

/* ─── Empty cart ─── */
body.woocommerce-cart .pkl-empty-cart, body.woocommerce-cart .cart-empty, body.woocommerce-cart .woocommerce-cart-empty { text-align: center !important; padding: 72px 24px !important; background: var(--ck-surface) !important; border: 1px solid var(--ck-line) !important; border-radius: var(--ck-radius) !important; }
body.woocommerce-cart .pkl-empty-cart-message, body.woocommerce-cart p.cart-empty { font-size: 16px !important; color: var(--ck-muted) !important; margin: 0 0 22px !important; }
body.woocommerce-cart .pkl-empty-cart-btn, body.woocommerce-cart .return-to-shop a.button, body.woocommerce-cart a.pkl-empty-cart-btn {
  display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 52px !important; padding: 0 32px !important; background: var(--ck-ink) !important; color: #fff !important;
  border-radius: var(--ck-radius-sm) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; text-decoration: none !important; border: 0 !important; line-height: 1 !important;
}
body.woocommerce-cart .pkl-empty-cart-btn:hover, body.woocommerce-cart .return-to-shop a.button:hover, body.woocommerce-cart a.pkl-empty-cart-btn:hover { background: var(--ck-accent) !important; color: #fff !important; }
body.woocommerce-cart .blockUI.blockOverlay { background: rgba(255, 255, 255, 0.6) !important; border-radius: var(--ck-radius) !important; }

/* ─── Mobile / tablet ─── */
@media (max-width: 960px) {
  body.woocommerce-cart .woocommerce, body.woocommerce-cart #primary .woocommerce { display: flex !important; flex-direction: column !important; padding: 20px 16px 64px !important; gap: 0 !important; }
  body.woocommerce-cart .woocommerce > .cart-collaterals { position: static !important; margin: 16px 0 0 !important; width: 100% !important; }
  body.woocommerce-cart .woocommerce-cart-form { padding: 4px 18px !important; }
  body.woocommerce-cart table.shop_table.cart tr.cart_item { grid-template-columns: 72px minmax(0, 1fr) !important; grid-template-areas: "thumb name" "thumb controls" !important; column-gap: 14px !important; row-gap: 10px !important; padding: 18px 0 !important; align-items: start !important; }
  body.woocommerce-cart table.shop_table.cart td.product-thumbnail { grid-area: thumb !important; }
  body.woocommerce-cart table.shop_table.cart td.product-thumbnail img { width: 72px !important; height: 72px !important; }
  body.woocommerce-cart table.shop_table.cart td.product-name { grid-area: name !important; padding-right: 28px !important; }
  body.woocommerce-cart table.shop_table.cart td.product-name a { font-size: 14px !important; }
  body.woocommerce-cart table.shop_table.cart td.product-quantity { grid-area: controls !important; justify-content: flex-start !important; }
  body.woocommerce-cart table.shop_table.cart td.product-subtotal { grid-area: controls !important; justify-self: end !important; align-self: center !important; }
  body.woocommerce-cart table.shop_table.cart td.product-remove { grid-area: name !important; justify-self: end !important; align-self: start !important; }
  body.woocommerce-cart .quantity { height: 40px !important; }
  body.woocommerce-cart .quantity button, body.woocommerce-cart .quantity a { width: 36px !important; }
  body.woocommerce-cart .quantity input[type=number], body.woocommerce-cart .quantity input.qty { width: 40px !important; }
  body.woocommerce-cart .cart_totals { padding: 18px 20px 22px !important; }
  body.woocommerce-cart .cart_totals table th { width: auto !important; }
}

/* ─── c2 fixes ─── */
/* The items card must fill its grid column; Shopkeeper shrink-wraps the form */
body.woocommerce-cart .woocommerce > .woocommerce-cart-form { display: block !important; width: 100% !important; max-width: none !important; float: none !important; justify-self: stretch !important; }
body.woocommerce-cart table.shop_table.cart, body.woocommerce-cart table.shop_table.cart tbody { width: 100% !important; box-sizing: border-box !important; }
body.woocommerce-cart table.shop_table.cart tr.cart_item { width: 100% !important; box-sizing: border-box !important; }
/* Unit-price cell stays hidden (the row rule above had higher specificity) */
body.woocommerce-cart table.shop_table.cart tr.cart_item td.product-price { display: none !important; }
/* Totals labels stay visible at every width (theme hides <th> on small screens) */
body.woocommerce-cart .cart_totals table th { display: table-cell !important; }
body.woocommerce-cart .cart_totals table tr { display: table-row !important; }
/* Express label only when Stripe actually rendered a wallet button */
body.woocommerce-cart .wc-proceed-to-checkout + #wc-stripe-express-checkout-element::before,
body.woocommerce-cart .cart_totals #wc-stripe-express-checkout-element:not(:empty)::before { display: none !important; content: none !important; }
body.woocommerce-cart .cart_totals #wc-stripe-express-checkout-element:has(iframe)::before {
  content: "or check out with" !important; display: block !important; text-align: center !important; font-size: 10px !important; letter-spacing: 0.16em !important; text-transform: uppercase !important; color: var(--ck-muted) !important; margin: 4px 0 10px !important;
}
body.woocommerce-cart #wc-stripe-express-checkout-element, body.woocommerce-cart #wc-stripe-express-checkout-element > div { border: 0 !important; box-shadow: none !important; }
@media (max-width: 960px) {
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { font-size: 12px !important; letter-spacing: 0.1em !important; white-space: nowrap !important; }
  body.woocommerce-cart .cart_totals table th { width: 40% !important; }
}

/* ─── c3: mobile row — controls sit side by side, remove button hugs the corner ─── */
@media (max-width: 960px) {
  body.woocommerce-cart table.shop_table.cart td.product-quantity { justify-self: start !important; width: max-content !important; }
  body.woocommerce-cart table.shop_table.cart td.product-subtotal { justify-self: end !important; width: max-content !important; }
  body.woocommerce-cart table.shop_table.cart td.product-remove { justify-self: end !important; align-self: start !important; width: max-content !important; margin-top: -2px !important; }
  body.woocommerce-cart table.shop_table.cart td.product-name { padding-right: 36px !important; }
}

/* ─── c4: only item rows render inside the card ─── */
body.woocommerce-cart table.shop_table.cart tbody > tr:not(.cart_item) { display: none !important; }

/* ─── c5: rows always span the card; tighter stepper on phones; theme's fixed thumbnail-cell width removed ─── */
body.woocommerce-cart table.shop_table.cart, body.woocommerce-cart table.shop_table.cart tbody, body.woocommerce-cart table.shop_table.cart tr.cart_item { width: 100% !important; min-width: 100% !important; max-width: none !important; }
body.woocommerce-cart table.shop_table.cart tr.cart_item td.product-thumbnail { width: auto !important; min-width: 0 !important; }
@media (max-width: 960px) {
  body.woocommerce-cart .quantity { height: 38px !important; }
  body.woocommerce-cart .quantity button, body.woocommerce-cart .quantity a { width: 32px !important; font-size: 16px !important; }
  body.woocommerce-cart .quantity input[type=number], body.woocommerce-cart .quantity input.qty { width: 34px !important; font-size: 14px !important; }
  body.woocommerce-cart table.shop_table.cart tr.cart_item { column-gap: 12px !important; }
  body.woocommerce-cart table.shop_table.cart td.product-thumbnail img { width: 64px !important; height: 64px !important; }
  body.woocommerce-cart table.shop_table.cart tr.cart_item { grid-template-columns: 64px minmax(0, 1fr) !important; }
}

/* ─── c6: product link fills its cell (theme floats it half-width on phones); totals card spans the page on phones ─── */
body.woocommerce-cart table.shop_table.cart td.product-name { display: flex !important; flex-direction: column !important; align-items: flex-start !important; }
body.woocommerce-cart table.shop_table.cart td.product-name a { display: block !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; float: none !important; text-indent: 0 !important; text-align: left !important; }
@media (max-width: 960px) {
  body.woocommerce-cart .woocommerce > .woocommerce-cart-form, body.woocommerce-cart .woocommerce > .cart-collaterals, body.woocommerce-cart .cart_totals { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; box-sizing: border-box !important; }
  body.woocommerce-cart .cart-collaterals { padding: 0 !important; }
}

/* ─── c7: remove button clear of the name; shipping label matches the other labels; totals card full width on phones ─── */
body.woocommerce-cart .cart-collaterals .cart_totals table tr.shipping th, body.woocommerce-cart .cart-collaterals .cart_totals table tr.woocommerce-shipping-totals th,
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table th {
  font-family: Inter, system-ui, sans-serif !important; font-size: 14px !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ck-muted) !important; white-space: normal !important;
}
@media (max-width: 960px) {
  body.woocommerce-cart table.shop_table.cart tr.cart_item td.product-name { padding-right: 40px !important; }
  body.woocommerce-cart .woocommerce .cart-collaterals, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals {
    width: 100% !important; max-width: none !important; margin: 0 !important; float: none !important; left: auto !important; right: auto !important; transform: none !important;
  }
  body.woocommerce-cart .woocommerce > .cart-collaterals { margin-top: 16px !important; }
}

/* ─── c8: phones — the theme's .row/.columns already pad the page, so the cart wrapper adds none; totals card loses its extra side padding ─── */
@media (max-width: 960px) {
  body.woocommerce-cart .woocommerce, body.woocommerce-cart #primary .woocommerce { padding: 16px 0 56px !important; }
  body.woocommerce-cart .woocommerce > .cart-collaterals, body.woocommerce-cart.woocommerce-page .cart-collaterals, body.woocommerce-cart .woocommerce .cart-collaterals { padding: 0 !important; }
}

/* ─── c9: totals rows on phones — cells stay cells, one line per row; no address calculator on the cart (it belongs to checkout); theme's stray "Continue shopping" link off ─── */
body.woocommerce-cart .shopkeeper-continue-shopping, body.woocommerce-cart .shopkeeper-continue-shopping a { display: none !important; }
body.woocommerce-cart .cart_totals .shipping-calculator-button, body.woocommerce-cart .cart_totals .shipping-calculator-form,
body.woocommerce-cart .cart_totals p.woocommerce-shipping-destination { display: none !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr,
body.woocommerce-cart .cart_totals table tr { display: table-row !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table td,
body.woocommerce-cart .cart_totals table th, body.woocommerce-cart .cart_totals table td { display: table-cell !important; vertical-align: middle !important; padding: 13px 0 !important; line-height: 1.4 !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td,
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th, body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td { vertical-align: middle !important; padding: 13px 0 !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.order-total th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.order-total td { padding: 16px 0 0 !important; border-top: 1px solid var(--ck-line) !important; }
body.woocommerce-cart .cart_totals table { border-collapse: collapse !important; border-spacing: 0 !important; }
@media (max-width: 960px) {
  body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table th, body.woocommerce-cart .cart_totals table th { width: 34% !important; }
}

/* ─── c10: out-specify Shopkeeper's responsive-table rules inside the totals card ─── */
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table tr td, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table_responsive tr td,
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table tr th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table_responsive tr th {
  display: table-cell !important; vertical-align: middle !important; padding: 13px 0 !important; text-align: right !important; float: none !important; width: auto !important;
}
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table tr th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table.shop_table_responsive tr th { text-align: left !important; width: 34% !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr td::before { display: none !important; content: none !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.order-total th, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.order-total td { padding: 16px 0 0 !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals .shipping-calculator-button, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals a[class*="shipping-calculator"],
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals .shipping-calculator-form, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals p.woocommerce-shipping-destination { display: none !important; }

/* ─── c11: shipping method text flows on one line ─── */
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td ul, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td li { display: block !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping td label { display: inline !important; width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; padding: 0 !important; }

/* ─── c12: no shipping estimate on the cart; note under the total instead ─── */
body.woocommerce-cart .cart_totals tr.shipping, body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals, body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.shipping { display: none !important; }
body.woocommerce-cart.woocommerce-page .cart-collaterals .cart_totals table tr.pkl-ship-note td, body.woocommerce-cart .cart_totals tr.pkl-ship-note td { display: table-cell !important; text-align: right !important; font-size: 12px !important; color: var(--ck-muted) !important; font-weight: 400 !important; padding: 6px 0 0 !important; border: 0 !important; }

/* ─── c13: Stripe's wallet placeholder never draws as an empty bordered box ─── */
body.woocommerce-cart #wc-stripe-express-checkout-element .StripeElement, body.woocommerce-cart #wc-stripe-express-checkout-element > div { border: 0 !important; padding: 0 !important; box-shadow: none !important; background: transparent !important; min-height: 0 !important; }
