/**
 * Targeted loading feedback for server-resolved product variations.
 */

/*
 * WooCommerce uses BlockUI while get_variation is in flight. Keep the node so
 * its own request lifecycle remains intact, but never let it wash out or trap
 * interaction with the variation selectors.
 */
form.variations_form[data-cohoma-variation-busy="true"] > .blockUI.blockOverlay {
	background: transparent !important;
	cursor: default !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

form.variations_form[data-cohoma-variation-busy="true"] > .blockUI.blockOverlay::before {
	content: none !important;
	display: none !important;
}

form.variations_form[data-cohoma-variation-busy="true"] .single_add_to_cart_button {
	cursor: wait;
	opacity: 0.72;
}

form.variations_form .single_add_to_cart_button.cohoma-variation-is-updating {
	position: relative;
}

form.variations_form .single_add_to_cart_button.cohoma-variation-is-updating::after {
	animation: cohoma-variation-spin 0.7s linear infinite;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 0.8em;
	margin-left: 0.6em;
	vertical-align: -0.08em;
	width: 0.8em;
}

.cohoma-variation-status {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

@keyframes cohoma-variation-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	form.variations_form .single_add_to_cart_button.cohoma-variation-is-updating::after {
		animation: none;
	}
}

.cohoma-variation-hint {
	margin: 8px 0 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--cohoma-color-text);
}
.cohoma-variation-hint[hidden] { display: none; }
form.variations_form .single_add_to_cart_button:disabled {
	opacity: .55;
	cursor: not-allowed;
	box-shadow: none;
}
