/* WooCommerce Dark Luxury Custom Styling - Premium Aesthetic */

:root {
	--bg-black: #01060B;
	--bg-deep-navy: #03101A;
	--bg-navy: #061A2A;
	--bg-blue-dark: #08263A;

	--cyan-primary: #00BFFF;
	--cyan-bright: #16D4FF;
	--cyan-soft: #46DFFF;
	--cyan-deep: #008FC7;

	--silver-light: #F2F4F6;
	--silver: #C9D0D7;
	--silver-dark: #7C8792;

	--text-white: #F5F7FA;
	--text-gray: #B7C1CA;
	--text-muted: #7F8B96;

	--border-soft: rgba(255, 255, 255, 0.08);
	--border-cyan: rgba(0, 191, 255, 0.38);

	--card-bg: #07131E;
	--card-bg-dark: #030A11;
	--shadow-card: 0 20px 40px rgba(0, 0, 0, 0.44);
	--transition-smooth: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Global Dark Base for WooCommerce */
body.woocommerce,
body.woocommerce-page,
body.woocommerce-cart,
body.woocommerce-checkout {
	background-color: var(--bg-black) !important;
	color: var(--text-gray) !important;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

/* Containers */
.woocommerce-container,
.woocommerce-page .site-content,
.woocommerce-page #content,
.woocommerce-checkout,
.woocommerce-cart {
	max-width: 1250px !important;
	margin: 60px auto !important;
	padding: 0 25px !important;
	animation: fadeInUp WooCommerce 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

@keyframes fadeInUpWooCommerce {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Heading Typography */
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.woocommerce-page h1, .woocommerce-page h2, .woocommerce-page h3 {
	color: var(--text-white) !important;
	font-weight: 800 !important;
	letter-spacing: -0.02em !important;
}

/* ==========================================
   SINGLE PRODUCT PAGE STYLING
   ========================================== */
.woocommerce div.product {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr) !important;
	gap: 60px !important;
	margin-top: 40px !important;
}

@media (max-width: 991px) {
	.woocommerce div.product {
		grid-template-columns: 1fr !important;
		gap: 34px !important;
	}
}

/* Gallery & Image Container */
.woocommerce div.product .woocommerce-product-gallery {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

.woocommerce div.product .woocommerce-product-gallery__wrapper {
	border-radius: 24px !important;
	overflow: hidden !important;
	border: 1px solid var(--border-soft) !important;
	box-shadow: var(--shadow-card) !important;
	background: var(--card-bg-dark) !important;
	transition: var(--transition-smooth) !important;
}

.woocommerce div.product .woocommerce-product-gallery__wrapper:hover {
	border-color: var(--border-cyan) !important;
	box-shadow: 0 24px 48px rgba(0, 191, 255, 0.12) !important;
}

.woocommerce div.product .woocommerce-product-gallery img {
	width: 100% !important;
	height: auto !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.woocommerce div.product .woocommerce-product-gallery__wrapper:hover img {
	transform: scale(1.02) !important;
}

/* Product Info (Right Column) */
.woocommerce div.product .summary {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
}

/* Title & Breadcrumbs */
.woocommerce div.product .product_title {
	font-size: clamp(2rem, 3.8vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	color: var(--text-white) !important;
	margin: 0 !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
}

/* Price block */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-size: 2.1rem !important;
	font-weight: 800 !important;
	color: var(--cyan-primary) !important;
	margin: 4px 0 0 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 12px !important;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	font-size: 1.35rem !important;
	color: var(--text-muted) !important;
	font-weight: 500 !important;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	text-decoration: none !important;
	color: var(--cyan-bright) !important;
}

/* Short Description */
.woocommerce div.product .woocommerce-product-details__short-description {
	font-size: 1.1rem !important;
	line-height: 1.7 !important;
	color: var(--text-gray) !important;
	border-bottom: 1px solid var(--border-soft) !important;
	padding-bottom: 24px !important;
	margin: 4px 0 !important;
}

/* Add to Cart Actions Block */
.woocommerce div.product form.cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 16px !important;
	margin: 8px 0 !important;
}

/* Quantity input wrapper */
.woocommerce div.product form.cart .quantity {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
}

.woocommerce div.product form.cart .quantity input.qty {
	width: 72px !important;
	height: 56px !important;
	padding: 0 10px !important;
	border-radius: 14px !important;
	border: 1px solid var(--border-soft) !important;
	background: rgba(1, 6, 11, 0.88) !important;
	color: var(--text-white) !important;
	font-weight: 700 !important;
	text-align: center !important;
	font-size: 1.05rem !important;
	font-family: inherit !important;
	transition: border-color 0.2s ease !important;
}

.woocommerce div.product form.cart .quantity input.qty:focus {
	border-color: var(--cyan-primary) !important;
	outline: none !important;
	box-shadow: 0 0 10px rgba(0, 191, 255, 0.22) !important;
}

/* Add to Cart Button */
.woocommerce div.product form.cart .single_add_to_cart_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 56px !important;
	padding: 0 42px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 0.92rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(126, 205, 255, 0.74) !important;
	background: linear-gradient(180deg, #96d2ff 0%, #6cbcff 28%, #4e98ee 70%, #8ecbff 100%) !important;
	color: #081018 !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.16),
		0 14px 26px rgba(0, 102, 204, 0.16) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
	transform: scale(1.02) !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.26),
		0 18px 36px rgba(0, 102, 204, 0.28) !important;
}

/* Gift Cards product form */
body.postid-176.woocommerce div.product form.variations_form.cart {
	display: block !important;
	width: 100% !important;
	margin-top: 8px !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart .variations {
	display: block !important;
	width: 100% !important;
	margin: 0 0 22px !important;
	padding: 20px !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 18px !important;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0)),
		rgba(7, 19, 30, 0.72) !important;
	box-shadow: 0 18px 34px rgba(0, 0, 0, 0.2) !important;
	box-sizing: border-box !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart .variations tbody,
body.postid-176.woocommerce div.product form.variations_form.cart .variations tr,
body.postid-176.woocommerce div.product form.variations_form.cart .variations th,
body.postid-176.woocommerce div.product form.variations_form.cart .variations td {
	display: block !important;
	width: 100% !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart .variations tr {
	display: grid !important;
	grid-template-columns: 150px minmax(0, 1fr) !important;
	gap: 18px !important;
	align-items: center !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart .variations label,
body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	margin: 0 0 8px !important;
	color: var(--text-white) !important;
	font-size: 0.92rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.03em !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart select,
body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form .input-text {
	width: 100% !important;
	min-height: 54px !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 14px !important;
	background: rgba(1, 6, 11, 0.86) !important;
	color: var(--text-white) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
	font-family: inherit !important;
	font-size: 1rem !important;
	font-weight: 650 !important;
	outline: none !important;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease !important;
	box-sizing: border-box !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart select {
	padding: 0 44px 0 16px !important;
	appearance: auto !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart select option {
	background: #07131e !important;
	color: #f5f7fa !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form .input-text {
	padding: 0 16px !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form textarea.input-text {
	min-height: 116px !important;
	padding: 14px 16px !important;
	resize: vertical !important;
	line-height: 1.55 !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart select:focus,
body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form .input-text:focus {
	border-color: var(--cyan-primary) !important;
	background: rgba(3, 16, 26, 0.96) !important;
	box-shadow: 0 0 0 3px rgba(0, 191, 255, 0.16) !important;
}

body.postid-176.woocommerce div.product form.variations_form.cart .reset_variations,
body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form .reset_delivery_date {
	display: inline-flex !important;
	margin-top: 10px !important;
	color: var(--cyan-primary) !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 18px !important;
	margin: 0 0 22px !important;
	padding: 22px !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 20px !important;
	background:
		radial-gradient(circle at 92% 8%, rgba(0, 191, 255, 0.12), transparent 32%),
		rgba(7, 19, 30, 0.58) !important;
	box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18) !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form .form-row {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_to_multiple,
body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_message {
	grid-column: 1 / -1 !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form abbr.required {
	color: #ff7c68 !important;
	text-decoration: none !important;
}

body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form small.description {
	display: block !important;
	margin-top: 8px !important;
	color: var(--text-muted) !important;
	font-size: 0.82rem !important;
	line-height: 1.45 !important;
}

body.postid-176.woocommerce div.product .single_variation_wrap {
	width: 100% !important;
}

body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 14px !important;
}

body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart .quantity {
	display: none !important;
}

body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button {
	min-width: min(100%, 280px) !important;
	min-height: 58px !important;
}

body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button.disabled,
body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button:disabled {
	opacity: 0.58 !important;
	cursor: not-allowed !important;
	filter: saturate(0.72) !important;
}

body.postid-176.woocommerce div.product .wc-stripe-product-checkout-container {
	width: 100% !important;
	max-width: 420px !important;
	margin-top: 10px !important;
}

body.postid-176.woocommerce div.product .wc_stripe_product_payment_methods {
	margin: 0 !important;
	padding: 0 !important;
}

body.postid-176.woocommerce div.product .wc_stripe_product_payment_methods li {
	margin: 0 0 10px !important;
}

body.postid-176.woocommerce div.product .wc-stripe-product-checkout-container button,
body.postid-176.woocommerce div.product .wc-stripe-product-checkout-container iframe {
	border-radius: 14px !important;
	overflow: hidden !important;
}

@media (max-width: 767px) {
	body.postid-176.woocommerce div.product form.variations_form.cart .variations,
	body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form {
		padding: 18px !important;
		border-radius: 16px !important;
	}

	body.postid-176.woocommerce div.product form.variations_form.cart .variations tr,
	body.postid-176.woocommerce div.product .woocommerce_gc_giftcard_form {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	body.postid-176.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button,
	body.postid-176.woocommerce div.product .wc-stripe-product-checkout-container {
		width: 100% !important;
		max-width: none !important;
	}
}

/* Metadata (SKU, Categories) */
.woocommerce div.product .product_meta {
	font-size: 0.9rem !important;
	color: var(--text-muted) !important;
	border-top: 1px solid var(--border-soft) !important;
	padding-top: 20px !important;
	display: grid !important;
	gap: 8px !important;
}

.woocommerce div.product .product_meta a {
	color: var(--text-gray) !important;
	text-decoration: none !important;
}

.woocommerce div.product .product_meta a:hover {
	color: var(--cyan-primary) !important;
}

/* Product Specifications / Description Tabs */
.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1 !important;
	margin-top: 50px !important;
	border-top: 1px solid var(--border-soft) !important;
	padding-top: 40px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex !important;
	gap: 32px !important;
	padding: 0 !important;
	margin: 0 0 28px 0 !important;
	border-bottom: 1px solid var(--border-soft) !important;
	list-style: none !important;
	background: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	padding: 12px 0 !important;
	position: relative !important;
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-weight: 700 !important;
	font-size: 1.05rem !important;
	color: var(--text-muted) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--cyan-primary) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
	content: "" !important;
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	bottom: -1px !important;
	height: 3px !important;
	background: var(--cyan-primary) !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
	color: var(--text-gray) !important;
	line-height: 1.72 !important;
	font-size: 1.06rem !important;
}

/* Reviews Panel & Form */
.woocommerce div.product #reviews #comments ol.commentlist li {
	background: var(--card-bg-dark) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 20px !important;
	padding: 24px !important;
	margin-bottom: 22px !important;
}

.woocommerce div.product #reviews #review_form_wrapper {
	background: var(--card-bg-dark) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 24px !important;
	padding: 36px !important;
	margin-top: 40px !important;
}

/* ==========================================
   CART & CHECKOUT PAGES STYLING (DARK LUXURY)
   ========================================== */

/* WooCommerce Global Messages & Alerts */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice {
	background: linear-gradient(180deg, rgba(8, 38, 58, 0.96) 0%, rgba(3, 16, 26, 0.98) 100%) !important;
	border: 1px solid var(--border-cyan) !important;
	border-left: 4px solid var(--cyan-primary) !important;
	border-radius: 16px !important;
	padding: 20px 24px !important;
	color: var(--text-white) !important;
	box-shadow: 0 12px 24px rgba(0, 191, 255, 0.06) !important;
	font-weight: 500 !important;
	line-height: 1.6 !important;
	margin-bottom: 30px !important;
	font-size: 0.98rem !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
}

.woocommerce-error {
	border-color: rgba(239, 68, 68, 0.38) !important;
	border-left-color: #ef4444 !important;
	box-shadow: 0 12px 24px rgba(239, 68, 68, 0.06) !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button {
	background: var(--bg-blue-dark) !important;
	color: var(--cyan-bright) !important;
	border: 1px solid var(--border-cyan) !important;
	border-radius: 999px !important;
	padding: 8px 20px !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	transition: var(--transition-smooth) !important;
	margin: 0 !important;
	float: none !important;
	display: inline-flex !important;
}

.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-error a.button:hover {
	background: var(--cyan-primary) !important;
	color: var(--bg-black) !important;
	box-shadow: 0 0 14px rgba(0, 191, 255, 0.28) !important;
}

/* Two-Column Cart Layout for Desktop */
@media (min-width: 992px) {
	.woocommerce-cart .woocommerce {
		display: flex !important;
		align-items: flex-start !important;
		gap: 40px !important;
		flex-wrap: wrap !important;
		width: 100% !important;
	}

	.woocommerce-cart .woocommerce-cart-form {
		flex: 1 1 600px !important;
		max-width: 64% !important;
		margin: 0 !important;
	}

	.woocommerce-cart .cart-collaterals {
		flex: 0 0 380px !important;
		width: 36% !important;
		max-width: 380px !important;
		margin: 0 !important;
		position: sticky !important;
		top: 120px !important;
	}
}

/* Table Style Reset and Luxury Card Styling */
table.shop_table.cart {
	background: var(--card-bg-dark) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 24px !important;
	overflow: hidden !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	box-shadow: var(--shadow-card) !important;
	width: 100% !important;
	margin-bottom: 30px !important;
}

table.shop_table.cart thead {
	background: rgba(8, 38, 58, 0.44) !important;
}

table.shop_table.cart thead th {
	padding: 20px 24px !important;
	border-bottom: 1px solid var(--border-soft) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--text-muted) !important;
	text-align: left !important;
}

table.shop_table.cart tbody td {
	padding: 24px 24px !important;
	border-bottom: 1px solid var(--border-soft) !important;
	vertical-align: middle !important;
	color: var(--text-gray) !important;
}

table.shop_table.cart tbody tr:last-child td {
	border-bottom: none !important;
}

/* Specific Cart Column Elements */
/* 1. Remove Button */
td.product-remove {
	width: 48px !important;
	text-align: center !important;
}

td.product-remove a.remove {
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.04) !important;
	color: var(--text-muted) !important;
	font-size: 1.2rem !important;
	line-height: 28px !important;
	border: 1px solid var(--border-soft) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: var(--transition-smooth) !important;
	text-decoration: none !important;
}

td.product-remove a.remove:hover {
	background: rgba(239, 68, 68, 0.15) !important;
	color: #ef4444 !important;
	border-color: rgba(239, 68, 68, 0.3) !important;
	transform: scale(1.08) !important;
	box-shadow: 0 0 10px rgba(239, 68, 68, 0.2) !important;
}

/* 2. Product Thumbnail */
td.product-thumbnail {
	width: 100px !important;
}

td.product-thumbnail img {
	width: 72px !important;
	height: 72px !important;
	border-radius: 14px !important;
	border: 1px solid var(--border-soft) !important;
	background: var(--bg-black) !important;
	padding: 4px !important;
	object-fit: cover !important;
	transition: var(--transition-smooth) !important;
}

td.product-thumbnail a:hover img {
	border-color: var(--border-cyan) !important;
	transform: scale(1.04) !important;
}

/* 3. Product Name */
td.product-name {
	font-size: 1.05rem !important;
}

td.product-name a {
	font-weight: 700 !important;
	color: var(--text-white) !important;
	text-decoration: none !important;
	transition: var(--transition-smooth) !important;
	line-height: 1.4 !important;
	display: inline-block !important;
}

td.product-name a:hover {
	color: var(--cyan-primary) !important;
}

/* Product Meta / Variations styling */
td.product-name .variation {
	margin-top: 6px !important;
	font-size: 0.85rem !important;
	color: var(--text-muted) !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	border-left: 2px solid var(--border-cyan) !important;
	padding-left: 10px !important;
}

td.product-name .variation dt {
	font-weight: 600 !important;
	color: var(--text-gray) !important;
	float: left !important;
	margin: 0 !important;
}

td.product-name .variation dd {
	margin: 0 15px 0 0 !important;
	float: left !important;
}

td.product-name .variation dd p {
	margin: 0 !important;
}

/* 4. Product Price */
td.product-price {
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	color: var(--text-gray) !important;
}

/* 5. Product Quantity Input */
td.product-quantity .quantity {
	display: inline-flex !important;
	align-items: center !important;
}

td.product-quantity .quantity input.qty {
	width: 64px !important;
	height: 44px !important;
	border-radius: 10px !important;
	background: rgba(1, 6, 11, 0.82) !important;
	border: 1px solid var(--border-soft) !important;
	color: var(--text-white) !important;
	font-weight: 700 !important;
	text-align: center !important;
	font-size: 0.95rem !important;
	font-family: inherit !important;
	transition: var(--transition-smooth) !important;
}

td.product-quantity .quantity input.qty:focus {
	border-color: var(--cyan-primary) !important;
	outline: none !important;
	box-shadow: 0 0 8px rgba(0, 191, 255, 0.22) !important;
}

/* 6. Product Subtotal */
td.product-subtotal {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: var(--cyan-bright) !important;
}

/* Table Actions (Coupon & Update Cart) */
table.shop_table.cart td.actions {
	padding: 24px !important;
	background: rgba(8, 38, 58, 0.15) !important;
	border-top: 1px solid var(--border-soft) !important;
}

/* Coupon Area */
table.shop_table.cart td.actions .coupon {
	float: left !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

table.shop_table.cart td.actions .coupon label {
	display: none !important;
}

table.shop_table.cart td.actions .coupon input#coupon_code {
	height: 48px !important;
	width: 160px !important;
	border-radius: 12px !important;
	background: rgba(1, 6, 11, 0.82) !important;
	border: 1px solid var(--border-soft) !important;
	color: var(--text-white) !important;
	padding: 0 16px !important;
	font-size: 0.9rem !important;
	transition: var(--transition-smooth) !important;
}

table.shop_table.cart td.actions .coupon input#coupon_code:focus {
	border-color: var(--cyan-primary) !important;
	outline: none !important;
	box-shadow: 0 0 8px rgba(0, 191, 255, 0.22) !important;
}

table.shop_table.cart td.actions button.button {
	height: 48px !important;
	border-radius: 999px !important;
	padding: 0 28px !important;
	font-size: 0.8rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	border: 1px solid var(--border-cyan) !important;
	background: var(--bg-blue-dark) !important;
	color: var(--text-white) !important;
	cursor: pointer !important;
	transition: var(--transition-smooth) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

table.shop_table.cart td.actions button.button:hover {
	background: var(--cyan-primary) !important;
	color: var(--bg-black) !important;
	border-color: var(--cyan-primary) !important;
	box-shadow: 0 0 15px rgba(0, 191, 255, 0.22) !important;
}

/* Update Cart Button (Float Right) */
table.shop_table.cart td.actions button[name="update_cart"] {
	float: right !important;
	background: transparent !important;
	color: var(--text-white) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	opacity: 1 !important;
}

table.shop_table.cart td.actions button[name="update_cart"]:hover {
	border-color: var(--cyan-primary) !important;
	color: var(--cyan-primary) !important;
}

table.shop_table.cart td.actions button[name="update_cart"]:disabled,
table.shop_table.cart td.actions button[name="update_cart"][disabled] {
	opacity: 0.38 !important;
	background: transparent !important;
	color: var(--text-muted) !important;
	border-color: var(--border-soft) !important;
	cursor: not-allowed !important;
	box-shadow: none !important;
}

/* Cart Collaterals & Totals Section */
.cart-collaterals {
	width: 100% !important;
}

.cart_totals {
	background: var(--card-bg) !important;
	padding: 36px !important;
	border-radius: 24px !important;
	border: 1px solid var(--border-soft) !important;
	box-shadow: var(--shadow-card) !important;
	position: relative !important;
}

.cart_totals::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	border-radius: 24px !important;
	padding: 1px !important;
	background: linear-gradient(180deg, rgba(0, 191, 255, 0.12) 0%, transparent 100%) !important;
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
	-webkit-mask-composite: xor !important;
 mask-composite: exclude !important;
	pointer-events: none !important;
}

.cart_totals h2 {
	font-size: 1.35rem !important;
	font-weight: 800 !important;
	margin-bottom: 24px !important;
	color: var(--text-white) !important;
	letter-spacing: -0.5px !important;
	text-transform: uppercase !important;
	position: relative !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid var(--border-soft) !important;
}

.cart_totals h2::after {
	content: '' !important;
	position: absolute !important;
	bottom: -1px !important;
	left: 0 !important;
	width: 40px !important;
	height: 3px !important;
	background: var(--cyan-primary) !important;
}

.cart_totals table {
	width: 100% !important;
	border-collapse: collapse !important;
	margin-bottom: 24px !important;
}

.cart_totals table tr th,
.cart_totals table tr td {
	padding: 16px 0 !important;
	border-bottom: 1px solid var(--border-soft) !important;
	font-size: 0.95rem !important;
	color: var(--text-gray) !important;
	background: transparent !important;
}

.cart_totals table tr th {
	font-weight: 600 !important;
	text-align: left !important;
	width: 35% !important;
}

.cart_totals table tr td {
	text-align: right !important;
}

/* Cart Subtotal, Shipping, and Final Order Total in Totals Table */
.cart_totals table tr.cart-subtotal td span.woocommerce-Price-amount {
	font-weight: 600 !important;
	color: var(--text-white) !important;
}

.cart_totals table tr.shipping td {
	font-size: 0.9rem !important;
	color: var(--text-muted) !important;
}

.cart_totals table tr.order-total th {
	font-size: 1.1rem !important;
	color: var(--text-white) !important;
}

.cart_totals table tr.order-total td {
	font-size: 1.6rem !important;
	font-weight: 800 !important;
	color: var(--cyan-bright) !important;
	padding-top: 20px !important;
}

/* Proceed to Checkout Main Button */
.wc-proceed-to-checkout {
	padding: 0 !important;
	margin: 0 !important;
}

.wc-proceed-to-checkout a.checkout-button {
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 56px !important;
	padding: 0 32px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(126, 205, 255, 0.74) !important;
	background: linear-gradient(180deg, #96d2ff 0%, #6cbcff 28%, #4e98ee 70%, #8ecbff 100%) !important;
	color: #081018 !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.16),
		0 14px 26px rgba(0, 102, 204, 0.16) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease !important;
	text-decoration: none !important;
	margin: 0 !important;
	float: none !important;
}

.wc-proceed-to-checkout a.checkout-button:hover {
	transform: scale(1.02) !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.26),
		0 18px 36px rgba(0, 102, 204, 0.28) !important;
	color: #081018 !important;
}

/* Empty Cart Page Styling */
.woocommerce-cart .woocommerce-info {
	background: linear-gradient(180deg, rgba(8, 38, 58, 0.44) 0%, rgba(3, 10, 17, 0.88) 100%) !important;
	border: 1px dashed var(--border-cyan) !important;
	border-left: 4px solid var(--cyan-primary) !important;
	border-radius: 20px !important;
	padding: 40px !important;
	text-align: center !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 20px !important;
}

.woocommerce-cart .woocommerce-info::before {
	content: "\2298" !important; /* Elegant empty sign */
	font-size: 3rem !important;
	color: var(--cyan-primary) !important;
	display: block !important;
	margin-bottom: 10px !important;
	opacity: 0.82 !important;
}

.cart-empty.woocommerce-info {
	font-size: 1.15rem !important;
	color: var(--text-gray) !important;
}

.woocommerce-cart p.return-to-shop {
	text-align: center !important;
	margin-top: 10px !important;
	width: 100% !important;
}

.woocommerce-cart p.return-to-shop a.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 52px !important;
	padding: 0 36px !important;
	border-radius: 999px !important;
	font-size: 0.88rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	background: var(--bg-blue-dark) !important;
	color: var(--cyan-bright) !important;
	border: 1px solid var(--border-cyan) !important;
	transition: var(--transition-smooth) !important;
	text-decoration: none !important;
	box-shadow: 0 10px 20px rgba(0, 191, 255, 0.08) !important;
}

.woocommerce-cart p.return-to-shop a.button:hover {
	background: var(--cyan-primary) !important;
	color: var(--bg-black) !important;
	border-color: var(--cyan-primary) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 28px rgba(0, 191, 255, 0.22) !important;
}

/* ==========================================
   MOBILE RESPONSIVE STYLING FOR CART TABLE
   ========================================== */
@media (max-width: 767px) {
	/* Convert table to block list */
	table.shop_table.cart,
	table.shop_table.cart thead,
	table.shop_table.cart tbody,
	table.shop_table.cart tr,
	table.shop_table.cart td {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	table.shop_table.cart thead {
		display: none !important; /* Hide column headings */
	}

	table.shop_table.cart tr.cart_item {
		padding: 24px 20px !important;
		border-bottom: 1px solid var(--border-soft) !important;
		position: relative !important;
		background: rgba(1, 6, 11, 0.3) !important;
	}

	table.shop_table.cart tr.cart_item:last-child {
		border-bottom: none !important;
	}

	table.shop_table.cart td {
		text-align: right !important;
		padding: 10px 0 !important;
		border-bottom: none !important;
		font-size: 0.95rem !important;
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
	}

	/* Before elements to act as labels */
	table.shop_table.cart td::before {
		content: attr(data-title) !important;
		font-weight: 700 !important;
		text-transform: uppercase !important;
		font-size: 0.75rem !important;
		color: var(--text-muted) !important;
		letter-spacing: 0.05em !important;
		float: left !important;
	}

	/* Hide labels for remove, thumbnail, and actions */
	table.shop_table.cart td.product-remove::before,
	table.shop_table.cart td.product-thumbnail::before,
	table.shop_table.cart td.actions::before {
		display: none !important;
	}

	/* Adjust alignment and padding of cell elements */
	table.shop_table.cart td.product-remove {
		position: absolute !important;
		top: 16px !important;
		right: 16px !important;
		width: auto !important;
		padding: 0 !important;
		z-index: 10 !important;
		display: block !important;
	}

	table.shop_table.cart td.product-thumbnail {
		display: flex !important;
		justify-content: center !important;
		margin-bottom: 15px !important;
		padding: 0 !important;
	}

	table.shop_table.cart td.product-thumbnail img {
		width: 90px !important;
		height: 90px !important;
	}

	table.shop_table.cart td.product-name {
		font-size: 1.1rem !important;
		justify-content: center !important;
		text-align: center !important;
		flex-direction: column !important;
		gap: 6px !important;
		padding: 10px 0 !important;
	}

	table.shop_table.cart td.product-name a {
		text-align: center !important;
	}

	table.shop_table.cart td.product-name .variation {
		justify-content: center !important;
		border-left: none !important;
		padding-left: 0 !important;
	}

	table.shop_table.cart td.product-price,
	table.shop_table.cart td.product-quantity,
	table.shop_table.cart td.product-subtotal {
		padding: 12px 0 !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
	}

	table.shop_table.cart td.product-subtotal {
		border-bottom: none !important;
	}

	table.shop_table.cart td.actions {
		display: flex !important;
		flex-direction: column !important;
		gap: 20px !important;
		align-items: stretch !important;
		padding: 24px 20px !important;
	}

	table.shop_table.cart td.actions .coupon {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		gap: 12px !important;
	}

	table.shop_table.cart td.actions .coupon input#coupon_code {
		width: 100% !important;
		text-align: center !important;
	}

	table.shop_table.cart td.actions .coupon button.button,
	table.shop_table.cart td.actions button[name="update_cart"] {
		width: 100% !important;
		float: none !important;
	}
}
}

/* ==========================================
   WOOCOMMERCE GUTENBERG BLOCKS - CART CUSTOM STYLING
   ========================================== */

/* Main Gutenberg block outer title */
.woocommerce-cart h1.wp-block-post-title,
.woocommerce-cart h1 {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 800 !important;
	font-size: clamp(2rem, 4vw, 2.85rem) !important;
	letter-spacing: -0.02em !important;
	color: var(--text-white) !important;
	margin-top: 20px !important;
	margin-bottom: 35px !important;
}

/* Layout container spacing */
.wc-block-cart__main-container {
	gap: 40px !important;
}

/* Left Column - Gutenberg Table Deconstruction */
table.wc-block-cart-items,
.wc-block-cart-items {
	display: block !important;
	width: 100% !important;
	border: none !important;
	background: transparent !important;
	border-collapse: collapse !important;
}

.wc-block-cart-items thead {
	display: none !important; /* Hide native ugly table headers */
}

.wc-block-cart-items tbody {
	display: block !important;
	width: 100% !important;
	background: transparent !important;
}

/* Left Column - Product Rows as Luxury Cards */
.wc-block-cart-items__row,
.wc-block-cart-item,
.wc-block-cart-items tbody tr {
	background: rgba(7, 19, 30, 0.4) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 20px !important;
	padding: 24px !important;
	margin-bottom: 20px !important;
	transition: var(--transition-smooth) !important;
	display: grid !important;
	grid-template-columns: 80px minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 24px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.wc-block-cart-items__row:hover,
.wc-block-cart-item:hover {
	border-color: var(--border-cyan) !important;
	background: rgba(7, 19, 30, 0.68) !important;
	box-shadow: 0 16px 32px rgba(0, 191, 255, 0.05) !important;
	transform: translateY(-2px) !important;
}

/* Row elements layout adjustments */
.wc-block-cart-items tbody tr td,
.wc-block-cart-items__row-cell {
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Product Thumbnail in Gutenberg block */
.wc-block-components-product-image,
.wc-block-cart-item__image {
	width: 80px !important;
	height: 80px !important;
	flex-shrink: 0 !important;
}

.wc-block-components-product-image img,
.wc-block-cart-item__image img {
	width: 100% !important;
	height: 100% !important;
	border-radius: 12px !important;
	border: 1px solid var(--border-soft) !important;
	background: var(--bg-black) !important;
	padding: 4px !important;
	object-fit: cover !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-product-image:hover img,
.wc-block-cart-item__image:hover img {
	border-color: var(--border-cyan) !important;
	transform: scale(1.05) !important;
}

/* Product Info (Title & Metadata) */
.wc-block-cart-item__wrap {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	width: 100% !important;
	gap: 8px !important;
}

.wc-block-components-product-name {
	font-family: inherit !important;
	font-size: 1.05rem !important;
	line-height: 1.4 !important;
}

.wc-block-components-product-name,
.wc-block-components-product-name a,
.wc-block-cart-item__name,
.wc-block-cart-item__name a {
	font-weight: 700 !important;
	color: var(--text-white) !important;
	text-decoration: none !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-product-name:hover,
.wc-block-components-product-name a:hover,
.wc-block-cart-item__name:hover,
.wc-block-cart-item__name a:hover {
	color: var(--cyan-primary) !important;
	text-decoration: none !important;
}

/* Price Value in Block Row */
.wc-block-components-product-price,
.wc-block-cart-item__price {
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	color: var(--text-gray) !important;
	margin-top: 4px !important;
}

/* Quantity and Trash Controls Alignment block */
.wc-block-cart-item__quantity {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin-top: 14px !important;
}

/* Quantity input capsule styling */
.wc-block-components-quantity-selector,
.wc-block-cart-item__quantity-selector {
	border: 1px solid var(--border-soft) !important;
	border-radius: 12px !important;
	background: rgba(1, 6, 11, 0.88) !important;
	padding: 2px !important;
	display: inline-flex !important;
	align-items: center !important;
	height: 42px !important;
	box-sizing: border-box !important;
}

.wc-block-components-quantity-selector__button,
.wc-block-cart-item__quantity-selector button {
	background: transparent !important;
	border: none !important;
	color: var(--text-muted) !important;
	cursor: pointer !important;
	width: 32px !important;
	height: 32px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 8px !important;
	font-size: 1.1rem !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-quantity-selector__button:hover,
.wc-block-cart-item__quantity-selector button:hover {
	color: var(--cyan-bright) !important;
	background: rgba(255, 255, 255, 0.04) !important;
}

.wc-block-components-quantity-selector__input,
.wc-block-cart-item__quantity-selector input {
	background: transparent !important;
	border: none !important;
	color: var(--text-white) !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	text-align: center !important;
	width: 36px !important;
	padding: 0 !important;
	box-shadow: none !important;
}

.wc-block-components-quantity-selector__input:focus,
.wc-block-cart-item__quantity-selector input:focus {
	outline: none !important;
	border: none !important;
	box-shadow: none !important;
}

/* Remove button / Trash Icon styling */
.wc-block-cart-item__remove-link,
.wc-block-components-product-button {
	color: var(--text-muted) !important;
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 50% !important;
	width: 36px !important;
	height: 36px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: var(--transition-smooth) !important;
	cursor: pointer !important;
	text-decoration: none !important;
}

.wc-block-cart-item__remove-link:hover,
.wc-block-components-product-button:hover {
	background: rgba(239, 68, 68, 0.15) !important;
	color: #ef4444 !important;
	border-color: rgba(239, 68, 68, 0.3) !important;
	transform: scale(1.08) !important;
	box-shadow: 0 0 10px rgba(239, 68, 68, 0.2) !important;
}

.wc-block-cart-item__remove-link svg,
.wc-block-components-product-button svg {
	fill: currentColor !important;
	width: 15px !important;
	height: 15px !important;
	display: block !important;
}

/* Right Item Total */
.wc-block-cart-items__row-total,
.wc-block-cart-item__total,
.wc-block-cart-items__row-total *,
.wc-block-cart-item__total * {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	color: var(--cyan-bright) !important;
	text-align: right !important;
}

.wc-block-cart-item__total {
	min-width: 90px !important;
}

/* Right Sidebar Cart Totals Card */
.wc-block-cart__sidebar .wc-block-cart-totals,
.wc-block-cart-totals,
.wp-block-woocommerce-cart-totals-block {
	background: var(--card-bg) !important;
	padding: 36px !important;
	border-radius: 24px !important;
	border: 1px solid var(--border-soft) !important;
	box-shadow: var(--shadow-card) !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.wc-block-cart-totals::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	border-radius: 24px !important;
	padding: 1px !important;
	background: linear-gradient(180deg, rgba(0, 191, 255, 0.12) 0%, transparent 100%) !important;
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
	-webkit-mask-composite: xor !important;
	mask-composite: exclude !important;
	pointer-events: none !important;
}

/* Sidebar Title */
.wc-block-cart-totals__title,
.wc-block-cart-totals h2 {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 1.3rem !important;
	font-weight: 800 !important;
	margin-bottom: 24px !important;
	color: var(--text-white) !important;
	letter-spacing: -0.5px !important;
	text-transform: uppercase !important;
	position: relative !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid var(--border-soft) !important;
}

.wc-block-cart-totals__title::after,
.wc-block-cart-totals h2::after {
	content: '' !important;
	position: absolute !important;
	bottom: -1px !important;
	left: 0 !important;
	width: 40px !important;
	height: 3px !important;
	background: var(--cyan-primary) !important;
}

/* Totals items rows */
.wc-block-components-totals-item {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding: 16px 0 !important;
	border-bottom: 1px solid var(--border-soft) !important;
	color: var(--text-gray) !important;
	background: transparent !important;
}

.wc-block-components-totals-item__label {
	font-weight: 600 !important;
	font-size: 0.95rem !important;
}

.wc-block-components-totals-item__value {
	font-weight: 700 !important;
	color: var(--text-white) !important;
	font-size: 0.98rem !important;
}

/* Coupon Accordion Dropdown Block */
.wc-block-components-totals-coupon {
	border-bottom: 1px solid var(--border-soft) !important;
	padding: 8px 0 !important;
}

.wc-block-components-totals-coupon__button,
.wc-block-components-totals-coupon-link,
button.wc-block-components-totals-coupon__button {
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	color: var(--text-gray) !important;
	text-decoration: none !important;
	transition: var(--transition-smooth) !important;
	background: transparent !important;
	border: none !important;
	padding: 8px 0 !important;
	width: 100% !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	cursor: pointer !important;
}

.wc-block-components-totals-coupon__button:hover,
.wc-block-components-totals-coupon-link:hover {
	color: var(--cyan-primary) !important;
}

.wc-block-components-totals-coupon__form {
	display: flex !important;
	gap: 12px !important;
	margin: 16px 0 !important;
	align-items: center !important;
}

.wc-block-components-totals-coupon__input,
.wc-block-components-totals-coupon__form input[type="text"] {
	flex-grow: 1 !important;
}

.wc-block-components-totals-coupon__form input[type="text"],
.wc-block-components-totals-coupon__input input {
	height: 44px !important;
	border-radius: 10px !important;
	background: rgba(1, 6, 11, 0.82) !important;
	border: 1px solid var(--border-soft) !important;
	color: var(--text-white) !important;
	padding: 0 14px !important;
	font-size: 0.9rem !important;
	width: 100% !important;
	box-sizing: border-box !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-totals-coupon__form input[type="text"]:focus {
	border-color: var(--cyan-primary) !important;
	outline: none !important;
	box-shadow: 0 0 8px rgba(0, 191, 255, 0.22) !important;
}

/* Coupon Apply Button */
.wc-block-components-totals-coupon__submit,
.wc-block-components-totals-coupon__form button[type="submit"] {
	height: 44px !important;
	border-radius: 999px !important;
	padding: 0 20px !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	border: 1px solid var(--border-cyan) !important;
	background: var(--bg-blue-dark) !important;
	color: var(--text-white) !important;
	cursor: pointer !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-totals-coupon__submit:hover {
	background: var(--cyan-primary) !important;
	color: var(--bg-black) !important;
	border-color: var(--cyan-primary) !important;
	box-shadow: 0 0 10px rgba(0, 191, 255, 0.2) !important;
}

/* Estimated Total block */
.wc-block-components-totals-footer-item {
	border-top: none !important;
	border-bottom: none !important;
	padding: 20px 0 10px !important;
	margin-top: 10px !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: var(--text-white) !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 1.6rem !important;
	font-weight: 800 !important;
	color: var(--cyan-bright) !important;
}

/* Submit Proceed Button Gutenberg Block */
.wc-block-cart__submit {
	padding: 10px 0 0 !important;
	margin: 0 !important;
}

.wc-block-cart__submit a.wc-block-cart__submit-button,
.wc-block-cart__submit button.wc-block-cart__submit-button {
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 56px !important;
	padding: 0 32px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(126, 205, 255, 0.74) !important;
	background: linear-gradient(180deg, #96d2ff 0%, #6cbcff 28%, #4e98ee 70%, #8ecbff 100%) !important;
	color: #081018 !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.16),
		0 14px 26px rgba(0, 102, 204, 0.16) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease !important;
	text-decoration: none !important;
}

.wc-block-cart__submit a.wc-block-cart__submit-button:hover,
.wc-block-cart__submit button.wc-block-cart__submit-button:hover {
	transform: scale(1.02) !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.26),
		0 18px 36px rgba(0, 102, 204, 0.28) !important;
	color: #081018 !important;
	text-decoration: none !important;
}

/* Mobile responsive Gutenberg block details */
@media (max-width: 767px) {
	.wc-block-cart-items__row,
	.wc-block-cart-item {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
		text-align: center !important;
		justify-items: center !important;
		padding: 24px 20px !important;
	}

	.wc-block-cart-item__total {
		text-align: center !important;
		font-size: 1.25rem !important;
	}

	.wc-block-cart-item__quantity {
		justify-content: center !important;
	}
}

.woocommerce-checkout .col2-set {
	width: 100% !important;
}

@media (min-width: 992px) {
	.woocommerce-checkout .col2-set {
		width: 60% !important;
		float: left !important;
		padding-right: 48px !important;
	}
	.woocommerce-checkout #order_review_heading,
	.woocommerce-checkout #order_review {
		width: 40% !important;
		float: left !important;
		background: var(--card-bg) !important;
		padding: 40px !important;
		border-radius: 24px !important;
		box-shadow: var(--shadow-card) !important;
		border: 1px solid var(--border-soft) !important;
		position: sticky !important;
		top: 120px !important;
	}
}

.woocommerce-checkout h3 {
	font-size: 1.45rem !important;
	font-weight: 800 !important;
	margin-bottom: 30px !important;
	color: var(--text-white) !important;
	letter-spacing: -0.5px !important;
	position: relative !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid var(--border-soft) !important;
}

.woocommerce-checkout h3::after {
	content: '' !important;
	position: absolute !important;
	bottom: -1px !important;
	left: 0 !important;
	width: 50px !important;
	height: 3px !important;
	background: var(--cyan-primary) !important;
}

/* Form inputs on Checkout */
.woocommerce-checkout .form-row {
	margin-bottom: 24px !important;
}

.woocommerce-checkout .form-row label {
	font-weight: 600 !important;
	font-size: 0.9rem !important;
	margin-bottom: 10px !important;
	display: block !important;
	color: var(--text-gray) !important;
}

.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row select, 
.woocommerce-checkout .form-row textarea {
	width: 100% !important;
	padding: 15px 18px !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 12px !important;
	background: rgba(1, 6, 11, 0.82) !important;
	color: var(--text-white) !important;
	transition: var(--transition-smooth) !important;
	font-size: 1rem !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
	border-color: var(--cyan-primary) !important;
	box-shadow: 0 0 10px rgba(0, 191, 255, 0.22) !important;
	outline: none !important;
}

/* Order Review Table on Checkout */
.woocommerce-checkout-review-order-table {
	width: 100% !important;
	border-collapse: collapse !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
	padding: 16px 0 !important;
	border-bottom: 1px solid var(--border-soft) !important;
	color: var(--text-gray) !important;
}

.woocommerce-checkout-review-order-table th {
	color: var(--text-white) !important;
	font-weight: 700 !important;
}

.woocommerce-checkout-review-order-table .product-name {
	font-weight: 500 !important;
}

.woocommerce-checkout-review-order-table .product-total,
.woocommerce-checkout-review-order-table .cart-subtotal td,
.woocommerce-checkout-review-order-table .shipping td,
.woocommerce-checkout-review-order-table .order-total td {
	text-align: right !important;
	font-weight: 700 !important;
}

.woocommerce-checkout-review-order-table tr.order-total td {
	padding-top: 24px !important;
	font-size: 1.6rem !important;
	color: var(--cyan-bright) !important;
}

/* Payment Methods */
#payment {
	background: transparent !important;
	border: none !important;
	margin-top: 24px !important;
}

#payment ul.payment_methods {
	padding: 0 !important;
	list-style: none !important;
	border: none !important;
}

#payment ul.payment_methods li {
	background: rgba(1, 6, 11, 0.5) !important;
	margin-bottom: 12px !important;
	padding: 16px 20px !important;
	border-radius: 14px !important;
	border: 1px solid var(--border-soft) !important;
	transition: var(--transition-smooth) !important;
}

#payment ul.payment_methods li:hover {
	background: rgba(1, 6, 11, 0.8) !important;
	border-color: var(--cyan-primary) !important;
}

#payment div.payment_box {
	background: var(--card-bg-dark) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 12px !important;
	padding: 16px !important;
	margin: 14px 0 0 0 !important;
	font-size: 0.9rem !important;
	color: var(--text-muted) !important;
}

#payment div.payment_box::before {
	display: none !important;
}

/* Checkout CTA Button */
#place_order {
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 56px !important;
	padding: 0 42px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(126, 205, 255, 0.74) !important;
	background: linear-gradient(180deg, #96d2ff 0%, #6cbcff 28%, #4e98ee 70%, #8ecbff 100%) !important;
	color: #081018 !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.16),
		0 14px 26px rgba(0, 102, 204, 0.16) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease !important;
	margin-top: 24px !important;
}

#place_order:hover {
	transform: scale(1.02) !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.26),
		0 18px 36px rgba(0, 102, 204, 0.28) !important;
}

/* ==========================================
   RELATED PRODUCTS & PRODUCT LOOPS (DARK CARDS)
   ========================================== */
.woocommerce div.product .related.products,
.woocommerce-page div.product .related.products,
.woocommerce div.product .related,
.woocommerce-page div.product .related,
.woocommerce .related.products,
.woocommerce-page .related.products {
	margin-top: 60px !important;
	border-top: 1px solid var(--border-soft) !important;
	padding-top: 40px !important;
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	clear: both !important;
	float: none !important;
}

.woocommerce .related.products h2,
.woocommerce-page .related.products h2 {
	font-size: 1.8rem !important;
	font-weight: 800 !important;
	color: var(--text-white) !important;
	margin-bottom: 30px !important;
	letter-spacing: -0.02em !important;
}

/* Bulletproof Container Reset */
.woocommerce .related.products ul.products,
.woocommerce-page .related.products ul.products,
.woocommerce div.product .related.products ul.products,
.woocommerce-page div.product .related.products ul.products,
body.woocommerce .related ul.products,
body.woocommerce-page .related ul.products,
body.woocommerce ul.products,
body.woocommerce-page ul.products {
	display: grid !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	clear: both !important;
	width: 100% !important;
	float: none !important;
}

/* Disable pseudo-elements that act as broken grid/flex items */
.woocommerce .related.products ul.products::before,
.woocommerce .related.products ul.products::after,
.woocommerce-page .related.products ul.products::before,
.woocommerce-page .related.products ul.products::after,
body.woocommerce ul.products::before,
body.woocommerce ul.products::after,
body.woocommerce-page ul.products::before,
body.woocommerce-page ul.products::after {
	display: none !important;
	content: none !important;
}

/* Bulletproof Grid Item Reset (Neutralizes floats, clearing, and widths) */
.woocommerce .related.products ul.products li.product,
.woocommerce-page .related.products ul.products li.product,
.woocommerce div.product .related.products ul.products li.product,
.woocommerce-page div.product .related.products ul.products li.product,
body.woocommerce .related ul.products li.product,
body.woocommerce-page .related ul.products li.product,
body.woocommerce ul.products li.product,
body.woocommerce-page ul.products li.product {
	background: var(--card-bg-dark) !important;
	border: 1px solid var(--border-soft) !important;
	border-radius: 20px !important;
	padding: 24px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	position: relative !important;
	transition: var(--transition-smooth) !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	height: 100% !important;
}

/* Neutralize all nth-child floats and clears from theme stylesheet */
.woocommerce ul.products li.product:nth-child(n),
.woocommerce-page ul.products li.product:nth-child(n),
.woocommerce .related.products ul.products li.product:nth-child(n),
.woocommerce-page .related.products ul.products li.product:nth-child(n) {
	clear: none !important;
	float: none !important;
	margin-right: 0 !important;
}

/* Responsive Columns Control */
/* PC Desktop: exactly 4 columns, 1 row */
@media (min-width: 1024px) {
	.woocommerce .related.products ul.products,
	.woocommerce-page .related.products ul.products,
	body.woocommerce ul.products,
	body.woocommerce-page ul.products {
		grid-template-columns: repeat(4, 1fr) !important;
		gap: 30px !important;
	}
	.woocommerce .related.products ul.products li.product,
	.woocommerce-page .related.products ul.products li.product,
	body.woocommerce ul.products li.product,
	body.woocommerce-page ul.products li.product {
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
	}
}

/* Tablet: exactly 2 columns */
@media (min-width: 768px) and (max-width: 1023px) {
	.woocommerce .related.products ul.products,
	.woocommerce-page .related.products ul.products,
	body.woocommerce ul.products,
	body.woocommerce-page ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 24px !important;
	}
	.woocommerce .related.products ul.products li.product,
	.woocommerce-page .related.products ul.products li.product,
	body.woocommerce ul.products li.product,
	body.woocommerce-page ul.products li.product {
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
	}
}

