/* ==========================================================================
   Reviews: rating summary
   ========================================================================== */
.oqa-rsum {
	position: relative;
	z-index: 2;
	margin-top: -50px;
	background: linear-gradient(180deg, transparent 50px, #fcfaf6 50px);
}

.oqa-rsum__card {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr) 280px;
	align-items: center;
	gap: 40px;
	padding: 30px 34px 30px 30px;
	background: var(--oqa-white);
	border: 1px solid rgba(69, 47, 95, 0.08);
	border-radius: 24px;
	box-shadow: 0 22px 50px rgba(42, 29, 58, 0.12);
}

.oqa-rsum__score {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 30px 20px;
	color: var(--oqa-white);
	text-align: center;
	background:
		radial-gradient(ellipse at 50% 0%, rgba(88, 61, 118, 0.55) 0%, rgba(88, 61, 118, 0) 65%),
		linear-gradient(160deg, var(--oqa-green-800) 0%, var(--oqa-green-950) 100%);
	border-radius: 20px;
}

.oqa-rsum .oqa-rsum__mandala {
	position: absolute;
	right: -100px;
	bottom: -100px;
	width: 230px;
	height: 230px;
	color: rgba(232, 196, 118, 0.2);
}

.oqa-rsum__score > *:not(.oqa-rsum__mandala) {
	position: relative;
}

.oqa-rsum__avg {
	font-family: var(--oqa-font-heading);
	font-size: 64px;
	font-weight: 700;
	line-height: 1;
	color: var(--oqa-gold-400);
}

.oqa-rsum__stars,
.oqa-rcard__stars {
	display: inline-flex;
	gap: 3px;
}

.oqa-rsum__stars {
	margin: 12px 0 8px;
	font-size: 20px;
}

.oqa-rsum__stars span,
.oqa-rcard__stars span {
	display: inline-flex;
	color: rgba(216, 171, 82, 0.3);
}

.oqa-rsum__stars span.is-on,
.oqa-rcard__stars span.is-on {
	color: var(--oqa-gold-400);
}

.oqa-rsum__count {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.8);
}

.oqa-rsum__bars {
	display: grid;
	gap: 12px;
}

.oqa-rsum__row {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 30px;
	align-items: center;
	gap: 14px;
}

.oqa-rsum__label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 15px;
	font-weight: 800;
	color: var(--oqa-green-900);
}

.oqa-rsum__label .oqa-icon {
	font-size: 14px;
	color: var(--oqa-gold-500);
}

.oqa-rsum__track {
	height: 10px;
	overflow: hidden;
	background: #f1ece0;
	border-radius: var(--oqa-radius-pill);
}

.oqa-rsum__track span {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--oqa-green-700), var(--oqa-green-600));
	border-radius: inherit;
}

.oqa-rsum__num {
	font-size: 14px;
	font-weight: 700;
	text-align: right;
	color: var(--oqa-muted);
}

.oqa-rsum__facts {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0 0 0 34px;
	list-style: none;
	border-left: 1px solid rgba(69, 47, 95, 0.1);
}

.oqa-rsum__facts li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 15px;
	color: var(--oqa-muted);
}

.oqa-rsum__facts strong {
	font-size: 18px;
	color: var(--oqa-green-900);
}

.oqa-rsum__fact-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	font-size: 19px;
	color: var(--oqa-green-800);
	background: #f3efe4;
	border-radius: 12px;
	flex-shrink: 0;
}

.oqa-rsum__facts li:last-child {
	margin-top: 4px;
}

@media (max-width: 1080px) {
	.oqa-rsum__card {
		grid-template-columns: 240px minmax(0, 1fr);
		gap: 30px;
	}

	.oqa-rsum__facts {
		grid-column: 1 / -1;
		grid-template-columns: 1fr 1fr 1.2fr;
		align-items: center;
		padding: 22px 0 0;
		border-top: 1px solid rgba(69, 47, 95, 0.1);
		border-left: 0;
	}

	.oqa-rsum__facts li:last-child {
		margin-top: 0;
	}
}

@media (max-width: 720px) {
	.oqa-rsum {
		margin-top: -30px;
		background: linear-gradient(180deg, transparent 30px, #fcfaf6 30px);
	}

	.oqa-rsum__card {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 18px 18px 22px;
		border-radius: 20px;
	}

	.oqa-rsum__facts {
		grid-template-columns: 1fr;
	}
}
