<?php
/**
 * WooCommerce CSS Overrides for Sitaramanilkumar 2026 Theme
 *
 * Provides premium styling for all WooCommerce pages:
 * Cart, Checkout, My Account, Product pages, Notices, etc.
 *
 * @package Sitaramanilkumar_2026
 */
?>
/* ═══════════════════════════════════════════════
 * WOOCOMMERCE GLOBAL OVERRIDES
 * ═══════════════════════════════════════════════ */

/* Notices */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	padding: 1rem 1.5rem;
	border-radius: var(--border-radius-sm);
	font-family: var(--font-sans);
	font-size: 0.9rem;
	margin-bottom: 1.5rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}
.woocommerce-message {
	background-color: rgba(30, 70, 32, 0.06);
	border-left: 4px solid var(--primary-green);
	color: var(--primary-green);
}
.woocommerce-info {
	background-color: rgba(197, 168, 128, 0.1);
	border-left: 4px solid var(--accent-gold);
	color: var(--text-charcoal);
}
.woocommerce-error {
	background-color: rgba(208, 2, 27, 0.06);
	border-left: 4px solid #D0021B;
	color: #D0021B;
	list-style: none;
	padding: 0;
}
.woocommerce-error li {
	padding: 1rem 1.5rem;
}
.woocommerce-message a,
.woocommerce-info a {
	color: var(--accent-gold);
	font-weight: 600;
	text-decoration: underline;
}

/* Breadcrumb */
.woocommerce-breadcrumb {
	font-size: 0.85rem;
	color: var(--text-muted);
	margin-bottom: 2rem;
}
.woocommerce-breadcrumb a {
	color: var(--accent-gold);
}


/* ═══════════════════════════════════════════════
 * ADD TO CART BUTTON OVERRIDES
 * ═══════════════════════════════════════════════ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.woocommerce a.added_to_cart {
	background-color: var(--primary-green) !important;
	color: var(--white) !important;
	border: 1.5px solid var(--primary-green) !important;
	padding: 0.75rem 1.5rem !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	border-radius: var(--border-radius-sm) !important;
	cursor: pointer !important;
	transition: all var(--transition-normal) !important;
	font-family: var(--font-sans) !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100%;
	text-align: center;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover {
	background-color: var(--accent-gold) !important;
	border-color: var(--accent-gold) !important;
	box-shadow: var(--shadow-gold) !important;
	transform: translateY(-2px) !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: var(--accent-gold) !important;
	border-color: var(--accent-gold) !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background-color: var(--primary-green) !important;
	border-color: var(--primary-green) !important;
}

/* View Cart link */
.woocommerce a.added_to_cart {
	font-size: 0.75rem !important;
	background-color: transparent !important;
	color: var(--accent-gold) !important;
	border: none !important;
	padding: 0.5rem 0 !important;
	box-shadow: none !important;
}
.woocommerce a.added_to_cart:hover {
	color: var(--primary-green) !important;
	transform: none !important;
	box-shadow: none !important;
}


/* ═══════════════════════════════════════════════
 * CART PAGE
 * ═══════════════════════════════════════════════ */
.woocommerce-cart .woocommerce {
	padding: 2rem 0 4rem;
}

.woocommerce-cart .page-banner {
	background: linear-gradient(rgba(30, 70, 32, 0.78), rgba(30, 70, 32, 0.92));
}

.woocommerce table.shop_table {
	border: none;
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	background-color: var(--white);
	border-radius: var(--border-radius-md);
	box-shadow: var(--shadow-sm);
	overflow: hidden;
}

.woocommerce table.shop_table thead {
	background-color: var(--primary-green);
}
.woocommerce table.shop_table thead th {
	color: var(--white);
	font-family: var(--font-sans);
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 1rem 1.5rem;
	border: none;
}

.woocommerce table.shop_table td {
	padding: 1.2rem 1.5rem;
	border-bottom: 1px solid rgba(30, 70, 32, 0.06);
	vertical-align: middle;
	font-size: 0.9rem;
}

