/* Scoped public review styles; existing --crs-* tokens remain overridable. */
.crs-showcase {
	--crs-accent: #007f5b;
	--crs-accent-soft: #e9f6f0;
	--crs-card-bg: #fff;
	--crs-text: #000000;
	--crs-muted: #536071;
	--crs-border: #dce2e6;
	--crs-radius: 12px;
	--crs-shadow: none;
	--crs-gap: 16px;
	--crs-focus-ring: #005fcc;
	--crs-verification: #7950c6;
	--crs-control-border: #7d8995;
	--crs-star-size: 22px;
	display: grid;
	gap: 24px;
	width: 100%;
	max-width: var(--crs-max-width, 1280px);
	min-width: 0;
	margin: 0 auto;
	padding: 0;
	color: var(--crs-text, #000000);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: normal;
	text-align: start;
	text-transform: none;
	container-name: crs;
	container-type: inline-size;
}
.crs-showcase,
.crs-showcase *,
.crs-showcase *::before,
.crs-showcase *::after { box-sizing: border-box; }
.crs-showcase :where(h1, h2, h3, h4, h5, h6, p, form, blockquote) { margin: 0; padding: 0; }
.crs-showcase :where(button, input, select, textarea, label) {
	margin: 0;
	font-family: inherit;
	letter-spacing: normal;
	text-transform: none;
}
.crs-showcase [hidden] { display: none !important; }
.crs-showcase .crs-screen-reader-text,
.crs-showcase .crs-load-status:empty {
	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;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.crs-showcase .crs-icon {
	display: block;
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	color: inherit;
}
.crs-showcase .crs-header { display: grid; gap: 10px; min-width: 0; }
.crs-showcase .crs-title {
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: clamp(32px, 3.2vw, 46px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: normal;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-intro {
	max-width: 68ch;
	margin: 0;
	color: var(--crs-muted, #536071);
	font-size: 18px;
	line-height: 24px;
}
.crs-showcase .crs-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 32px;
	min-width: 0;
	align-items: start;
}
.crs-showcase.crs-layout-page .crs-layout { grid-template-columns: 288px minmax(0, 1fr); }
.crs-showcase.crs-layout-page.crs-no-sidebar .crs-layout { grid-template-columns: minmax(0, 1fr); }
.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
.crs-showcase .crs-sidebar,
.crs-showcase .crs-main { display: grid; min-width: 0; align-content: start; }
.crs-showcase .crs-sidebar { gap: 16px; }
.crs-showcase .crs-main { gap: 20px; }
.crs-showcase .crs-summary,
.crs-showcase .crs-card,
.crs-showcase .crs-empty-state {
	min-width: 0;
	background: var(--crs-card-bg, #fff);
	border: 1px solid var(--crs-border, #dce2e6);
	border-radius: var(--crs-radius, 12px);
	box-shadow: var(--crs-shadow, none);
}
.crs-showcase .crs-summary { display: grid; gap: 12px; padding: 20px; align-content: start; }
.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-summary {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
	gap: 16px 40px;
	padding: 24px;
	background: var(--crs-accent-soft, #e9f6f0);
}
.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-summary.crs-summary-no-breakdown { grid-template-columns: minmax(0, 1fr); }
.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-summary > .crs-verification-note { grid-column: 1 / -1; margin-top: 0; }
.crs-showcase .crs-summary-panel { display: grid; gap: 8px; min-width: 0; align-content: start; }
.crs-showcase .crs-summary-heading,
.crs-showcase .crs-summary-kicker {
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: normal;
}
.crs-showcase .crs-summary-score-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 8px;
	min-width: 0;
}
.crs-showcase .crs-summary-score,
.crs-showcase .crs-summary-value {
	color: var(--crs-text, #000000);
	font-size: 40px;
	font-weight: 700;
	line-height: 44px;
	letter-spacing: -0.045em;
	font-variant-numeric: tabular-nums;
}
.crs-showcase .crs-summary-out-of {
	color: var(--crs-muted, #536071);
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
}
.crs-showcase .crs-summary-caption,
.crs-showcase .crs-summary-note,
.crs-showcase .crs-summary-label,
.crs-showcase .crs-toolbar-note,
.crs-showcase .crs-results-meta,
.crs-showcase .crs-review-date,
.crs-showcase .crs-vote-status,
.crs-showcase .crs-pagination-end,
.crs-showcase .crs-load-status {
	margin: 0;
	color: var(--crs-muted, #536071);
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-summary-stars {
	--crs-star-size: 18px;
	display: inline-flex;
	align-items: center;
	align-self: center;
}
.crs-showcase .crs-breakdown { display: grid; gap: 4px; min-width: 0; }
.crs-showcase .crs-breakdown-row {
	display: grid;
	grid-template-columns: minmax(28px, max-content) minmax(0, 1fr) max-content;
	gap: 8px;
	min-height: 20px;
	align-items: center;
}
.crs-showcase .crs-breakdown-label,
.crs-showcase .crs-breakdown-count {
	margin: 0;
	color: var(--crs-muted, #536071);
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	font-variant-numeric: tabular-nums;
}
.crs-showcase .crs-breakdown-count { min-width: 2ch; text-align: end; }
.crs-showcase .crs-breakdown-bar {
	display: block;
	min-width: 0;
	height: 6px;
	overflow: hidden;
	background: #e5eaec;
	border-radius: 999px;
}
.crs-showcase .crs-breakdown-fill {
	display: block;
	max-width: 100%;
	height: 100%;
	background: var(--crs-accent, #007f5b);
	border-radius: inherit;
}
.crs-showcase .crs-verification-note {
	display: flex;
	gap: 8px;
	min-width: 0;
	margin: 4px 0 0;
	padding: 16px 0 0;
	align-items: flex-start;
	color: var(--crs-verification, #7950c6);
	border-top: 1px solid var(--crs-border, #dce2e6);
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-verification-note .crs-icon,
.crs-showcase .crs-verified .crs-icon { width: 18px; height: 18px; }
.crs-showcase .crs-verification-note :where(p, span) { min-width: 0; margin: 0; color: inherit; font: inherit; }
.crs-showcase .crs-rating-filter {
	display: grid;
	gap: 8px;
	min-width: 0;
	padding: 20px;
	background: #f6f7f8;
	border: 1px solid var(--crs-border, #dce2e6);
	border-radius: var(--crs-radius, 12px);
}
.crs-showcase .crs-summary .crs-rating-filter { padding: 4px 0 0; background: none; border: 0; border-radius: 0; }
.crs-showcase .crs-rating-filter label,
.crs-showcase .crs-field label,
.crs-showcase .crs-toolbar-label {
	display: block;
	margin: 0;
	color: var(--crs-text, #000000);
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}
.crs-showcase .crs-toolbar,
.crs-showcase .crs-toolbar form { min-width: 0; margin: 0; padding: 0; background: none; border: 0; }
.crs-showcase .crs-toolbar form,
.crs-showcase form.crs-toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	width: 100%;
	align-items: flex-end;
}
.crs-showcase .crs-field { display: grid; gap: 8px; min-width: 0; }
.crs-showcase .crs-field-search { flex: 1 1 256px; }
.crs-showcase .crs-field-sort { flex: 0 1 208px; }
.crs-showcase .crs-toolbar .crs-rating-filter { flex: 0 1 208px; padding: 0; background: none; border: 0; border-radius: 0; }
.crs-showcase .crs-search-wrap { position: relative; display: flex; gap: 8px; min-width: 0; align-items: center; }
.crs-showcase .crs-search-wrap > .crs-icon {
	position: absolute;
	top: 50%;
	left: 14px;
	color: var(--crs-muted, #536071);
	pointer-events: none;
	transform: translateY(-50%);
}
.crs-showcase .crs-search-input,
.crs-showcase .crs-select,
.crs-showcase .crs-rating-filter select {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 48px;
	margin: 0;
	padding: 10px 12px;
	color: var(--crs-text, #000000);
	background: var(--crs-card-bg, #fff);
	border: 1px solid var(--crs-control-border, #7d8995);
	border-radius: 8px;
	box-shadow: none;
	font-family: inherit;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}
.crs-showcase .crs-search-input { flex: 1 1 0; padding-left: 42px; }
.crs-showcase .crs-search-input::placeholder { color: var(--crs-muted, #536071); opacity: 1; }
.crs-showcase .crs-select,
.crs-showcase .crs-rating-filter select { appearance: auto; background-image: none; cursor: pointer; }
.crs-showcase .crs-action-link,
.crs-showcase .crs-search-submit,
.crs-showcase .crs-clear,
.crs-showcase .crs-helpful,
.crs-showcase .crs-view-button,
.crs-showcase .crs-chip,
.crs-showcase .crs-write-review,
.crs-showcase .crs-write-review a {
	display: inline-flex;
	gap: 8px;
	min-width: 44px;
	min-height: 44px;
	max-width: 100%;
	margin: 0;
	padding: 10px 16px;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: var(--crs-accent, #007f5b);
	border: 1px solid var(--crs-accent, #007f5b);
	border-radius: 8px;
	box-shadow: none;
	font-family: inherit;
	font-size: 16px;
	font-weight: 600;
	line-height: 22px;
	letter-spacing: normal;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	white-space: normal;
	overflow-wrap: anywhere;
	cursor: pointer;
	touch-action: manipulation;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}
.crs-showcase .crs-action-link:visited,
.crs-showcase .crs-action-link:hover,
.crs-showcase .crs-search-submit:hover { color: #fff; }
.crs-showcase .crs-action-link:hover,
.crs-showcase .crs-search-submit:hover {
	background: var(--crs-accent-hover, var(--crs-accent, #007f5b));
	border-color: var(--crs-accent-hover, var(--crs-accent, #007f5b));
}
.crs-showcase .crs-search-submit { flex: 0 0 auto; min-height: 48px; padding-inline: 14px; }
.crs-showcase .crs-action-link.is-secondary,
.crs-showcase .crs-chip {
	color: var(--crs-accent, #007f5b);
	background: var(--crs-card-bg, #fff);
	border-color: var(--crs-accent, #007f5b);
}
.crs-showcase .crs-action-link.is-secondary:hover,
.crs-showcase .crs-chip:hover,
.crs-showcase .crs-chip.is-active {
	color: var(--crs-accent, #007f5b);
	background: var(--crs-accent-soft, #e9f6f0);
}
.crs-showcase .crs-clear,
.crs-showcase .crs-write-review,
.crs-showcase .crs-write-review a {
	padding: 10px 4px;
	color: var(--crs-accent, #007f5b);
	background: none;
	border-color: transparent;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.crs-showcase .crs-clear:hover,
.crs-showcase .crs-write-review:hover,
.crs-showcase .crs-write-review a:hover { color: var(--crs-accent-hover, var(--crs-accent, #007f5b)); text-decoration-thickness: 2px; }
.crs-showcase .crs-results-header {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	min-width: 0;
	align-items: center;
	justify-content: space-between;
}
.crs-showcase .crs-results-title {
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: normal;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-results-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	align-items: center;
}
.crs-showcase .crs-view-toggle {
	display: inline-flex;
	gap: 4px;
	padding: 4px;
	background: #f5f6f8;
	border: 1px solid var(--crs-border, #dce2e6);
	border-radius: 10px;
}
.crs-showcase .crs-view-button {
	gap: 6px;
	padding: 8px 12px;
	color: var(--crs-muted, #536071);
	background: transparent;
	border-color: transparent;
	border-radius: 6px;
	font-size: 14px;
	line-height: 20px;
}
.crs-showcase .crs-view-button:hover { background: #fff; color: var(--crs-text, #000000); }
.crs-showcase .crs-view-button[aria-pressed="true"] {
	color: var(--crs-accent, #007f5b);
	background: var(--crs-card-bg, #fff);
	border-color: var(--crs-accent, #007f5b);
}
.crs-showcase .crs-view-button .crs-icon { width: 18px; height: 18px; }
.crs-showcase .crs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 288px), 1fr));
	gap: var(--crs-gap, 16px);
	min-width: 0;
	align-items: start;
}
.crs-showcase.crs-layout-page .crs-grid { grid-template-columns: minmax(0, 1fr); }
.crs-showcase.crs-layout-page[data-crs-view="grid"] .crs-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}
.crs-showcase.crs-layout-page[data-crs-view="grid"] .crs-card-header { flex-direction: column; align-items: flex-start; }
.crs-showcase.crs-layout-page[data-crs-view="grid"] .crs-reviewer-group { flex-basis: auto; width: 100%; }
.crs-showcase .crs-card {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 24px;
	align-content: start;
	align-self: start;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-card-header,
.crs-showcase .crs-card-top {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	min-width: 0;
	align-items: flex-start;
	justify-content: space-between;
}
.crs-showcase .crs-reviewer-group {
	display: flex;
	flex: 1 1 256px;
	gap: 16px;
	min-width: 0;
	align-items: center;
}
.crs-showcase .crs-avatar {
	display: inline-flex;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--crs-text, #000000);
	background: var(--crs-accent-soft, #e9f6f0);
	border: 0;
	border-radius: 50%;
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	letter-spacing: -0.025em;
	text-transform: uppercase;
}
.crs-showcase .crs-reviewer-meta {
	display: flex;
	flex: 1 1 0;
	flex-wrap: wrap;
	gap: 4px 12px;
	min-width: 0;
	align-items: center;
}
.crs-showcase .crs-reviewer {
	max-width: 100%;
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	letter-spacing: -0.015em;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-verified {
	display: inline-flex;
	gap: 6px;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
	align-items: center;
	color: var(--crs-verification, #7950c6);
	background: none;
	border: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-review-date { flex-basis: 100%; }
.crs-showcase .crs-card-rating {
	display: inline-flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	gap: 8px;
	max-width: 100%;
	margin-top: 2px;
	align-items: center;
}
.crs-showcase .crs-card-rating-value {
	color: var(--crs-muted, #536071);
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}
.crs-showcase .crs-review-text {
	max-width: 74ch;
	min-width: 0;
	margin: 0;
	padding: 0;
	color: var(--crs-review-color, #536071);
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
	overflow-wrap: anywhere;
}
.crs-showcase .crs-review-text > * { max-width: 100%; margin: 0 0 12px; font: inherit; }
.crs-showcase .crs-review-text > :last-child { margin-bottom: 0; }
/* Fixed-size SVGs are cropped by the fractional fill, never scaled to it. */
.crs-showcase .crs-stars {
	display: inline-flex;
	flex: 0 0 auto;
	gap: 3px;
	max-width: 100%;
	line-height: 1;
	vertical-align: middle;
}
.crs-showcase .crs-star {
	position: relative;
	display: block;
	flex: 0 0 var(--crs-star-size, 22px);
	width: var(--crs-star-size, 22px);
	height: var(--crs-star-size, 22px);
	overflow: hidden;
	color: #fff;
	background: var(--crs-star-empty, #82948b);
	border: 0;
	border-radius: 0;
}
.crs-showcase .crs-star-base,
.crs-showcase .crs-star-fill { display: block; height: 100%; color: #fff; }
.crs-showcase .crs-star-base { width: 100%; }
.crs-showcase .crs-star-fill {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	overflow: hidden;
	background: var(--crs-accent, #007f5b);
}
.crs-showcase .crs-star-base svg,
.crs-showcase .crs-star-fill svg {
	display: block;
	width: var(--crs-star-size, 22px);
	min-width: var(--crs-star-size, 22px);
	max-width: none;
	height: var(--crs-star-size, 22px);
	padding: 2px;
	fill: currentColor;
}
.crs-showcase .crs-card-footer {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	min-width: 0;
	align-items: center;
}
.crs-showcase .crs-helpful {
	padding: 10px 8px;
	color: var(--crs-muted, #536071);
	background: none;
	border-color: transparent;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}
.crs-showcase .crs-helpful:hover {
	color: var(--crs-accent, #007f5b);
	background: var(--crs-accent-soft, #e9f6f0);
}
.crs-showcase .crs-helpful[aria-pressed="true"] {
	color: var(--crs-accent, #007f5b);
	background: var(--crs-accent-soft, #e9f6f0);
	border-color: var(--crs-accent, #007f5b);
	font-weight: 600;
}
.crs-showcase .crs-helpful-count { font-variant-numeric: tabular-nums; }
.crs-showcase .crs-vote-status { flex-basis: 100%; }
.crs-showcase .crs-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	min-width: 0;
	margin: 4px 0 0;
	align-items: center;
	justify-content: center;
}
.crs-showcase .crs-pagination .crs-action-link { min-width: min(100%, 216px); }
.crs-showcase .crs-load-status { flex-basis: 100%; text-align: center; }
.crs-showcase .crs-empty-state {
	display: grid;
	gap: 12px;
	min-height: 200px;
	padding: 32px;
	align-content: center;
	justify-items: center;
	text-align: center;
}
.crs-showcase .crs-empty-title {
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: 22px;
	font-weight: 700;
	line-height: 28px;
	letter-spacing: normal;
}
.crs-showcase .crs-empty-copy {
	max-width: 56ch;
	margin: 0;
	color: var(--crs-muted, #536071);
	font-size: 16px;
	line-height: 24px;
}
.crs-showcase .crs-empty-actions { margin: 0; }
.crs-showcase .crs-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
	min-width: 0;
	margin: 8px 0 0;
	padding: 24px 32px;
	align-items: center;
	justify-content: space-between;
	background: var(--crs-accent-soft, #e9f6f0);
	border: 0;
	border-radius: var(--crs-radius, 12px);
}
.crs-showcase .crs-cta-copy { display: grid; flex: 1 1 288px; gap: 4px; min-width: 0; }
.crs-showcase .crs-cta-copy :where(h2, h3, h4) {
	margin: 0;
	color: var(--crs-text, #000000);
	font-family: inherit;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: normal;
}
.crs-showcase .crs-cta-copy p { margin: 0; color: var(--crs-muted, #536071); font-size: 16px; line-height: 24px; }
.crs-showcase .crs-cta .crs-action-link { flex: 0 1 auto; min-height: 48px; padding: 12px 24px; }
/* Existing grid embeds retain a full-width summary and responsive card columns. */
.crs-showcase:not(.crs-layout-page) .crs-summary {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
	gap: 20px 32px;
}
.crs-showcase:not(.crs-layout-page) .crs-summary > .crs-verification-note { grid-column: 1 / -1; }
.crs-showcase:not(.crs-layout-page) .crs-summary > .crs-rating-filter { grid-column: 1 / -1; width: 100%; max-width: 288px; }
.crs-showcase:not(.crs-layout-page) .crs-card-header { flex-direction: column; align-items: flex-start; }
.crs-showcase:not(.crs-layout-page) .crs-reviewer-group { flex-basis: auto; width: 100%; }
.crs-showcase .crs-toolbar-groups,
.crs-showcase .crs-chip-group { display: flex; flex-wrap: wrap; gap: 8px; }
.crs-showcase .crs-toolbar-groups { gap: 16px; }
.crs-showcase .crs-toolbar-group { display: grid; gap: 8px; min-width: 0; }
.crs-showcase :is(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--crs-focus-ring, #005fcc);
	outline-offset: 3px;
	box-shadow: none;
}
.crs-showcase :is(button, input, select):disabled,
.crs-showcase [aria-disabled="true"] { opacity: 0.65; cursor: not-allowed; }
.crs-showcase [aria-busy="true"] .crs-helpful,
.crs-showcase .crs-helpful[aria-busy="true"],
.crs-showcase .crs-action-link[aria-busy="true"] { cursor: progress; }
@media (max-width: 960px) {
	.crs-showcase.crs-layout-page .crs-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
/* A narrow theme column also stacks when the browser window is wide. */
@container crs (max-width: 880px) {
	.crs-showcase.crs-layout-page .crs-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 600px) {
	.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-summary { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 20px; }
	.crs-showcase .crs-toolbar form,
	.crs-showcase form.crs-toolbar { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
	.crs-showcase .crs-clear { justify-self: start; }
	.crs-showcase .crs-card { padding: 20px; }
	.crs-showcase .crs-reviewer-group { flex-basis: 100%; }
	.crs-showcase .crs-cta { padding: 24px; }
	.crs-showcase .crs-cta .crs-action-link { width: 100%; }
}
@container crs (max-width: 520px) {
	.crs-showcase.crs-layout-page.crs-page-columns-1 .crs-summary { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 20px; }
	.crs-showcase .crs-toolbar form,
	.crs-showcase form.crs-toolbar { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
	.crs-showcase .crs-clear { justify-self: start; }
	.crs-showcase .crs-card { padding: 20px; }
	.crs-showcase .crs-reviewer-group { flex-basis: 100%; }
	.crs-showcase .crs-cta { padding: 24px; }
	.crs-showcase .crs-cta .crs-action-link { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.crs-showcase *,
	.crs-showcase *::before,
	.crs-showcase *::after { transition: none; animation: none; scroll-behavior: auto; }
}
@media (forced-colors: active) {
	.crs-showcase .crs-star { outline: 1px solid CanvasText; outline-offset: -1px; }
	.crs-showcase .crs-star-base { color: GrayText; }
	.crs-showcase .crs-star-fill { color: HighlightText; background: Highlight; forced-color-adjust: none; }
	.crs-showcase .crs-breakdown-bar { outline: 1px solid CanvasText; }
	.crs-showcase .crs-breakdown-fill { background: Highlight; forced-color-adjust: none; }
	.crs-showcase .crs-helpful[aria-pressed="true"],
	.crs-showcase .crs-view-button[aria-pressed="true"] {
		color: HighlightText;
		background: Highlight;
		border-color: Highlight;
		forced-color-adjust: none;
	}
}

/* Standalone sidebar shortcode; intentionally independent of .crs-showcase. */
.crs-compact-sidebar {
	--crs-sidebar-purple: var(--crs-verification, #7950c6);
	--crs-sidebar-soft: #f3effc;
	--crs-sidebar-border: #e5ddf7;
	--crs-sidebar-text: #000000;
	--crs-sidebar-muted: #626574;
	--crs-sidebar-star: #e5a11a;
	--crs-sidebar-star-outline: #9d6500;
	--crs-sidebar-star-size: 24px;
	display: grid;
	gap: 16px;
	width: 100%;
	max-width: 420px;
	min-width: 0;
	margin: 0;
	padding: 24px;
	color: var(--crs-sidebar-text, #000000);
	background: #fff;
	border: 1px solid var(--crs-sidebar-border, #e5ddf7);
	border-radius: 24px;
	box-shadow: 0 2px 12px rgba(121, 80, 198, 0.06);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: normal;
	text-align: start;
	text-transform: none;
	container-name: crs-compact-sidebar;
	container-type: inline-size;
}
.crs-compact-sidebar,
.crs-compact-sidebar *,
.crs-compact-sidebar *::before,
.crs-compact-sidebar *::after { box-sizing: border-box; }
.crs-compact-sidebar .crs-compact-sidebar__title {
	margin: 0;
	padding: 0;
	color: var(--crs-sidebar-text, #000000);
	font-family: inherit;
	font-size: 26px;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: normal;
	overflow-wrap: anywhere;
}
.crs-compact-sidebar .crs-compact-sidebar__summary {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	min-width: 0;
	align-items: center;
}
.crs-compact-sidebar .crs-compact-sidebar__score {
	display: flex;
	flex: 0 0 auto;
	gap: 6px;
	margin: 0;
	align-items: baseline;
	color: var(--crs-sidebar-text, #000000);
	font-size: 52px;
	font-weight: 700;
	line-height: 56px;
	letter-spacing: -0.045em;
	font-variant-numeric: tabular-nums;
}
.crs-compact-sidebar .crs-compact-sidebar__score strong { font: inherit; }
.crs-compact-sidebar .crs-compact-sidebar__denominator {
	color: var(--crs-sidebar-muted, #626574);
	font-size: 24px;
	font-weight: 600;
	line-height: 30px;
	letter-spacing: -0.02em;
}
.crs-compact-sidebar .crs-compact-sidebar__rating {
	display: grid;
	flex: 1 1 132px;
	gap: 4px;
	min-width: 0;
	align-content: center;
	justify-items: start;
}
.crs-compact-sidebar .crs-compact-sidebar__count,
.crs-compact-sidebar .crs-compact-sidebar__footer,
.crs-compact-sidebar .crs-compact-sidebar__empty {
	margin: 0;
	padding: 0;
	color: var(--crs-sidebar-muted, #626574);
	font-family: inherit;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow-wrap: anywhere;
}
.crs-compact-sidebar .crs-compact-sidebar__review {
	display: grid;
	gap: 12px;
	min-width: 0;
	margin: 0;
	padding: 16px 0 0;
	border-top: 1px solid var(--crs-sidebar-border, #e5ddf7);
}
.crs-compact-sidebar .crs-compact-sidebar__quote {
	min-width: 0;
	margin: 0;
	padding: 0;
	color: var(--crs-sidebar-quote, #536071);
	background: none;
	border: 0;
	font-family: inherit;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	quotes: "“" "”" "‘" "’";
	overflow-wrap: anywhere;
}
.crs-compact-sidebar .crs-compact-sidebar__quote p {
	margin: 0 0 10px;
	padding: 0;
	color: inherit;
	font: inherit;
}
.crs-compact-sidebar .crs-compact-sidebar__quote p:last-child { margin-bottom: 0; }
.crs-compact-sidebar .crs-compact-sidebar__quote p:first-child::before { content: open-quote; }
.crs-compact-sidebar .crs-compact-sidebar__quote p:last-child::after { content: close-quote; }
.crs-compact-sidebar .crs-compact-sidebar__reviewer {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	min-width: 0;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: space-between;
}
.crs-compact-sidebar .crs-compact-sidebar__name {
	min-width: 0;
	margin: 0;
	color: var(--crs-sidebar-text, #000000);
	font-family: inherit;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px;
	overflow-wrap: anywhere;
}
.crs-compact-sidebar .crs-compact-sidebar__verified {
	display: inline-flex;
	gap: 6px;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	padding: 6px 8px;
	align-items: center;
	color: var(--crs-sidebar-purple, #7950c6);
	background: var(--crs-sidebar-soft, #f3effc);
	border: 0;
	border-radius: 8px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow-wrap: anywhere;
}
.crs-compact-sidebar .crs-compact-sidebar__verified svg {
	display: block;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	color: inherit;
}
.crs-compact-sidebar .crs-compact-sidebar__cta {
	display: flex;
	gap: 8px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 48px;
	margin: 0;
	padding: 11px 12px;
	align-items: center;
	justify-content: center;
	color: var(--crs-sidebar-purple, #7950c6);
	background: var(--crs-sidebar-soft, #f3effc);
	border: 1px solid var(--crs-sidebar-purple, #7950c6);
	border-radius: 10px;
	box-shadow: none;
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	letter-spacing: normal;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	white-space: normal;
	overflow-wrap: anywhere;
	touch-action: manipulation;
}
.crs-compact-sidebar .crs-compact-sidebar__cta:visited { color: var(--crs-sidebar-purple, #7950c6); }
.crs-compact-sidebar .crs-compact-sidebar__cta:hover {
	color: var(--crs-sidebar-purple, #7950c6);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.crs-compact-sidebar .crs-compact-sidebar__cta > [aria-hidden="true"] {
	flex: 0 0 auto;
	font-size: 24px;
	line-height: 24px;
}
.crs-compact-sidebar .crs-compact-sidebar__cta:focus-visible {
	outline: 3px solid var(--crs-focus-ring, #005fcc);
	outline-offset: 3px;
}
.crs-compact-sidebar .crs-compact-sidebar__footer {
	margin-top: -8px;
	text-align: center;
}
.crs-compact-sidebar .crs-compact-sidebar__empty { font-size: 16px; line-height: 24px; }
/* Gold star silhouettes match the compact reference rather than the page tiles. */
.crs-compact-sidebar .crs-stars {
	display: inline-flex;
	flex: 0 0 auto;
	gap: 3px;
	max-width: 100%;
	line-height: 1;
	vertical-align: middle;
}
.crs-compact-sidebar .crs-star {
	position: relative;
	display: block;
	flex: 0 0 var(--crs-sidebar-star-size, 24px);
	width: var(--crs-sidebar-star-size, 24px);
	height: var(--crs-sidebar-star-size, 24px);
	overflow: hidden;
	background: none;
	border: 0;
}
.crs-compact-sidebar .crs-star-base,
.crs-compact-sidebar .crs-star-fill { display: block; height: 100%; }
.crs-compact-sidebar .crs-star-base { width: 100%; color: #dedbe4; }
.crs-compact-sidebar .crs-star-fill {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	overflow: hidden;
	color: var(--crs-sidebar-star, #e5a11a);
	background: none;
}
.crs-compact-sidebar .crs-star-base svg,
.crs-compact-sidebar .crs-star-fill svg {
	display: block;
	width: var(--crs-sidebar-star-size, 24px);
	min-width: var(--crs-sidebar-star-size, 24px);
	max-width: none;
	height: var(--crs-sidebar-star-size, 24px);
	padding: 0;
	fill: currentColor;
	stroke: #8d8794;
	stroke-width: 0.6;
	stroke-linejoin: round;
}
.crs-compact-sidebar .crs-star-fill svg { stroke: var(--crs-sidebar-star-outline, #9d6500); }
@container crs-compact-sidebar (max-width: 300px) {
	.crs-compact-sidebar .crs-compact-sidebar__title { font-size: 24px; line-height: 30px; }
	.crs-compact-sidebar .crs-compact-sidebar__summary { column-gap: 12px; }
	.crs-compact-sidebar .crs-compact-sidebar__score { font-size: 48px; line-height: 52px; }
	.crs-compact-sidebar .crs-compact-sidebar__rating { --crs-sidebar-star-size: 22px; flex-basis: 122px; }
}
@media (forced-colors: active) {
	.crs-compact-sidebar .crs-star-base { color: GrayText; }
	.crs-compact-sidebar .crs-star-fill { color: CanvasText; }
	.crs-compact-sidebar .crs-star-base svg,
	.crs-compact-sidebar .crs-star-fill svg { stroke: currentColor; }
	.crs-compact-sidebar .crs-compact-sidebar__cta { border-color: LinkText; }
}
