/* Product Reviews Suite frontend. Scoped so Divi/themes can coexist safely. */
.prs-suite,
.prs-suite * {
	box-sizing: border-box;
}

.prs-suite {
	--prs-accent: #48b900;
	--prs-accent-dark: #2f8d00;
	--prs-text: #151515;
	--prs-muted: #667085;
	--prs-border: #d9dde3;
	--prs-soft: #f7f8f9;
	--prs-response: #f3faee;
	--prs-review-card-bg: #fff;
	--prs-featured-card-bg: #f6f7f7;
	--prs-verified-color: #2f8d00;
	--prs-recommend-color: #2f8d00;
	--prs-radius: 8px;
	--prs-heading-color: #000000;
	--prs-button-radius: 0px;
	--prs-section-bottom-space: 56px;
	--prs-shadow: 0 1px 2px rgba(16, 24, 40, .03);
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding-bottom: var(--prs-section-bottom-space);
	color: var(--prs-text);
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.46;
}

.prs-suite button,
.prs-suite input,
.prs-suite select {
	font: inherit;
}

.prs-suite a {
	color: inherit;
}

.prs-heading-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 1px 0 17px;
	border-top: 1px solid var(--prs-border);
}

.prs-heading-copy {
	padding-top: 16px;
}

.prs-heading {
	margin: 0;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: clamp(38px, 4.25vw, 48px);
	font-weight: 700;
	line-height: .96;
	letter-spacing: -.022em;
	text-transform: uppercase;
	color: var(--prs-heading-color);
}

.prs-subheading {
	font-family: "Open Sans", Arial, sans-serif;
	margin: 7px 0 0;
	color: var(--prs-muted);
	font-size: 13px;
	line-height: 1.35;
}

.prs-actions {
	display: flex;
	align-items: center;
	gap: 13px;
	padding-top: 15px;
	flex: 0 0 auto;
}

.prs-button {
	display: inline-flex;
	min-height: 43px;
	align-items: center;
	justify-content: center;
	padding: 9px 20px;
	border: 2px solid var(--prs-text);
	border-radius: var(--prs-button-radius);
	background: #fff;
	color: var(--prs-text);
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .055em;
	line-height: 1;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: transform .12s ease, background .12s ease, border-color .12s ease;
}

.prs-button:hover,
.prs-button:focus-visible {
	transform: translateY(-1px);
}

.prs-button--primary {
	border-color: var(--prs-accent);
	background: var(--prs-accent);
	color: #fff !important;
}

.prs-button--primary:hover,
.prs-button--primary:focus-visible {
	border-color: var(--prs-accent-dark);
	background: var(--prs-accent-dark);
}

.prs-summary-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 20px;
	margin-bottom: 17px;
}

.prs-summary-card {
	min-width: 0;
	border: 1px solid var(--prs-border);
	border-radius: var(--prs-radius);
	background: #fff;
	box-shadow: var(--prs-shadow);
	padding: 19px 23px;
}

.prs-summary-card--score {
	display: flex;
	min-height: 213px;
	flex-direction: column;
	justify-content: center;
}

.prs-score-line {
	display: flex;
	align-items: center;
	gap: 19px;
}

.prs-score {
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: clamp(60px, 6.3vw, 73px);
	font-weight: 700;
	line-height: .88;
	letter-spacing: -.025em;
	color: var(--prs-heading-color);
}

.prs-score-detail {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.prs-score-count {
	font-size: 12px;
	font-weight: 400;
	color: #3a3f45;
}

.prs-stars {
	position: relative;
	display: inline-block;
	width: 6.1em;
	font-size: 19px;
	line-height: 1;
	letter-spacing: .09em;
	white-space: nowrap;
}

.prs-stars-base,
.prs-stars-fill {
	display: block;
}

.prs-stars-base {
	color: #dfe4e8;
}

.prs-stars-fill {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	color: var(--prs-accent);
}

.prs-summary-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.prs-summary-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 30px;
	padding: 5px 12px;
	border: 1px solid var(--prs-border);
	border-radius: 999px;
	background: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
}

.prs-summary-badge--verified {
	color: var(--prs-verified-color, var(--prs-accent-dark));
	font-weight: 700;
}


.prs-badge-icon-mask {
	display: inline-block;
	background: currentColor;
	-webkit-mask: var(--prs-badge-mask) center / contain no-repeat;
	mask: var(--prs-badge-mask) center / contain no-repeat;
	flex: 0 0 auto;
}

.prs-badge-icon-custom {
	display: inline-block;
	object-fit: contain;
	flex: 0 0 auto;
}

.prs-summary-badge-icon {
	display: block;
	object-fit: contain;
	flex: 0 0 auto;
}

.prs-summary-badge--verified .prs-summary-badge-icon {
	width: 16px;
	height: 20px;
}

.prs-summary-badge--recommend {
	color: var(--prs-recommend-color, var(--prs-accent-dark));
}

.prs-summary-badge--recommend .prs-summary-badge-icon {
	width: 20px;
	height: 20px;
}

.prs-featured-review {
	position: relative;
	display: block;
	margin: 16px 0 0;
	padding: 13px 92px 13px 15px;
	border: 1px solid var(--prs-border);
	border-radius: 6px;
	background: #fff;
	color: var(--prs-text) !important;
	text-decoration: none !important;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
	-webkit-tap-highlight-color: rgba(47, 141, 0, .18);
}

.prs-featured-review:hover,
.prs-featured-review:focus-visible {
	border-color: #a7d890;
	box-shadow: 0 4px 14px rgba(47, 141, 0, .09);
	transform: translateY(-1px);
	outline: none;
}

.prs-featured-label {
	display: block;
	margin-bottom: 5px;
	color: var(--prs-accent-dark);
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1;
	text-transform: uppercase;
}

.prs-featured-quote-text {
	display: block;
	font-family: "Open Sans", Arial, sans-serif;
	font-style: italic;
	font-weight: 600;
	font-size: 14.5px;
	line-height: 1.38;
}

.prs-featured-footer {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 8px;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: var(--prs-review-meta-size, 12px);
}

.prs-featured-name {
	color: var(--prs-text);
	font-size: inherit;
	font-weight: 700;
	line-height: 1.2;
}

.prs-featured-read {
	position: absolute;
	right: 14px;
	bottom: 13px;
	color: var(--prs-accent-dark);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.prs-featured-read span {
	display: inline-block;
	margin-left: 3px;
	font-size: 13px;
	transition: transform .15s ease;
}

.prs-featured-review:hover .prs-featured-read span,
.prs-featured-review:focus-visible .prs-featured-read span {
	transform: translateX(3px);
}

.prs-verified-owner {
	color: var(--prs-verified-color, var(--prs-accent-dark)) !important;
	font-weight: 700 !important;
}

.prs-verified-owner strong {
	color: inherit !important;
	font-weight: 700 !important;
}

.prs-featured-verified {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: inherit;
	line-height: 1.2;
}

.prs-inline-verified-icon,
.prs-response-verified-icon {
	display: inline-block;
	width: 12px;
	height: 15px;
	object-fit: contain;
	vertical-align: -2px;
}

.prs-response-verified-icon {
	width: 14px;
	height: 14px;
	vertical-align: -1px;
}


.prs-summary-card--distribution {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 12px;
}

.prs-rating-row {
	display: grid;
	grid-template-columns: 42px minmax(80px, 1fr) 36px;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--prs-text);
	cursor: pointer;
	text-align: left;
}

.prs-rating-row:hover .prs-rating-fill,
.prs-rating-row:focus-visible .prs-rating-fill {
	background: var(--prs-accent-dark);
}

.prs-rating-label {
	font-weight: 800;
	font-size: 13px;
}

.prs-rating-label span {
	color: var(--prs-accent);
}

.prs-rating-track {
	display: block;
	height: 11px;
	overflow: hidden;
	border-radius: 999px;
	background: #e8ebee;
}

.prs-rating-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--prs-accent);
	transition: width .2s ease, background .12s ease;
}

.prs-rating-count {
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	text-align: right;
}

.prs-toolbar {
	display: grid;
	grid-template-columns: minmax(230px, 1fr) 190px 170px;
	gap: 12px;
	align-items: center;
	margin: 0 0 16px;
}

.prs-search,
.prs-select-wrap {
	position: relative;
	display: block;
}

.prs-search input,
.prs-select-wrap select {
	width: 100%;
	height: 42px;
	margin: 0;
	border: 1px solid var(--prs-border) !important;
	border-radius: 4px !important;
	background-color: #fff !important;
	box-shadow: none !important;
	color: #353a40 !important;
	font-size: 12px !important;
	line-height: 1 !important;
}

.prs-search input {
	padding: 8px 13px 8px 39px !important;
}

.prs-select-wrap select {
	padding: 8px 34px 8px 12px !important;
}

.prs-search-icon {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 13px;
	width: 15px;
	height: 15px;
	transform: translateY(-50%);
	color: #7a838d;
	pointer-events: none;
}

