.mrc-stars-rating {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: center;
	background: rgba(13, 20, 36, 0.03);
	border: 1px solid rgba(51, 69, 107, 0.15);
	border-radius: 12px;
	padding: 10px 15px;
	margin: 24px 0;
}

html[data-mc-theme="dark"] .mrc-stars-rating {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.12);
}

.mrc-stars-rating__stars {
	direction: ltr;
	display: inline-flex;
	gap: 4px;
}

.mrc-stars-rating__stars .mrc-star {
	background: none;
	border: 0;
	padding: 0 2px;
	margin: 0;
	line-height: 1;
	font-size: 22px;
	color: #ccc;
	cursor: pointer;
	transition: color 0.15s ease, transform 0.15s ease;
	min-width: 28px;
	min-height: 28px;
}

.mrc-stars-rating__stars .mrc-star.is-active {
	color: #ffc107;
}

.mrc-stars-rating:not(.is-voted) .mrc-star:hover,
.mrc-stars-rating:not(.is-voted) .mrc-star:hover ~ .mrc-star,
.mrc-stars-rating:not(.is-voted) .mrc-star:focus-visible {
	color: #ffb300;
	transform: scale(1.08);
}

.mrc-stars-rating.is-voted .mrc-star {
	cursor: default;
	opacity: 0.85;
}

.mrc-stars-rating__label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
}

.mrc-stars-rating__avg {
	font-size: 16px;
}

.mrc-stars-rating__cnt {
	opacity: 0.75;
}

.mrc-stars-rating__msg {
	font-size: 12px;
	color: #28a745;
	min-height: 1em;
}

.mrc-stars-rating__msg.is-error {
	color: #e04141;
}

@media (prefers-reduced-motion: reduce) {
	.mrc-stars-rating__stars .mrc-star {
		transition: none;
	}
}