.woocommerce table.shop_table .product-thumbnail img {
	width: 70px;
	height: 70px;
	object-fit: cover;
	border-radius: var(--border-radius-sm);
	box-shadow: var(--shadow-sm);
}

.woocommerce table.shop_table .product-name a {
	color: var(--primary-green);
	font-family: var(--font-serif);
	font-weight: 600;
	font-size: 1rem;
}
.woocommerce table.shop_table .product-name a:hover {
	color: var(--accent-gold);
}

.woocommerce table.shop_table .product-remove a {
	color: #D0021B !important;
	font-size: 1.2rem;
}

/* Quantity input in cart */
.woocommerce .quantity .qty {
	width: 60px;
	padding: 0.5rem;
	text-align: center;
	border: 1.5px solid rgba(30, 70, 32, 0.12);
	border-radius: var(--border-radius-sm);
	font-family: var(--font-sans);
	font-size: 0.9rem;
}

/* Cart Totals */
.woocommerce .cart_totals {
	background-color: var(--bg-off-white);
	border-radius: var(--border-radius-md);
	padding: 2rem;
	box-shadow: var(--shadow-sm);
	border: 1px solid rgba(197, 168, 128, 0.15);
}
.woocommerce .cart_totals h2 {
	font-family: var(--font-serif);
	font-size: 1.5rem;
	color: var(--primary-green);
	margin-bottom: 1.5rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--accent-gold);
}
.woocommerce .cart_totals table {
	border: none;
}
.woocommerce .cart_totals table td,
.woocommerce .cart_totals table th {
	border: none;
	padding: 0.75rem 0;
	font-size: 0.9rem;
}
.woocommerce .cart_totals .order-total td {
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--primary-green);
}

/* Coupon */
.woocommerce .coupon input {
	padding: 0.7rem 1rem;
	border: 1.5px solid rgba(30, 70, 32, 0.12);
	border-radius: var(--border-radius-sm);
	font-family: var(--font-sans);
	font-size: 0.85rem;
	width: auto;
	outline: none;
}
.woocommerce .coupon input:focus {
	border-color: var(--accent-gold);
}


/* ═══════════════════════════════════════════════
 * CHECKOUT PAGE
 * ═══════════════════════════════════════════════ */
.woocommerce-checkout .woocommerce {
	padding: 2rem 0 4rem;
}

.woocommerce form.checkout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3rem;
}

@media (max-width: 768px) {
	.woocommerce form.checkout {
		grid-template-columns: 1fr;
	}
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
	font-family: var(--font-serif);
	font-size: 1.4rem;
	color: var(--primary-green);
	margin-bottom: 1.5rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--accent-gold);
}

/* Form fields */
.woocommerce form .form-row label {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--primary-green);
	margin-bottom: 0.4rem;
	display: block;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-input-wrapper input,
.woocommerce-input-wrapper select {
	width: 100%;
	padding: 0.8rem 1rem;
	border: 1.5px solid rgba(30, 70, 32, 0.12);
	border-radius: var(--border-radius-sm);
	font-family: var(--font-sans);
	font-size: 0.9rem;
	color: var(--text-charcoal);
	background-color: var(--white);
	transition: var(--transition-fast);
	outline: none;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--accent-gold);
	box-shadow: 0 0 0 3px rgba(197, 168, 128, 0.15);
}

/* Order Review Box */
.woocommerce-checkout-review-order {
	background-color: var(--bg-off-white);
	border-radius: var(--border-radius-md);
	padding: 2rem;
	box-shadow: var(--shadow-sm);
	border: 1px solid rgba(197, 168, 128, 0.15);
}

