/**
 * B&M WooCommerce Styles
 *
 * Comprehensive styling for Shop, Single Product, Cart, Checkout,
 * and My Account pages — unified with the B&M design system.
 *
 * @package BM_Child
 * @since   1.4.0
 */

/* ==========================================================================
   SHOP / ARCHIVE PAGE
   ========================================================================== */

/* Product grid container — wider to fill the space */
.woocommerce .ast-woocommerce-container,
.woocommerce-page .ast-woocommerce-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: var(--bm-space-2xl) var(--bm-space-2xl);
}

/* Result count and ordering */
.woocommerce .woocommerce-result-count {
	font-family: var(--bm-font-accent);
	color: var(--bm-grey);
	font-size: var(--bm-text-sm);
}

.woocommerce .woocommerce-ordering select {
	font-family: var(--bm-font-accent) !important;
	font-size: var(--bm-text-sm) !important;
	cursor: pointer;
}

/* Product Cards */
.woocommerce ul.products li.product {
	background: var(--bm-white);
	border: 1px solid var(--bm-border-light);
	border-radius: var(--bm-radius-lg);
	overflow: hidden;
	transition: box-shadow var(--bm-transition-slow), transform var(--bm-transition);
	padding: 0 !important;
	text-align: left;
}

.woocommerce ul.products li.product:hover {
	box-shadow: var(--bm-shadow-lg);
	transform: translateY(-4px);
}

/* Product image */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
.woocommerce ul.products li.product a img {
	margin: 0 !important;
	border-radius: 0;
	transition: transform 0.5s ease;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.05);
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
	overflow: hidden;
	display: block;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-lg) !important;
	font-weight: 600 !important;
	color: var(--bm-black) !important;
	padding: var(--bm-space-md) var(--bm-space-md) var(--bm-space-xs) !important;
	margin: 0 !important;
}

/* Product price */
.woocommerce ul.products li.product .price {
	color: var(--bm-primary) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 700 !important;
	font-size: var(--bm-text-base) !important;
	padding: 0 var(--bm-space-md) !important;
	margin-bottom: var(--bm-space-sm) !important;
}

/* Short description in loop */
.woocommerce ul.products li.product .ast-woo-shop-product-description p {
	font-size: var(--bm-text-sm);
	color: var(--bm-grey);
	padding: 0 var(--bm-space-md);
	line-height: 1.5;
	margin: 0 0 var(--bm-space-sm);
}

/* Add to cart button in loop */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
	margin: var(--bm-space-sm) var(--bm-space-md) var(--bm-space-md) !important;
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border: none !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: var(--bm-text-sm) !important;
	padding: 0.6rem 1.2rem !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: background var(--bm-transition), box-shadow var(--bm-transition) !important;
	display: inline-block !important;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--bm-primary-dark) !important;
	color: var(--bm-white) !important;
	box-shadow: var(--bm-shadow-md) !important;
}

/* Sale badge */
.woocommerce span.onsale {
	background: var(--bm-accent) !important;
	color: var(--bm-black) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 700 !important;
	border-radius: var(--bm-radius-full) !important;
	font-size: 0.75rem !important;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

/* Star ratings */
.woocommerce .star-rating span::before {
	color: var(--bm-accent) !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE
   ========================================================================== */

.woocommerce div.product {
	max-width: 1200px;
	margin: 0 auto;
	padding: var(--bm-space-2xl) var(--bm-space-xl);
}

/* Product gallery */
.woocommerce div.product div.images {
	border-radius: var(--bm-radius-lg);
	overflow: hidden;
	box-shadow: var(--bm-shadow-md);
}

.woocommerce div.product div.images img {
	border-radius: var(--bm-radius-lg);
}

/* Product title */
.woocommerce div.product .product_title {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-3xl) !important;
	font-weight: 700 !important;
	color: var(--bm-black) !important;
	margin-bottom: var(--bm-space-sm) !important;
}

/* Price */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-family: var(--bm-font-accent) !important;
	font-size: var(--bm-text-xl) !important;
	font-weight: 700 !important;
	color: var(--bm-primary) !important;
}

/* Description / macros */
.woocommerce div.product .woocommerce-product-details__short-description {
	font-size: var(--bm-text-base);
	color: var(--bm-grey);
	line-height: 1.7;
	padding-bottom: var(--bm-space-md);
	border-bottom: 1px solid var(--bm-border-light);
	margin-bottom: var(--bm-space-md);
}

.woocommerce div.product .woocommerce-product-details__short-description strong {
	color: var(--bm-dark);
}