.prs-search-icon svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.prs-result-count {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.prs-results {
	position: relative;
}

.prs-suite.is-loading .prs-results {
	opacity: .55;
	pointer-events: none;
}

.prs-suite.is-loading .prs-results::before {
	position: absolute;
	z-index: 4;
	top: 16px;
	right: 16px;
	width: 18px;
	height: 18px;
	border: 2px solid var(--prs-border);
	border-top-color: var(--prs-accent);
	border-radius: 50%;
	content: "";
	animation: prs-spin .7s linear infinite;
}

@keyframes prs-spin {
	to { transform: rotate(360deg); }
}

.prs-review-card {
	position: relative;
	margin: 0 0 10px;
	padding: 15px 18px 14px;
	border: 1px solid var(--prs-border);
	border-radius: var(--prs-radius);
	background: var(--prs-review-card-bg, #fff);
	box-shadow: var(--prs-shadow);
}

.prs-review-topline {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.prs-review-title-line {
	display: flex;
	min-width: 0;
	align-items: baseline;
	gap: 14px;
}

.prs-review-title-line .prs-stars {
	flex: 0 0 auto;
	font-size: 18px;
}

.prs-review-title {
	margin: 0 !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: var(--prs-review-title-size, 17px) !important;
	font-weight: 700 !important;
	line-height: 1.24 !important;
	color: var(--prs-text) !important;
}

.prs-more-button {
	min-width: 32px;
	margin: -4px -6px 0 0;
	padding: 4px 6px;
	border: 0;
	background: transparent;
	color: #30343a;
	font-weight: 900;
	letter-spacing: 1px;
	opacity: 1;
}

.prs-review-admin {
	position: relative;
	flex: 0 0 auto;
}

.prs-review-admin-menu {
	position: absolute;
	z-index: 12;
	top: 28px;
	right: 0;
	width: 190px;
	padding: 5px;
	border: 1px solid var(--prs-border);
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(16, 24, 40, .16);
}

.prs-review-admin-menu[hidden] {
	display: none;
}

.prs-review-admin-menu button {
	display: block;
	width: 100%;
	padding: 8px 9px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #24292f;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
	text-align: left;
	cursor: pointer;
}

.prs-review-admin-menu button:hover,
.prs-review-admin-menu button:focus-visible {
	background: #f1f7ed;
	color: var(--prs-accent-dark);
	outline: none;
}

.prs-review-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin: 5px 0 8px;
	font-size: var(--prs-review-meta-size, 12px);
	color: #4e5660;
}

.prs-review-meta strong {
	color: var(--prs-text);
	font-size: inherit;
	font-weight: 700;
}

.prs-verified {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--prs-accent-dark);
	font-weight: 700;
}

.prs-featured-verified {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.prs-meta-divider {
	color: #a0a6ad;
}

.prs-source-badge {
	margin-left: 3px;
	padding: 2px 7px;
	border: 1px solid var(--prs-border);
	border-radius: 999px;
	background: var(--prs-soft);
	font-weight: 700;
}

.prs-featured-badge {
	display: inline-flex;
	align-items: center;
	padding: 2px 7px;
	border: 1px solid #b9dbaa;
	border-radius: 999px;
	background: #f1f8ed;
	color: var(--prs-accent-dark);
	font-size: inherit;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .02em;
}

.prs-attributes {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 8px;
}

.prs-attribute {
	display: inline-flex;
	align-items: center;
	min-height: 21px;
	padding: 3px 8px;
	border: 1px solid var(--prs-border);
	border-radius: 3px;
	background: #fbfbfc;
	color: #444b53;
	font-size: 10px;
	line-height: 1.15;
}

.prs-review-body-row {
	display: block;
}

.prs-review-body-row.has-media {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 20px;
	align-items: start;
}

.prs-review-copy {
	max-width: 820px;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.44;
	color: #2e3338;
}

.prs-review-copy p,
.prs-response-copy p {
	margin: 0 0 7px;
}

.prs-review-copy p:last-child,
.prs-response-copy p:last-child {
	margin-bottom: 0;
}

.prs-media-grid {
	display: grid;
	grid-template-columns: repeat(3, 94px);
	gap: 8px;
}

.prs-media-item {
	position: relative;
	display: block;
	width: 94px;
	height: 82px;
	overflow: hidden;
	border: 1px solid var(--prs-border);
	border-radius: 5px;
	background: #edf0f2;
	text-decoration: none;
}

.prs-media-item img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.prs-media-video {
	display: grid;
	place-items: center;
	background:
		radial-gradient(circle at 50% 42%, rgba(255,255,255,.7), rgba(255,255,255,0) 42%),
		linear-gradient(135deg, #e8edef, #cbd5da);
	color: #fff !important;
}

.prs-play {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 50%;
	background: rgba(255,255,255,.92);
	color: #151515;
	font-size: 13px;
	padding-left: 2px;
}

/* Pure CSS preview thumbnails: admin-only demo data; never presented as real reviews. */
.prs-media-demo--lake {
	background:
		linear-gradient(180deg, rgba(111, 168, 207, .8) 0 45%, rgba(234, 239, 242, .9) 45% 55%, rgba(46, 97, 127, .85) 55% 100%);
}

.prs-media-demo--battery {
	background:
		radial-gradient(circle at 50% 48%, #2f353a 0 20%, transparent 21%),
		linear-gradient(135deg, #17191b, #626a6f 54%, #17191b);
}

.prs-media-demo--phone {
	background:
		radial-gradient(circle at 52% 49%, transparent 0 13%, #65ca22 14% 18%, transparent 19%),
		linear-gradient(135deg, #101214, #34383d);
}

.prs-helpful {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 9px;
	font-size: 10px;
	color: #50575e;
}

.prs-helpful-button {
	margin: 0;
	padding: 2px 0;
	border: 0;
	background: transparent;
	color: var(--prs-text);
	font-size: 10px;
	font-weight: 700;
	cursor: pointer;
}

.prs-helpful-button:hover,
.prs-helpful-button:focus-visible,
.prs-helpful-button.is-selected {
	color: var(--prs-accent-dark);
}

.prs-helpful-button.has-error {
	color: #b42318;
}

.prs-response {
	display: grid;
	max-width: 780px;
	margin-top: 12px;
	padding: 12px 16px 12px 13px;
	border: 1px solid #cce8bf;
	border-left: 3px solid var(--prs-accent);
	border-radius: 4px;
	background: var(--prs-response);
}

.prs-response.has-icon {
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 14px;
}

.prs-response.no-icon {
	grid-template-columns: minmax(0, 1fr);
}

.prs-response--customer {
	border-color: var(--prs-border);
	border-left-color: var(--prs-border);
	background: #fafbfc;
}

.prs-response-mark {
	display: flex;
	width: 64px;
	height: 64px;
	align-items: center;
	justify-content: center;
	align-self: start;
	overflow: hidden;
	border-radius: 4px;
}

.prs-response-mark img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.prs-response-content {
	min-width: 0;
	align-self: center;
}

.prs-response-meta {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 5px;
	font-size: 10px;
	color: #626a73;
}

.prs-response-meta strong {
	color: #273027;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .01em;
}

.prs-response--official .prs-response-meta strong {
	font-size: 17px;
	line-height: 1.08;
	letter-spacing: -.005em;
}

.prs-response-copy {
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 11.25px;
	font-weight: 400;
	line-height: 1.43;
	color: #3f4740;
}

.prs-list-footer {
	display: flex;
	justify-content: center;
	padding: 20px 0 8px;
}

.prs-list-footer[hidden] {
	display: none;
}

.prs-view-more {
	display: inline-flex;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin: 0;
	padding: 9px 16px;
	border: 2px solid var(--prs-accent-dark);
	border-radius: var(--prs-button-radius);
	background: #fff;
	color: var(--prs-accent-dark);
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .045em;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition: color .15s ease, background .15s ease, border-color .15s ease, transform .15s ease;
}

.prs-view-more:hover,
.prs-view-more:focus-visible {
	border-color: var(--prs-accent);
	background: color-mix(in srgb, var(--prs-accent) 7%, #fff);
	color: var(--prs-accent-dark);
	transform: translateY(-1px);
	outline: none;
}

/* Review pagination is a true primary PRS action, matching Write a Review. */
.prs-list-footer .prs-view-more.prs-button--primary,
.prs-list-footer .prs-view-more.prs-button--primary:visited {
	min-height: 43px;
	padding: 9px 20px;
	border: 2px solid var(--prs-accent);
	border-radius: var(--prs-button-radius);
	background: var(--prs-accent);
	color: #fff !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .055em;
	line-height: 1;
	text-transform: uppercase;
}

.prs-list-footer .prs-view-more.prs-button--primary:hover,
.prs-list-footer .prs-view-more.prs-button--primary:focus-visible {
	border-color: var(--prs-accent-dark);
	background: var(--prs-accent-dark);
	color: #fff !important;
}

.prs-view-more--static {
	cursor: default;
	pointer-events: none;
}

.prs-view-more span {
	display: inline-block;
	padding-left: 1px;
	font-family: Arial, sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1;
	transition: transform .15s ease;
}

.prs-view-more:hover span,
.prs-view-more:focus-visible span {
	transform: translateX(2px);
}


.prs-review-card:target {
	outline: none !important;
}

.prs-review-card.is-spotlighted {
	z-index: 2;
	border-color: var(--prs-accent-dark) !important;
	outline: none !important;
	background: #e9f7e2 !important;
	box-shadow: 0 0 0 4px rgba(47, 141, 0, .30), 0 0 28px rgba(47, 141, 0, .28), 0 10px 28px rgba(16, 24, 40, .12) !important;
	animation: prs-spotlight 3.55s ease-out both;
}

.prs-review-card.is-spotlighted::after {
	position: absolute;
	inset: -5px;
	border: 2px solid rgba(47, 141, 0, .48);
	border-radius: calc(var(--prs-radius) + 5px);
	box-shadow: 0 0 0 5px rgba(47, 141, 0, .14), 0 0 34px rgba(47, 141, 0, .30);
	content: "";
	pointer-events: none;
	animation: prs-spotlight-ring 3.55s ease-out both;
}

@keyframes prs-spotlight {
	0%, 62% {
		border-color: var(--prs-accent-dark);
		background: #e9f7e2;
		box-shadow: 0 0 0 4px rgba(47, 141, 0, .30), 0 0 28px rgba(47, 141, 0, .28), 0 10px 28px rgba(16, 24, 40, .12);
	}
	82% {
		border-color: #8bc66e;
		background: #f3faef;
		box-shadow: 0 0 0 3px rgba(47, 141, 0, .18), 0 0 18px rgba(47, 141, 0, .16), 0 8px 22px rgba(16, 24, 40, .09);
	}
	100% {
		border-color: var(--prs-border);
		background: #fff;
		box-shadow: var(--prs-shadow);
	}
}

@keyframes prs-spotlight-ring {
	0%, 62% { opacity: 1; }
	100% { opacity: 0; }
}

.prs-empty-state {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 26px 22px;
	border: 1px solid var(--prs-border);
	border-radius: var(--prs-radius);
	background: #fff;
	color: var(--prs-muted);
	text-align: center;
}

.prs-empty-state strong {
	color: var(--prs-text);
}

.prs-suite--summary-only .prs-summary-grid,
.prs-suite--list-only .prs-review-card:last-child {
	margin-bottom: 0;
}

/* WordPress supplies this class in admin; this fallback keeps it accessible elsewhere. */
.prs-suite .screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@media (max-width: 900px) {
	.prs-summary-grid {
		grid-template-columns: 1fr;
	}

	.prs-summary-card--score {
		min-height: 0;
	}

	.prs-toolbar {
		grid-template-columns: minmax(0, 1fr) minmax(145px, .45fr) minmax(135px, .4fr);
	}
}

@media (max-width: 700px) {
	.prs-heading-row {
		flex-direction: column;
		gap: 10px;
	}

	.prs-actions {
		width: 100%;
		padding-top: 0;
	}

	.prs-actions .prs-button {
		flex: 1 1 0;
	}

	.prs-toolbar {
		grid-template-columns: 1fr 1fr;
	}

	.prs-search {
		grid-column: 1 / -1;
	}

	.prs-review-title-line {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
	}

	.prs-review-body-row.has-media {
		grid-template-columns: 1fr;
	}

	.prs-media-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		max-width: 318px;
	}

	.prs-media-item {
		width: 100%;
		height: auto;
		aspect-ratio: 1.15 / 1;
	}
}

@media (max-width: 460px) {
	.prs-heading {
		font-size: 36px;
	}

	.prs-summary-card {
		padding: 17px;
	}

	.prs-score-line {
		align-items: flex-start;
		gap: 14px;
	}

	.prs-score {
		font-size: 60px;
	}

	.prs-summary-badges {
		align-items: flex-start;
		flex-direction: column;
	}

	.prs-toolbar {
		grid-template-columns: 1fr;
	}

	.prs-search {
		grid-column: auto;
	}

	.prs-review-card {
		padding: 15px;
	}

	.prs-review-topline {
		gap: 4px;
	}

	.prs-response.has-icon {
		grid-template-columns: 54px minmax(0, 1fr);
		gap: 10px;
	}

	.prs-response-mark {
		width: 54px;
		height: 54px;
	}

	.prs-response--official .prs-response-meta strong {
		font-size: 16px;
	}

	.prs-featured-review {
		padding-right: 15px;
	}

	.prs-featured-read {
		position: static;
		display: block;
		margin-top: 8px;
	}
}


/* Featured summary links retain brand-green interaction feedback. The review
 * card itself stays visually neutral unless JavaScript applies the short-lived
 * is-spotlighted state after a featured-review jump. */
.prs-featured-review:link,
.prs-featured-review:visited {
	color: var(--prs-text) !important;
}

.prs-featured-review:hover,
.prs-featured-review:focus,
.prs-featured-review:focus-visible,
.prs-featured-review:active {
	border-color: #a7d890 !important;
	color: var(--prs-text) !important;
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(47, 141, 0, .18), 0 4px 14px rgba(47, 141, 0, .09) !important;
}

.prs-review-card.is-featured-review.is-spotlighted,
.prs-review-card.is-featured-review.is-spotlighted:hover,
.prs-review-card.is-featured-review.is-spotlighted:focus-within {
	border-color: var(--prs-accent-dark) !important;
	outline: none !important;
	background: #e9f7e2 !important;
	box-shadow: 0 0 0 4px rgba(47, 141, 0, .30), 0 0 28px rgba(47, 141, 0, .28), 0 10px 28px rgba(16, 24, 40, .12) !important;
}

/* Replace WordPress/admin/theme blue focus rings inside the review component
 * with an accessible brand-green focus treatment. */
.prs-suite a:focus,
.prs-suite button:focus,
.prs-suite input:focus,
.prs-suite select:focus {
	outline-color: var(--prs-accent-dark) !important;
	border-color: var(--prs-accent-dark) !important;
	box-shadow: 0 0 0 2px rgba(47, 141, 0, .20) !important;
}

/* Alpha.5 native review/question submission dialogs. */
html.prs-modal-open,
html.prs-modal-open body {
	overflow: hidden !important;
}

.prs-suite textarea {
	font: inherit;
}

.prs-modal[hidden] {
	display: none !important;
}

.prs-modal {
	position: fixed;
	z-index: 2147483000;
	inset: 0;
	display: grid;
	min-height: 100vh;
	min-height: 100dvh;
	place-items: center;
	padding: 24px;
	font-family: "Open Sans", Arial, sans-serif;
}

.prs-modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 18, 20, .68);
	backdrop-filter: blur(2px);
}

.prs-modal-panel {
	position: relative;
	z-index: 1;
	display: flex;
	width: min(720px, 100%);
	max-height: min(880px, calc(100vh - 48px));
	max-height: min(880px, calc(100dvh - 48px));
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--prs-border);
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
}

.prs-modal-panel--question {
	width: min(660px, 100%);
}

.prs-modal-panel > .prs-submission-form {
	display: flex;
	min-height: 0;
	flex: 1 1 auto;
	flex-direction: column;
	overflow: hidden;
}

.prs-modal-header {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 20px 24px 16px;
	border-bottom: 1px solid var(--prs-border);
	background: #fff;
}

.prs-modal-kicker {
	display: block;
	margin-bottom: 3px;
	color: var(--prs-accent-dark);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
}

.prs-modal-header h3 {
	margin: 0 !important;
	color: var(--prs-text) !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-transform: uppercase;
}

.prs-modal-close {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	margin: -4px -6px 0 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #4a5158;
	font-size: 28px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
}

.prs-modal-close:hover,
.prs-modal-close:focus-visible {
	background: #f1f7ed;
	color: var(--prs-accent-dark);
}

.prs-modal-body {
	min-height: 0;
	flex: 1 1 auto;
	overflow: auto;
	padding: 22px 24px 24px;
	overscroll-behavior: contain;
}

.prs-modal-footer[hidden] {
	display: none !important;
}

.prs-modal-footer {
	position: relative;
	z-index: 2;
	flex: 0 0 auto;
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	padding: 15px 24px max(15px, env(safe-area-inset-bottom));
	border-top: 1px solid var(--prs-border);
	background: #fff;
}

.prs-field,
.prs-fieldset,
.prs-upload-section {
	display: block;
	margin: 0 0 18px;
}

.prs-field > span,
.prs-fieldset > legend,
.prs-upload-heading strong {
	display: block;
	margin: 0 0 7px;
	color: var(--prs-text);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
}

.prs-required-marker {
	color: var(--prs-accent-dark) !important;
	font-style: normal !important;
	font-weight: 700;
}

.prs-fieldset > legend {
	float: none;
	width: 100%;
	padding: 0;
	text-align: left;
}

.prs-rating-fieldset,
.prs-recommend-fieldset {
	text-align: left;
}

.prs-rating-input,
.prs-choice-row {
	justify-content: flex-start;
}

.prs-field input[type="text"],
.prs-field input[type="email"],
.prs-field textarea {
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 12px !important;
	border: 1px solid var(--prs-border) !important;
	border-radius: 5px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--prs-text) !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

.prs-field input[type="text"],
.prs-field input[type="email"] {
	height: 43px;
}

.prs-field textarea {
	min-height: 130px;
	resize: vertical;
}

.prs-field small,
.prs-upload-zone small {
	display: block;
	margin-top: 5px;
	color: var(--prs-muted);
	font-size: 10px;
	font-weight: 400;
	line-height: 1.35;
}

.prs-fieldset {
	min-width: 0;
	padding: 0;
	border: 0;
}

.prs-rating-input {
	display: flex;
	align-items: center;
	gap: 3px;
}

.prs-rating-choice {
	position: relative;
	display: inline-grid;
	width: 34px;
	height: 34px;
	place-items: center;
	margin: 0;
	cursor: pointer;
}

.prs-rating-choice input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	opacity: 0;
}


.prs-rating-choice > span[aria-hidden="true"] {
	color: #dfe4e8;
	font-size: 30px;
	line-height: 1;
	transition: color .12s ease, transform .12s ease;
}

.prs-rating-choice:hover > span[aria-hidden="true"],
.prs-rating-choice.is-active > span[aria-hidden="true"],
.prs-rating-choice input:checked + span[aria-hidden="true"] {
	color: var(--prs-accent);
	transform: translateY(-1px);
}

.prs-rating-choice:focus-within {
	border-radius: 4px;
	box-shadow: 0 0 0 2px rgba(47, 141, 0, .20);
}

.prs-choice-row {
	display: flex;
	gap: 9px;
}

.prs-choice-row label {
	position: relative;
	margin: 0;
}

.prs-choice-row input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.prs-choice-row span {
	display: inline-flex;
	min-width: 74px;
	height: 38px;
	align-items: center;
	justify-content: center;
	padding: 7px 16px;
	border: 1px solid var(--prs-border);
	border-radius: 999px;
	background: #fff;
	color: var(--prs-text);
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
}

.prs-choice-row input:checked + span {
	border-color: var(--prs-accent-dark);
	background: #edf8e8;
	color: var(--prs-accent-dark);
	box-shadow: inset 0 0 0 1px var(--prs-accent-dark);
}

.prs-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.prs-upload-section {
	padding: 15px;
	border: 1px solid var(--prs-border);
	border-radius: 7px;
	background: #fafbfb;
}

.prs-upload-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
}

.prs-upload-heading strong {
	margin: 0;
}

.prs-upload-heading > span {
	color: var(--prs-muted);
	font-size: 10px;
}

.prs-upload-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.prs-upload-zone {
	position: relative;
	display: grid;
	min-height: 100px;
	place-items: center;
	align-content: center;
	padding: 14px;
	border: 1px dashed #b7c0c8;
	border-radius: 6px;
	background: #fff;
	text-align: center;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}

.prs-upload-zone:hover,
.prs-upload-zone:focus-within {
	border-color: var(--prs-accent-dark);
	background: #f4fbf0;
}

.prs-upload-zone input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.prs-upload-zone strong {
	font-size: 11px;
	font-weight: 700;
}

.prs-upload-icon {
	margin-bottom: 4px;
	color: var(--prs-accent-dark);
	font-size: 21px;
	font-weight: 700;
	line-height: 1;
}

.prs-file-list {
	display: grid;
	gap: 6px;
	margin-top: 10px;
}

.prs-file-list:empty {
	display: none;
}

.prs-file-row {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr) auto 28px;
	align-items: center;
	gap: 7px;
	padding: 7px 8px;
	border: 1px solid var(--prs-border);
	border-radius: 5px;
	background: #fff;
	font-size: 10px;
}

.prs-file-kind {
	color: var(--prs-accent-dark);
	font-weight: 700;
	text-align: center;
}

.prs-file-name {
	overflow: hidden;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.prs-file-size {
	color: var(--prs-muted);
	white-space: nowrap;
}

.prs-file-remove {
	display: grid;
	width: 26px;
	height: 26px;
	place-items: center;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #6b737c;
	font-size: 18px;
	cursor: pointer;
}

.prs-file-remove:hover,
.prs-file-remove:focus-visible {
	background: #f1f7ed;
	color: var(--prs-accent-dark);
}

.prs-consent {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 2px 0 0;
	color: #4d555e;
	font-size: 10.5px;
	line-height: 1.4;
}

.prs-consent input {
	flex: 0 0 auto;
	margin: 2px 0 0;
	accent-color: var(--prs-accent-dark);
}

.prs-form-submit,
.prs-form-cancel {
	display: inline-flex;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	padding: 9px 18px;
	border-radius: 4px;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .045em;
	line-height: 1;
	text-transform: uppercase;
	cursor: pointer;
}

.prs-form-submit {
	border: 1px solid var(--prs-accent-dark);
	background: var(--prs-accent);
	color: #fff;
}

.prs-form-submit:hover,
.prs-form-submit:focus-visible {
	background: var(--prs-accent-dark);
}

.prs-form-submit:disabled {
	cursor: wait;
	opacity: .65;
}

.prs-form-cancel {
	border: 1px solid var(--prs-border);
	background: #fff;
	color: #3a4148;
}

.prs-form-cancel:hover,
.prs-form-cancel:focus-visible {
	border-color: #a7d890;
	color: var(--prs-accent-dark);
}

.prs-form-status,
.prs-form-preview-note {
	margin: 0 0 16px;
	padding: 10px 12px;
	border: 1px solid var(--prs-border);
	border-radius: 5px;
	font-size: 11px;
	line-height: 1.4;
}

.prs-form-status.is-info,
.prs-form-preview-note {
	border-color: #c9d8e5;
	background: #f5f9fc;
	color: #34495a;
}

.prs-form-status.is-success {
	border-color: #b7df9f;
	background: #f1faec;
	color: #2f6f16;
}

.prs-form-status.is-error {
	border-color: #efb7b4;
	background: #fff3f2;
	color: #9b2c25;
}

.prs-signin-required {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.prs-honeypot {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	left: -9999px !important;
	overflow: hidden !important;
}

@media (max-width: 620px) {
	.prs-modal {
		align-items: end;
		padding: 0;
	}

	.prs-modal-panel,
	.prs-modal-panel--question {
		width: 100%;
		max-height: 94vh;
		max-height: 94dvh;
		border-radius: 12px 12px 0 0;
	}

	.prs-modal-header {
		padding: 17px 18px 14px;
	}

	.prs-modal-header h3 {
		font-size: 26px !important;
	}

	.prs-modal-body {
		padding: 18px;
	}

	.prs-modal-footer {
		padding: 13px 18px max(13px, env(safe-area-inset-bottom));
	}

	.prs-form-grid,
	.prs-upload-grid {
		grid-template-columns: 1fr;
	}

	.prs-signin-required {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Alpha.5.2 submission completion state: replace the form with an unmistakable confirmation. */
.prs-submission-success {
	display: flex;
	min-height: 330px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 48px 34px 52px;
	outline: none;
	text-align: center;
}

.prs-submission-success-icon {
	display: grid;
	width: 66px;
	height: 66px;
	place-items: center;
	margin-bottom: 18px;
	border-radius: 50%;
	background: var(--prs-accent);
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 36px;
	font-weight: 700;
	line-height: 1;
	box-shadow: 0 0 0 7px rgba(47, 141, 0, .10);
}

.prs-submission-success h4 {
	margin: 0 0 10px !important;
	color: var(--prs-text) !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	text-transform: uppercase;
}

.prs-submission-success p {
	max-width: 500px;
	margin: 0 !important;
	color: #4c555d !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
}

.prs-submission-success-close {
	display: inline-flex;
	min-width: 110px;
	min-height: 42px;
	align-items: center;
	justify-content: center;
	margin-top: 24px;
	padding: 10px 22px;
	border: 1px solid var(--prs-accent-dark);
	border-radius: 4px;
	background: var(--prs-accent);
	color: #fff;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .045em;
	line-height: 1;
	text-transform: uppercase;
	cursor: pointer;
}

.prs-submission-success-close:hover,
.prs-submission-success-close:focus-visible {
	background: var(--prs-accent-dark);
	box-shadow: 0 0 0 3px rgba(47, 141, 0, .16);
}

@media (max-width: 600px) {
	.prs-submission-success {
		min-height: 280px;
		padding: 38px 22px 42px;
	}

	.prs-submission-success h4 {
		font-size: 25px !important;
	}
}

/* Alpha.9 provider-backed product Q&A. */
.prs-qa-section {
	margin-top: 42px;
	padding-top: 28px;
	border-top: 1px solid var(--prs-border);
}

.prs-qa-heading-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 18px;
}

.prs-qa-heading-row h2 {
	margin: 0 !important;
	color: var(--prs-text) !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-transform: uppercase;
}

.prs-qa-heading-row p {
	margin: 7px 0 0 !important;
	color: var(--prs-muted) !important;
	font-size: 12px !important;
	line-height: 1.4 !important;
}

.prs-qa-list {
	display: grid;
	gap: 14px;
}

.prs-qa-card {
	padding: 22px 24px 20px;
	border: 1px solid var(--prs-border);
	border-radius: var(--prs-radius);
	background: #fff;
	box-shadow: var(--prs-shadow);
}

.prs-qa-question-row,
.prs-qa-answer {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}

.prs-qa-letter {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: var(--prs-accent);
	color: #fff;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
}

.prs-qa-letter--answer {
	background: #eef7e9;
	color: var(--prs-accent-dark);
}

.prs-qa-question-copy h3 {
	margin: 1px 0 6px !important;
	color: var(--prs-text) !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
}

.prs-qa-categories {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 8px;
}

.prs-qa-category-pill {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 9px;
	border: 1px solid #cce5bd;
	border-radius: 999px;
	background: #f1faec;
	color: var(--prs-accent-dark) !important;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none !important;
}

a.prs-qa-category-pill:hover,
a.prs-qa-category-pill:focus-visible {
	border-color: var(--prs-accent);
	background: #e8f6df;
	color: var(--prs-accent-dark) !important;
	text-decoration: none !important;
}

.prs-qa-meta,
.prs-qa-answer-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	color: var(--prs-muted);
	font-size: 11px;
	line-height: 1.35;
}

.prs-qa-answers {
	display: grid;
	gap: 12px;
	margin: 17px 0 0 46px;
}

.prs-qa-answer {
	padding: 14px 16px;
	border-radius: 6px;
	background: var(--prs-soft);
}

.prs-qa-answer.is-official {
	border-left: 3px solid var(--prs-accent);
	background: var(--prs-response);
}

.prs-qa-answer-meta img:not(.prs-response-verified-icon) {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	object-fit: cover;
}

.prs-qa-answer-meta strong {
	color: var(--prs-text);
	font-size: 12px;
	font-weight: 700;
}

.prs-qa-answer-text {
	margin-top: 7px;
	color: #31383f;
	font-size: 13px;
	line-height: 1.55;
}

.prs-qa-answer-text > :first-child {
	margin-top: 0 !important;
}

.prs-qa-answer-text > :last-child {
	margin-bottom: 0 !important;
}

.prs-qa-awaiting {
	padding: 12px 14px;
	border-radius: 5px;
	background: var(--prs-soft);
	color: var(--prs-muted);
	font-size: 12px;
}

.prs-qa-permalink {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 16px 0 0 46px;
	color: var(--prs-accent-dark) !important;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none !important;
}

.prs-qa-permalink:hover,
.prs-qa-permalink:focus-visible {
	color: var(--prs-accent) !important;
	text-decoration: underline !important;
}

@media (max-width: 620px) {
	.prs-qa-heading-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.prs-qa-card {
		padding: 18px;
	}

	.prs-qa-answers,
	.prs-qa-permalink {
		margin-left: 0;
	}
}

/* Alpha.10.1 Q&A visual cleanup: shared official responses and tighter question cards. */
.prs-qa-heading-count {
	color: var(--prs-muted);
	font-family: "Open Sans", Arial, sans-serif;
	font-size: .58em;
	font-weight: 700;
	vertical-align: .12em;
}

.prs-qa-heading-row p .prs-qa-result-count {
	display: inline;
	margin-left: 6px;
	white-space: nowrap;
	color: var(--prs-muted);
	font-size: inherit;
	font-weight: 700;
}

.prs-qa-heading-row p .prs-qa-result-count::before {
	content: "•";
	margin-right: 6px;
	color: #b1b8bd;
}

.prs-qa-toolbar {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 16px;
}

.prs-qa-toolbar .prs-select-wrap {
	flex: 0 1 170px;
	min-width: 135px;
}

.prs-qa-search {
	position: relative;
	display: block;
	flex: 1 1 320px;
	min-width: 220px;
}

.prs-qa-search .prs-search-icon {
	position: absolute;
	top: 50%;
	left: 12px;
	width: 17px;
	height: 17px;
	transform: translateY(-50%);
	color: var(--prs-muted);
	pointer-events: none;
}

.prs-qa-search .prs-search-icon svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.prs-qa-search input,
.prs-qa-toolbar select {
	box-sizing: border-box;
	width: 100%;
	height: 42px;
	margin: 0 !important;
	border: 1px solid var(--prs-border) !important;
	border-radius: 5px !important;
	background: #fff !important;
	color: var(--prs-text) !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 12px !important;
	line-height: 1 !important;
}

.prs-qa-search input {
	padding: 0 12px 0 38px !important;
}

.prs-qa-toolbar select {
	padding: 0 30px 0 11px !important;
}

.prs-qa-section.is-loading .prs-qa-list {
	opacity: .58;
	pointer-events: none;
}

.prs-qa-card-topline {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 9px;
}

.prs-qa-card-topline .prs-qa-categories {
	margin-bottom: 0;
}

.prs-qa-status-pill {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 9px;
	border: 1px solid var(--prs-border);
	border-radius: 999px;
	background: #f7f8f8;
	color: var(--prs-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.prs-qa-status-pill.is-answered {
	border-color: #cce5bd;
	background: #f1faec;
	color: var(--prs-accent-dark);
}

.prs-qa-question-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 13px 0 0 46px;
}

.prs-question-too {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 34px;
	padding: 6px 9px 6px 10px;
	border: 1px solid #cce5bd;
	border-radius: 999px;
	background: #f8fcf5;
	color: var(--prs-accent-dark);
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.prs-question-too-icon {
	display: block;
	width: 14px;
	height: 14px;
	object-fit: contain;
}

.prs-question-too strong {
	display: inline-grid;
	min-width: 24px;
	height: 22px;
	place-items: center;
	padding: 0 6px;
	border: 1px solid #d8ebce;
	border-radius: 999px;
	background: #fff;
	color: var(--prs-accent-dark);
	font-size: 10px;
	font-variant-numeric: tabular-nums;
}

.prs-question-too:hover,
.prs-question-too:focus-visible,
.prs-question-too.is-counted {
	border-color: var(--prs-accent);
	background: #eef8e9;
	color: var(--prs-accent-dark);
}

.prs-question-too:focus-visible {
	outline: 2px solid rgba(36, 132, 12, .24);
	outline-offset: 2px;
}

.prs-question-too:disabled {
	cursor: default;
	opacity: .8;
}

.prs-question-too.has-error {
	border-color: #cc6e6e;
}

/* Q&A answers deliberately reuse the exact review-response component. */
.prs-qa-answers {
	display: grid;
	gap: 12px;
	margin: 14px 0 0 46px;
}

.prs-qa-answers .prs-response {
	margin-top: 0;
}

.prs-qa-permalink {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 14px 0 0 46px;
	color: var(--prs-accent-dark) !important;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.3;
	text-decoration: none !important;
}

.prs-qa-permalink span {
	transition: transform .16s ease;
}

.prs-qa-permalink:hover,
.prs-qa-permalink:focus-visible {
	color: var(--prs-accent) !important;
	text-decoration: none !important;
}

.prs-qa-permalink:hover span,
.prs-qa-permalink:focus-visible span {
	transform: translateX(2px);
}

.prs-qa-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 16px;
}

.prs-qa-footer .prs-view-more[hidden] {
	display: none !important;
}

.prs-qa-view-all {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-left: auto;
	color: var(--prs-accent-dark) !important;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none !important;
}

.prs-qa-view-all span {
	transition: transform .16s ease;
}

.prs-qa-view-all:hover,
.prs-qa-view-all:focus-visible {
	color: var(--prs-accent) !important;
	text-decoration: none !important;
}

.prs-qa-view-all:hover span,
.prs-qa-view-all:focus-visible span {
	transform: translateX(2px);
}

@media (max-width: 700px) {
	.prs-qa-heading-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.prs-qa-card-topline {
		align-items: flex-start;
		flex-direction: column;
	}

	.prs-qa-question-actions,
	.prs-qa-answers,
	.prs-qa-permalink {
		margin-left: 0;
	}

	.prs-qa-toolbar .prs-select-wrap {
		flex: 1 1 calc(50% - 5px);
	}
}

@media (max-width: 460px) {
	.prs-qa-search,
	.prs-qa-toolbar .prs-select-wrap {
		flex-basis: 100%;
	}

	.prs-qa-heading-row p .prs-qa-result-count {
		display: block;
		margin: 4px 0 0;
	}

	.prs-qa-heading-row p .prs-qa-result-count::before {
		display: none;
	}

	.prs-qa-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.prs-qa-view-all {
		margin-left: 0;
	}
}

/* Alpha.11 storefront polish: media gallery/lightbox, helpful voting, deep links. */
.prs-review-admin-menu a {
	display: block;
	width: 100%;
	padding: 8px 9px;
	border-radius: 4px;
	color: #24292f;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
	text-align: left;
	text-decoration: none !important;
}

.prs-review-admin-menu a:hover,
.prs-review-admin-menu a:focus-visible {
	background: #f1f7ed;
	color: var(--prs-accent-dark);
	outline: none;
}

.prs-media-grid {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	justify-self: end;
	width: max-content;
	max-width: 100%;
	gap: 7px;
}

.prs-media-item {
	width: 82px;
	height: 74px;
	padding: 0;
	border: 1px solid var(--prs-border);
	font: inherit;
	cursor: zoom-in;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.prs-media-item:hover,
.prs-media-item:focus-visible {
	border-color: var(--prs-accent-dark);
	outline: none;
	box-shadow: 0 0 0 2px rgba(47, 141, 0, .16);
	transform: translateY(-1px);
}

.prs-media-item[data-prs-media-hidden="1"] {
	display: none;
}

.prs-media-video {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.prs-media-video::before {
	position: absolute;
	inset: 0;
	background: rgba(10, 13, 15, .28);
	content: "";
}

.prs-media-video.needs-poster::before {
	background: linear-gradient(180deg, rgba(39, 51, 58, .04), rgba(39, 51, 58, .18));
}

.prs-media-video.has-poster {
	background-color: #dce3e6;
}

.prs-media-video .prs-play {
	position: relative;
	z-index: 2;
}

.prs-media-more {
	position: absolute;
	z-index: 3;
	inset: 0;
	display: grid;
	place-items: center;
	background: rgba(17, 24, 39, .65);
	color: #fff;
	font-size: 20px;
	font-weight: 800;
	line-height: 1;
}

.prs-helpful {
	flex-wrap: wrap;
	gap: 7px;
}

.prs-helpful-label {
	margin-right: 2px;
}

.prs-helpful-button {
	display: inline-flex;
	min-height: 27px;
	align-items: center;
	gap: 5px;
	padding: 4px 8px;
	border: 1px solid var(--prs-border);
	border-radius: 999px;
	background: #fff;
	line-height: 1;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.prs-helpful-button:hover,
.prs-helpful-button:focus-visible {
	border-color: #aed79c;
	background: #f5fbf2;
	outline: none;
}

.prs-helpful-button.is-selected,
.prs-helpful-button[aria-pressed="true"] {
	border-color: #9ed187;
	background: #edf8e8;
	color: var(--prs-accent-dark);
}

.prs-helpful-count {
	display: inline-grid;
	min-width: 17px;
	height: 17px;
	place-items: center;
	padding: 0 4px;
	border-radius: 999px;
	background: #eef1f3;
	font-size: 9px;
	font-weight: 800;
}

.prs-helpful-button.is-selected .prs-helpful-count,
.prs-helpful-button[aria-pressed="true"] .prs-helpful-count {
	background: #dcefd3;
}

.prs-review-link {
	margin: 0 0 0 auto;
	padding: 3px 0;
	border: 0;
	background: transparent;
	color: #687078;
	font-size: 10px;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: #ccd2d6;
	text-underline-offset: 2px;
	cursor: pointer;
}

.prs-review-link:hover,
.prs-review-link:focus-visible {
	color: var(--prs-accent-dark);
	outline: none;
	text-decoration-color: currentColor;
}

/* Alpha.11.1: review media uses WooCommerce's bundled PhotoSwipe lightbox. */
.pswp.prs-pswp {
	z-index: 2147483000 !important;
}

.prs-pswp .prs-pswp-video {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	padding: 64px 80px;
	box-sizing: border-box;
}

.prs-pswp .prs-pswp-video video {
	display: block;
	max-width: 100%;
	max-height: calc(100dvh - 128px);
	background: #000;
	box-shadow: 0 14px 50px rgba(0,0,0,.35);
}

@media (max-width: 700px) {
	.prs-media-grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		width: min(100%, 360px);
		max-width: 360px;
		margin-left: auto;
	}

	.prs-media-item {
		width: 100%;
		height: auto;
		aspect-ratio: 1.08 / 1;
	}

	.prs-pswp .prs-pswp-video {
		padding: 48px 14px;
	}

	.prs-pswp .prs-pswp-video video {
		max-height: calc(100dvh - 96px);
	}
}

@media (max-width: 460px) {
	.prs-helpful {
		align-items: flex-start;
	}

	.prs-helpful-label {
		flex: 1 0 100%;
	}

	.prs-review-link {
		margin-left: 4px;
	}
}

.prs-review-recommended {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--prs-recommend-color, var(--prs-accent-dark));
	font-weight: 700;
}

.prs-review-recommended-icon {
	display: block;
	width: 13px;
	height: 13px;
	object-fit: contain;
}

/* Alpha.11.3: mobile refinement, storefront staff editors, and lightbox stacking. */
.prs-featured-quote-text {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.prs-modal,
.pswp.prs-pswp {
	z-index: 2147483647 !important;
}

.pswp.prs-pswp,
html.admin-bar .pswp.prs-pswp,
body.admin-bar .pswp.prs-pswp {
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	margin-top: 0 !important;
}

/* Sticky Cart Suite is storefront chrome. While a PRS modal or WooCommerce
 * PhotoSwipe is open, it must remain underneath the active dialog. */
html.prs-modal-open .wscs-root,
html.prs-modal-open .wscs-product-bar,
html.prs-photoswipe-open .wscs-root,
html.prs-photoswipe-open .wscs-product-bar {
	z-index: 1 !important;
	pointer-events: none !important;
}

.prs-modal-panel--staff {
	width: min(680px, 100%);
}

.prs-modal-panel--response {
	width: min(620px, 100%);
}

.prs-staff-form {
	display: flex;
	min-height: 0;
	flex: 1 1 auto;
	flex-direction: column;
	overflow: hidden;
}

.prs-staff-note {
	margin: -4px 0 0 !important;
	color: var(--prs-muted) !important;
	font-size: 11px !important;
	line-height: 1.45 !important;
}

.prs-response {
	position: relative;
}

.prs-response-edit {
	position: absolute;
	top: 8px;
	right: 10px;
	z-index: 3;
	margin: 0;
	padding: 3px 6px;
	border: 0;
	border-radius: 4px;
	background: rgba(255, 255, 255, .72);
	color: #657067;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 9px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}

.prs-response-edit:hover,
.prs-response-edit:focus-visible {
	background: #fff;
	color: var(--prs-accent-dark);
	outline: none;
}

@media (max-width: 700px) {
	.prs-heading {
		font-size: clamp(32px, 9vw, 42px);
		line-height: 1;
	}

	.prs-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.prs-actions .prs-button {
		width: 100%;
		min-width: 0;
		padding-left: 10px;
		padding-right: 10px;
	}

	.prs-summary-grid {
		gap: 12px;
	}

	.prs-summary-card {
		padding: 16px;
	}

	.prs-score {
		font-size: 54px;
	}

	.prs-score-line {
		gap: 12px;
	}

	.prs-media-grid {
		display: flex;
		width: 100%;
		max-width: 360px;
		flex-wrap: wrap;
		justify-content: flex-end;
		justify-self: end;
		margin-left: auto;
	}

	.prs-media-item {
		flex: 0 0 82px;
		width: 82px;
		height: 74px;
		aspect-ratio: auto;
	}

	.prs-response-edit {
		position: static;
		float: right;
		margin: -2px 0 4px 8px;
	}
}

@media (max-width: 460px) {
	.prs-heading {
		font-size: 30px;
	}

	.prs-subheading {
		font-size: 12px;
	}

	.prs-actions {
		grid-template-columns: 1fr;
	}

	.prs-actions .prs-button {
		min-height: 42px;
	}

	.prs-summary-card {
		padding: 14px;
	}

	.prs-score {
		font-size: 48px;
	}

	.prs-score-detail .prs-stars {
		font-size: 18px;
	}

	.prs-summary-badges {
		gap: 7px;
	}

	.prs-featured-review {
		margin-top: 12px;
		padding: 11px 12px;
	}

	.prs-featured-footer {
		margin-top: 7px;
	}

	.prs-rating-row {
		grid-template-columns: 34px minmax(80px, 1fr) 24px;
		gap: 8px;
	}

	.prs-toolbar {
		gap: 8px;
	}

	.prs-toolbar input,
	.prs-toolbar select {
		min-height: 44px;
	}

	.prs-review-card {
		padding: 14px;
	}

	.prs-media-grid {
		max-width: 100%;
	}

	.prs-media-item {
		flex-basis: 72px;
		width: 72px;
		height: 66px;
	}

	.prs-modal-panel--staff,
	.prs-modal-panel--response {
		width: 100%;
	}
}

/* When WordPress reserves root margin for the admin bar but the bar is not
 * visible over PhotoSwipe, remove that reserved strip only for the active PRS
 * viewer. The class is removed as soon as WooCommerce PhotoSwipe closes. */
html.prs-photoswipe-open {
	margin-top: 0 !important;
}

html.prs-photoswipe-open.admin-bar #wpadminbar {
	display: none !important;
}


/* Alpha.11.4: true mobile gutters and storefront response deletion. */
.prs-modal-footer--staff-response {
	display: flex;
	align-items: center;
	gap: 9px;
}

.prs-modal-footer-spacer {
	flex: 1 1 auto;
}

.prs-form-delete {
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid #d92d20;
	border-radius: 4px;
	background: #fff;
	color: #b42318;
	font-weight: 700;
	cursor: pointer;
}

.prs-form-delete:hover,
.prs-form-delete:focus-visible {
	background: #fff1f0;
	outline: none;
}

.prs-form-delete:disabled {
	cursor: wait;
	opacity: .55;
}

@media (max-width: 700px) {
	/* Keep the complete review experience off the viewport edges even when a
	 * theme renders the WooCommerce tab panel full-bleed on phones. */
	.prs-suite {
		width: calc(100% - 28px);
		max-width: none;
		margin-right: auto;
		margin-left: auto;
	}

	.prs-heading-row {
		padding-top: 0;
	}

	.prs-summary-card,
	.prs-review-card,
	.prs-qa-card,
	.prs-search,
	.prs-select-wrap {
		border-radius: 8px;
	}

	.prs-toolbar {
		gap: 9px;
	}

	.prs-review-card {
		margin-bottom: 10px;
	}

	.prs-review-meta,
	.prs-helpful {
		flex-wrap: wrap;
	}

	.prs-response {
		width: 100%;
		max-width: none;
		padding: 10px 11px;
	}

	.prs-response.has-icon {
		grid-template-columns: 40px minmax(0, 1fr);
		gap: 9px;
	}

	.prs-response-mark {
		width: 40px;
		height: 40px;
	}

	.prs-response-content {
		align-self: start;
		padding-right: 34px;
	}

	.prs-response-meta {
		flex-wrap: wrap;
		gap: 3px 6px;
		margin-bottom: 4px;
		line-height: 1.25;
	}

	.prs-response--official .prs-response-meta strong {
		font-size: 13px;
		line-height: 1.2;
	}

	.prs-response-copy {
		font-size: 11px;
		line-height: 1.4;
	}

	.prs-response-edit {
		position: absolute;
		top: 7px;
		right: 7px;
		float: none;
		margin: 0;
		padding: 3px 5px;
		font-size: 8px;
	}

	.prs-qa-question-row {
		min-width: 0;
	}

	.prs-qa-question-copy {
		min-width: 0;
	}

	.prs-qa-question-copy h3 {
		overflow-wrap: anywhere;
	}
}

@media (max-width: 460px) {
	.prs-suite {
		width: calc(100% - 20px);
	}

	.prs-heading-copy {
		padding-top: 14px;
	}

	.prs-actions {
		gap: 7px;
	}

	.prs-summary-grid {
		gap: 10px;
	}

	.prs-summary-card,
	.prs-review-card,
	.prs-qa-card {
		padding: 12px;
	}

	.prs-score-line {
		align-items: center;
	}

	.prs-score {
		font-size: 44px;
	}

	.prs-rating-row {
		grid-template-columns: 30px minmax(0, 1fr) 20px;
	}

	.prs-review-title {
		font-size: var(--prs-review-title-size, 17px) !important;
	}

	.prs-media-item {
		flex-basis: 68px;
		width: 68px;
		height: 62px;
	}

	.prs-qa-heading-row h2 {
		font-size: 28px;
		line-height: 1;
	}

	.prs-qa-question-row {
		gap: 9px;
	}

	.prs-qa-letter {
		flex: 0 0 26px;
		width: 26px;
		height: 26px;
	}

	.prs-modal-footer--staff-response {
		flex-wrap: wrap;
	}

	.prs-modal-footer--staff-response .prs-form-delete {
		order: 3;
		width: 100%;
	}

	.prs-modal-footer-spacer {
		display: none;
	}
}

/* Alpha.12.2.2: viewport-level customer dialogs and compact submission layout.
 * Product tab wrappers in some themes establish transformed containing blocks;
 * review/question dialogs are portaled to <body> by frontend.js so they cover
 * the entire storefront instead of being clipped beneath site chrome. */
.prs-modal--portaled,
.prs-modal--portaled * {
	box-sizing: border-box;
}

.prs-modal--portaled {
	--prs-accent: #48b900;
	--prs-accent-dark: #2f8d00;
	--prs-text: #151515;
	--prs-muted: #667085;
	--prs-border: #d9dde3;
	--prs-soft: #f7f8f9;
	--prs-response: #f3faee;
	--prs-review-card-bg: #fff;
	--prs-featured-card-bg: #f6f7f7;
	--prs-verified-color: #2f8d00;
	--prs-recommend-color: #2f8d00;
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	margin: 0 !important;
	padding: clamp(22px, 4vh, 40px) clamp(16px, 3vw, 32px) !important;
	place-items: center !important;
	transform: none !important;
	font-family: "Open Sans", Arial, sans-serif;
}

.prs-modal--portaled .prs-modal-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(14, 18, 20, .72);
	backdrop-filter: blur(3px);
}

.prs-modal--portaled .prs-modal-panel {
	width: min(660px, calc(100vw - 32px));
	max-height: min(720px, calc(100dvh - 64px));
	border-radius: 16px;
	box-shadow: 0 28px 90px rgba(0, 0, 0, .34);
}

.prs-modal--portaled .prs-modal-panel--question {
	width: min(600px, calc(100vw - 32px));
	max-height: min(620px, calc(100dvh - 64px));
}

.prs-modal--portaled .prs-modal-header {
	flex: 0 0 auto;
	align-items: center;
	padding: 17px 20px 15px;
	background: #fff;
}

.prs-modal--portaled .prs-modal-header h3 {
	font-size: 26px !important;
	line-height: 1.05 !important;
}

.prs-modal--portaled .prs-modal-close {
	width: 36px;
	height: 36px;
	margin: 0 -4px 0 0;
	font-size: 27px;
}

.prs-modal--portaled .prs-modal-body {
	padding: 18px 20px 20px;
	scrollbar-gutter: stable;
}

.prs-modal--portaled .prs-modal-footer {
	padding: 13px 20px max(13px, env(safe-area-inset-bottom));
	box-shadow: 0 -8px 24px rgba(16, 24, 40, .045);
}

.prs-modal--portaled .prs-field,
.prs-modal--portaled .prs-fieldset,
.prs-modal--portaled .prs-upload-section {
	margin-bottom: 14px;
}

.prs-modal--portaled .prs-field > span,
.prs-modal--portaled .prs-fieldset > legend,
.prs-modal--portaled .prs-upload-heading strong {
	margin-bottom: 6px;
	font-size: 12px;
}

.prs-modal--portaled .prs-field input[type="text"],
.prs-modal--portaled .prs-field input[type="email"] {
	height: 40px;
	padding: 8px 11px !important;
	border-radius: 7px !important;
}

.prs-modal--portaled .prs-field textarea {
	min-height: 108px;
	padding: 10px 11px !important;
	border-radius: 7px !important;
}

.prs-modal--portaled .prs-rating-choice {
	width: 31px;
	height: 31px;
}

.prs-modal--portaled .prs-rating-choice > span[aria-hidden="true"] {
	font-size: 28px;
}

.prs-modal--portaled .prs-choice-row span {
	min-width: 66px;
	height: 35px;
	padding: 6px 14px;
}

.prs-modal--portaled .prs-upload-section {
	padding: 12px;
	border-radius: 9px;
}

.prs-modal--portaled .prs-upload-zone {
	min-height: 78px;
	padding: 10px;
	border-radius: 8px;
}

.prs-modal--portaled .prs-upload-icon {
	font-size: 19px;
}

.prs-modal--portaled .prs-form-grid,
.prs-modal--portaled .prs-upload-grid {
	gap: 10px;
}

.prs-modal--portaled .prs-form-submit,
.prs-modal--portaled .prs-form-cancel {
	min-height: 40px;
	padding: 9px 16px;
}

@media (max-width: 620px) {
	.prs-modal--portaled {
		align-items: end !important;
		padding: 12px 0 0 !important;
	}

	.prs-modal--portaled .prs-modal-panel,
	.prs-modal--portaled .prs-modal-panel--question {
		width: 100%;
		max-height: calc(100dvh - 12px);
		border-radius: 18px 18px 0 0;
	}

	.prs-modal--portaled .prs-modal-header {
		padding: 16px 18px 13px;
	}

	.prs-modal--portaled .prs-modal-header h3 {
		font-size: 24px !important;
	}

	.prs-modal--portaled .prs-modal-body {
		padding: 16px 18px 18px;
	}

	.prs-modal--portaled .prs-modal-footer {
		padding: 12px 18px max(12px, env(safe-area-inset-bottom));
	}

	.prs-modal--portaled .prs-form-grid,
	.prs-modal--portaled .prs-upload-grid {
		grid-template-columns: 1fr;
	}

	.prs-modal--portaled .prs-upload-zone {
		min-height: 70px;
	}
}

/* Alpha 13.6.22: catalog-driven Review Topics + mockup alignment fixes. */
.prs-actions > .prs-button {
	box-sizing: border-box !important;
	width: auto !important;
	min-width: 132px;
	height: 43px !important;
	min-height: 43px !important;
	margin: 0 !important;
	padding: 0 20px !important;
	border-width: 2px !important;
	border-style: solid !important;
	border-radius: var(--prs-button-radius) !important;
	box-shadow: none !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .055em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	white-space: nowrap;
}

.prs-actions > .prs-button--secondary,
.prs-actions > .prs-button--secondary:visited {
	border-color: var(--prs-text) !important;
	background: #fff !important;
	color: var(--prs-text) !important;
}

.prs-actions > .prs-button--secondary:hover,
.prs-actions > .prs-button--secondary:focus-visible {
	border-color: var(--prs-accent-dark) !important;
	background: #f7fbf4 !important;
	color: var(--prs-accent-dark) !important;
}

/* Keep the two KPI pills together like the approved mockup. */
.prs-summary-badges {
	flex-wrap: nowrap;
	align-items: center;
}

.prs-summary-badges > .prs-summary-badge {
	flex: 0 1 auto;
	width: auto !important;
	max-width: 100%;
	white-space: nowrap;
}

/* Review Topics shown beneath reviewer/date on customer review cards. */
.prs-review-topics {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 7px 0 9px;
}

.prs-review-topic {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 3px 8px;
	border: 1px solid #d9dde3;
	border-radius: 3px;
	background: #f8f9fa;
	color: #414850;
	font-size: 9.5px;
	font-weight: 600;
	line-height: 1.2;
}

/* Product-specific topic chooser in Write a Review. */
.prs-review-topics-fieldset {
	padding: 13px 14px 14px;
	border: 1px solid var(--prs-border);
	border-radius: 7px;
	background: #f8faf7;
}

.prs-review-topics-fieldset > legend {
	margin-bottom: 2px;
}

.prs-topic-help {
	margin: 0 0 9px;
	color: var(--prs-muted);
	font-size: 10px;
	line-height: 1.35;
}

.prs-topic-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.prs-topic-choice {
	position: relative;
	display: inline-flex;
	margin: 0;
	cursor: pointer;
}

.prs-topic-choice input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	opacity: 0;
}

.prs-topic-choice span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 5px 10px;
	border: 1px solid #cfd5da;
	border-radius: 999px;
	background: #fff;
	color: #3f464d;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1.2;
	transition: border-color .12s ease, background .12s ease, color .12s ease, box-shadow .12s ease;
}

.prs-topic-choice:hover span,
.prs-topic-choice:focus-within span {
	border-color: #91bc7d;
	box-shadow: 0 0 0 2px rgba(72,185,0,.08);
}

.prs-topic-choice input:checked + span {
	border-color: var(--prs-accent-dark);
	background: #eef8e9;
	color: var(--prs-accent-dark);
}

.prs-topic-choice input:disabled + span {
	cursor: not-allowed;
	opacity: .45;
}

@media (max-width: 700px) {
	.prs-actions > .prs-button {
		min-width: 0;
		width: 100% !important;
	}
}

@media (max-width: 460px) {
	.prs-summary-badges {
		flex-wrap: wrap;
	}
}

/* Alpha 13.6.22: keep mockup actions and KPI badges aligned consistently. */
.prs-qa-heading-row > .prs-button,
.prs-qa-heading-row > .prs-button:visited {
	box-sizing: border-box !important;
	display: inline-flex !important;
	width: auto !important;
	min-width: 132px;
	height: 43px !important;
	min-height: 43px !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 20px !important;
	border: 2px solid var(--prs-text) !important;
	border-radius: var(--prs-button-radius) !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--prs-text) !important;
	font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .055em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	white-space: nowrap !important;
}

.prs-qa-heading-row > .prs-button:hover,
.prs-qa-heading-row > .prs-button:focus-visible {
	border-color: var(--prs-accent-dark) !important;
	background: #f7fbf4 !important;
	color: var(--prs-accent-dark) !important;
}

.prs-summary-badges {
	display: flex !important;
	align-items: center !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
}

.prs-summary-badges > .prs-summary-badge {
	flex: 0 1 auto !important;
	width: auto !important;
	min-width: 0;
	white-space: nowrap;
}

@media (max-width: 520px) {
	.prs-summary-badges {
		align-items: flex-start !important;
		flex-wrap: wrap !important;
	}

	.prs-qa-heading-row > .prs-button {
		width: 100% !important;
	}
}

/* Alpha.13.6.24: PRS-owned review media viewer. The page remains a dimmed
 * backdrop, while all controls stay attached to the media stage itself. */
.prs-review-lightbox[hidden] {
	display: none !important;
}

.prs-review-lightbox {
	position: fixed;
	inset: 0;
	z-index: 2147483647;
	display: grid;
	place-items: center;
	padding: 32px;
	box-sizing: border-box;
}

.prs-review-lightbox-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 8, 10, .88);
	backdrop-filter: blur(2px);
}

