/* assets/css/sgds-reviews.css */
:root{--sgds-rv-bg:#fff;--sgds-rv-surface:#ffffffcc;--sgds-rv-border:rgba(0,0,0,.08);--sgds-rv-text:#222;--sgds-rv-muted:rgba(0,0,0,.55);--sgds-rv-accent:#b0291c}

.sgds-reviews-marquee{position:relative;overflow:hidden;padding:12px 0}
.sgds-reviews-track{
	display:inline-flex;gap:16px;align-items:stretch;flex-wrap:nowrap;
	animation:sgdsMarquee var(--sgds-dur,28s) linear infinite;
	will-change:transform;transform:translate3d(0,0,0);backface-visibility:hidden
}
.sgds-reviews-marquee:hover .sgds-reviews-track{animation-play-state:paused}

@keyframes sgdsMarquee{
	from{transform:translate3d(0,0,0)}
	to{transform:translate3d(calc(-1 * var(--sgds-distance, 50%)),0,0)}
}

/* Premium card with gradient ring + subtle glow */
.sgds-review-card{
	flex:0 0 auto;display:flex;align-items:stretch;gap:14px;
	min-width:360px;max-width:500px;border-radius:16px;position:relative;
	background:
		linear-gradient(var(--sgds-rv-surface),var(--sgds-rv-surface)) padding-box,
		linear-gradient(135deg,#fff9f0 0%,#fff5e6 100%) border-box;
	border:1px solid transparent;box-shadow:
		0 10px 28px rgba(176,41,28,.10),
		0 4px 10px rgba(0,0,0,.06),
		inset 0 1px 0 rgba(255,255,255,.6);
	padding:16px;transition:transform .2s ease, box-shadow .2s ease, background .2s ease
}
.sgds-review-card:after{
	content:"";position:absolute;inset:-1px;border-radius:16px;pointer-events:none;
	background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.55) 20%,transparent 40%) no-repeat;
	background-size:200% 200%;mix-blend-mode:overlay;opacity:.3;filter:blur(.2px);
	animation:sgdsSheen 3.6s ease-in-out infinite
}
@keyframes sgdsSheen{0%{background-position:120% -20%}50%{background-position:-20% 120%}100%{background-position:120% -20%}}
.sgds-review-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(176,41,28,.16),0 8px 18px rgba(0,0,0,.08)}

/* Cover */
.sgds-review-cover{position:relative;display:block;flex:0 0 80px;height:80px;border-radius:12px;overflow:hidden;background:#fafafa;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}
.sgds-review-cover img{display:block;width:80px;height:80px;object-fit:cover}

/* Body */
.sgds-review-body{min-width:0;display:flex;flex-direction:column}
.sgds-review-top{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.sgds-review-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;box-shadow:0 1px 0 rgba(0,0,0,.06), 0 0 0 2px #fff}
.sgds-review-top-text{min-width:0}
.sgds-review-author{font-weight:800;color:var(--sgds-rv-accent);line-height:1.1}
.sgds-review-date{font-size:12px;color:var(--sgds-rv-muted);margin-top:2px;line-height:1}

/* Rating row under header */
.sgds-rating-stars{
	margin:4px 0 6px 0;
	font-size:18px;font-weight:900;letter-spacing:.04em;
	background:linear-gradient(135deg,#f7d36b,#e8b94a 60%,#d69a23);
	-webkit-background-clip:text;background-clip:text;color:transparent
}
.sgds-review-title{
	font-weight:900;color:var(--sgds-rv-text);text-decoration:none;margin:4px 0 6px 0;
	display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden
}
.sgds-review-title:hover{color:var(--sgds-rv-accent)}

.sgds-review-text{
	position:relative;color:var(--sgds-rv-text);
	display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
	font-size:14px;padding-left:18px
}
.sgds-review-text:before{
	content:"“";position:absolute;left:0;top:-2px;color:var(--sgds-rv-accent);opacity:.85;font-weight:900
}

/* Product strip footer */
.sgds-product-strip{
	display:flex;align-items:center;gap:10px;margin-top:10px;
	text-decoration:none;background:linear-gradient(135deg,#fff9f0 0%,#fff5e6 100%);
	border-radius:12px;padding:10px;border:1px solid rgba(0,0,0,.06)
}
.sgds-product-thumb{width:36px;height:36px;border-radius:8px;object-fit:cover;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}
.sgds-product-name{color:#222;line-height:1.1}
.sgds-product-name:hover{text-decoration:none}

/* Sentinel used to measure first segment width */
.sgds-marquee-sentinel{flex:0 0 0;width:0;height:1px;padding:0;margin:0;display:inline-block}
/* Media strip + lightbox */
.sgds-review-media{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.sgds-media-thumb{
	display:inline-block;width:var(--sgds-media-size,50px);height:var(--sgds-media-size,50px);
	border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:#fff;cursor:pointer;
	box-shadow:0 1px 0 rgba(0,0,0,.03);padding:0
}
.sgds-media-thumb img{display:block;width:100%;height:100%;object-fit:cover}

.sgds-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;z-index:9999;padding:16px}
.sgds-lightbox.open{display:flex}
.sgds-lightbox img{max-width:92vw;max-height:88vh;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.4)}

/* Responsive */
@media (max-width:640px){
	.sgds-review-card{min-width:280px}
	.sgds-review-cover{flex-basis:64px;height:64px}
	.sgds-review-cover img{width:64px;height:64px}
	.sgds-review-card:after{display:none}
}