/* Quantity input */
.woocommerce .quantity .qty {
	border: 1px solid var(--bm-toasted-tan) !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	width: 70px !important;
	text-align: center !important;
}

/* Single add to cart button */
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border: none !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	padding: 0.85rem 2.5rem !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: all var(--bm-transition) !important;
}

.woocommerce div.product form.cart .button:hover {
	background: var(--bm-primary-dark) !important;
	box-shadow: var(--bm-shadow-lg) !important;
	transform: translateY(-2px);
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0 !important;
	margin: var(--bm-space-2xl) 0 0 !important;
	border-bottom: 2px solid var(--bm-border-light) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	border-bottom-color: var(--bm-border-light) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: none !important;
	background: transparent !important;
	border-radius: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: var(--bm-text-sm) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	color: var(--bm-grey) !important;
	padding: var(--bm-space-md) var(--bm-space-lg) !important;
	transition: color var(--bm-transition) !important;
	position: relative;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 2px;
	background: transparent;
	transition: background var(--bm-transition);
}

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

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a::after {
	background: var(--bm-primary);
}

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

.woocommerce div.product .woocommerce-tabs .panel {
	padding: var(--bm-space-xl) 0;
	font-family: var(--bm-font-body);
	line-height: 1.7;
	color: var(--bm-grey);
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-xl) !important;
	color: var(--bm-black) !important;
}

/* Meta (SKU, categories) */
.woocommerce div.product .product_meta {
	font-family: var(--bm-font-accent);
	font-size: var(--bm-text-sm);
	color: var(--bm-grey);
	padding-top: var(--bm-space-md);
	border-top: 1px solid var(--bm-border-light);
	margin-top: var(--bm-space-md);
}

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

/* Related products */
.woocommerce div.product .related h2,
.woocommerce div.product .upsells h2 {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-2xl) !important;
	color: var(--bm-black) !important;
	text-align: center;
	margin-bottom: var(--bm-space-xl);
}

/* ==========================================================================
   CART PAGE
   ========================================================================== */

.woocommerce-cart .woocommerce {
	max-width: 1200px;
	margin: 0 auto;
	padding: var(--bm-space-2xl) var(--bm-space-xl);
}

/* Cart table */
.woocommerce table.shop_table {
	border: 1px solid var(--bm-border-light) !important;
	border-radius: var(--bm-radius-lg) !important;
	overflow: hidden;
	border-collapse: separate !important;
}

.woocommerce table.shop_table thead {
	background: var(--bm-black) !important;
}

.woocommerce table.shop_table thead th {
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: var(--bm-text-sm) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	color: var(--bm-white) !important;
	padding: var(--bm-space-md) var(--bm-space-lg) !important;
	border: none !important;
}

.woocommerce table.shop_table td {
	padding: var(--bm-space-md) var(--bm-space-lg) !important;
	border-top: 1px solid var(--bm-border-light) !important;
	vertical-align: middle !important;
	font-family: var(--bm-font-body) !important;
	color: var(--bm-dark) !important;
}

.woocommerce table.shop_table .product-name a {
	font-family: var(--bm-font-heading) !important;
	font-weight: 600 !important;
	color: var(--bm-black) !important;
	font-size: var(--bm-text-lg) !important;
}

.woocommerce table.shop_table .product-name a:hover {
	color: var(--bm-primary) !important;
}

/* Cart item add-on display */
.woocommerce table.shop_table .product-name dl.variation {
	font-size: var(--bm-text-sm);
	color: var(--bm-grey);
	margin: var(--bm-space-xs) 0 0;
}

.woocommerce table.shop_table .product-name dl.variation dt {
	font-weight: 600;
	color: var(--bm-dark);
}

/* Cart thumbnail */
.woocommerce table.shop_table img {
	border-radius: var(--bm-radius-md) !important;
	width: 72px !important;
}

/* Cart totals box — match Astra's specificity */
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce .cart_totals,
.woocommerce-page .cart_totals {
	background: var(--bm-black) !important;
	background-color: var(--bm-black) !important;
	border-radius: var(--bm-radius-lg) !important;
	padding: var(--bm-space-xl) !important;
	border: none !important;
	border-color: transparent !important;
	box-shadow: var(--bm-shadow-lg);
}

/* h2 heading — Astra uses .cart-collaterals .cart_totals > h2 with negative margins */
.woocommerce-cart .cart-collaterals .cart_totals > h2,
.woocommerce .cart_totals h2,
.woocommerce-page .cart_totals h2 {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-xl) !important;
	color: rgba(254, 254, 250, 0.9) !important;
	background: transparent !important;
	background-color: transparent !important;
	margin: 0 0 var(--bm-space-md) 0 !important;
	padding: 0 0 var(--bm-space-md) 0 !important;
	border-bottom: 1px solid rgba(254, 254, 250, 0.1) !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
}