.prs-review-lightbox-stage {
	position: relative;
	z-index: 1;
	display: inline-flex;
	max-width: min(92vw, 1280px);
	max-height: calc(100dvh - 64px);
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.prs-review-lightbox-content {
	display: inline-flex;
	max-width: min(92vw, 1280px);
	max-height: calc(100dvh - 64px);
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 12px;
	background: #0c0f12;
	box-shadow: 0 18px 70px rgba(0, 0, 0, .52);
}

.prs-review-lightbox-content img,
.prs-review-lightbox-content video {
	display: block;
	width: auto;
	height: auto;
	max-width: min(92vw, 1280px);
	max-height: calc(100dvh - 64px);
	object-fit: contain;
	background: #0c0f12;
}

.prs-review-lightbox-close,
.prs-review-lightbox-nav {
	appearance: none;
	-webkit-appearance: none;
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	border: 1px solid rgba(255, 255, 255, .5);
	border-radius: 999px;
	background: #fff;
	color: #1d2327;
	box-shadow: 0 5px 22px rgba(0, 0, 0, .35);
	font-family: Arial, sans-serif;
	line-height: 1;
	cursor: pointer;
}

.prs-review-lightbox-close {
	top: -15px;
	right: -15px;
	width: 38px;
	height: 38px;
	font-size: 27px;
	font-weight: 400;
}

.prs-review-lightbox-nav {
	top: 50%;
	width: 42px;
	height: 42px;
	transform: translateY(-50%);
	font-size: 34px;
	font-weight: 300;
}

.prs-review-lightbox-prev {
	left: -56px;
}

.prs-review-lightbox-next {
	right: -56px;
}

.prs-review-lightbox-close:hover,
.prs-review-lightbox-close:focus-visible,
.prs-review-lightbox-nav:hover,
.prs-review-lightbox-nav:focus-visible {
	outline: 3px solid rgba(255, 255, 255, .38);
	outline-offset: 2px;
	background: #f7f7f7;
}

.prs-review-lightbox-caption {
	max-width: min(82vw, 900px);
	padding: 9px 14px 0;
	color: #fff;
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .5);
}

