/* ==========================================================================
   WOOCOMMERCE OVERRIDES
   Loaded only on Woo pages via conditional in enqueue.php.
   ========================================================================== */

/* Generic Woo notice */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
	padding: var(--apm-space-4) var(--apm-space-5);
	border-radius: var(--apm-radius-md);
	border: var(--apm-border-width) solid var(--apm-color-border);
	background: var(--apm-color-bg-subtle);
	font-size: var(--apm-text-sm);
}
.woocommerce-notices-wrapper .woocommerce-message {
	background: var(--apm-accent-50);
	border-color: var(--apm-accent-200);
	color: var(--apm-accent-700);
}
.woocommerce-notices-wrapper .woocommerce-error {
	background: #FEF2F2;
	border-color: #FECACA;
	color: #991B1B;
}

/* Buttons - inherit our system */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page #payment #place_order {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--apm-space-2);
	padding: var(--apm-space-3) var(--apm-space-6);
	font-family: var(--apm-font-body);
	font-size: var(--apm-text-base);
	font-weight: var(--apm-weight-semibold);
	background: var(--apm-primary-700);
	color: var(--apm-neutral-0);
	border: var(--apm-border-width) solid var(--apm-primary-700);
	border-radius: var(--apm-radius-md);
	text-decoration: none;
	transition: background-color var(--apm-duration-base) var(--apm-ease-out);
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-page #payment #place_order:hover {
	background: var(--apm-primary-800);
	border-color: var(--apm-primary-800);
	color: var(--apm-neutral-0);
}

/* Checkout form */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	padding: var(--apm-space-3) var(--apm-space-4);
	border: var(--apm-border-width) solid var(--apm-color-border-strong);
	border-radius: var(--apm-radius-md);
	font: inherit;
	color: var(--apm-color-text);
	background: var(--apm-color-bg);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--apm-accent-500);
	box-shadow: 0 0 0 3px rgba(20, 204, 117, 0.15);
	outline: none;
}

.woocommerce form .form-row label {
	font-size: var(--apm-text-sm);
	font-weight: var(--apm-weight-medium);
	margin-bottom: var(--apm-space-2);
}

/* Order review box */
.woocommerce-checkout #order_review,
.woocommerce-checkout-review-order-table {
	background: var(--apm-color-bg-subtle);
	border: var(--apm-border-width) solid var(--apm-color-border);
	border-radius: var(--apm-radius-lg);
	padding: var(--apm-space-4);
}

/* Price typography */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-family: var(--apm-font-display);
	font-weight: var(--apm-weight-bold);
	color: var(--apm-color-text);
}

/* Account page nav */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--apm-space-1);
}
.woocommerce-MyAccount-navigation li a {
	display: block;
	padding: var(--apm-space-3) var(--apm-space-4);
	color: var(--apm-color-text);
	text-decoration: none;
	border-radius: var(--apm-radius-md);
	font-weight: var(--apm-weight-medium);
}
.woocommerce-MyAccount-navigation li a:hover,
.woocommerce-MyAccount-navigation li.is-active a {
	background: var(--apm-color-bg-muted);
	color: var(--apm-color-text-accent);
}