.woocommerce .cart_totals table {
	border: none !important;
}

.woocommerce .cart_totals table td,
.woocommerce .cart_totals table th {
	border-top: 1px solid rgba(254, 254, 250, 0.1) !important;
	padding: var(--bm-space-md) 0 !important;
	font-family: var(--bm-font-body) !important;
	color: rgba(254, 254, 250, 0.7) !important;
}

.woocommerce .cart_totals table th {
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	color: rgba(254, 254, 250, 0.5) !important;
}

.woocommerce .cart_totals .order-total td {
	font-size: var(--bm-text-xl) !important;
	font-weight: 700 !important;
	color: var(--bm-white) !important;
}

.woocommerce .cart_totals .order-total td .woocommerce-Price-amount {
	color: var(--bm-primary) !important;
}

/* Proceed to checkout button */
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button,
.woocommerce a.checkout-button {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	padding: 1rem !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	transition: all var(--bm-transition) !important;
}

.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--bm-primary-dark) !important;
	box-shadow: var(--bm-shadow-lg) !important;
}

/* Coupon field */
.woocommerce .coupon .input-text {
	border-radius: var(--bm-radius-md) 0 0 var(--bm-radius-md) !important;
}

.woocommerce .coupon .button {
	background: var(--bm-dark) !important;
	color: var(--bm-white) !important;
	border-radius: 0 var(--bm-radius-md) var(--bm-radius-md) 0 !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* Update cart button */
.woocommerce button[name="update_cart"] {
	background: var(--bm-dark) !important;
	color: var(--bm-white) !important;
	border: none !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: all var(--bm-transition) !important;
}

.woocommerce button[name="update_cart"]:hover {
	background: var(--bm-black) !important;
}

/* Empty cart state */
.woocommerce .cart-empty.woocommerce-info {
	text-align: center;
	padding: var(--bm-space-3xl) var(--bm-space-xl) !important;
	background: var(--bm-cream) !important;
	border: 1px solid var(--bm-light) !important;
	border-left: 1px solid var(--bm-light) !important;
	border-radius: var(--bm-radius-lg) !important;
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-xl) !important;
	color: var(--bm-dark) !important;
	box-shadow: none !important;
}

.woocommerce .cart-empty.woocommerce-info::before {
	display: block !important;
	font-size: 3rem !important;
	margin-bottom: var(--bm-space-md) !important;
	color: var(--bm-silver) !important;
}

.woocommerce .return-to-shop a {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	padding: 0.85rem 2rem !important;
	font-size: 1rem !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: all var(--bm-transition) !important;
	display: inline-block !important;
	margin-top: var(--bm-space-md) !important;
}

.woocommerce .return-to-shop a:hover {
	background: var(--bm-primary-dark) !important;
	box-shadow: var(--bm-shadow-lg) !important;
}

/* ==========================================================================
   CHECKOUT PAGE
   ========================================================================== */

.woocommerce-checkout .woocommerce {
	max-width: 1200px;
	margin: 0 auto;
	padding: var(--bm-space-2xl) var(--bm-space-xl);
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	border: 1px solid var(--bm-border-light) !important;
	border-radius: var(--bm-radius-lg) !important;
	padding: var(--bm-space-xl) !important;
	background: var(--bm-white) !important;
}

/* Checkout section headings (NOT order_review_heading — that has its own box) */
.woocommerce-checkout h3:not(#order_review_heading),
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-xl) !important;
	font-weight: 700 !important;
	color: var(--bm-black) !important;
	padding-bottom: var(--bm-space-md) !important;
	border-bottom: 2px solid var(--bm-border-light) !important;
	margin-bottom: var(--bm-space-lg) !important;
}

/* Form labels */
.woocommerce form .form-row label {
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	font-size: var(--bm-text-sm) !important;
	color: var(--bm-dark) !important;
}

.woocommerce form .form-row .required {
	color: var(--bm-primary) !important;
}

/* Order review heading — top of the box */
.woocommerce-checkout #order_review_heading {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-xl) !important;
	font-weight: 700 !important;
	color: var(--bm-black) !important;
	border-width: 2px 2px 0 2px !important;
	border-style: solid !important;
	border-color: var(--bm-toasted-tan) !important;
	border-radius: var(--bm-radius-lg) var(--bm-radius-lg) 0 0 !important;
	background: var(--bm-cream) !important;
	padding: 1em 1.5em !important;
	margin: 0 !important;
}

