/* WooCommerce notices (add-to-cart success/error) — brand-styled since the
   default WooCommerce stylesheet is disabled in functions.php. Auto-dismissed
   by JS (mini-cart.js) a few seconds after they appear. */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
	list-style: none;
	margin: 0 0 20px;
	padding: 16px 20px;
	border-radius: 6px;
	font-size: 14px;
	line-height: 20px;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif;
	color: #000;
	transition: opacity .4s ease;
}

.woocommerce-message {
	background: #fff9ee;
	border: 1px solid var(--maxxed-brand, #e1b04a);
}

.woocommerce-error {
	background: #fdf1f1;
	border: 1px solid #c0392b;
}

.woocommerce-info {
	background: #f6f6f6;
	border: 1px solid #cfcfcf;
}

.woocommerce-message a,
.woocommerce-error a,
.woocommerce-info a {
	color: #000;
	font-weight: 700;
	text-decoration: underline;
}

.woocommerce-message a.button,
.woocommerce-error a.button {
	margin-left: 10px;
}

/* Maxxed — WooCommerce single-product overrides.
   Layered on top of style.css; only touches what WooCommerce's own
   markup introduces (variation form, quantity input, price/availability). */

/* The real <select> that drives the "package" attribute stays in the DOM
   for wc-add-to-cart-variation.js, but the visible UI is the card row. */
.maxxed-hidden-attribute {
	display: none;
}

/* Let WooCommerce's .quantity wrapper participate in the existing
   .cart-qty-div flex row as if it wasn't there. */
.cart-qty-div .quantity {
	display: contents;
}

.cart-qty-div input.qty::-webkit-outer-spin-button,
.cart-qty-div input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.cart-qty-div input.qty {
	-moz-appearance: textfield;
}

/* Price and availability are shown on the Add to Cart button itself
   (product-variations.js) instead of as a separate block. .single_variation
   is ONLY the price/availability/description placeholder — the button and
   quantity stepper are siblings of it inside .single_variation_wrap and stay
   visible. */
.single_variation_wrap {
	width: 100%;
}

.single_variation_wrap .single_variation {
	display: none;
}

p.stock {
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 10px;
}

p.stock.in-stock {
	color: #2a9d4a;
}

p.stock.out-of-stock {
	color: #c0392b;
}

.woocommerce-variation-add-to-cart.disabled .single_add_to_cart_button,
.single_add_to_cart_button.disabled {
	opacity: .5;
	cursor: not-allowed;
	box-shadow: none;
}

.single_add_to_cart_button .atc-save {
	white-space: nowrap;
}

/* Struck-through regular price inside the Add to Cart button, when the
   resolved price is a sale price. */
.single_add_to_cart_button del {
	font-weight: 400;
	opacity: .6;
	text-decoration: line-through;
	margin-right: 2px;
}

/* Package card sale pricing — struck-through regular price before the
   discounted per-vial rate. */
.package_price del {
	font-size: 15px;
	font-weight: 400;
	color: #999;
	text-decoration: line-through;
	margin-right: 4px;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif;
	text-transform: none;
}

/* Related products ("Complete Your Stack") price markup uses WooCommerce's
   own <span class="price"> — keep it visually inline with the design. */
.shop_col_price_box .price {
	font-family: var(--maxxed-heading-font, 'Bebas Neue');
}

.shop_col_price_box .price del {
	display: block;
	opacity: .6;
	font-size: 14px;
	text-decoration: line-through;
}
