/**
 * Ratings, reviews, and billing feedback styles.
 *
 * @package SM_Directory_Pro
 */

.smd-stars {
	display: inline-flex;
	gap: 2px;
	font-size: 0.95rem;
	line-height: 1;
}

.smd-star {
	color: #d9d9d9;
}

.smd-star.is-on {
	color: #f0a93b;
}

.smd-card__rating {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 0.25rem;
	font-size: 0.85rem;
	color: #4b5b60;
}

.smd-card__rating-count {
	font-weight: 600;
}

.smd-profile-hero__rating {
	margin: 0.4rem 0 0.7rem;
}

.smd-badge--premium {
	display: inline-block;
	padding: 0.35rem 0.85rem;
	border-radius: 999px;
	background: var(--smd-amber, #d68c30);
	color: #1b1b1b;
	font-size: 0.8rem;
	font-weight: 700;
}

.smd-reviews {
	margin-top: 2.5rem;
	padding: 1.75rem;
	border: 1px solid rgba(10, 61, 80, 0.1);
	border-radius: 18px;
	background: #ffffff;
}

.smd-reviews__title {
	margin: 0 0 1rem;
	font-size: 1.4rem;
}

.smd-reviews__summary {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	flex-wrap: wrap;
	margin-bottom: 1.25rem;
}

.smd-reviews__score {
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--smd-navy, #0a3d50);
}

.smd-reviews__based {
	font-size: 0.9rem;
	color: #5a6b70;
}

.smd-reviews__empty,
.smd-reviews__login {
	margin: 0 0 1rem;
	color: #5a6b70;
}

.smd-reviews__list {
	display: grid;
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 0;
	list-style: none;
}

.smd-review {
	padding: 1rem 1.1rem;
	border-radius: 14px;
	background: var(--smd-surface, #f7fbfb);
}

.smd-review__head {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	flex-wrap: wrap;
	margin-bottom: 0.35rem;
}

.smd-review__author {
	font-weight: 600;
}

.smd-review__date {
	font-size: 0.8rem;
	color: #7a8b90;
}

.smd-review__text {
	margin: 0;
}

.smd-review-form__rating {
	margin: 0 0 0.9rem;
	padding: 0;
	border: 0;
}

.smd-rating-option {
	display: inline-flex;
	margin-right: 0.4rem;
	cursor: pointer;
}

.smd-rating-option input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.smd-rating-option span {
	color: #d9d9d9;
	font-size: 1.1rem;
	letter-spacing: 1px;
}

.smd-rating-option input:checked + span {
	color: #f0a93b;
}

.smd-rating-option input:focus-visible + span {
	outline: 2px solid var(--smd-teal, #0e7480);
	outline-offset: 2px;
}

.smd-review-form__note {
	margin: 0 0 0.9rem;
	font-size: 0.85rem;
	color: #5a6b70;
}

[dir="rtl"] .smd-rating-option {
	margin-right: 0;
	margin-left: 0.4rem;
}
