/* -------------------------------------------------------------------------- */

/*	Cartes avis — homepage marquee + fiche produit
/* -------------------------------------------------------------------------- */

.jm-star-rating {
	position: relative;
	display: inline-grid;
	flex: 0 0 auto;
	width: max-content;
	max-width: 100%;
	font-size: var(--fs-md);
	line-height: 1;
	letter-spacing: 0.08em;
}

.jm-star-rating__track,
.jm-star-rating__fill {
	grid-area: 1 / 1;
	white-space: nowrap;
}

.jm-star-rating__track {
	color: var(--color-border-strong);
}

.jm-star-rating__fill {
	overflow: hidden;
	color: var(--color-primary-hover);
	max-width: 100%;
}

.jm-review-card__inner {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	padding: var(--space-5);
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
}

.jm-review-card__header {
	padding-bottom: var(--space-3);
	border-bottom: 1px solid var(--color-border);
}

.jm-review-card__author {
	margin: 0;
	font-size: var(--fs-base);
	font-weight: var(--font-weight-bold);
	line-height: var(--lh-snug);
	color: var(--color-text);
}

.jm-review-card__verified {
	display: flex;
	align-items: center;
	gap: var(--space-1);
	margin: var(--space-1) 0 0;
	font-size: var(--fs-sm);
	font-weight: var(--font-weight-medium);
	line-height: var(--lh-snug);
	color: var(--color-success);
}

.jm-review-card__verified .jm-icon {
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
}

.jm-review-card__rating {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-3);
}

.jm-review-card__rating .jm-star-rating {
	flex: 0 0 auto;
	font-size: 1.125rem;
}

.jm-review-card__score {
	flex: 0 0 auto;
	font-size: var(--fs-sm);
	font-weight: var(--font-weight-medium);
	color: var(--color-text-muted);
	white-space: nowrap;
}

.jm-review-card__content {
	margin: 0;
	font-size: var(--fs-base);
	line-height: var(--lh-base);
	color: var(--color-text);
}

.jm-review-card__content > :first-child {
	margin-top: 0;
}

.jm-review-card__content > :last-child {
	margin-bottom: 0;
}

.jm-review-card__date {
	margin: 0;
	font-size: var(--fs-xs);
	line-height: var(--lh-snug);
	color: var(--color-text-muted);
}
