/* WooCommerce Unified Apparel Options — global storefront palette */
:root {
	--wcuas-site-primary: #0f2d5c;
	--wcuas-site-secondary: #c8102e;
	--wcuas-site-accent: #c8102e;
	--wcuas-site-button-text: #ffffff;
	--wcuas-site-background: #ffffff;
	--wcuas-site-surface: #ffffff;
	--wcuas-site-text: #172033;
	--wcuas-site-border: #d9dee7;
}

/* Site-level typography, links and surfaces. */
body {
	background-color: var(--wcuas-site-background);
	color: var(--wcuas-site-text);
}

body :where(h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend) {
	color: inherit;
}

body :where(a:not(.button):not(.wp-element-button):not(.wp-block-button__link)) {
	color: var(--wcuas-site-accent);
}

/* Standard WordPress/theme buttons plus classic WooCommerce buttons. */
body :where(
	button:not(.wcuas-size-button),
	input[type="submit"],
	input[type="button"],
	.wp-element-button,
	.wp-block-button__link,
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.woocommerce #respond input#submit
) {
	border-color: var(--wcuas-site-primary) !important;
	background-color: var(--wcuas-site-primary) !important;
	color: var(--wcuas-site-button-text) !important;
}

body :where(
	button:not(.wcuas-size-button),
	input[type="submit"],
	input[type="button"],
	.wp-element-button,
	.wp-block-button__link,
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.woocommerce #respond input#submit
):hover {
	border-color: var(--wcuas-site-secondary) !important;
	background-color: var(--wcuas-site-secondary) !important;
	color: var(--wcuas-site-button-text) !important;
}

/* General form controls. */
body :where(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="search"],select,textarea) {
	border-color: var(--wcuas-site-border);
	background-color: var(--wcuas-site-surface);
	color: var(--wcuas-site-text);
}

body :where(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="search"],select,textarea):focus {
	border-color: var(--wcuas-site-accent) !important;
	outline-color: var(--wcuas-site-accent);
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--wcuas-site-accent) 18%, transparent);
}

body :where(input[type="checkbox"],input[type="radio"]) {
	accent-color: var(--wcuas-site-primary);
}

/* Classic WooCommerce cart, checkout, account and product surfaces. */
.woocommerce :where(
	table.shop_table,
	.cart_totals,
	#order_review,
	.woocommerce-checkout-review-order-table,
	.woocommerce-form-coupon,
	.woocommerce-form-login,
	.woocommerce-form-register,
	.woocommerce-MyAccount-navigation,
	.woocommerce-MyAccount-content
) {
	border-color: var(--wcuas-site-border);
	background-color: var(--wcuas-site-surface);
	color: var(--wcuas-site-text);
}

.woocommerce :where(table.shop_table th,table.shop_table td) {
	border-color: var(--wcuas-site-border);
}

.woocommerce :where(.quantity .qty,.input-text,select) {
	border-color: var(--wcuas-site-border);
	background: var(--wcuas-site-surface);
	color: var(--wcuas-site-text);
}

/* WooCommerce Cart and Checkout blocks. Keep these selectors broad and shallow
   so blocks can move without depending on a specific nesting structure. */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	color: var(--wcuas-site-text);
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) :where(
	.wc-block-components-sidebar,
	.wc-block-components-totals-wrapper,
	.wc-block-components-order-summary,
	.wc-block-components-checkout-step,
	.wc-block-components-address-card,
	.wc-block-components-panel
) {
	border-color: var(--wcuas-site-border);
	background-color: var(--wcuas-site-surface);
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) :where(
	input,
	select,
	textarea,
	.wc-block-components-text-input input,
	.wc-block-components-combobox .wc-block-components-combobox-control input
) {
	border-color: var(--wcuas-site-border);
	background-color: var(--wcuas-site-surface);
	color: var(--wcuas-site-text);
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) :where(
	input,
	select,
	textarea,
	.wc-block-components-text-input input,
	.wc-block-components-combobox .wc-block-components-combobox-control input
):focus {
	border-color: var(--wcuas-site-accent) !important;
	outline-color: var(--wcuas-site-accent);
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) :where(
	.wc-block-components-button,
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button
) {
	border-color: var(--wcuas-site-primary) !important;
	background-color: var(--wcuas-site-primary) !important;
	color: var(--wcuas-site-button-text) !important;
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) :where(
	.wc-block-components-button,
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button
):hover {
	border-color: var(--wcuas-site-secondary) !important;
	background-color: var(--wcuas-site-secondary) !important;
	color: var(--wcuas-site-button-text) !important;
}