html.prs-review-lightbox-open {
	overflow: hidden !important;
}

html.prs-review-lightbox-open .wscs-root,
html.prs-review-lightbox-open .wscs-product-bar {
	z-index: 1 !important;
	pointer-events: none !important;
}

@media (max-width: 760px) {
	.prs-review-lightbox {
		padding: 18px 12px;
	}

	.prs-review-lightbox-stage,
	.prs-review-lightbox-content,
	.prs-review-lightbox-content img,
	.prs-review-lightbox-content video {
		max-width: calc(100vw - 24px);
		max-height: calc(100dvh - 36px);
	}

	.prs-review-lightbox-close {
		top: 8px;
		right: 8px;
		width: 36px;
		height: 36px;
		font-size: 25px;
	}

	.prs-review-lightbox-prev,
	.prs-review-lightbox-next {
		width: 38px;
		height: 38px;
		background: rgba(255, 255, 255, .92);
	}

	.prs-review-lightbox-prev {
		left: 8px;
	}

	.prs-review-lightbox-next {
		right: 8px;
	}
}

/* Standalone Featured Review shortcode acts as a clean click-through embed. */
.prs-suite--featured-review-shortcode .prs-review-card.is-featured-review-embed {
	cursor: pointer;
	background: #f6f7f7;
	border-color: #d8dde0;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.prs-suite--featured-review-shortcode .prs-review-card.is-featured-review-embed .prs-review-copy {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
}

