/*
 * Hollow-inspired WooCommerce reviews.
 * This file only changes the existing dynamic Rosecal review UI.
 */
body.rosecal-product-demo-page .rcpdp-junip {
	--review-ink: #18191b;
	--review-green: #073026;
	--review-gold: #f5c34b;
	--review-line: #ececec;
	--review-muted: #6d6d6d;
	padding: 72px 0 80px;
	background: #fff;
}

body.rosecal-product-demo-page .rcpdp-junip__inner {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	padding-inline: 16px;
}

body.rosecal-product-demo-page .rcpdp-junip__title {
	margin: 0 0 32px;
	font-size: 72px;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__summary {
	display: grid;
	grid-template-columns: 417px minmax(280px, 1fr) auto;
	gap: 48px;
	align-items: center;
	min-height: 112px;
	padding: 0;
	border: 0;
	border-radius: 0 !important;
	background: transparent;
}

body.rosecal-product-demo-page .rcpdp-junip__summary-main {
	display: grid;
	grid-template-columns: 135px 250px;
	gap: 32px;
	align-items: center;
}

body.rosecal-product-demo-page .rcpdp-junip__average strong {
	margin: 0 0 8px;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 48px;
	font-weight: 500;
	line-height: 1;
}

body.rosecal-product-demo-page .rcpdp-junip__average > span {
	margin-top: 8px;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

body.rosecal-product-demo-page .rcpdp-junip-stars {
	gap: 3px;
	color: var(--review-gold);
}

body.rosecal-product-demo-page .rcpdp-junip-star {
	width: 20px;
	height: 20px;
}

body.rosecal-product-demo-page .rcpdp-junip__bars {
	gap: 3px;
}

body.rosecal-product-demo-page .rcpdp-junip__bars button {
	grid-template-columns: 12px minmax(0, 1fr);
	gap: 8px;
	min-height: 19px;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 12px;
}

body.rosecal-product-demo-page .rcpdp-junip__bars button i,
body.rosecal-product-demo-page .rcpdp-junip__bars button i b {
	height: 8px;
	border-radius: 0 !important;
}

body.rosecal-product-demo-page .rcpdp-junip__bars button i {
	background: var(--review-line);
}

body.rosecal-product-demo-page .rcpdp-junip__bars button i b {
	background: var(--review-green);
}

body.rosecal-product-demo-page .rcpdp-junip__bars button small {
	display: none;
}

body.rosecal-product-demo-page .rcpdp-junip__trait {
	width: min(100%, 280px);
}

body.rosecal-product-demo-page .rcpdp-junip__trait > strong {
	margin-bottom: 8px;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

body.rosecal-product-demo-page .rcpdp-junip__trait > div {
	gap: 4px;
}

body.rosecal-product-demo-page .rcpdp-junip__trait > div i {
	height: 4px;
	border-radius: 0 !important;
	background: var(--review-line);
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__trait > div b {
	top: 50%;
	width: 8px;
	height: 14px;
	border: 0;
	border-radius: 2px !important;
	background: var(--review-green);
	box-shadow: none;
}

body.rosecal-product-demo-page .rcpdp-junip__trait p {
	margin-top: 5px;
	font-size: 11px;
}

body.rosecal-product-demo-page .rcpdp-junip__summary-action {
	justify-self: end;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__summary-action button,
body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__more,
body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-review-modal__submit {
	min-height: 40px;
	padding: 0 20px;
	border-radius: 6px !important;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

body.rosecal-product-demo-page .rcpdp-junip__separator {
	margin: 16px 0;
	background: var(--review-line);
}

body.rosecal-product-demo-page .rcpdp-junip__gallery {
	gap: 8px;
	padding-bottom: 0;
	scrollbar-width: none;
}

body.rosecal-product-demo-page .rcpdp-junip__gallery::-webkit-scrollbar {
	display: none;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__gallery a {
	width: 132px;
	height: 132px;
	flex-basis: 132px;
	border-radius: 0 !important;
}

body.rosecal-product-demo-page .rcpdp-junip__filterbar {
	margin-bottom: 16px;
}

body.rosecal-product-demo-page .rcpdp-junip__filter-toggle {
	display: none;
}

body.rosecal-product-demo-page .rcpdp-junip__filters {
	display: grid;
	grid-template-columns: 318px 200px 200px auto;
	gap: 12px;
	justify-content: start;
	margin-top: 0;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip :is(
	.rcpdp-junip__search,
	.rcpdp-junip__search input,
	.rcpdp-junip__select,
	.rcpdp-junip__select select,
	.rcpdp-junip__checkbox
) {
	border-radius: 0 !important;
}

body.rosecal-product-demo-page .rcpdp-junip__search,
body.rosecal-product-demo-page .rcpdp-junip__select,
body.rosecal-product-demo-page .rcpdp-junip__checkbox {
	min-height: 42px;
	border-color: var(--review-line);
}

body.rosecal-product-demo-page .rcpdp-junip__search input,
body.rosecal-product-demo-page .rcpdp-junip__select select {
	height: 40px;
}

body.rosecal-product-demo-page .rcpdp-junip__select {
	min-width: 0;
}

body.rosecal-product-demo-page .rcpdp-junip__select > span,
body.rosecal-product-demo-page .rcpdp-junip__checkbox,
body.rosecal-product-demo-page .rcpdp-junip__search input {
	font-size: 14px;
}

body.rosecal-product-demo-page .rcpdp-junip-review {
	grid-template-columns: 220px minmax(0, 1fr);
	gap: 16px;
	padding: 32px 0;
	border-bottom-color: var(--review-line);
}

body.rosecal-product-demo-page .rcpdp-junip-review__avatar {
	width: 44px;
	height: 44px;
	flex-basis: 44px;
	border: 2px solid #fff;
	background: #f6f6f6;
	box-shadow: 0 0 0 2px #f1f1f1;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 12px;
}

body.rosecal-product-demo-page .rcpdp-junip-review__customer strong {
	font-size: 16px;
	font-weight: 600;
}

body.rosecal-product-demo-page .rcpdp-junip-review__verified {
	gap: 5px;
	margin-top: 2px;
	font-size: 12px;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip-review__verified i {
	width: 14px;
	height: 14px;
	border-radius: 0 !important;
	clip-path: polygon(50% 0, 62% 14%, 79% 10%, 86% 27%, 100% 38%, 91% 54%, 96% 72%, 77% 78%, 66% 96%, 50% 86%, 34% 96%, 23% 78%, 4% 72%, 9% 54%, 0 38%, 14% 27%, 21% 10%, 38% 14%);
	font-size: 8px;
}

body.rosecal-product-demo-page .rcpdp-junip-review__content > header time {
	color: var(--review-muted);
	font-size: 12px;
}

body.rosecal-product-demo-page .rcpdp-junip-review h3 {
	margin: 16px 0 8px;
	font-family: var(--rcpdp-font-body) !important;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.25;
	text-transform: none;
}

body.rosecal-product-demo-page .rcpdp-junip-review__body,
body.rosecal-product-demo-page .rcpdp-junip-review__body p {
	font-size: 16px;
	line-height: 1.5;
}

body.rosecal-product-demo-page .rcpdp-junip-review__product {
	margin-top: 18px;
	color: var(--review-muted);
}

body.rosecal-product-demo-page .rcpdp-junip-review__content > footer {
	margin-top: 20px;
}

body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip-review__recommend i {
	width: auto;
	height: auto;
	border-radius: 0 !important;
	background: transparent;
	color: #e58669;
	font-size: 0;
}

body.rosecal-product-demo-page .rcpdp-junip-review__recommend i::before {
	content: "\2665";
	font-size: 14px;
}

body.rosecal-product-demo-page .rcpdp-junip-review[data-rating="1"] .rcpdp-junip-review__recommend,
body.rosecal-product-demo-page .rcpdp-junip-review[data-rating="2"] .rcpdp-junip-review__recommend,
body.rosecal-product-demo-page .rcpdp-junip-review[data-rating="3"] .rcpdp-junip-review__recommend {
	display: none;
}

body.rosecal-product-demo-page .rcpdp-junip__powered {
	margin-top: 20px;
}

@media (max-width: 1100px) {
	body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__summary {
		grid-template-columns: 417px minmax(240px, 1fr);
	}

	body.rosecal-product-demo-page .rcpdp-junip__summary-action {
		grid-column: 1 / -1;
		justify-self: stretch;
	}

	body.rosecal-product-demo-page .rcpdp-junip__summary-action button {
		width: 100%;
	}

	body.rosecal-product-demo-page .rcpdp-junip__filters {
		grid-template-columns: minmax(240px, 1fr) 200px 200px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__checkbox {
		grid-column: 1 / -1;
		width: max-content;
	}
}

@media (max-width: 767px) {
	body.rosecal-product-demo-page .rcpdp-junip {
		padding: 32px 20px 40px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__inner {
		padding-inline: 16px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__title {
		margin-bottom: 24px;
		font-size: 48px;
		line-height: 1;
	}

	body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__summary {
		grid-template-columns: 1fr;
		gap: 20px;
		min-height: 0;
	}

	body.rosecal-product-demo-page .rcpdp-junip__summary-main {
		grid-template-columns: 135px minmax(0, 1fr);
		gap: 32px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__trait {
		width: 100%;
	}

	body.rosecal-product-demo-page .rcpdp-junip__summary-action {
		grid-column: auto;
	}

	body.rosecal-product-demo-page .rcpdp-junip__summary-action button {
		width: 100%;
	}

	body.rosecal-product-demo-page .rosecal-hollow-demo .rcpdp-junip .rcpdp-junip__gallery a {
		width: 100px;
		height: 100px;
		flex-basis: 100px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__filter-toggle {
		display: inline-flex;
		width: 100%;
		min-height: 34px;
		justify-content: center;
		border: 1px solid var(--review-line);
		font-family: var(--rcpdp-font-body) !important;
		font-size: 14px;
		font-weight: 400;
		letter-spacing: 0;
		text-transform: none;
	}

	body.rosecal-product-demo-page .rcpdp-junip__filters {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-top: 16px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__checkbox {
		grid-column: auto;
		width: 100%;
		border: 0;
		padding-inline: 0;
	}

	body.rosecal-product-demo-page .rcpdp-junip-review {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 32px 0;
	}

	body.rosecal-product-demo-page .rcpdp-junip-review__content > footer {
		gap: 12px;
		align-items: center;
		flex-direction: row;
	}
}

@media (max-width: 390px) {
	body.rosecal-product-demo-page .rcpdp-junip__summary-main {
		grid-template-columns: 120px minmax(0, 1fr);
		gap: 20px;
	}

	body.rosecal-product-demo-page .rcpdp-junip__average strong {
		font-size: 44px;
	}

	body.rosecal-product-demo-page .rcpdp-junip-star {
		width: 17px;
		height: 17px;
	}

	body.rosecal-product-demo-page .rcpdp-junip-review__content > footer {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Win over the legacy rounded-review compatibility rules loaded by the demo. */
body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-junip__summary,
body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-junip__gallery a,
body.rosecal-product-demo-page #rcpdp-reviews :is(
	.rcpdp-junip__search,
	.rcpdp-junip__search input,
	.rcpdp-junip__select,
	.rcpdp-junip__select select,
	.rcpdp-junip__checkbox
) {
	border-radius: 0 !important;
}

body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-junip__summary-action button,
body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-junip__more,
body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-review-modal__submit {
	border-radius: 6px !important;
}

body.rosecal-product-demo-page #rcpdp-reviews .rcpdp-junip-review h3 {
	font-family: var(--rcpdp-font-body) !important;
	font-weight: 600;
}