.woocommerce-checkout-review-order-table {
	width: 100%;
	border: none !important;
}
.woocommerce-checkout-review-order-table thead th {
	font-family: var(--font-sans);
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--primary-green);
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(30, 70, 32, 0.08);
}
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th {
	padding: 0.75rem 0;
	border: none;
}
.woocommerce-checkout-review-order-table .order-total td {
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--primary-green);
}

/* Payment Methods */
.woocommerce-checkout-payment {
	margin-top: 2rem;
}
.wc_payment_methods {
	list-style: none;
	padding: 0;
}
.wc_payment_methods li {
	background-color: var(--white);
	border: 1.5px solid rgba(30, 70, 32, 0.08);
	border-radius: var(--border-radius-sm);
	padding: 1rem 1.5rem;
	margin-bottom: 0.75rem;
	transition: var(--transition-fast);
}
.wc_payment_methods li:hover,
.wc_payment_methods li.active {
	border-color: var(--accent-gold);
}
.wc_payment_methods li label {
	font-weight: 600;
	color: var(--primary-green);
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
.wc_payment_methods .payment_box {
	margin-top: 0.75rem;
	padding: 1rem;
	background-color: var(--bg-off-white);
	border-radius: var(--border-radius-sm);
	font-size: 0.85rem;
	color: var(--text-muted);
}

/* Place Order Button */
#place_order {
	width: 100%;
	padding: 1.1rem 2rem !important;
	font-size: 1rem !important;
	margin-top: 1.5rem;
}


/* ═══════════════════════════════════════════════
 * MY ACCOUNT PAGE
 * ═══════════════════════════════════════════════ */
.woocommerce-account .woocommerce {
	padding: 2rem 0 4rem;
}

.woocommerce-MyAccount-navigation {
	background-color: var(--white);
	border-radius: var(--border-radius-md);
	box-shadow: var(--shadow-sm);
	border: 1px solid rgba(30, 70, 32, 0.04);
	overflow: hidden;
}
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.woocommerce-MyAccount-navigation ul li {
	border-bottom: 1px solid rgba(30, 70, 32, 0.06);
}
.woocommerce-MyAccount-navigation ul li:last-child {
	border-bottom: none;
}
.woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 1rem 1.5rem;
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--primary-green);
	transition: var(--transition-fast);
	text-decoration: none;
}
.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
	background-color: rgba(197, 168, 128, 0.08);
	color: var(--accent-gold);
	padding-left: 2rem;
}
.woocommerce-MyAccount-navigation ul li.is-active a {
	border-left: 3px solid var(--accent-gold);
	font-weight: 700;
}

.woocommerce-MyAccount-content {
	background-color: var(--white);
	border-radius: var(--border-radius-md);
	box-shadow: var(--shadow-sm);
	padding: 2rem;
	border: 1px solid rgba(30, 70, 32, 0.04);
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	display: inline-block;
	vertical-align: top;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 28%;
	margin-right: 2%;
}
.woocommerce-account .woocommerce-MyAccount-content {
	width: 68%;
}

@media (max-width: 768px) {
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		width: 100%;
		display: block;
		margin-right: 0;
		margin-bottom: 1.5rem;
	}
}

/* Login / Register Forms */
.woocommerce form.login,
.woocommerce form.register {
	background-color: var(--white);
	border-radius: var(--border-radius-md);
	box-shadow: var(--shadow-sm);
	padding: 2.5rem;
	border: 1px solid rgba(30, 70, 32, 0.04);
}
.woocommerce form.login h2,
.woocommerce form.register h2 {
	font-family: var(--font-serif);
	font-size: 1.5rem;
	color: var(--primary-green);
	margin-bottom: 1.5rem;
}

