/* =========================================================
   Tea Jagodic — Cart & Checkout (light shopping-flow theme)
   ========================================================= */

:root {
	--tjc-bg:    #f4f2ee;
	--tjc-card:  #ffffff;
	--tjc-ink:   #1c1b19;
	--tjc-muted: #7a756c;
	--tjc-line:  #e4e0d8;
	--tjc-gold:  var(--e-global-color-35d6237, #b48c4c);
	--tjc-dark:  var(--e-global-color-primary, #14100a);
	--tjc-serif: "Cormorant Garamond", Georgia, serif;
	--tjc-sans:  "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--tjc-maxw:  1200px;
}

body.woocommerce-cart,
body.woocommerce-checkout {
	background: var(--tjc-bg);
	color: var(--tjc-ink);
}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
	max-width: var(--tjc-maxw);
	margin: 0 auto;
	padding: 0 20px 80px;
	font-family: var(--tjc-sans);
	color: var(--tjc-ink);
}

/* Notices reuse the branded look already defined in shop.css if present;
   provide a light fallback here. */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-checkout .woocommerce-info {
	background: var(--tjc-card);
	border: 1px solid var(--tjc-line);
	border-radius: 12px;
	color: var(--tjc-ink);
}

/* ---- Cart table -------------------------------------------- */
.woocommerce-cart table.shop_table {
	border: 1px solid var(--tjc-line);
	border-radius: 14px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: var(--tjc-card);
	margin-bottom: 40px;
}
.woocommerce-cart table.shop_table thead th {
	background: transparent;
	font-family: var(--tjc-sans);
	font-weight: 600;
	font-size: 12px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--tjc-muted);
	padding: 18px 20px;
	border-bottom: 1px solid var(--tjc-line);
}
.woocommerce-cart table.shop_table td {
	padding: 20px;
	border-top: 1px solid var(--tjc-line);
	vertical-align: middle;
	color: var(--tjc-ink);
}
.woocommerce-cart table.shop_table tr:first-child td { border-top: 0; }

.woocommerce-cart table.shop_table .product-thumbnail img {
	width: 72px;
	height: auto;
	border-radius: 6px;
}
.woocommerce-cart table.shop_table .product-name a {
	font-family: var(--tjc-serif);
	font-size: 20px;
	color: var(--tjc-ink);
	text-decoration: none;
}
.woocommerce-cart table.shop_table .product-name a:hover { color: var(--tjc-gold); }
.woocommerce-cart table.shop_table .variation,
.woocommerce-cart table.shop_table .variation dd,
.woocommerce-cart table.shop_table .variation dt {
	font-size: 13px;
	color: var(--tjc-muted);
	margin: 2px 0;
}
.woocommerce-cart table.shop_table .amount { color: var(--tjc-ink); }

/* Remove (×) button */
.woocommerce-cart table.shop_table .product-remove a.remove {
	color: var(--tjc-muted) !important;
	font-size: 22px;
	line-height: 1;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: transparent !important;
}
.woocommerce-cart table.shop_table .product-remove a.remove:hover {
	color: #b3261e !important;
	background: #f3e7e6 !important;
}

/* Quantity stepper */
.woocommerce-cart .quantity input.qty {
	width: 68px;
	height: 44px;
	text-align: center;
	border: 1px solid var(--tjc-line);
	border-radius: 999px;
	background: #fff;
	color: var(--tjc-ink);
	font-size: 15px;
}

/* Coupon + actions row */
.woocommerce-cart .cart .actions {
	padding: 18px 0 0;
}
.woocommerce-cart .cart .actions .coupon input#coupon_code {
	height: 48px;
	border: 1px solid var(--tjc-line);
	border-radius: 999px;
	padding: 0 18px;
	background: #fff;
	min-width: 200px;
}
.woocommerce-cart .cart .actions .coupon .button,
.woocommerce-cart .cart .actions > .button {
	height: 48px;
	border-radius: 999px !important;
	background: #fff !important;
	color: var(--tjc-ink) !important;
	border: 1px solid var(--tjc-ink) !important;
	font-family: var(--tjc-sans) !important;
	font-size: 12px !important;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 0 24px !important;
	transition: background .2s ease, color .2s ease;
}
.woocommerce-cart .cart .actions .coupon .button:hover,
.woocommerce-cart .cart .actions > .button:hover {
	background: var(--tjc-ink) !important;
	color: #fff !important;
}

/* ---- Cart totals ------------------------------------------- */
.woocommerce-cart .cart-collaterals .cart_totals {
	float: right;
	width: 42%;
}
.woocommerce-cart .cart_totals h2 {
	font-family: var(--tjc-serif);
	font-weight: 500;
	font-size: 28px;
	color: var(--tjc-ink);
	margin: 0 0 16px;
}
.woocommerce-cart .cart_totals table.shop_table {
	border-radius: 14px;
}
.woocommerce-cart .cart_totals th {
	color: var(--tjc-muted);
	font-family: var(--tjc-sans);
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
	font-size: 14px;
}
.woocommerce-cart .cart_totals .order-total .amount {
	font-family: var(--tjc-serif);
	font-size: 22px;
	color: var(--tjc-ink);
}
.woocommerce-cart .cart_totals a.shipping-calculator-button { color: var(--tjc-gold); }