/* Mobile: exactly 1 column */
@media (max-width: 767px) {
	.woocommerce .related.products ul.products,
	.woocommerce-page .related.products ul.products,
	body.woocommerce ul.products,
	body.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}
	.woocommerce .related.products ul.products li.product,
	.woocommerce-page .related.products ul.products li.product,
	body.woocommerce ul.products li.product,
	body.woocommerce-page ul.products li.product {
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
	}
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: var(--border-cyan) !important;
	transform: translateY(-6px) !important;
	box-shadow: 0 16px 32px rgba(0, 191, 255, 0.08) !important;
}

/* Image Wrapper and Alignment inside Loop */
.woocommerce ul.products li.product a,
.woocommerce-page ul.products li.product a {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-decoration: none !important;
	width: 100% !important;
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
	border-radius: 14px !important;
	margin-bottom: 16px !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1 !important;
	object-fit: cover !important;
	background: var(--bg-black) !important;
	border: 1px solid rgba(255, 255, 255, 0.04) !important;
}

/* Title Styling inside Loop */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product h2 {
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: var(--text-white) !important;
	margin: 0 0 12px 0 !important;
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: inherit !important;
	text-align: center !important;
}

/* Price block inside Loop */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
	font-size: 1.35rem !important;
	font-weight: 800 !important;
	color: var(--cyan-primary) !important;
	margin: 0 0 18px 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
	font-size: 1rem !important;
	color: var(--text-muted) !important;
}

