.rt-reviews{ --rt-rev-font: inherit; --rt-rev-text: inherit; --rt-rev-muted:#6b7280; --rt-rev-card-bg: transparent; --rt-rev-border-color:#e5e7eb; --rt-rev-accent: currentColor; --rt-rev-radius:12px; font-family: var(--rt-rev-font); color: var(--rt-rev-text); }
.rt-reviews .rt-strip{ margin: 10px 0 18px; }
.rt-reviews .rt-strip__inner{ display:flex; gap:8px; overflow:auto; padding-bottom:6px; }
.rt-reviews .rt-strip__item{ display:block; width:72px; height:72px; border-radius:8px; overflow:hidden; position:relative; background:#f5f5f5; flex:0 0 auto; }
.rt-reviews .rt-strip__item img{ width:100%; height:100%; object-fit:cover; display:block; }
.rt-reviews .rt-play{ position:absolute; inset:auto auto 6px 6px; background:var(--rt-rev-accent); color:#fff; font-size:10px; line-height:1; padding:4px 6px; border-radius:6px; }

.rt-rev-summary{ display:grid; grid-template-columns: 1fr 2fr; gap:18px; align-items:center; border:1px solid var(--rt-rev-border-color); background:var(--rt-rev-card-bg); border-radius:var(--rt-rev-radius); padding:16px; margin-bottom:14px; }
.rt-rev-summary__left{ display:flex; align-items:center; gap:10px; }
.rt-rev-summary__avg{ font-size:22px; font-weight:700; }
.rt-rev-summary__total{ color:var(--rt-rev-muted); }
.rt-bar{ display:grid; grid-template-columns: 60px 1fr auto; gap:8px; align-items:center; font-size:14px; }
.rt-bar__track{ height:8px; background:#eceff1; border-radius:8px; overflow:hidden; }
.rt-bar__fill{ height:100%; background:var(--rt-bar-5, var(--rt-rev-accent)); }
.rt-bar--5 .rt-bar__fill{ background: var(--rt-bar-5, #10b981); }
.rt-bar--4 .rt-bar__fill{ background: var(--rt-bar-4, #22c55e); }
.rt-bar--3 .rt-bar__fill{ background: var(--rt-bar-3, #f59e0b); }
.rt-bar--2 .rt-bar__fill{ background: var(--rt-bar-2, #f97316); }
.rt-bar--1 .rt-bar__fill{ background: var(--rt-bar-1, #ef4444); }

.rt-rev-filters{ display:flex; gap:8px; align-items:center; margin:12px 0; flex-wrap:wrap; }
.rt-rev-filters button{ border:1px solid var(--rt-rev-border-color); background:var(--rt-rev-card-bg); border-radius:999px; padding:6px 10px; cursor:pointer; }
.rt-rev-filters button.is-active{ border-color:var(--rt-rev-accent); color:var(--rt-rev-accent); }
.rt-rev-filters select{ border:1px solid var(--rt-rev-border-color); padding:6px 18px; border-radius:8px; }

.rt-rev{ border:1px solid var(--rt-rev-border-color); background:var(--rt-rev-card-bg); border-radius:var(--rt-rev-radius); padding:12px; margin-bottom:12px; }
.rt-rev__hdr{ display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.rt-rev__meta{ color:var(--rt-rev-muted); font-size:14px; }
.rt-rev__content{ margin:8px 0; }
.rt-rev__media{ display:grid; grid-template-columns: repeat(auto-fill,minmax(120px,1fr)); gap:8px; }
.rt-badge{ display:inline-block; padding:2px 8px; border-radius:999px; font-size:12px; }
.rt-badge--ok{ background:#e8f7ef; color:#0f7b3b; }
.rt-helpful{ border:1px solid var(--rt-rev-border-color); background:var(--rt-rev-card-bg); border-radius:8px; padding:6px 10px; cursor:pointer; margin-right:8px; }

.rt-stars{ color:var(--rt-rev-accent); letter-spacing:2px; }
.rt-star{ display:inline-block; opacity:.25; }
.rt-star.full, .rt-star.half{ opacity:1; }

.rt-rev-loadmore{ display:block; margin:8px auto 16px; padding:10px 14px; border-radius:10px; border:1px solid var(--rt-rev-border-color); background:var(--rt-rev-card-bg); cursor:pointer; }

/* Lightbox minimal */
.rt-lightbox-modal{ position:fixed; inset:0; background:rgba(0,0,0,.8); display:none; align-items:center; justify-content:center; z-index:9999; }
.rt-lightbox-modal.is-open{ display:flex; }
.rt-lightbox-modal img, .rt-lightbox-modal video, .rt-lightbox-modal iframe{ max-width:90vw; max-height:85vh; }
.rt-lightbox-close{ position:absolute; top:12px; right:12px; background:#000; color:#fff; border:0; border-radius:8px; padding:6px 10px; cursor:pointer; }

/* Form tweaks */
.rt-comment-form textarea, .rt-comment-form select{ width:100%; }
.rt-rev-login{ margin-top:14px; }

/* video thumbs */
.rt-video-thumb { display:block; width:100%; height:100%; background:#eef1f3; }
.rt-video-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.rt-ext-badge{ position:absolute; left:6px; top:6px; background:rgba(0,0,0,.55); color:#fff; font-size:10px; padding:3px 6px; border-radius:6px; }

.rt-strip__item{ position:relative; }
.rt-rev__media a{ position:relative; display:block; border-radius:8px; overflow:hidden; background:#f5f5f5; }
.rt-rev__media .rt-play{ position:absolute; inset:auto auto 6px 6px; background:var(--rt-rev-accent); color:#fff; font-size:10px; line-height:1; padding:4px 6px; border-radius:6px; }

/* ===== Modal PRO ===== */
body.rt-lock { overflow: hidden; }
.rt-modal{
	position: fixed; inset: 0; z-index: 99999;
	background: rgba(0,0,0,.85);
	display:flex; align-items:center; justify-content:center;
	padding: 24px;
}
.rt-modal__box{
	width: min(1100px, 96vw); max-height: 92vh; overflow: auto;
	background:#fff; border-radius:16px; box-shadow: 0 10px 30px rgba(0,0,0,.35);
	display:grid; grid-template-columns: 2fr 1fr; gap: 18px; padding: 18px;
}
.rt-modal__close{
	position:absolute; top:10px; right:14px;
	background:#000; color:#fff; border:0; border-radius:999px; width:36px; height:36px; font-size:20px; cursor:pointer;
}
.rt-modal__gallery{ position: relative; }
.rt-modal__viewer{
	background:#f5f7f9; border-radius:12px; overflow:hidden;
	display:flex; align-items:center; justify-content:center;
	min-height: 420px;
}
.rt-modal__viewer img,
.rt-modal__viewer video,
.rt-modal__viewer iframe{ max-width:100%; max-height:70vh; display:block; }
.rt-nav{
	position:absolute; top:50%; transform:translateY(-50%);
	border:0; background:rgba(0,0,0,.65); color:#fff; width:36px; height:36px; border-radius:999px; cursor:pointer;
}
.rt-prev{ left:8px; }
.rt-next{ right:8px; }
.rt-modal__thumbs{
	margin-top:10px; display:flex; gap:8px; overflow:auto; padding-bottom:2px;
}
.rt-th{
	position:relative; width:76px; height:76px; border-radius:10px; overflow:hidden; border:2px solid transparent; background:#eef1f3; cursor:pointer; flex:0 0 auto;
}
.rt-th.is-active{ border-color: var(--rt-rev-accent, #2463eb); }
.rt-th img{ width:100%; height:100%; object-fit:cover; display:block; }
.rt-th .rt-video-thumb{ width:100%; height:100%; display:block; }
.rt-th .rt-play{ position:absolute; right:6px; bottom:6px; background:var(--rt-rev-accent,#2463eb); color:#fff; font-size:10px; padding:2px 5px; border-radius:6px; }

.rt-modal__meta .rt-modal__stars{ margin-bottom:6px; }
.rt-modal__who{ color:#444; display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.rt-modal__text{ color:#222; line-height:1.55; }

/* esistenti */
.rt-video-thumb { display:block; width:100%; height:100%; background:#eef1f3; }
.rt-video-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.rt-ext-badge{ position:absolute; left:6px; top:6px; background:rgba(0,0,0,.55); color:#fff; font-size:10px; padding:3px 6px; border-radius:6px; }
.rt-strip__item{ position:relative; }
.rt-rev__media a{ position:relative; display:block; border-radius:8px; overflow:hidden; background:#f5f5f5; }
.rt-rev__media .rt-play{ position:absolute; inset:auto auto 6px 6px; background:var(--rt-rev-accent); color:#fff; font-size:10px; line-height:1; padding:4px 6px; border-radius:6px; }

/* adattamento mobile */
@media (max-width: 900px){
	.rt-modal__box{ grid-template-columns: 1fr; }
	.rt-modal__viewer{ min-height: 300px; }
}