.prs-featured-embed-read-row {
	display: flex;
	justify-content: flex-end;
	margin-top: 10px;
}

.prs-featured-embed-read {
	color: var(--prs-accent);
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
}

.prs-featured-embed-read:hover,
.prs-featured-embed-read:focus-visible {
	text-decoration: underline;
}

.prs-featured-embed-read span {
	display: inline-block;
	margin-left: 3px;
	transition: transform .16s ease;
}

.prs-featured-embed-read:hover span,
.prs-featured-embed-read:focus-visible span {
	transform: translateX(2px);
}

.prs-suite--featured-review-shortcode .prs-review-card.is-featured-review-embed:hover {
	border-color: #a7d890;
	box-shadow: 0 4px 14px rgba(47, 141, 0, .09);
	transform: translateY(-1px);
}

.prs-suite--featured-review-shortcode .prs-review-card.is-featured-review-embed:focus-visible {
	border-color: var(--prs-accent);
	outline: 2px solid rgba(47, 141, 0, .28);
	outline-offset: 2px;
}

/* Keep a dynamic Featured Review slot live in the DOM without reserving visual space
   when no review is currently Featured. Frontend staff actions can repopulate it
   immediately without requiring a full page refresh. */
.prs-suite--featured-review-shortcode.is-empty {
	display: none;
}

