/**
 * Cart page — align with drawer / single-product / share controls (Bestgreen).
 * Loaded only on `is_cart()`.
 * - Classic cart: `.bg-cart-page`, `.bg-cart-form`, `.bg-cart-collaterals` (template `woocommerce/cart/cart.php`).
 * - Block cart: `.wp-block-woocommerce-cart.wc-block-cart` (no PHP override; style here only).
 */

/* =============================================================================
 * WooCommerce Cart block (wc-block-cart) — same visual language as classic cart
 * ============================================================================= */
body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
	max-width: 100%;
	box-sizing: border-box;
	padding-bottom: 2.5rem;
}

/* Page title (Cart template block H1) — same voice as related-products / grid section titles */
body.woocommerce-cart .entry-content h1.wp-block-heading,
body.woocommerce-cart .entry-content > h1:first-of-type {
	font-size: 1.125rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #000 !important;
	margin-top: 0 !important;
	margin-bottom: 1.5rem !important;
}

/* Theme-rendered title (if Astra shows title outside the block) */
body.woocommerce-cart .ast-page-title-section h1,
body.woocommerce-cart article.page > .entry-header .entry-title {
	font-size: 1.125rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #000 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items {
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 10px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #fff !important;
	overflow: hidden !important;
	margin: 0 0 2rem !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart.is-large .wc-block-cart-items {
	border-bottom: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart.is-large .wc-block-cart-items th,
body.woocommerce-cart .wp-block-woocommerce-cart.is-large .wc-block-cart-items td {
	border-color: rgba(0, 0, 0, 0.06) !important;
}

/* One flat header bar (no mixed bands); show “Product” — WC hides it by default */
body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items thead.wc-block-cart-items__header,
body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__header {
	background: #fafafa !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header th {
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
	background: #fafafa !important;
	background-color: #fafafa !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
	box-shadow: none !important;
	padding: 1rem 1rem 1rem 0 !important;
	vertical-align: middle !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header th:last-child {
	padding-right: 1rem !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-product {
	visibility: visible !important;
	color: #111 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image img {
	border-radius: 8px !important;
	background: #f7f7f7 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name a {
	font-weight: 700 !important;
	font-size: 14px !important;
	color: #111 !important;
	text-decoration: none !important;
	letter-spacing: 0.02em !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name a:hover,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name a:focus-visible {
	color: #000 !important;
	text-decoration: underline !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-price {
	font-weight: 700 !important;
	color: #111 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link {
	font-weight: 600 !important;
	font-size: 0.8125rem !important;
	text-decoration: underline !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link:focus-visible {
	text-decoration: none !important;
}

/* Quantity — same as mini-cart block tray in style.css (fit-content, 2rem chips, WC 107px override) */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector {
	display: flex !important;
	align-items: center !important;
	gap: 2px !important;
	padding: 3px !important;
	border-radius: 10px !important;
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	background: rgba(0, 0, 0, 0.04) !important;
	overflow: visible !important;
	width: fit-content !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	margin: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector::after {
	display: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	border: none !important;
	border-radius: 8px !important;
	background: transparent !important;
	background-color: transparent !important;
	color: #333 !important;
	min-width: 36px !important;
	width: 36px !important;
	height: 2rem !important;
	min-height: 2rem !important;
	opacity: 1 !important;
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus-visible {
	background: #fff !important;
	color: #000 !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
	outline: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:active {
	transform: scale(0.94);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	flex: 0 1 auto !important;
	border: none !important;
	border-radius: 8px !important;
	background: transparent !important;
	background-color: transparent !important;
	color: #111 !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	min-height: 2rem !important;
	height: 2rem !important;
	min-width: 2.5rem !important;
	max-width: 3.25rem !important;
	width: auto !important;
	padding: 0 0.25rem !important;
	margin: 0 !important;
	box-shadow: none !important;
	line-height: 1 !important;
	-moz-appearance: textfield !important;
	appearance: textfield !important;
	transition: box-shadow 0.18s ease !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input:focus {
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.08) !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

/* Order summary sidebar — same card language as line-items table */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar {
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 10px !important;
	background: #fff !important;
	margin-top: 0 !important;
	overflow: hidden;
	padding: 0 !important;
}

/* Gray header bar = same as table thead (not white + floating padding) */
body.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block {
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block {
	margin-block: 0 !important;
	margin-top: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart h2.wc-block-cart__totals-title {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 1rem 1rem !important;
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
	background: #fafafa !important;
	background-color: #fafafa !important;
	border: none !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block {
	border-top-color: rgba(0, 0, 0, 0.08) !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-footer-item {
	border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
	padding-top: 0.75rem !important;
	margin-top: 0.5rem !important;
}

/* Coupon apply — outline secondary */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button.wc-block-components-button:not(.is-link) {
	padding: 12px 18px !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	background: #fff !important;
	color: #000 !important;
	border: 1px solid #000 !important;
	box-shadow: none !important;
	min-height: auto !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button.wc-block-components-button:not(.is-link):hover,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button.wc-block-components-button:not(.is-link):focus {
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__form .wc-block-components-text-input input {
	border-radius: 10px !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

/* Proceed to checkout — inset from card (Woo sets submit-container padding 0) */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit {
	padding: 1.25rem 1rem 1.25rem !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

/* Proceed to checkout (Button renders as <a class="wc-block-cart__submit-button …">) */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	padding: 16px 18px !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	background: #000 !important;
	color: #fff !important;
	border: 1px solid #000 !important;
	box-shadow: none !important;
	min-height: auto !important;
	text-decoration: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button:focus-visible {
	background: #baff29 !important;
	color: #000 !important;
	border-color: #baff29 !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12) !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-container--sticky {
	background: #fff !important;
	border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
}

/* Block cross-sells heading */
body.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .wp-block-heading {
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
}

/* ---- Page rhythm (classic cart) ---- */
.woocommerce-cart .bg-cart-page {
	max-width: 100%;
	box-sizing: border-box;
	padding-bottom: 2.5rem;
}

.woocommerce-cart .bg-cart-page .woocommerce-cart-form {
	margin-bottom: 1.75rem;
}

/* ---- Main cart table (card) ---- */
.woocommerce-cart .bg-cart-page table.shop_table.cart {
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 10px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #fff !important;
	overflow: hidden !important;
	margin: 0 !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart thead th {
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
	background: #fafafa !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
	padding: 1rem 1rem !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart thead th.product-remove,
.woocommerce-cart .bg-cart-page table.shop_table.cart thead th.product-thumbnail {
	width: 1% !important;
	white-space: nowrap !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart tbody td {
	border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
	padding: 1.1rem 1rem !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart tbody tr:first-child td {
	border-top: none !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-thumbnail img {
	max-width: 4.5rem !important;
	height: auto !important;
	border-radius: 8px !important;
	background: #f7f7f7 !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-name a {
	font-weight: 700 !important;
	font-size: 14px !important;
	color: #111 !important;
	text-decoration: none !important;
	letter-spacing: 0.02em !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-name a:hover,
.woocommerce-cart .bg-cart-page table.shop_table.cart .product-name a:focus-visible {
	color: #000 !important;
	text-decoration: underline !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-price,
.woocommerce-cart .bg-cart-page table.shop_table.cart .product-subtotal {
	font-weight: 700 !important;
	color: #111 !important;
}

/* Variation / meta — no Woo widget bar */
.woocommerce-cart .bg-cart-page table.shop_table.cart dl {
	border: none !important;
	border-left: none !important;
	border-inline-start: none !important;
	padding: 0 !important;
	margin: 0.5rem 0 0 0 !important;
	font-size: 12px !important;
	color: #6b6b6b !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart dl.variation dt {
	font-weight: 700 !important;
	display: inline !important;
	margin: 0 0.25em 0 0 !important;
	float: none !important;
	clear: none !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart dl.variation dd {
	display: inline !important;
	margin: 0 0.75em 0 0 !important;
	float: none !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart dl.variation dd p {
	display: inline !important;
	margin: 0 !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-remove .remove {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 2rem !important;
	height: 2rem !important;
	border-radius: 8px !important;
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	background: #fff !important;
	color: #333 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	font-size: 1.1rem !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart .product-remove .remove:hover,
.woocommerce-cart .bg-cart-page table.shop_table.cart .product-remove .remove:focus-visible {
	background: rgba(0, 0, 0, 0.05) !important;
	border-color: rgba(0, 0, 0, 0.2) !important;
	color: #000 !important;
}

/* Quantity — share-style tray (match single product / mini-cart) */
.woocommerce-cart .bg-cart-page .quantity.buttons_added {
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 2px !important;
	padding: 3px !important;
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	border-radius: 10px !important;
	background: rgba(0, 0, 0, 0.04) !important;
	box-sizing: border-box !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .minus,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .plus {
	width: 36px !important;
	min-width: 36px !important;
	flex: 0 0 36px !important;
	height: 2.25rem !important;
	min-height: 2.25rem !important;
	border: none !important;
	border-radius: 8px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	color: #333 !important;
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .minus:hover,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .minus:focus-visible,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .plus:hover,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .plus:focus-visible {
	background: #fff !important;
	color: #000 !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
	outline: none !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .minus:active,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .plus:active {
	transform: scale(0.94);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .qty {
	flex: 0 1 auto !important;
	width: 3rem !important;
	min-width: 2.5rem !important;
	max-width: 4rem !important;
	height: 2.25rem !important;
	min-height: 2.25rem !important;
	margin: 0 !important;
	padding: 0 0.25rem !important;
	border: none !important;
	border-radius: 8px !important;
	background: transparent !important;
	text-align: center !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: #111 !important;
	-moz-appearance: textfield !important;
	transition: box-shadow 0.18s ease !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .qty:focus {
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-cart .bg-cart-page .quantity.buttons_added .qty::-webkit-outer-spin-button,
.woocommerce-cart .bg-cart-page .quantity.buttons_added .qty::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

/* Actions row */
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions {
	background: #fafafa !important;
	border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
	padding: 1.25rem 1.25rem !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .coupon {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.5rem !important;
	margin: 0 0 0.75rem 0 !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .coupon .input-text {
	flex: 1 1 12rem !important;
	min-width: 10rem !important;
	max-width: 20rem !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
	border-radius: 10px !important;
	background: #fff !important;
	font-size: 14px !important;
	box-sizing: border-box !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .coupon .input-text:focus {
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.06) !important;
	border-color: rgba(0, 0, 0, 0.15) !important;
}

/* Secondary: outline (mini-cart “Ver carrinho” style) */
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="apply_coupon"],
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="update_cart"] {
	padding: 12px 18px !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	background: #fff !important;
	color: #000 !important;
	border: 1px solid #000 !important;
	box-shadow: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="apply_coupon"]:hover,
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="apply_coupon"]:focus-visible,
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="update_cart"]:hover,
.woocommerce-cart .bg-cart-page table.shop_table.cart td.actions .button[name="update_cart"]:focus-visible {
	background: #fff !important;
	color: #000 !important;
	border-color: #000 !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
}

/* ---- Cart collaterals + totals card ---- */
.woocommerce-cart .bg-cart-collaterals {
	display: block;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals {
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 10px !important;
	background: #fff !important;
	overflow: hidden !important;
	margin: 0 !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals > h2 {
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
	margin: 0 !important;
	padding: 1.125rem 1.25rem !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
	background: #fff !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table {
	border: none !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table tr th,
.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table tr td {
	border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
	padding: 0.9rem 1.25rem !important;
	vertical-align: middle !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table tr:first-child th,
.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table tr:first-child td {
	border-top: none !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table th {
	font-weight: 700 !important;
	color: #333 !important;
	text-align: left !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table td {
	text-align: right !important;
	font-weight: 600 !important;
	color: #111 !important;
}

.woocommerce-cart .bg-cart-collaterals .cart_totals .order-total th,
.woocommerce-cart .bg-cart-collaterals .cart_totals .order-total td {
	font-weight: 800 !important;
	font-size: 1.05rem !important;
	padding-top: 1.1rem !important;
	padding-bottom: 1.1rem !important;
	background: #fafafa !important;
	border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-cart .bg-cart-collaterals .wc-proceed-to-checkout {
	padding: 1.25rem !important;
	margin: 0 !important;
	border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.woocommerce-cart .bg-cart-collaterals .wc-proceed-to-checkout .checkout-button {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	padding: 16px 18px !important;
	border-radius: 10px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	background: #000 !important;
	color: #fff !important;
	border: 1px solid #000 !important;
	box-shadow: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-cart .bg-cart-collaterals .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-cart .bg-cart-collaterals .wc-proceed-to-checkout .checkout-button:focus-visible {
	background: #baff29 !important;
	color: #000 !important;
	border-color: #baff29 !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12) !important;
}

/* Shipping calculator / forms inside totals */
.woocommerce-cart .bg-cart-collaterals .cart_totals .shipping-calculator-form .input-text,
.woocommerce-cart .bg-cart-collaterals .cart_totals select {
	border-radius: 10px !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
	padding: 10px 12px !important;
}

/* Cross-sells */
.woocommerce-cart .bg-cart-collaterals .cross-sells > h2 {
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #111 !important;
	margin: 2rem 0 1rem !important;
}

/* ---- Responsive stacked table ---- */
@media (max-width: 768px) {
	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart thead {
		display: none !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody tr.cart_item {
		display: block !important;
		border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
		padding: 1rem 0 !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody tr:has(> td.actions) {
		border-bottom: none !important;
		padding: 0 !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td {
		display: block !important;
		width: 100% !important;
		text-align: right !important;
		padding: 0.5rem 1rem !important;
		border: none !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td::before {
		content: attr(data-title) !important;
		float: left !important;
		font-weight: 800 !important;
		font-size: 0.75rem !important;
		letter-spacing: 0.04em !important;
		text-transform: uppercase !important;
		color: #6b6b6b !important;
		padding-top: 0.2rem !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.product-remove::before,
	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.product-thumbnail::before {
		display: none !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.product-remove,
	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.product-thumbnail {
		text-align: center !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.actions {
		text-align: left !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.actions::before {
		display: none !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.actions .coupon {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.actions .coupon .input-text {
		max-width: none !important;
	}

	.woocommerce-cart .bg-cart-page table.shop_table_responsive.cart tbody td.actions .button {
		width: 100% !important;
	}

	.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table_responsive tbody tr {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		gap: 1rem !important;
		padding: 0.65rem 0 !important;
		border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
	}

	.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table_responsive tbody th,
	.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table_responsive tbody td {
		border: none !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.woocommerce-cart .bg-cart-collaterals .cart_totals table.shop_table_responsive tbody td::before {
		display: none !important;
	}
}