/* Proceed to checkout — branded button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #place_order {
	display: block;
	width: 100%;
	background-color: transparent !important;
	background-image: radial-gradient( at top left, var(--tjc-dark) 74%, #B48C4C8A 100% ) !important;
	color: var(--tjc-gold) !important;
	font-family: var(--tjc-serif) !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	text-transform: uppercase;
	letter-spacing: 1px;
	border: 1px solid var(--tjc-gold) !important;
	border-radius: 999px !important;
	padding: 16px 26px !important;
	height: auto !important;
	transition: opacity .25s ease;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout #place_order:hover { opacity: .9; }

/* ---- Responsive -------------------------------------------- */
@media (max-width: 782px) {
	.woocommerce-cart .cart-collaterals .cart_totals { float: none; width: 100%; }
	.woocommerce-cart table.shop_table .product-thumbnail img { width: 56px; }
	.woocommerce-cart .cart .actions .coupon { display: flex; gap: 8px; margin-bottom: 12px; }
	.woocommerce-cart .cart .actions .coupon input#coupon_code { min-width: 0; flex: 1; }
}

/* =========================================================
   Cart — two-column premium layout (items | sticky summary)
   ========================================================= */
.woocommerce-cart .woocommerce {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 44px;
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper {
	flex: 1 1 100%;
}
.woocommerce-cart form.woocommerce-cart-form {
	flex: 1 1 56%;
	min-width: 0;
	margin: 0;
}
.woocommerce-cart .cart-collaterals {
	flex: 1 1 32%;
	width: auto !important;
}
.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: 100% !important;
	background: var(--tjc-card);
	border: 1px solid var(--tjc-line);
	border-radius: 16px;
	padding: 26px 28px;
	position: sticky;
	top: 24px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .05);
}
.woocommerce-cart .cart_totals table.shop_table {
	border: 0;
	margin: 0 0 4px;
	background: transparent;
	border-radius: 0;
}
.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
	padding: 12px 0;
	border-top: 1px solid var(--tjc-line);
	border-bottom: 0;
}
.woocommerce-cart .cart_totals table.shop_table tr:first-child th,
.woocommerce-cart .cart_totals table.shop_table tr:first-child td {
	border-top: 0;
}
.woocommerce-cart .wc-proceed-to-checkout { padding: 18px 0 0; }

/* Bigger thumbnails + row hover */
.woocommerce-cart table.shop_table .product-thumbnail img { width: 90px; }
.woocommerce-cart table.shop_table tbody tr:hover td { background: #faf9f6; }
.woocommerce-cart table.shop_table .product-remove { width: 44px; text-align: center; }

@media (max-width: 900px) {
	.woocommerce-cart form.woocommerce-cart-form,
	.woocommerce-cart .cart-collaterals {
		flex: 1 1 100%;
	}
	.woocommerce-cart .cart-collaterals .cart_totals { position: static; }
}

/* =========================================================
   Cart table — compact & readable inside the items column
   ========================================================= */
.woocommerce-cart form.woocommerce-cart-form { flex-basis: 60%; }
.woocommerce-cart .cart-collaterals { flex-basis: 34%; }

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td {
	padding: 14px 12px;
}
/* Remove column: tight */
.woocommerce-cart table.shop_table .product-remove {
	width: 34px;
	padding-left: 8px;
	padding-right: 4px;
	text-align: center;
}
/* Thumbnail: smaller */
.woocommerce-cart table.shop_table .product-thumbnail { width: 76px; }
.woocommerce-cart table.shop_table .product-thumbnail img { width: 64px; }
/* Name: give it the room, don't break to one word per line */
.woocommerce-cart table.shop_table .product-name {
	width: auto;
	white-space: normal;
}
.woocommerce-cart table.shop_table .product-name a {
	font-size: 17px;
	line-height: 1.25;
	display: inline-block;
	margin-bottom: 4px;
}
.woocommerce-cart table.shop_table .variation p { margin: 1px 0; }
.woocommerce-cart table.shop_table .variation dt { font-weight: 500; }
/* Numeric columns: keep on one line, tidy alignment */
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal {
	white-space: nowrap;
	text-align: right;
	font-size: 15px;
}
.woocommerce-cart table.shop_table .product-quantity { text-align: center; }
.woocommerce-cart .quantity input.qty { width: 60px; height: 40px; }
/* Header labels align with their columns */
.woocommerce-cart table.shop_table thead th.product-price,
.woocommerce-cart table.shop_table thead th.product-subtotal { text-align: right; }
.woocommerce-cart table.shop_table thead th.product-quantity { text-align: center; }

/* =========================================================
   Cart — borderless table, no coupon/update actions
   ========================================================= */
.woocommerce-cart table.shop_table,
.woocommerce-cart table.shop_table td,
.woocommerce-cart table.shop_table th {
	border: 0 !important;
	box-shadow: none;
}
.woocommerce-cart table.shop_table {
	background: transparent;
	border-radius: 0;
	margin-bottom: 0;
}
.woocommerce-cart table.shop_table thead th {
	border-bottom: 0 !important;
}
/* Remove the coupon field, Apply coupon and Update cart row entirely */
.woocommerce-cart .cart .actions,
.woocommerce-cart form.woocommerce-cart-form .actions {
	display: none !important;
}

/* Hide the site footer on the cart page */
.woocommerce-cart .turbo-footer-template,
.woocommerce-cart .ehf-footer,
.woocommerce-cart .elementor-location-footer,
.woocommerce-cart footer.site-footer {
	display: none !important;
}