/* Order tables */
.woocommerce table.my_account_orders {
	border: none;
	border-radius: var(--border-radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
}
.woocommerce table.my_account_orders thead {
	background-color: var(--primary-green);
}
.woocommerce table.my_account_orders thead th {
	color: var(--white);
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 1rem;
	border: none;
}
.woocommerce table.my_account_orders td {
	padding: 1rem;
	border-bottom: 1px solid rgba(30, 70, 32, 0.06);
}


/* ═══════════════════════════════════════════════
 * PRODUCT CARD HOVER EFFECTS
 * ═══════════════════════════════════════════════ */
.product-card:hover .product-img-wrapper img {
	transform: scale(1.06);
}
.product-card:hover .product-actions-overlay {
	opacity: 1 !important;
}
.product-action-btn:hover {
	background-color: var(--accent-gold) !important;
	color: var(--white) !important;
}


/* ═══════════════════════════════════════════════
 * STAR RATINGS
 * ═══════════════════════════════════════════════ */
.star-rating {
	color: var(--accent-gold);
	font-size: 0.85rem;
}


/* ═══════════════════════════════════════════════
 * SALE BADGE
 * ═══════════════════════════════════════════════ */
.woocommerce span.onsale {
	background-color: #D0021B;
	color: var(--white);
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 0.3rem 0.8rem;
	border-radius: var(--border-radius-sm);
	min-height: auto;
	min-width: auto;
	line-height: 1.5;
}


/* ═══════════════════════════════════════════════
 * MINI CART WIDGET
 * ═══════════════════════════════════════════════ */
.widget_shopping_cart .total {
	font-weight: 700;
	color: var(--primary-green);
	border-top: 1px solid rgba(30, 70, 32, 0.08);
	padding-top: 0.75rem;
	margin-top: 0.75rem;
}
.widget_shopping_cart .buttons a {
	margin-bottom: 0.5rem;
}


/* ═══════════════════════════════════════════════
 * ELEMENTOR + WOOCOMMERCE INTEGRATION
 * ═══════════════════════════════════════════════ */
.elementor-widget-woocommerce-products .premium-card {
	box-shadow: var(--shadow-sm);
}
.elementor-widget-woocommerce-products .premium-card:hover {
	box-shadow: var(--shadow-lg), var(--shadow-gold);
	transform: translateY(-8px);
}

/* Elementor page content width */
body.elementor-page .sitaram-wc-wrapper {
	max-width: 100%;
	padding: 0;
}


/* ═══════════════════════════════════════════════
 * PRODUCT CARD V2 — WOOCOMMERCE PRICE OVERRIDES
 * ═══════════════════════════════════════════════ */

/* Sale price: bold green current, gray strikethrough original */
.product-price-v2 .price del {
	font-size: 0.85rem;
	font-weight: 400;
	color: var(--text-muted);
	text-decoration: line-through;
	opacity: 0.7;
	order: 2;
}

.product-price-v2 .price ins {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--primary-green);
	text-decoration: none;
	order: 1;
}

.product-price-v2 .price > .woocommerce-Price-amount {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--primary-green);
}

/* Variable product price range */
.product-price-v2 .price {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-wrap: wrap;
}

/* Override ATC button within the v2 card */
.product-card-v2 .product-atc-v2,
.product-card-v2 a.product-atc-v2 {
	background-color: var(--primary-green) !important;
	color: var(--white) !important;
	border: 1.5px solid var(--primary-green) !important;
	width: 100% !important;
	font-size: 0.78rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	padding: 0.7rem 1rem !important;
	border-radius: var(--border-radius-sm) !important;
	text-align: center !important;
}

.product-card-v2 .product-atc-v2:hover,
.product-card-v2 a.product-atc-v2:hover {
	background-color: var(--accent-gold) !important;
	border-color: var(--accent-gold) !important;
	box-shadow: var(--shadow-gold) !important;
	transform: translateY(-2px) !important;
}

/* View Cart link after AJAX add */
.product-card-v2 a.added_to_cart {
	font-size: 0.72rem !important;
	background-color: transparent !important;
	color: var(--accent-gold) !important;
	border: none !important;
	padding: 0.4rem 0 !important;
	box-shadow: none !important;
	width: 100% !important;
	text-align: center !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}