/* 13.6.34: Featured Review teaser aligned to the product-page mockup. */
.prs-suite--featured-review-shortcode .prs-featured-teaser {
	cursor: pointer;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
	align-items: stretch;
	padding: 16px 18px;
	background: var(--prs-featured-card-bg, #f6f7f7);
	border: 1px solid #d8dde0;
	border-radius: 8px;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.prs-suite--featured-review-shortcode .prs-featured-teaser.has-photo {
	grid-template-columns: minmax(0, 1fr) clamp(120px, 28%, 180px);
}

.prs-featured-teaser-content {
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.prs-featured-teaser-title {
	margin: 0 0 3px !important;
	padding: 0 !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 15.5px !important;
	line-height: 1.24 !important;
	font-weight: 700 !important;
	color: var(--prs-text, #222);
}

.prs-featured-teaser-stars {
	margin-bottom: 5px;
	line-height: 1;
}

.prs-featured-teaser-quote {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	margin: 0 0 8px;
	font-size: 14px;
	line-height: 1.45;
	font-style: italic;
	color: var(--prs-text, #333);
}

.prs-featured-teaser-meta {
	margin-top: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	font-size: var(--prs-review-meta-size, 12px);
	line-height: 1.35;
	color: #3f454a;
}

.prs-featured-teaser-reviewer {
	font-weight: 700;
	color: var(--prs-text, #222);
}

.prs-featured-teaser-separator {
	color: #969da3;
}

.prs-featured-teaser-verified {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-weight: 700;
	color: var(--prs-verified-color, var(--prs-accent-dark));
}


.prs-featured-teaser-photo {
	min-width: 0;
	border-radius: 7px;
	overflow: hidden;
	background: #e9ecef;
	align-self: stretch;
}

.prs-featured-teaser-photo img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 128px;
	max-height: 190px;
	object-fit: cover;
}

.prs-suite--featured-review-shortcode .prs-featured-teaser .prs-featured-embed-read {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	white-space: nowrap;
}

.prs-suite--featured-review-shortcode .prs-featured-teaser .prs-featured-teaser-meta .prs-featured-embed-read,
.prs-suite--featured-review-shortcode .prs-featured-teaser .prs-featured-teaser-meta .prs-featured-teaser-verified {
	font-size: 13px;
	line-height: 1.35;
}

.prs-suite--featured-review-shortcode .prs-featured-teaser:hover {
	border-color: #a7d890;
	box-shadow: 0 4px 14px rgba(47, 141, 0, .09);
	transform: translateY(-1px);
}

.prs-suite--featured-review-shortcode .prs-featured-teaser:focus-visible {
	border-color: var(--prs-accent);
	outline: 2px solid rgba(47, 141, 0, .28);
	outline-offset: 2px;
}

@media (max-width: 430px) {
	.prs-suite--featured-review-shortcode .prs-featured-teaser.has-photo {
		grid-template-columns: minmax(0, 1fr);
	}
	.prs-featured-teaser-photo {
		max-width: 220px;
	}
	.prs-featured-teaser-photo img {
		height: 140px;
		min-height: 140px;
	}
}
/* 13.6.63: make the native WooCommerce product rating act as the entry point to PRS reviews. */
.woocommerce-product-rating.prs-product-rating-link {
	cursor: pointer;
}

.woocommerce-product-rating.prs-product-rating-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.prs-suite {
	scroll-margin-top: 110px;
}

/* 13.7.0: Social Share keeps the review card quiet while making the share flow feel intentional. */
.prs-review-share {
	font-weight: 700;
}

.prs-share-modal[hidden] {
	display: none !important;
}

.prs-share-modal {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.prs-share-modal .prs-modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(16, 24, 40, .56);
	backdrop-filter: blur(5px);
}

.prs-share-card {
	position: relative;
	z-index: 1;
	width: min(560px, calc(100vw - 32px));
	max-height: min(720px, calc(100vh - 40px));
	overflow: auto;
	box-sizing: border-box;
	padding: 24px;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 28px 80px rgba(16, 24, 40, .22);
	color: var(--prs-text, #20262c);
}

.prs-share-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
}

.prs-share-head > div > span {
	display: block;
	margin-bottom: 3px;
	color: var(--prs-muted, #6f7780);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.prs-share-head h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.2;
	color: var(--prs-text, #20262c);
}

.prs-share-head button {
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 50%;
	background: #fff;
	color: var(--prs-text, #20262c);
	font-size: 25px;
	line-height: 30px;
	cursor: pointer;
}

.prs-share-head button:hover,
.prs-share-head button:focus-visible {
	border-color: var(--prs-accent, #2f8d00);
	outline: none;
	box-shadow: 0 0 0 3px rgba(47, 141, 0, .12);
}

.prs-share-review-preview {
	margin-bottom: 18px;
	padding: 18px 20px;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 14px;
	background: var(--prs-soft, #f7f9fa);
}

.prs-share-review-preview [data-prs-share-stars] {
	margin-bottom: 8px;
	color: var(--prs-accent, #2f8d00);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 1px;
}

.prs-share-review-preview blockquote {
	margin: 0 0 9px;
	padding: 0;
	border: 0;
	color: var(--prs-text, #20262c);
	font-size: 16px;
	font-style: normal;
	font-weight: 650;
	line-height: 1.45;
}

.prs-share-review-preview [data-prs-share-byline] {
	color: var(--prs-muted, #6f7780);
	font-size: 13px;
	font-weight: 700;
}

.prs-share-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 9px;
	margin-bottom: 18px;
}

.prs-share-grid a {
	display: flex;
	min-width: 0;
	min-height: 78px;
	box-sizing: border-box;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 10px 6px;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 12px;
	background: #fff;
	color: var(--prs-text, #20262c);
	font-size: 11px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.prs-share-grid a b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 9px;
	background: var(--prs-soft, #f1f4f5);
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
}

.prs-share-grid a:hover,
.prs-share-grid a:focus-visible {
	border-color: var(--prs-accent, #2f8d00);
	outline: none;
	box-shadow: 0 6px 18px rgba(16, 24, 40, .08);
	transform: translateY(-1px);
}

.prs-share-copy-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 9px;
}

.prs-share-copy-row input {
	min-width: 0;
	height: 42px;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 10px;
	background: #fff;
	color: var(--prs-muted, #6f7780);
	font: inherit;
	font-size: 12px;
}

.prs-share-copy-row .prs-button {
	min-height: 42px;
	white-space: nowrap;
}

@media (max-width: 640px) {
	.prs-share-modal {
		align-items: flex-end;
		padding: 12px;
	}
	.prs-share-card {
		width: 100%;
		max-height: calc(100vh - 24px);
		padding: 20px;
		border-radius: 20px 20px 14px 14px;
	}
	.prs-share-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.prs-share-copy-row {
		grid-template-columns: minmax(0, 1fr);
	}
	.prs-share-copy-row .prs-button {
		width: 100%;
	}
}

/* 13.8.1: merchant-branded review sharing. */
.prs-share-card {
	width: min(600px, calc(100vw - 32px));
	box-shadow: inset 0 4px 0 var(--prs-accent, #48b900), 0 28px 80px rgba(16, 24, 40, .22);
}

.prs-share-head {
	align-items: flex-start;
	margin-bottom: 20px;
}

.prs-share-brand-lockup {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.prs-share-brand-logo {
	display: block;
	width: auto;
	max-width: 190px;
	height: auto;
	max-height: 54px;
	object-fit: contain;
	object-position: left center;
}

.prs-share-brand-name {
	display: block;
	max-width: 260px;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.15;
}

.prs-share-title-copy > span {
	display: block;
	margin-bottom: 3px;
	color: var(--prs-muted, #6f7780);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.prs-share-title-copy h3 {
	margin: 0;
	color: var(--prs-text, #20262c);
	font-size: 24px;
	line-height: 1.15;
}

.prs-share-review-preview {
	padding: 20px;
	border-color: color-mix(in srgb, var(--prs-accent, #48b900) 18%, var(--prs-border, #dde3e8));
	background: color-mix(in srgb, var(--prs-accent, #48b900) 4%, #fff);
}

.prs-share-review-copy-block {
	min-width: 0;
}

.prs-share-product-context {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid var(--prs-border, #dde3e8);
}

.prs-share-product-context img {
	display: block;
	width: 62px;
	height: 62px;
	padding: 4px;
	box-sizing: border-box;
	border: 1px solid var(--prs-border, #dde3e8);
	border-radius: 10px;
	background: #fff;
	object-fit: contain;
}




.prs-share-product-context > div {
	min-width: 0;
}

.prs-share-product-context span {
	display: block;
	margin-bottom: 2px;
	color: var(--prs-muted, #6f7780);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.prs-share-product-context strong {
	display: -webkit-box;
	overflow: hidden;
	color: var(--prs-text, #20262c);
	font-size: 13px;
	font-weight: 750;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.prs-share-prompt {
	margin: -2px 0 10px;
	color: var(--prs-muted, #6f7780);
	font-size: 12px;
	font-weight: 650;
	line-height: 1.4;
}

.prs-share-grid a b {
	background: color-mix(in srgb, var(--prs-accent, #48b900) 8%, #fff);
	color: var(--prs-text, #20262c);
}

.prs-share-grid a:hover b,
.prs-share-grid a:focus-visible b {
	background: color-mix(in srgb, var(--prs-accent, #48b900) 15%, #fff);
	color: var(--prs-accent-dark, var(--prs-accent, #2f8d00));
}

@media (max-width: 640px) {
	.prs-share-brand-logo {
		max-width: 160px;
		max-height: 46px;
	}
	.prs-share-title-copy h3 {
		font-size: 22px;
	}
	.prs-share-review-preview {
		padding: 17px;
	}
}

@media (max-width: 782px) {
	.prs-suite { --prs-section-bottom-space: min(var(--prs-section-bottom-space), 44px); }
	.prs-list-footer { padding-top: 15px; }
	.prs-view-more { width: 100%; max-width: 280px; }
}

/* Alpha 13.12 signed review-request context */
.prs-request-verified-note {
	border-color: #b7df9f;
	background: #f3faef;
	color: #2f6f16;
}
.prs-request-verified-note strong { margin-right: 3px; }
.prs-submission-form input[readonly] {
	background: #f7f8fa;
	color: #667085;
	cursor: default;
}

/* Alpha 13.12.7: adaptive Cloudflare Turnstile protection. */
.prs-turnstile-shell {
	width: 100%;
	min-height: 0;
	margin: 0;
	overflow: visible;
	transition: margin .16s ease;
}

.prs-turnstile-shell.is-interactive {
	margin-top: 14px;
}

.prs-turnstile-widget {
	width: 100%;
	max-width: 100%;
}

.prs-turnstile-shell iframe {
	max-width: 100%;
}
