/* ==========================================================================
   Cart & Checkout — CSS ONLY. No template files are overridden here on
   purpose: cart/checkout involve real payment processing (PayPal) and
   WooCommerce's own session/nonce/AJAX handling, all of which is fragile
   to touch. This file only recolors WooCommerce's own stable markup —
   nothing about how the cart or checkout actually WORKS changes.
   ========================================================================== */

.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content {
	max-width: 1200px; margin: 0 auto; padding: 2rem 1.5rem 4rem;
}

.woocommerce-cart h1.entry-title,
.woocommerce-checkout h1.entry-title {
	font-family: var(--mrk-font-heading); font-weight: 700; color: var(--mrk-ghost-white);
	letter-spacing: -0.02em;
}

/* Cart table */
.woocommerce-cart table.shop_table {
	background: var(--mrk-charcoal); border: 0.5px solid rgba(244,244,244,0.08); border-radius: var(--mrk-radius);
	border-collapse: separate; overflow: hidden;
}
.woocommerce-cart table.shop_table th {
	background: rgba(244,244,244,0.03); color: var(--mrk-ghost-white);
	font-family: var(--mrk-font-mono); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em;
	border-bottom: 0.5px solid rgba(244,244,244,0.08);
}
.woocommerce-cart table.shop_table td {
	border-bottom: 0.5px solid rgba(244,244,244,0.06); color: rgba(244,244,244,0.8);
}
.woocommerce-cart table.shop_table .product-name a {
	color: var(--mrk-ghost-white); font-family: var(--mrk-font-heading); font-weight: 600; text-decoration: none;
}
.woocommerce-cart table.shop_table .product-name a:hover { color: var(--mrk-volt); }
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal {
	font-family: var(--mrk-font-mono); color: var(--mrk-volt); font-weight: 700;
}
.woocommerce-cart table.shop_table .product-remove a {
	color: rgba(244,244,244,0.3) !important;
}
.woocommerce-cart table.shop_table .product-remove a:hover { color: #ff5c5c !important; }
.woocommerce-cart .quantity input.qty {
	background: var(--mrk-obsidian); border: 0.5px solid rgba(244,244,244,0.15); color: var(--mrk-ghost-white);
	border-radius: var(--mrk-radius);
}

/* Cart totals / order review sidebar */
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review {
	background: var(--mrk-charcoal); border: 0.5px solid rgba(244,244,244,0.08); border-radius: var(--mrk-radius);
	padding: 1.5rem;
}
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading {
	font-family: var(--mrk-font-heading); font-weight: 700; color: var(--mrk-ghost-white);
	text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.1em; color: var(--mrk-volt);
}
.woocommerce-cart .cart_totals table,
.woocommerce-checkout #order_review table {
	color: rgba(244,244,244,0.8);
}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td,
.woocommerce-checkout #order_review table th,
.woocommerce-checkout #order_review table td {
	border-color: rgba(244,244,244,0.08) !important;
}
.woocommerce-cart .cart_totals .order-total .amount,
.woocommerce-checkout #order_review .order-total .amount {
	color: var(--mrk-volt); font-family: var(--mrk-font-mono); font-weight: 700; font-size: 1.15rem;
}

/* Coupon */
.woocommerce-cart .coupon input#coupon_code {
	background: var(--mrk-obsidian); border: 0.5px solid rgba(244,244,244,0.15); color: var(--mrk-ghost-white);
	border-radius: var(--mrk-radius);
}

/* Buttons */
.woocommerce-cart .button, .woocommerce-cart .checkout-button,
.woocommerce-checkout #place_order,
.woocommerce-checkout input[type="submit"] {
	background: var(--mrk-volt) !important; color: var(--mrk-obsidian) !important;
	font-family: var(--mrk-font-heading); font-weight: 700; border-radius: var(--mrk-radius) !important;
	border: none !important; text-transform: uppercase; letter-spacing: 0.03em;
}
.woocommerce-cart .button:hover, .woocommerce-cart .checkout-button:hover,
.woocommerce-checkout #place_order:hover {
	opacity: 0.85; color: var(--mrk-obsidian) !important;
}

/* Checkout form fields */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
	background: var(--mrk-charcoal); border: 0.5px solid rgba(244,244,244,0.08); border-radius: var(--mrk-radius);
	padding: 1.5rem; margin-bottom: 1.5rem;
}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #ship-to-different-address {
	font-family: var(--mrk-font-heading); font-weight: 700; color: var(--mrk-ghost-white);
}
.woocommerce-checkout .form-row label {
	color: rgba(244,244,244,0.6); font-size: 0.85rem;
}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
	background: var(--mrk-obsidian) !important; border: 0.5px solid rgba(244,244,244,0.15) !important;
	color: var(--mrk-ghost-white) !important; border-radius: var(--mrk-radius);
}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus {
	border-color: var(--mrk-volt) !important; box-shadow: 0 0 0 1px var(--mrk-volt) !important;
}

/* Payment method box (PayPal) — leave PayPal's own iframe/buttons alone,
   just style the WooCommerce wrapper around it so it doesn't look like a
   jarring white box sitting in the middle of a dark page. */
.woocommerce-checkout ul.wc_payment_methods {
	background: var(--mrk-charcoal); border: 0.5px solid rgba(244,244,244,0.08); border-radius: var(--mrk-radius);
	padding: 1rem;
}
.woocommerce-checkout ul.wc_payment_methods li label {
	color: var(--mrk-ghost-white);
}
.woocommerce-checkout .payment_box {
	background: rgba(244,244,244,0.03); color: rgba(244,244,244,0.7); border-radius: var(--mrk-radius);
}

/* Empty cart state */
.woocommerce-cart .cart-empty {
	background: var(--mrk-charcoal); border: 0.5px solid rgba(244,244,244,0.06); border-radius: var(--mrk-radius);
	padding: 3rem; text-align: center; color: rgba(244,244,244,0.6);
}
.woocommerce-cart .return-to-shop .button {
	display: inline-flex; margin-top: 1rem;
}