.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
	text-decoration: none !important;
	color: var(--cyan-bright) !important;
}

/* Add to Cart CTA Button inside Loop */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 44px !important;
	padding: 0 16px !important;
	border-radius: 999px !important;
	font-size: 0.8rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	background: linear-gradient(180deg, rgba(14, 24, 36, 0.9), rgba(4, 10, 17, 0.98)) !important;
	color: var(--text-white) !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition: var(--transition-smooth) !important;
	margin-top: auto !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover {
	border-color: rgba(0, 191, 255, 0.6) !important;
	background: linear-gradient(135deg, #00bfff 0%, #16d4ff 100%) !important;
	color: #01060b !important;
	box-shadow: 0 8px 16px rgba(0, 191, 255, 0.15) !important;
	transform: scale(1.02) !important;
}

/* ==========================================
   WOOCOMMERCE GUTENBERG BLOCKS - LIGHT PEARL CHECKOUT CUSTOM STYLING
   ========================================== */

/* Main Checkout page wrapper - Light Pearl Theme */
.wc-block-checkout,
.wp-block-woocommerce-checkout {
	background: #ffffff !important;
	color: #0c1117 !important;
	border-radius: 24px !important;
	padding: 32px 24px !important;
	box-shadow: 0 20px 48px rgba(0, 0, 0, 0.16) !important;
	margin-top: 15px !important;
	margin-bottom: 50px !important;
	border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* Page Title outside the main card */
.woocommerce-checkout h1.entry-title,
.woocommerce-checkout h1 {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 800 !important;
	font-size: clamp(2rem, 4vw, 2.85rem) !important;
	letter-spacing: -0.02em !important;
	color: var(--text-white) !important;
	margin-top: 20px !important;
	margin-bottom: 25px !important;
}

/* Left Column - Form Step Sections */
.wc-block-checkout__main .wc-block-components-checkout-step,
.wc-block-checkout__main > div {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 16px !important;
	padding: 24px !important;
	margin-bottom: 20px !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.01) !important;
	transition: var(--transition-smooth) !important;
	box-sizing: border-box !important;
	color: #0c1117 !important;
}

.wc-block-checkout__main .wc-block-components-checkout-step:hover {
	border-color: #cbd5e1 !important;
	background: #f8fafc !important;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.02) !important;
}

/* Form Step Titles */
.wc-block-components-checkout-step__title,
.wc-block-components-checkout-step h2,
.wc-block-components-checkout-step h3 {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	letter-spacing: 0.02em !important;
	text-transform: uppercase !important;
	border-bottom: 1px solid #f1f5f9 !important;
	padding-bottom: 8px !important;
	margin-bottom: 20px !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
}

/* Form inputs & dropdowns - Pearl Light Theme */
.wc-block-components-text-input input,
.wc-block-components-combobox input,
.wc-block-components-combobox select,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-combobox .wc-block-components-combobox__input {
	height: 48px !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	border: 1px solid #cbd5e1 !important;
	color: #0c1117 !important;
	padding: 0 14px !important;
	font-size: 0.92rem !important;
	transition: var(--transition-smooth) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox input:focus {
	border-color: #00bfff !important;
	box-shadow: 0 0 0 3px rgba(0, 191, 255, 0.12) !important;
	outline: none !important;
	background: #ffffff !important;
}

/* Floating labels for inputs */
.wc-block-components-text-input label,
.wc-block-components-combobox label {
	color: #64748b !important;
	font-size: 0.85rem !important;
	font-weight: 500 !important;
}

/* Inline Double Fields Row (Billing Details) */
.wc-block-components-form-row {
	display: flex !important;
	gap: 16px !important;
	margin-bottom: 16px !important;
}

.wc-block-components-form-row > .wc-block-components-form-row__cell {
	flex: 1 !important;
	margin: 0 !important;
}

/* Checkbox & Add-on Labels */
.wc-block-components-checkout-step__addon-link,
.wc-block-checkout__add-note-checkbox,
.wc-block-checkout__add-note label,
.wc-block-components-checkbox .wc-block-components-checkbox__label {
	color: #475569 !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: var(--transition-smooth) !important;
}

.wc-block-components-checkout-step__addon-link:hover {
	color: #00bfff !important;
	text-decoration: none !important;
}

/* Order Summary Card (Right Column) - Light Theme */
.wc-block-checkout__sidebar .wc-block-checkout-totals,
.wc-block-checkout-totals,
.wp-block-woocommerce-checkout-order-summary-block {
	background: #f8fafc !important;
	padding: 24px !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: none !important;
	position: relative !important;
	box-sizing: border-box !important;
	color: #0c1117 !important;
}

/* Order Summary Card Headings */
.wc-block-checkout__totals-title,
.wp-block-woocommerce-checkout-order-summary-heading-block,
.wc-block-components-checkout-order-summary__title-text {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 1.15rem !important;
	font-weight: 800 !important;
	margin-bottom: 16px !important;
	color: #0c1117 !important;
	letter-spacing: -0.2px !important;
	text-transform: uppercase !important;
	position: relative !important;
	padding-bottom: 8px !important;
	border-bottom: 1px solid #e2e8f0 !important;
}

.wc-block-checkout__totals-title::after,
.wp-block-woocommerce-checkout-order-summary-heading-block::after {
	content: '' !important;
	position: absolute !important;
	bottom: -1px !important;
	left: 0 !important;
	width: 32px !important;
	height: 3px !important;
	background: #00bfff !important;
}

/* Product rows inside summary list */
.wc-block-components-order-summary-item {
	display: grid !important;
	grid-template-columns: 56px 1fr auto !important;
	gap: 16px !important;
	align-items: center !important;
	padding: 12px 0 !important;
	border-bottom: 1px solid #f1f5f9 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Hide screen-reader span from grid flow to prevent layout breaking */
.wc-block-components-order-summary-item .screen-reader-text {
	display: none !important;
}

.wc-block-components-order-summary-item__image {
	width: 56px !important;
	height: 56px !important;
	flex-shrink: 0 !important;
	position: relative !important;
}

.wc-block-components-order-summary-item__image img {
	width: 100% !important;
	height: 100% !important;
	border-radius: 8px !important;
	border: 1px solid #e2e8f0 !important;
	background: #ffffff !important;
	object-fit: cover !important;
	padding: 2px !important;
}

/* Quantity badge circle position */
.wc-block-components-order-summary-item__quantity {
	position: absolute !important;
	top: -8px !important;
	right: -8px !important;
	background: #00bfff !important;
	color: #081018 !important;
	font-size: 0.75rem !important;
	font-weight: 800 !important;
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 2px 5px rgba(0, 191, 255, 0.4) !important;
	z-index: 5 !important;
	padding: 0 !important;
}

.wc-block-components-order-summary-item__quantity span {
	color: #081018 !important;
	font-weight: 800 !important;
	display: block !important;
	line-height: 1 !important;
}

/* Crucial: Prevent title squeeze & vertical lettering */
.wc-block-components-order-summary-item__description {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.wc-block-checkout .wc-block-components-product-name,
.wc-block-checkout .wc-block-components-product-name *,
.wc-block-checkout .wc-block-components-product-name a,
.wc-block-components-order-summary-item__description a,
.wc-block-components-order-summary-item__description h3 {
	font-family: inherit !important;
	font-weight: 700 !important;
	font-size: 0.9rem !important;
	color: #0c1117 !important;
	line-height: 1.4 !important;
	margin: 0 0 2px 0 !important;
	display: block !important;
	width: 100% !important;
	white-space: normal !important;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
	text-decoration: none !important;
}

/* Product individual price */
.wc-block-components-order-summary-item__individual-prices,
.wc-block-checkout .wc-block-components-product-price__value {
	color: #64748b !important;
	font-weight: 600 !important;
	font-size: 0.82rem !important;
}

.wc-block-components-order-summary-item__total,
.wc-block-components-order-summary-item__total *,
.wc-block-checkout .wc-block-components-order-summary-item__total-price .wc-block-components-product-price__value {
	color: #0c1117 !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	text-align: right !important;
}

/* Coupon Form & Gift Card sections in checkout */
.wc-block-components-totals-coupon,
.wc-block-components-totals-gift-card,
.wc-block-components-totals-item {
	border-bottom: 1px solid #f1f5f9 !important;
	padding: 10px 0 !important;
	color: #0c1117 !important;
}

.wc-block-components-totals-item__label,
.wc-block-components-panel__button {
	color: #475569 !important;
	font-weight: 600;
	font-size: 0.9rem !important;
}

.wc-block-components-totals-item__value {
	color: #0c1117 !important;
	font-weight: 700 !important;
	font-size: 0.9rem !important;
}

/* Estimated Total Footer block in checkout */
.wc-block-components-totals-footer-item {
	border-top: none !important;
	border-bottom: none !important;
	padding: 16px 0 8px !important;
	margin-top: 8px !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item-tax-value {
	color: #00bfff !important;
	font-size: 1.25rem !important;
	font-weight: 800 !important;
}

/* Semitransparent Crimson Payment Error alerts - Light Theme */
.wc-block-components-notice,
.wc-block-components-notice-list .wc-block-components-notice {
	border-radius: 8px !important;
	background: #fff5f5 !important;
	border: 1px solid #fed7d7 !important;
	color: #c53030 !important;
	padding: 12px 16px !important;
	font-size: 0.88rem !important;
	margin-bottom: 14px !important;
	line-height: 1.45 !important;
}

.wc-block-components-notice__icon {
	fill: #e53e3e !important;
	width: 16px !important;
	height: 16px !important;
	margin-right: 10px !important;
}

.wc-block-components-notice__content {
	margin: 0 !important;
}

.wc-block-components-notice .wc-block-components-notice__dismiss {
	color: #e53e3e !important;
}

.wc-block-components-notice .wc-block-components-notice__dismiss:hover {
	color: #9b2c2c !important;
}

/* Action Buttons Row */
.wc-block-checkout__actions_row {
	display: flex !important;
	flex-direction: row !important;
	gap: 20px !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	margin-top: 24px !important;
	box-sizing: border-box !important;
}

/* Place Order Submit trigger */
.wc-block-checkout__actions_row button.wc-block-components-checkout-place-order-button,
button.wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button {
	width: auto !important;
	min-width: 220px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 52px !important;
	padding: 0 36px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 1rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	border: 1px solid rgba(126, 205, 255, 0.74) !important;
	background: linear-gradient(180deg, #96d2ff 0%, #6cbcff 28%, #4e98ee 70%, #8ecbff 100%) !important;
	color: #081018 !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.16),
		0 14px 26px rgba(0, 102, 204, 0.16) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease, background 0.2s ease !important;
	text-decoration: none !important;
}

.wc-block-checkout__actions_row button.wc-block-components-checkout-place-order-button:hover,
button.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	transform: scale(1.02) !important;
	background: linear-gradient(180deg, #b0deff 0%, #8ac8ff 28%, #62a9ff 70%, #a6d8ff 100%) !important;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, 0.44),
		inset 0 -10px 18px rgba(23, 84, 165, 0.22),
		0 0 0 1px rgba(97, 184, 255, 0.26),
		0 18px 36px rgba(0, 102, 204, 0.28) !important;
	color: #081018 !important;
	outline: none !important;
	text-decoration: none !important;
}

/* Return to Cart Action Link */
a.wc-block-components-checkout-return-to-cart-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: #64748b !important;
	font-weight: 600 !important;
	font-size: 0.92rem !important;
	text-decoration: none !important;
	transition: var(--transition-smooth) !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

a.wc-block-components-checkout-return-to-cart-button:hover {
	color: #00bfff !important;
	text-decoration: none !important;
}

a.wc-block-components-checkout-return-to-cart-button svg {
	fill: currentColor !important;
	width: 18px !important;
	height: 18px !important;
	transition: transform 0.2s ease !important;
}

a.wc-block-components-checkout-return-to-cart-button:hover svg {
	transform: translateX(-4px) !important;
}

/* Mobile actions layout responsive */
@media (max-width: 600px) {
	.wc-block-checkout {
		padding: 20px 16px !important;
	}
	.wc-block-checkout__actions_row {
		flex-direction: column-reverse !important;
		gap: 20px !important;
		align-items: center !important;
	}
	
	.wc-block-checkout__actions_row button.wc-block-components-checkout-place-order-button,
	button.wc-block-components-checkout-place-order-button {
		width: 100% !important;
	}
}

/* Panel Button icon colors */
.wc-block-components-panel__button-icon {
	fill: currentColor !important;
}
