.qutoofmart-infinite-scroll {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.875rem;
	clear: both;
	width: -moz-fit-content;
	width: fit-content;
	max-width: min(100%, 46rem);
	margin: 1.5rem auto 2.5rem;
	padding: 1rem 1.25rem;
	border: 2px solid rgba(255, 90, 0, 0.18);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255, 90, 0, 0.08), rgba(255, 90, 0, 0.02));
	color: #1f2430;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	text-align: center;
	box-shadow: 0 14px 30px rgba(31, 36, 48, 0.08);
}

.qutoofmart-infinite-scroll__spinner {
	width: 1.1rem;
	height: 1.1rem;
	flex: 0 0 1.1rem;
	border: 3px solid rgba(255, 90, 0, 0.2);
	border-top-color: #ff5a00;
	border-radius: 50%;
	animation: qutoofmart-infinite-scroll-spin 0.8s linear infinite;
}

.qutoofmart-infinite-scroll.is-ready .qutoofmart-infinite-scroll__spinner,
.qutoofmart-infinite-scroll.is-done .qutoofmart-infinite-scroll__spinner {
	animation-duration: 2.4s;
}

.qutoofmart-infinite-scroll.is-done {
	border-color: rgba(34, 139, 34, 0.2);
	background: linear-gradient(180deg, rgba(34, 139, 34, 0.08), rgba(34, 139, 34, 0.02));
}

.qutoofmart-infinite-scroll.is-error {
	border-color: rgba(182, 42, 42, 0.22);
	background: linear-gradient(180deg, rgba(182, 42, 42, 0.08), rgba(182, 42, 42, 0.02));
	color: #7a1d1d;
}

@keyframes qutoofmart-infinite-scroll-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 767px) {
	.qutoofmart-infinite-scroll {
		width: calc(100% - 1.5rem);
		padding: 0.9rem 1rem;
		font-size: 0.95rem;
	}
}