:where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) a {
	color: var(--wcuas-site-accent);
}

/* Product option UI inherits the same global brand palette. */
.wcuas-product-options,
.wcuas-size-picker {
	--wcuas-border: var(--wcuas-site-border);
	--wcuas-text: var(--wcuas-site-text);
	--wcuas-muted: color-mix(in srgb, var(--wcuas-site-text) 62%, var(--wcuas-site-background));
	--wcuas-soft: color-mix(in srgb, var(--wcuas-site-primary) 5%, var(--wcuas-site-surface));
	--wcuas-accent: var(--wcuas-site-primary);
	--wcuas-accent-dark: var(--wcuas-site-primary);
}

.wcuas-product-options .wcuas-section,
.wcuas-product-options .wcuas-design-visual,
.wcuas-product-options .wcuas-delivery-types label,
.wcuas-school-fields input.input-text,
.wcuas-school-fields select,
button.wcuas-size-button {
	background-color: var(--wcuas-site-surface);
}

button.wcuas-size-button.is-selected,
.wcuas-design-card.is-selected::after {
	background-color: var(--wcuas-site-primary);
	border-color: var(--wcuas-site-primary);
	color: var(--wcuas-site-button-text);
}


/* Branded empty-cart state. The same per-site palette used on product, cart,
   and checkout pages controls this message and its Start Shopping action. */
.woocommerce .cart-empty.woocommerce-info {
	max-width: 680px;
	margin: 44px auto 18px !important;
	padding: 30px 28px !important;
	text-align: center;
	border: 1px solid var(--wcuas-site-border) !important;
	border-top: 4px solid var(--wcuas-site-primary) !important;
	border-radius: 14px;
	background: var(--wcuas-site-surface) !important;
	color: var(--wcuas-site-text) !important;
	box-sizing: border-box;
}

.woocommerce .cart-empty.woocommerce-info::before {
	display: none !important;
}

.woocommerce .return-to-shop {
	margin: 0 auto 44px;
	text-align: center;
}

.woocommerce .return-to-shop .button {
	min-width: 170px;
	padding: 12px 24px !important;
	border-radius: 9px !important;
}

.wp-block-woocommerce-empty-cart-block {
	color: var(--wcuas-site-text);
	text-align: center;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
	margin: 34px auto 14px;
	color: var(--wcuas-site-text);
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
	display: none !important;
}

.wp-block-woocommerce-empty-cart-block .wcuas-empty-cart-actions {
	margin: 0 auto 34px;
	text-align: center;
}

.wp-block-woocommerce-empty-cart-block .wcuas-empty-cart-shop-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 170px;
	padding: 12px 24px;
	border: 1px solid var(--wcuas-site-primary);
	border-radius: 9px;
	background: var(--wcuas-site-primary);
	color: var(--wcuas-site-button-text) !important;
	font-weight: 600;
	text-decoration: none !important;
	transition: background-color .15s ease, border-color .15s ease;
}

.wp-block-woocommerce-empty-cart-block .wcuas-empty-cart-shop-button:hover,
.wp-block-woocommerce-empty-cart-block .wcuas-empty-cart-shop-button:focus {
	border-color: var(--wcuas-site-secondary);
	background: var(--wcuas-site-secondary);
	color: var(--wcuas-site-button-text) !important;
}
