/*
 * BDW WooCommerce Skin v1.0.1
 * Scope-safe visual normalization layer.
 * Only WooCommerce-owned wrappers/components are targeted.
 */

/* Prices */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price,
.woocommerce .cart_totals .amount,
.woocommerce .woocommerce-checkout-review-order-table .amount,
.woocommerce .woocommerce-order-details .amount,
.woocommerce .woocommerce-MyAccount-content .amount,
.wc-block-components-product-price,
.wc-block-grid__product-price,
.wc-block-components-formatted-money-amount {
	color: var(--bdw-woo-primary);
	font-weight: var(--bdw-woo-price-weight);
}

/* Product links only */
.woocommerce ul.products li.product a,
.woocommerce div.product .product_meta a,
.woocommerce div.product .woocommerce-tabs a,
.woocommerce .woocommerce-MyAccount-content a:not(.button),
.woocommerce .woocommerce-cart-form a:not(.button),
.woocommerce .cart_totals a:not(.button),
.wc-block-components-product-name,
.wc-block-components-product-name a {
	color: var(--bdw-woo-primary);
}

/* Classic Woo buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce div.product form.cart .button {
	appearance: none;
	background: var(--bdw-woo-primary);
	border: 1px solid var(--bdw-woo-primary);
	border-radius: var(--bdw-woo-button-radius);
	box-shadow: none;
	color: #fff;
	font-weight: var(--bdw-woo-button-weight);
	line-height: 1.2;
	min-height: 44px;
	padding: .85em 1.2em;
	text-decoration: none;
	transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce div.product form.cart .button:hover {
	background: var(--bdw-woo-primary-hover);
	border-color: var(--bdw-woo-primary-hover);
	color: #fff;
	transform: translateY(-1px);
}

/* Woo Blocks buttons */
.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) {
	background: var(--bdw-woo-primary);
	border: 1px solid var(--bdw-woo-primary);
	border-radius: var(--bdw-woo-button-radius);
	color: #fff;
	font-weight: var(--bdw-woo-button-weight);
	min-height: 44px;
}

.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link):hover,
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link):hover {
	background: var(--bdw-woo-primary-hover);
	border-color: var(--bdw-woo-primary-hover);
	color: #fff;
}

/* Sale badges */
.woocommerce span.onsale,
.wc-block-components-product-sale-badge,
.wc-block-grid__product-onsale {
	background: var(--bdw-woo-accent);
	border: 0;
	border-radius: 999px;
	color: var(--bdw-woo-text);
	font-weight: 800;
	line-height: 1;
	min-height: auto;
	min-width: auto;
	padding: .55em .8em;
}

/* Classic Woo forms */
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .quantity .qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: var(--bdw-woo-surface);
	border: 1px solid var(--bdw-woo-border);
	border-radius: var(--bdw-woo-input-radius);
	box-shadow: none;
	color: var(--bdw-woo-text);
	min-height: 44px;
	padding: .75em .9em;
}

.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce .quantity .qty:focus {
	border-color: var(--bdw-woo-accent);
	box-shadow: 0 0 0 var(--bdw-woo-focus-width) color-mix(in srgb, var(--bdw-woo-accent) 20%, transparent);
	outline: 0;
}

/* Woo Blocks forms */
.wp-block-woocommerce-cart .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wp-block-woocommerce-checkout .wc-block-components-address-form__country .wc-blocks-components-select__select,
.wp-block-woocommerce-checkout .wc-block-components-select .wc-block-components-select__select {
	background: var(--bdw-woo-surface);
	border-color: var(--bdw-woo-border);
	border-radius: var(--bdw-woo-input-radius);
	color: var(--bdw-woo-text);
}

/* Notices */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
	background: var(--bdw-woo-surface);
	border: 1px solid var(--bdw-woo-border);
	border-radius: var(--bdw-woo-radius);
	box-shadow: none;
	color: var(--bdw-woo-text);
}

.woocommerce .woocommerce-message { border-left: 4px solid var(--bdw-woo-success); }
.woocommerce .woocommerce-info { border-left: 4px solid var(--bdw-woo-accent); }
.woocommerce .woocommerce-error { border-left: 4px solid var(--bdw-woo-danger); }

.wp-block-woocommerce-cart .wc-block-components-notice-banner,
.wp-block-woocommerce-checkout .wc-block-components-notice-banner {
	background: var(--bdw-woo-surface);
	border: 1px solid var(--bdw-woo-border);
	border-radius: var(--bdw-woo-radius);
	color: var(--bdw-woo-text);
}

/* Product cards */
.woocommerce ul.products li.product,
.wc-block-grid__product {
	background: var(--bdw-woo-surface);
	border: 1px solid var(--bdw-woo-border);
	border-radius: var(--bdw-woo-card-radius);
	box-shadow: var(--bdw-woo-card-shadow);
	overflow: hidden;
}

.woocommerce ul.products li.product {
	padding: 14px;
}

.woocommerce ul.products li.product img,
.wc-block-grid__product-image img {
	border-radius: calc(var(--bdw-woo-card-radius) - 6px);
}

/* Single product */
.woocommerce div.product .product_title {
	color: var(--bdw-woo-text);
	letter-spacing: -.025em;
}

.woocommerce div.product .stock {
	color: var(--bdw-woo-success);
	font-weight: 700;
}

.woocommerce div.product .out-of-stock {
	color: var(--bdw-woo-danger);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--bdw-woo-border);
	padding: 0;
}

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

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-bottom: 2px solid var(--bdw-woo-accent);
	color: var(--bdw-woo-text);
}

/* Tables */
.woocommerce table.shop_table,
.wp-block-woocommerce-cart .wc-block-cart-items,
.wp-block-woocommerce-cart .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wc-block-components-order-summary {
	border-color: var(--bdw-woo-border);
	border-radius: var(--bdw-woo-radius);
}

.woocommerce table.shop_table th {
	color: var(--bdw-woo-text);
	font-weight: 800;
}

.woocommerce table.shop_table td {
	border-top-color: var(--bdw-woo-border);
	color: var(--bdw-woo-text);
}

/* My Account */
.woocommerce .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce .woocommerce-MyAccount-navigation li a {
	border-bottom: 1px solid var(--bdw-woo-border);
	color: var(--bdw-woo-text);
	display: block;
	padding: .85em 0;
	text-decoration: none;
}

.woocommerce .woocommerce-MyAccount-navigation li.is-active a {
	color: var(--bdw-woo-primary);
	font-weight: 800;
}

/* Checkout-specific Select2 only */
.woocommerce-checkout .select2-container--default .select2-selection--single {
	background: var(--bdw-woo-surface);
	border: 1px solid var(--bdw-woo-border);
	border-radius: var(--bdw-woo-input-radius);
	color: var(--bdw-woo-text);
	min-height: 44px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--bdw-woo-text);
	line-height: 42px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 42px;
}

/* Muted Woo-only copy */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb a,
.woocommerce div.product small,
.woocommerce ul.products li.product small,
.wp-block-woocommerce-cart .wc-block-components-product-metadata,
.wp-block-woocommerce-checkout .wc-block-components-product-metadata {
	color: var(--bdw-woo-muted);
}

@media (max-width: 700px) {
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.woocommerce div.product form.cart .button,
	.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
	.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) {
		min-height: 46px;
	}

	.woocommerce ul.products li.product {
		padding: 10px;
	}
}
