/* ============================================================
   Emerald Glassy — WooCommerce Global Styles
   Matches homepage vert émeraude glassy design
   ============================================================ */

/* --- Base body background for all WooCommerce pages --- */
.woocommerce body,
.woocommerce-page body,
body.single-product,
body.archive.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
	background: linear-gradient(135deg, #0d2617 0%, #1a4a2e 100%) !important;
	min-height: 100vh;
	position: relative;
	overflow-x: hidden;
}

/* --- Radial orb decorations (like homepage) --- */
body.single-product::before,
body.archive.post-type-archive-product::before,
body.tax-product_cat::before,
body.tax-product_tag::before,
body.woocommerce-cart::before,
body.woocommerce-checkout::before,
body.woocommerce-account::before {
	content: "";
	position: fixed;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, rgba(80,200,80,0.18) 0%, transparent 70%);
	border-radius: 50%;
	top: -10%;
	left: -5%;
	pointer-events: none;
	z-index: 0;
}

body.single-product::after,
body.archive.post-type-archive-product::after,
body.tax-product_cat::after,
body.tax-product_tag::after,
body.woocommerce-cart::after,
body.woocommerce-checkout::after,
body.woocommerce-account::after {
	content: "";
	position: fixed;
	width: 350px;
	height: 350px;
	background: radial-gradient(circle, rgba(40,150,80,0.15) 0%, transparent 70%);
	border-radius: 50%;
	bottom: -5%;
	right: -5%;
	pointer-events: none;
	z-index: 0;
}

/* --- Main content wrapper --- */
.woocommerce,
.woocommerce-page .woocommerce,
.site-main,
#main,
.woocommerce #content,
.woocommerce-page #content {
	position: relative;
	z-index: 1;
}

/* --- Global text colors --- */
.woocommerce,
.woocommerce-page,
.woocommerce p,
.woocommerce-page p,
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.woocommerce h4, .woocommerce h5, .woocommerce h6,
.woocommerce-page h1, .woocommerce-page h2, .woocommerce-page h3 {
	color: #e8f5e9;
}

/* --- Product cards (archive / shop) --- */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce-layout__activity-panel,
.woocommerce-products-wrapper ul.products li.product {
	background: rgba(80, 200, 120, 0.07) !important;
	border: 1px solid rgba(80, 200, 120, 0.25) !important;
	border-radius: 14px !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	box-shadow: 0 4px 24px rgba(80, 200, 120, 0.12), 0 1px 4px rgba(80,200,120,0.08) !important;
	padding: 16px !important;
	transition: all 0.35s cubic-bezier(.4,0,.2,1) !important;
	position: relative;
	z-index: 1;
	overflow: hidden !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	box-shadow: 0 12px 40px rgba(80, 200, 120, 0.28), 0 2px 8px rgba(80,200,120,0.15) !important;
	transform: translateY(-5px) !important;
	border-color: rgba(80, 200, 120, 0.5) !important;
	background: rgba(80, 200, 120, 0.12) !important;
}

/* --- Product titles in cards --- */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	color: #2e9e56 !important;
	font-weight: 600 !important;
	font-size: 14px !important;
}

/* --- Prices --- */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.woocommerce .price,
.woocommerce-page .price,
.woocommerce .woocommerce-Price-amount,
.woocommerce-page .woocommerce-Price-amount {
	color: #50C878 !important;
	font-weight: 700 !important;
}

/* --- Single product page --- */
.woocommerce div.product,
.woocommerce-page div.product {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(80,200,80,0.12) !important;
	border-radius: 18px !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	box-shadow: 0 8px 32px rgba(0,0,0,0.35) !important;
	padding: 40px !important;
	margin: 40px auto !important;
	max-width: 1200px !important;
	position: relative;
	z-index: 1;
}

.woocommerce div.product .product_title,
.woocommerce-page div.product .product_title {
	color: #a5d6a7 !important;
}

/* Force product short description text to pure white for excellent contrast */
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description p,
.woocommerce div.product .woocommerce-Tabs-panel {
	color: #ffffff !important;
}

/* --- Add to cart button --- */
.woocommerce .single_add_to_cart_button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce-page .single_add_to_cart_button,
.woocommerce-page button.button,
.woocommerce-page a.button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .add_to_cart_button {
	background: rgba(80, 200, 120, 0.82) !important;
	backdrop-filter: blur(8px) !important;
	-webkit-backdrop-filter: blur(8px) !important;
	color: #ffffff !important;
	border: 1px solid rgba(80, 200, 120, 0.55) !important;
	border-radius: 8px !important;
	padding: 12px 28px !important;
	font-weight: 600 !important;
	transition: all 0.3s ease !important;
	box-shadow: 0 2px 12px rgba(80, 200, 120, 0.25) !important;
}

