/*
 * WooCommerce cart checkout-button loading state.
 *
 * Loaded only on cart pages and kept non-render-blocking. The text and arrow
 * are hidden after click, then a WooCommerce-style circular spinner is shown.
 */

@keyframes rir-theme-checkout-button-loading-spin {
	to {
		transform: rotate(360deg);
	}
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.rir-theme-checkout-button--loading,
body.woocommerce-cart .rir-theme-classic-cart-sticky-checkout a.checkout-button.rir-theme-checkout-button--loading,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button.rir-theme-checkout-button--loading,
body.woocommerce-cart .wc-block-cart__submit-button.rir-theme-checkout-button--loading,
body.woocommerce-cart .wc-block-components-checkout-button.rir-theme-checkout-button--loading,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button.rir-theme-checkout-button--loading {
	position: relative;
	color: transparent !important;
	font-size: 0 !important;
	text-shadow: none !important;
	cursor: progress;
	opacity: 1 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.rir-theme-checkout-button--loading::after,
body.woocommerce-cart .rir-theme-classic-cart-sticky-checkout a.checkout-button.rir-theme-checkout-button--loading::after,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button.rir-theme-checkout-button--loading::after,
body.woocommerce-cart .wc-block-cart__submit-button.rir-theme-checkout-button--loading::after,
body.woocommerce-cart .wc-block-components-checkout-button.rir-theme-checkout-button--loading::after,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button.rir-theme-checkout-button--loading::after {
	content: "" !important;
	position: static !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	display: inline-block !important;
	box-sizing: border-box;
	width: 1.35rem;
	height: 1.35rem;
	margin: 0 !important;
	padding: 0;
	border: 2px solid rgba(255, 255, 255, 0.42);
	border-top-color: #fff;
	border-radius: 999px;
	background: transparent;
	color: #fff;
	font-size: 1rem;
	line-height: 1;
	vertical-align: middle;
	opacity: 1;
	transform: none;
	animation: rir-theme-checkout-button-loading-spin 700ms linear infinite;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.rir-theme-checkout-button--loading::before,
body.woocommerce-cart .rir-theme-classic-cart-sticky-checkout a.checkout-button.rir-theme-checkout-button--loading::before,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button.rir-theme-checkout-button--loading::before,
body.woocommerce-cart .wc-block-cart__submit-button.rir-theme-checkout-button--loading::before,
body.woocommerce-cart .wc-block-components-checkout-button.rir-theme-checkout-button--loading::before,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button.rir-theme-checkout-button--loading::before {
	content: none !important;
	display: none !important;
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.rir-theme-checkout-button--loading::after,
	body.woocommerce-cart .rir-theme-classic-cart-sticky-checkout a.checkout-button.rir-theme-checkout-button--loading::after,
	body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button.rir-theme-checkout-button--loading::after,
	body.woocommerce-cart .wc-block-cart__submit-button.rir-theme-checkout-button--loading::after,
	body.woocommerce-cart .wc-block-components-checkout-button.rir-theme-checkout-button--loading::after,
	body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button.rir-theme-checkout-button--loading::after {
		animation: none;
	}
}
