/* Product page reviews — CusRev [cusrev_all_reviews] in the "Custom product page" blocks (2026-11-08).
   Same look as the customer reviews page (reviews-page.css): summary card, teal bars,
   chips, review cards. Loaded on product pages only (functions.php). Tokens come from
   Additional CSS. "html body" prefix: CusRev's own rules are long selectors. */

html body .cr-all-reviews-shortcode {
	--rv-ink: var(--gg-ink, #073a40);
	--rv-deep: var(--gg-teal-deep, #187280);
	--rv-muted: var(--muted-text, #6b6b6b);
	--rv-line: var(--line-card, rgba(7, 58, 64, .14));
	--rv-soft: var(--line-soft, #ececec);
	--rv-star: #f5a400;
	color: var(--rv-ink);
}
html body .cr-all-reviews-shortcode button:focus-visible,
html body .cr-all-reviews-shortcode a:focus-visible,
html body .cr-all-reviews-shortcode [tabindex]:focus-visible,
html body .cr-all-reviews-shortcode select:focus-visible,
html body .cr-all-reviews-shortcode input:focus-visible { outline: 2px solid var(--rv-deep); outline-offset: 2px; }

/* Stars: one gold, quiet empty outline */
html body .cr-all-reviews-shortcode .crstar-rating-svg .cr-rating-icon-base .cr-rating-icon-bg { stroke: #c9d3d3; }
html body .cr-all-reviews-shortcode .crstar-rating-svg .cr-rating-icon-frnt .cr-rating-icon { fill: var(--rv-star); stroke: var(--rv-star); }

/* ---- Summary card: score | bars | add review ----
   CusRev lays this out with flex, 35% widths and divider elements under long
   selectors (.cr-summaryBox-wrap.cr-summaryBox-add-review …), so the layout
   properties here are !important. */
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap {
	display: grid !important;
	grid-template-columns: 200px minmax(0, 1fr) auto;
	gap: 24px 40px;
	align-items: center;
	margin: 0 0 28px !important;
	padding: 24px 28px !important;
	background: #fff !important;
	border: 1px solid var(--rv-line);
	border-radius: var(--card-radius, 12px);
	box-shadow: var(--shadow-card, none);
}
html body .cr-all-reviews-shortcode.cr-all-reviews-new-review .cr-summaryBox-wrap { display: none !important; }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-summary-separator,
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-summary-separator-side { display: none !important; }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-overall-rating-wrap,
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .ivole-summaryBox,
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-add-review-wrap {
	width: auto !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-overall-rating-wrap { display: flex !important; flex-direction: column; align-items: flex-start !important; gap: 6px; text-align: left; }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-average-rating { margin: 0; line-height: 1; }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-average-rating span { font-size: 56px; font-weight: 700; line-height: 1; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-average-rating-stars { margin: 0; }
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-total-rating-count { margin: 0; font-size: 14px; line-height: 1.4; color: var(--rv-muted); }

/* Bars: CusRev's own flex rows, with fixed label and percentage columns */
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .ivole-summaryBox { max-width: 560px !important; background: none; border: 0; }
html body .cr-all-reviews-shortcode .cr-histogramTable { display: flex; flex-direction: column; gap: 2px; width: 100% !important; max-width: none !important; margin: 0; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 4px 8px;
	margin: 0 -8px;
	border-radius: 6px;
	cursor: pointer;
}
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow:hover { background: #f4f9fa; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell1,
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell2,
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell3 { padding: 0 !important; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell1 { flex: 0 0 34px; min-width: 34px; width: auto; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell2 { flex: 1 1 0; width: auto; min-width: 80px; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell3 { flex: 0 0 44px; min-width: 44px; width: auto; text-align: right; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .cr-histogram-a { color: var(--rv-ink); font-size: 14px; text-decoration: none; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .cr-histogram-rating-label { justify-content: flex-start; gap: 4px; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .cr-histogram-rating-label svg { width: 14px; height: 14px; fill: var(--rv-star); stroke: var(--rv-star); }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow .ivole-histogramCell3 .cr-histogram-a { display: block; color: var(--rv-muted); font-variant-numeric: tabular-nums; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow.ivole-histogramRow-s { background: #eef8f9; }
html body .cr-all-reviews-shortcode .cr-histogramTable .ivole-histogramRow.ivole-histogramRow-s .cr-histogram-a { font-weight: 700; }
html body .cr-all-reviews-shortcode .ivole-meter {
	height: 8px;
	margin: 0;
	padding: 0;
	background: #e3ebeb;
	border: 0;
	border-radius: 4px;
	box-shadow: none;
	overflow: hidden;
}
html body .cr-all-reviews-shortcode .ivole-meter .ivole-meter-bar {
	height: 100%;
	min-width: 2px;
	font-size: 0;
	color: transparent;
	background: var(--gg-teal, #1eadbd);
	border-radius: 4px;
	box-shadow: none;
}
html body .cr-all-reviews-shortcode .ivole-meter .ivole-meter-bar::before { display: none; }

html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-add-review-wrap .cr-all-reviews-add-review {
	height: auto;
	min-height: 44px;
	margin: 0;
	padding: 10px 22px;
	background-color: var(--rv-deep);
	border-radius: var(--border-radius, 10px);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	white-space: nowrap;
}
html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-add-review-wrap .cr-all-reviews-add-review:hover { background-color: var(--rv-ink); }

/* ---- Customer photos strip ---- */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-div { margin: 0 0 24px; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-title {
	margin: 0 0 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--rv-ink);
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-div2 {
	display: flex;
	gap: 10px;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-div2::-webkit-scrollbar { display: none; }
html body .cr-all-reviews-shortcode .cr-comment-image-top { flex: 0 0 112px; width: 112px; height: 112px; margin: 0; border: 0; border-radius: 10px; overflow: hidden; }
html body .cr-all-reviews-shortcode .cr-comment-image-top img,
html body .cr-all-reviews-shortcode .cr-comment-image-top video { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; }

/* ---- Search and photo filter ---- */
html body .cr-all-reviews-shortcode .cr-ajax-search { display: flex; gap: 8px; margin: 0 0 14px; }
html body .cr-all-reviews-shortcode .cr-ajax-search > div { flex: 1 1 auto; position: relative; }
html body .cr-all-reviews-shortcode .cr-ajax-search input.cr-input-text {
	height: 44px;
	margin: 0;
	padding-left: 38px;
	background-color: #fff;
	border: 1px solid var(--rv-line) !important; /* CusRev sets these with a longer selector */
	border-radius: var(--border-radius, 10px) !important;
	box-shadow: none;
	font-size: 15px;
	color: var(--rv-ink);
}
html body .cr-all-reviews-shortcode .cr-ajax-search input.cr-input-text:focus { border-color: var(--rv-deep) !important; }
html body .cr-all-reviews-shortcode .cr-ajax-search button.cr-button-search {
	height: 44px;
	margin: 0;
	padding: 0 20px;
	background: #fff;
	border: 1px solid var(--rv-deep);
	border-radius: var(--border-radius, 10px);
	color: var(--rv-deep);
	font-size: 15px;
	font-weight: 600;
	text-transform: none;
}
html body .cr-all-reviews-shortcode .cr-ajax-search button.cr-button-search:hover { background: var(--rv-deep); color: #fff; }

html body .cr-all-reviews-shortcode .cr-review-tags-filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; }
html body .cr-all-reviews-shortcode .cr-review-tags-filter .cr-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 36px;
	margin: 0;
	padding: 6px 14px;
	background: #fff;
	border: 1px solid var(--rv-line);
	border-radius: 999px;
	color: var(--rv-ink);
	font-size: 14px;
	line-height: 1.25;
	cursor: pointer;
}
html body .cr-all-reviews-shortcode .cr-review-tags-filter .cr-tag:hover { border-color: var(--rv-deep); }
html body .cr-all-reviews-shortcode .cr-review-tags-filter .cr-tag svg { width: 16px; height: 16px; }
html body .cr-all-reviews-shortcode .cr-review-tags-filter .cr-tag.cr-tag-selected { background: var(--rv-deep); border-color: var(--rv-deep); color: #fff; }
html body .cr-all-reviews-shortcode .cr-review-tags-filter .cr-tag.cr-tag-selected svg { color: #fff; fill: currentColor; }

/* ---- Count and sort row ---- */
html body .cr-all-reviews-shortcode .cr-count-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 16px;
	margin: 0 0 18px;
	padding: 12px 0 14px;
	background: none;
	border-bottom: 1px solid var(--rv-soft);
}
html body .cr-all-reviews-shortcode .cr-count-row-count { font-size: 14px; color: var(--rv-muted); }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-sort-div select.cr-ajax-reviews-sort {
	height: 38px;
	margin: 0;
	padding: 0 34px 0 12px;
	background-color: #fff;
	border: 1px solid var(--rv-line);
	border-radius: 999px;
	box-shadow: none;
	color: var(--rv-ink);
	font-size: 14px;
	font-weight: 600;
}

/* ---- Review cards ---- */
html body .cr-all-reviews-shortcode ol.commentlist {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
html body .cr-all-reviews-shortcode ol.commentlist > li.review {
	display: flex;
	margin: 0;
	padding: 0;
	border: 0;
}
/* CusRev's empty spinner row sits after the first page and broke the grid; the button has its own spinner */
html body .cr-all-reviews-shortcode ol.commentlist > li.cr-pagination-review-spinner-li { display: none !important; }
html body .cr-all-reviews-shortcode ol.commentlist li .comment_container {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
	padding: 18px 20px;
	background: #fff;
	border: 1px solid var(--rv-line);
	border-radius: var(--card-radius, 12px);
	box-shadow: var(--shadow-card, none);
}
/* No avatars (same as the reviews page); CusRev prints two copies */
html body .cr-all-reviews-shortcode ol.commentlist li .comment_container > img.avatar,
html body .cr-all-reviews-shortcode ol.commentlist li .comment_container > img.cr-std-avatar { display: none; }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	border: 0;
}
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .meta {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	margin: 0;
	font-size: 14px;
}
html body .cr-all-reviews-shortcode .cr-meta-author-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .meta .woocommerce-review__author { font-size: 15px; font-weight: 600; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .meta .woocommerce-review__verified { font-size: 12px; font-style: normal; color: var(--rv-deep); white-space: nowrap; }
html body .cr-all-reviews-shortcode .woocommerce-review__verified::before { content: "✓ "; }
html body .cr-all-reviews-shortcode .woocommerce-review__published-date { font-size: 13px; color: var(--rv-muted); white-space: nowrap; }
html body .cr-all-reviews-shortcode .cr-rating-product-name { display: flex; align-items: center; margin: 0; }
/* The list is for the product you are on: no product name or picture on each review */
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .cr-rating-product-name .cr-product-name-picture { display: none; }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .description { margin: 0; font-size: 15px; font-style: normal; line-height: 1.55; color: var(--rv-ink); overflow-wrap: anywhere; }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-text .description p { font-style: normal; }
html body .cr-all-reviews-shortcode ol.commentlist li .description p { margin: 0 0 .6em; }
html body .cr-all-reviews-shortcode ol.commentlist li .description p:last-child { margin-bottom: 0; }
/* Review photos */
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-images,
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-videos { display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 0; }
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-images img,
html body .cr-all-reviews-shortcode ol.commentlist li .cr-comment-image img { width: 72px; height: 72px; object-fit: cover; border-radius: 8px; }
/* Helpful votes and replies: quiet footer */
html body .cr-all-reviews-shortcode ol.commentlist li .cr-voting-cont,
html body .cr-all-reviews-shortcode ol.commentlist li .cr-voting-cont-uni { margin-top: auto; padding-top: 10px; border-top: 1px solid var(--rv-soft); font-size: 13px; color: var(--rv-muted); }

/* ---- Show more ---- */
html body .cr-all-reviews-shortcode .cr-show-more-button {
	height: auto;
	min-height: 44px;
	margin: 24px auto 0;
	padding: 10px 24px;
	background: var(--rv-deep);
	border: 0;
	border-radius: var(--border-radius, 10px);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
}
html body .cr-all-reviews-shortcode .cr-show-more-button:hover { background: var(--rv-ink); color: #fff; }

/* ---- Add review form (opens from "Lisa hinnang") ----
   Selectors mirror CusRev's (.cr-review-form-wrap .cr-review-form-buttons …) plus "html body". */
html body .cr-all-reviews-shortcode.cr-all-reviews-new-review .cr-review-form-wrap {
	max-width: 720px;
	margin: 0 auto 28px;
	padding: 8px 32px 32px;
	background: #fff;
	border: 1px solid var(--rv-line);
	border-radius: var(--card-radius, 12px);
	box-shadow: var(--shadow-card, none);
	color: var(--rv-ink);
}
/* Header: back + title, close */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 -32px 8px;
	padding: 12px 20px;
	border-top: 0;
	border-bottom: 1px solid var(--rv-soft);
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav .cr-nav-left span { font-size: 17px; font-weight: 700; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav .cr-nav-left svg,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav .cr-nav-right svg { color: var(--rv-ink); fill: var(--rv-ink); }
/* Product */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-item {
	align-items: center;
	gap: 14px;
	max-width: none;
	margin: 0;
	padding: 18px 0;
	border-bottom: 1px solid var(--rv-soft);
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-item img { width: 56px; height: 56px; margin: 0; object-fit: contain; border-radius: 8px; background: #f4f8f9; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-item span { margin: 0; font-size: 16px; font-weight: 600; line-height: 1.35; color: var(--rv-ink); }
/* Rating */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating { max-width: none; margin: 0; padding: 22px 0 18px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating-overall .cr-review-form-rating-label { margin: 0 0 8px; font-size: 14px; font-weight: 600; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont { gap: 6px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner svg { width: 34px; height: 34px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner .cr-rating-deact,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner .cr-rating-deact path { color: #d3dcdc; fill: #d3dcdc; stroke: #d3dcdc; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner .cr-rating-act,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner .cr-rating-act path { color: var(--rv-star); fill: var(--rv-star); stroke: var(--rv-star); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-nbr { margin-left: 8px; font-size: 14px; color: var(--rv-muted); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont:focus-visible { outline: 2px solid var(--rv-deep); outline-offset: 4px; border-radius: 6px; }
/* Fields: comment, name, e-mail */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-comment,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne { max-width: none; margin: 0 0 16px; padding: 0; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-comment .cr-review-form-lbl,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne .cr-review-form-lbl { left: 12px; padding: 0 6px; font-size: 13px; font-weight: 600; color: var(--rv-ink); background: #fff; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-comment .cr-review-form-comment-txt,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne .cr-review-form-txt {
	min-height: 46px;
	padding: 12px 14px;
	background: #fff;
	border: 1px solid var(--rv-line);
	border-radius: var(--border-radius, 10px);
	box-shadow: none;
	font-size: 15px;
	color: var(--rv-ink);
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-comment .cr-review-form-comment-txt { min-height: 130px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-comment .cr-review-form-comment-txt:focus,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne .cr-review-form-txt:focus { border-color: var(--rv-deep); outline: none; box-shadow: 0 0 0 3px rgba(24, 114, 128, .15); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-error .cr-review-form-comment-txt,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-error .cr-review-form-txt { border-color: #c62828; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-field-error { font-size: 13px; color: #c62828; }
/* Photo and video upload */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media { max-width: none; margin: 0 0 20px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media-none {
	padding: 18px;
	gap: 14px;
	background: #f9fbfb;
	border: 1px dashed rgba(7, 58, 64, .28);
	border-radius: var(--border-radius, 10px);
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media-none:hover { border-color: var(--rv-deep); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media-none .cr-form-item-media-icon { width: 48px; height: 48px; padding: 10px; fill: var(--rv-deep); background: #fff; border: 1px solid var(--rv-line); border-radius: 8px; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media-none span { margin-left: 4px; font-size: 14px; line-height: 1.45; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-form-item-media-preview .cr-form-item-media-add { color: var(--rv-deep); border: 1px dashed rgba(7, 58, 64, .28); border-radius: 10px; }
/* Buttons */
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-buttons { display: flex; gap: 12px; max-width: none; margin: 0; }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-buttons .cr-review-form-submit,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-res .cr-review-form-result .cr-review-form-continue,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-not-logged-in .cr-review-form-continue {
	flex: 1 1 0;
	min-height: 46px;
	margin: 0;
	background: var(--rv-deep);
	border: 0;
	border-radius: var(--border-radius, 10px);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	text-transform: none;
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-buttons .cr-review-form-submit:hover,
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-res .cr-review-form-result .cr-review-form-continue:hover { background: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-buttons .cr-review-form-cancel {
	flex: 1 1 0;
	min-height: 46px;
	margin: 0;
	background: #fff;
	border: 1px solid var(--rv-deep);
	border-radius: var(--border-radius, 10px);
	color: var(--rv-deep);
	font-size: 15px;
	font-weight: 600;
	text-transform: none;
}
html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-buttons .cr-review-form-cancel:hover { background: #eef8f9; }

@media (max-width: 549px) {
	html body .cr-all-reviews-shortcode.cr-all-reviews-new-review .cr-review-form-wrap { padding: 4px 18px 22px; }
	html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav { margin: 0 -18px 4px; padding: 10px 14px; }
	html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-rating .cr-review-form-rating-cont .cr-review-form-rating-inner svg { width: 32px; height: 32px; }
	/* Name and e-mail stacked: side by side they were 129px each */
	html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne { display: flex; flex-direction: column; gap: 16px; }
	html body .cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-ne > div { width: 100% !important; max-width: none; margin: 0 !important; }
}

/* ---- Photo popup (CusRev modal with Slick sliders) ---- */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal-cont {
	background: rgba(7, 58, 64, .72) !important;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal {
	display: flex !important;
	flex-direction: column;
	width: min(940px, 94vw) !important;
	max-height: 92vh;
	padding: 0 !important;
	overflow: hidden !important;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 24px 60px rgba(0, 0, 0, .35);
}
/* No grey header bar: a round close button over the photo */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal div.cr-ajax-reviews-cus-images-hdr {
	position: relative;
	height: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	z-index: 5;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal button.cr-ajax-reviews-cus-images-close {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #fff !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .18);
	cursor: pointer;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal button.cr-ajax-reviews-cus-images-close svg { width: 14px !important; height: 14px !important; opacity: 1 !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-close .cr-no-icon { fill: var(--rv-ink) !important; }

/* The popup sliders share .cr-reviews-slider with the homepage review slider, whose
   phone "peek" padding (Additional CSS 21b) would narrow every photo slide */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .slick-list { padding: 0 !important; }
/* …and its equal-height cards (flex track, height:auto !important) would stretch every photo slide to the tallest */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .slick-track { display: block !important; }
/* Fade mode places slides side by side and shifts each back with left:-n×width, so they must float */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .slick-slide { display: block !important; float: left !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .slick-slide > div { display: block !important; }

/* Photo and review scroll inside the popup; only the current slide takes height
   (Slick's fade mode otherwise sizes every slide to the tallest one) */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main {
	flex: 1 1 auto;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .slick-slide:not(.slick-current) { height: 0 !important; overflow: hidden; }

/* Hide the chat bubble while the popup is open (CusRev adds .cr-noscroll to body) */
body.cr-noscroll #tidio-chat,
body.cr-noscroll #tidio-chat-iframe { display: none !important; }

/* Photo beside the review */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-flex {
	display: grid !important;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
	align-items: stretch !important;
	min-height: 440px;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main img,
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main video {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: 70vh !important;
	margin: 0 !important;
	object-fit: contain;
	background: #f4f8f9;
	border-radius: 0 !important;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main-comment {
	display: flex !important;
	flex-direction: column;
	gap: 6px;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 56px 28px 28px !important;
	text-align: left;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-comment p { margin: 0 !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-comment .woocommerce-review__author { font-size: 17px; font-weight: 700; color: var(--rv-ink); }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-comment time { font-size: 13px !important; color: var(--rv-muted) !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-comment .cr-ajax-reviews-slide-main-comment-body {
	margin-top: 10px !important;
	font-size: 15px !important;
	font-style: normal !important;
	line-height: 1.55 !important;
	color: var(--rv-ink) !important;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-comment-body:empty { display: none; }

/* Thumbnail strip: current photo highlighted, no dots */
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav {
	flex: 0 0 auto;
	width: auto !important;
	margin: 0 !important;
	padding: 14px max(60px, calc(50% - 180px)) !important;
	background: #f4f8f9;
	border-top: 1px solid var(--rv-soft);
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-dots { display: none !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .cr-ajax-reviews-slide-nav { padding: 0 4px; outline: none; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .cr-ajax-reviews-slide-nav img,
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .cr-ajax-reviews-slide-nav video {
	width: 64px !important;
	height: 64px !important;
	margin: 0 auto;
	object-fit: cover;
	border-radius: 8px;
	opacity: .55;
	cursor: pointer;
	transition: opacity .15s ease;
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-current .cr-ajax-reviews-slide-nav img,
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-current .cr-ajax-reviews-slide-nav video {
	opacity: 1;
	box-shadow: 0 0 0 2px var(--rv-deep);
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-arrow {
	top: 50% !important;
	width: 36px !important;
	height: 36px !important;
	margin-top: -18px !important;
	transform: none !important;
	background-color: #fff !important;
	border-radius: 50% !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
}
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-prev { left: max(12px, calc(50% - 226px)) !important; }
html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .slick-next { right: max(12px, calc(50% - 226px)) !important; }

@media (max-width: 649px) {
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal { width: 100vw !important; height: 100vh; height: 100dvh; max-height: none; border-radius: 0; }
	/* Phones: plain stacked blocks (a grid inside Slick's inline-block slide kept the photo's full natural height) */
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main { display: block !important; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-slide-main-flex { display: block !important; min-height: 0; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main img { display: block; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main img,
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main video { height: auto !important; max-height: 48vh !important; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-main .cr-ajax-reviews-slide-main-comment { padding: 16px 20px 20px !important; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav { padding-bottom: max(12px, env(safe-area-inset-bottom)) !important; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav { padding: 12px 52px !important; }
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal .cr-ajax-reviews-cus-images-slider-nav .cr-ajax-reviews-slide-nav img { width: 52px !important; height: 52px !important; }
}

/* ---- Tablet ---- */
@media (max-width: 849px) {
	html body .cr-all-reviews-shortcode .cr-summaryBox-wrap { grid-template-columns: 160px minmax(0, 1fr); gap: 20px 28px; }
	html body .cr-all-reviews-shortcode .cr-summaryBox-wrap > .cr-add-review-wrap { grid-column: 1 / -1; }
	html body .cr-all-reviews-shortcode .cr-summaryBox-wrap .cr-add-review-wrap .cr-all-reviews-add-review { width: 100%; }
}

/* ---- Phones ---- */
@media (max-width: 549px) {
	html body .cr-all-reviews-shortcode .cr-summaryBox-wrap { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 20px; }
	html body .cr-all-reviews-shortcode .cr-overall-rating-wrap { flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: 12px; }
	html body .cr-all-reviews-shortcode .cr-average-rating span { font-size: 44px; }
	html body .cr-all-reviews-shortcode ol.commentlist { grid-template-columns: minmax(0, 1fr); }
	html body .cr-all-reviews-shortcode .cr-comment-image-top { flex-basis: 96px; width: 96px; height: 96px; }
	/* Photo strip: same right-edge fade as the chips, no scrollbar */
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-div2 {
		margin: 0 -15px;
		padding: 0 15px;
		-webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent);
		mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent);
	}
	html body .cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-div2::after { content: ""; flex: 0 0 30px; }
	html body .cr-all-reviews-shortcode .cr-ajax-search button.cr-button-search { padding: 0 14px; }
}