.woocommerce .single_add_to_cart_button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page a.button:hover,
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover {
	background: #3aad62 !important;
	box-shadow: 0 6px 24px rgba(80, 200, 120, 0.45) !important;
	transform: scale(1.03) translateY(-1px) !important;
}

/* --- Archive / Category title --- */
.woocommerce-products-header__title,
.woocommerce-archive-description,
.term-description {
	color: #a5d6a7 !important;
}

/* --- Cart & Checkout tables --- */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(80,200,80,0.15) !important;
	border-radius: 12px !important;
	color: #e8f5e9 !important;
	overflow: hidden;
}

.woocommerce table.shop_table th,
.woocommerce-page table.shop_table th {
	background: rgba(80,200,80,0.1) !important;
	color: #a5d6a7 !important;
	border-bottom: 1px solid rgba(80,200,80,0.2) !important;
}

.woocommerce table.shop_table td,
.woocommerce-page table.shop_table td {
	border-bottom: 1px solid rgba(80,200,80,0.08) !important;
	color: #e8f5e9 !important;
}

/* --- Cart totals & order review boxes --- */
.woocommerce .cart_totals,
.woocommerce-page .cart_totals,
.woocommerce #order_review,
.woocommerce-checkout #order_review {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(80,200,80,0.15) !important;
	border-radius: 16px !important;
	padding: 30px !important;
	color: #e8f5e9 !important;
}

/* --- Form fields (checkout / account) --- */
.woocommerce form .form-row input,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input,
.woocommerce-page form .form-row textarea {
	background: rgba(255,255,255,0.07) !important;
	border: 1px solid rgba(80,200,80,0.25) !important;
	border-radius: 8px !important;
	color: #e8f5e9 !important;
	padding: 10px 14px !important;
}

.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus {
	border-color: rgba(80,200,80,0.6) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(80,200,80,0.15) !important;
}

.woocommerce form .form-row label,
.woocommerce-page form .form-row label {
	color: #c8e6c9 !important;
}

/* --- My account navigation --- */
.woocommerce-MyAccount-navigation ul {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(80,200,80,0.15) !important;
	border-radius: 12px !important;
	padding: 10px !important;
}

.woocommerce-MyAccount-navigation ul li a {
	color: #a5d6a7 !important;
	padding: 10px 16px !important;
	display: block !important;
	border-radius: 8px !important;
	transition: background 0.2s ease !important;
}

.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
	background: rgba(80,200,80,0.12) !important;
	color: #69f0ae !important;
}

/* --- Notices / alerts --- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: rgba(80,200,80,0.1) !important;
	border-top-color: #69f0ae !important;
	color: #e8f5e9 !important;
	border-radius: 8px !important;
}

/* --- Breadcrumb --- */
.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
	color: #81c784 !important;
}

.woocommerce .woocommerce-breadcrumb a,
.woocommerce-page .woocommerce-breadcrumb a {
	color: #a5d6a7 !important;
}

/* --- Star ratings --- */
.woocommerce .star-rating,
.woocommerce-page .star-rating {
	filter: drop-shadow(0 1px 4px rgba(255, 165, 30, 0.45)) !important;
}

.woocommerce .star-rating span,
.woocommerce-page .star-rating span,
.woocommerce .star-rating span::before,
.woocommerce-page .star-rating span::before {
	color: #FFA41C !important;
	background: linear-gradient(135deg, #FFD000 0%, #FF8C00 100%) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	background-clip: text !important;
}

.woocommerce .star-rating::before,
.woocommerce-page .star-rating::before {
	color: rgba(255, 164, 28, 0.25) !important;
	background: none !important;
	-webkit-text-fill-color: rgba(255, 164, 28, 0.25) !important;
}

/* --- Product tabs --- */
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: rgba(255,255,255,0.04) !important;
	border-color: rgba(80,200,80,0.2) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: rgba(80,200,80,0.12) !important;
	border-bottom-color: transparent !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	color: #a5d6a7 !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
	background: rgba(255,255,255,0.03) !important;
	border: 1px solid rgba(80,200,80,0.12) !important;
	border-radius: 0 12px 12px 12px !important;
	padding: 24px !important;
	color: #c8e6c9 !important;
}

/* --- Onsale Flash --- */
.woocommerce span.onsale,
.woocommerce-page span.onsale {
	background: #50C878 !important;
	border-radius: 50% !important;
}