/* Order review body — bottom of the box */
.woocommerce-checkout form #order_review {
	border-width: 0 2px 2px 2px !important;
	border-style: solid !important;
	border-color: var(--bm-toasted-tan) !important;
	border-radius: 0 0 var(--bm-radius-lg) var(--bm-radius-lg) !important;
	background: var(--bm-white) !important;
	padding-left: 1.5em !important;
	padding-right: 1.5em !important;
}

/* Order review table */
.woocommerce-checkout-review-order-table {
	border: none !important;
	border-radius: 0 !important;
	margin: 0 !important;
}

.woocommerce-checkout form #order_review td,
.woocommerce-checkout form #order_review th {
	border-color: var(--bm-light) !important;
}

/* Place order button */
.woocommerce #place_order {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border: none !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 700 !important;
	font-size: 1.1rem !important;
	padding: 1rem 2rem !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	width: 100%;
	transition: all var(--bm-transition) !important;
}

.woocommerce #place_order:hover {
	background: var(--bm-primary-dark) !important;
	box-shadow: var(--bm-shadow-lg) !important;
}

/* Payment methods */
.woocommerce-checkout #payment {
	background: var(--bm-cream) !important;
	border-radius: var(--bm-radius-md) !important;
	border: 1px solid var(--bm-light) !important;
	margin-top: var(--bm-space-md) !important;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid var(--bm-light) !important;
	padding: var(--bm-space-md) var(--bm-space-lg) !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
	font-family: var(--bm-font-body) !important;
}

.woocommerce-checkout #payment .payment_box {
	background: rgba(255, 255, 255, 0.6) !important;
	border-radius: var(--bm-radius-md) !important;
	color: var(--bm-grey) !important;
}

/* ==========================================================================
   MY ACCOUNT PAGE
   ========================================================================== */

/* Account page — force side-by-side layout via flexbox */
.woocommerce-account .entry-content,
.woocommerce-account .ast-woocommerce-container,
.woocommerce-account #primary .ast-woocommerce-container {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: var(--bm-space-2xl) var(--bm-space-xl) !important;
}

/* Clear Astra floats — they break everything */
.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none !important;
	width: 260px !important;
	flex-shrink: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	flex: 1 !important;
	min-width: 0 !important;
}

/* The parent of nav+content — make it flex */
.woocommerce-account .woocommerce-MyAccount-navigation + .woocommerce-MyAccount-content {
	/* This ensures content is after nav — use a shared parent flex */
}

/* Target whatever element directly contains both nav and content */
.woocommerce-account .woocommerce {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: var(--bm-space-xl) !important;
	align-items: flex-start !important;
}

/* Notices should take full width */
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-account .woocommerce > .woocommerce-message,
.woocommerce-account .woocommerce > .woocommerce-error,
.woocommerce-account .woocommerce > .woocommerce-info,
.woocommerce-account .woocommerce > form.woocommerce-form-login,
.woocommerce-account .woocommerce > form.woocommerce-form-register {
	width: 100% !important;
	flex-basis: 100% !important;
}

/* Not-logged-in: single column (login form only) */
.woocommerce-account:not(.logged-in) .woocommerce {
	display: block !important;
}

/* ---- Navigation sidebar ---- */
.woocommerce-account .woocommerce-MyAccount-navigation {
	background: var(--bm-black);
	border-radius: var(--bm-radius-lg);
	overflow: hidden;
	padding: var(--bm-space-md) 0;
	position: sticky;
	top: calc(var(--bm-space-xl) + 80px);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

/* Kill ALL border/underline styles Astra might inject */
.woocommerce-account .woocommerce-MyAccount-navigation ul li,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a::before,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a::after {
	border: none !important;
	border-bottom: none !important;
	border-top: none !important;
	box-shadow: none !important;
	text-decoration: none !important;
	outline: none !important;
	background-image: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: var(--bm-space-sm);
	padding: 0.85rem var(--bm-space-xl) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 500 !important;
	font-size: var(--bm-text-base) !important;
	color: rgba(254, 254, 250, 0.6) !important;
	transition: all var(--bm-transition) !important;
	border-left: 3px solid transparent !important;
	background: transparent !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	background: rgba(254, 254, 250, 0.04) !important;
	color: var(--bm-white) !important;
	border-left-color: rgba(254, 254, 250, 0.15) !important;
}

/* Active state */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
	background: rgba(216, 106, 61, 0.08) !important;
	color: var(--bm-white) !important;
	border-left-color: var(--bm-primary) !important;
	font-weight: 600 !important;
}

