/* Глобальный AJAX-лоадер — правый нижний угол.
   Ниже тостов/уведомлений (они ~100210). */
.mariola-ajax-loader {
	bottom: 1.25rem;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	right: 1.25rem;
	transform: translate3d(0, 12px, 0);
	transition: opacity 0.2s ease, transform 0.2s ease, bottom 0.2s ease, visibility 0s linear 0.2s;
	visibility: hidden;
	z-index: 100100;
}

.mariola-ajax-loader.is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition: opacity 0.2s ease, transform 0.2s ease, bottom 0.2s ease, visibility 0s linear 0s;
	visibility: visible;
}

.mariola-ajax-loader__inner {
	align-items: center;
	background: #fff;
	border: 1px solid #c3c4c7;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.14);
	display: inline-flex;
	gap: 0.65rem;
	padding: 0.65rem 0.9rem;
}

.mariola-ajax-loader__spinner {
	animation: mariola-ajax-loader-spin 0.7s linear infinite;
	border: 2px solid #dcdcde;
	border-radius: 50%;
	border-top-color: #2271b1;
	box-sizing: border-box;
	display: block;
	flex: 0 0 auto;
	height: 1rem;
	width: 1rem;
}

.mariola-ajax-loader__text {
	color: #1d2327;
	font-size: 13px;
	line-height: 1.3;
	white-space: nowrap;
}

@keyframes mariola-ajax-loader-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Тост занимает нижний угол — лоадер уезжает выше и не перекрывает. */
body.mariola-has-toast .mariola-ajax-loader,
body:has(.mariola-admin-status-toast.is-open) .mariola-ajax-loader,
body:has(.mariola-pdp-toast.is-open) .mariola-ajax-loader {
	bottom: 7.5rem;
}

@media (max-width: 782px) {
	.mariola-ajax-loader {
		bottom: 1rem;
		left: auto;
		right: 1rem;
	}

	body.mariola-has-toast .mariola-ajax-loader,
	body:has(.mariola-admin-status-toast.is-open) .mariola-ajax-loader,
	body:has(.mariola-pdp-toast.is-open) .mariola-ajax-loader {
		bottom: 8rem;
	}
}
