body.rose-cart-request-pending .single_add_to_cart_button.rose-atc-loading,
body.rose-cart-request-pending .add_to_cart_button.rose-atc-loading,
body.rose-cart-request-pending .add_to_cart_button.loading {
	opacity: 1 !important;
	cursor: default !important;
}

body.rose-cart-request-pending .rose-atc-spinner,
body.rose-cart-request-pending .single_add_to_cart_button.loading::after,
body.rose-cart-request-pending .add_to_cart_button.loading::after {
	display: none !important;
}

.rose-hollow-cart.rose-cart-loading > .rose-cart-progress,
.rose-hollow-cart.rose-cart-loading > .widget_shopping_cart_content {
	visibility: hidden;
}

/* Elementor positions the drawer itself; the loading state must not change it. */
.rose-cart-loading__status {
	position: absolute;
	z-index: 11;
	top: 50%;
	left: 50%;
	width: max-content;
	max-width: calc(100% - 32px);
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	color: #222;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.rose-cart-loading__spinner {
	width: 38px;
	height: 38px;
	border: 3px solid #e4e4e4;
	border-top-color: #b3131b;
	border-radius: 50%;
	animation: rose-cart-transition-spin .7s linear infinite;
}

@keyframes rose-cart-transition-spin {
	to { transform: rotate(360deg); }
}

.elementor-widget-woocommerce-cart .woocommerce.rose-cart-page-loading {
	opacity: .65;
	pointer-events: none;
	transition: opacity .15s ease;
}