/* Logout link — subtle differentiation */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: var(--bm-space-sm);
	border-top: 1px solid rgba(254, 254, 250, 0.06) !important;
	padding-top: var(--bm-space-sm);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: rgba(254, 254, 250, 0.35) !important;
	font-size: var(--bm-text-sm) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
	color: var(--bm-error) !important;
}

/* ---- Content area ---- */
.woocommerce-account .woocommerce-MyAccount-content {
	background: var(--bm-white);
	border-radius: var(--bm-radius-lg);
	border: 1px solid var(--bm-border-light);
	padding: var(--bm-space-2xl);
	min-height: 400px;
}

/* Dashboard greeting */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
	font-size: var(--bm-text-lg);
	color: var(--bm-dark);
	line-height: 1.7;
	padding-bottom: var(--bm-space-lg);
	border-bottom: 1px solid var(--bm-border-light);
	margin-bottom: var(--bm-space-lg);
}

.woocommerce-account .woocommerce-MyAccount-content p {
	color: var(--bm-grey);
	line-height: 1.7;
}

.woocommerce-account .woocommerce-MyAccount-content a {
	color: var(--bm-primary) !important;
	font-weight: 500;
	text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
	color: var(--bm-primary-dark) !important;
	text-decoration: underline !important;
}

/* Account content headings */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
	font-family: var(--bm-font-heading) !important;
	color: var(--bm-black) !important;
	margin-bottom: var(--bm-space-md) !important;
}

/* Orders table */
.woocommerce-account .woocommerce-orders-table {
	border-radius: var(--bm-radius-lg) !important;
	overflow: hidden;
}

/* Account buttons */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border: none !important;
	border-radius: var(--bm-radius-md) !important;
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	padding: 0.65rem 1.5rem !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: var(--bm-text-sm) !important;
	transition: all var(--bm-transition) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .button:hover {
	background: var(--bm-primary-dark) !important;
	box-shadow: var(--bm-shadow-md) !important;
}

/* ---- Addresses grid ---- */
.woocommerce-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--bm-space-lg);
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
	background: var(--bm-cream);
	border-radius: var(--bm-radius-lg);
	padding: var(--bm-space-xl);
	border: 1px solid var(--bm-border-light);
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address header h3 {
	font-family: var(--bm-font-heading) !important;
	font-size: var(--bm-text-lg) !important;
	margin-bottom: var(--bm-space-md) !important;
}

.woocommerce-account .woocommerce-Addresses address {
	font-style: normal;
	color: var(--bm-grey);
	line-height: 1.7;
}

/* ---- Login / Register forms ---- */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	border: 1px solid var(--bm-border-light) !important;
	border-radius: var(--bm-radius-lg) !important;
	padding: var(--bm-space-2xl) !important;
	background: var(--bm-white) !important;
	max-width: 500px;
	margin: 0 auto !important;
	box-shadow: var(--bm-shadow-sm);
}

/* Override grid for login page (not logged in = no nav) */
.woocommerce-account:not(.logged-in) .woocommerce {
	display: block;
}

.woocommerce-account .woocommerce-form-login h2,
.woocommerce-account .woocommerce-form-register h2 {
	font-family: var(--bm-font-heading) !important;
	text-align: center;
	margin-bottom: var(--bm-space-xl) !important;
}

.woocommerce-account .woocommerce-form-login .button,
.woocommerce-account .woocommerce-form-register .button {
	width: 100%;
	text-align: center;
	padding: 0.85rem !important;
	font-size: 1rem !important;
}

/* ==========================================================================
   PAGINATION
   ========================================================================== */

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	font-family: var(--bm-font-accent) !important;
	font-weight: 600 !important;
	color: var(--bm-grey) !important;
	border-color: var(--bm-border-light) !important;
	border-radius: var(--bm-radius-md) !important;
	transition: all var(--bm-transition) !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border-color: var(--bm-primary) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--bm-primary) !important;
	color: var(--bm-white) !important;
	border-color: var(--bm-primary) !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 768px) {
	.woocommerce .ast-woocommerce-container,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.woocommerce-account .woocommerce {
		padding: var(--bm-space-xl) var(--bm-space-md);
	}

	/* Stack account layout on mobile */
	.woocommerce-account .woocommerce {
		flex-direction: column !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 100% !important;
		position: static;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		padding: var(--bm-space-lg);
	}

	/* Stack addresses */
	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	/* Cart table responsive */
	.woocommerce table.shop_table td {
		padding: var(--bm-space-sm) var(--bm-space-md) !important;
	}

	/* Single product */
	.woocommerce div.product {
		padding: var(--bm-space-xl) var(--bm-space-md);
	}
}
