/* reviews.css — ARMORA Reviews page (scoped via rv-*) */
:root{
  --rv-bg:#0c0f12;
  --rv-card:#14181d;
  --rv-ink:#e9eef3;
  --rv-muted:#9aa5b1;
  --rv-olive:#5f7a35;
  --rv-accent:#d4af37;   /* Armora gold */
  --rv-line:#222931;
  --rv-ok:#2cb67d;
  --rv-radius:16px;
  --rv-pad:20px;
  --rv-shadow:0 6px 24px rgba(0,0,0,.35);
}

/* Volitelné: pokud chceš mít Reviews stránku o chlup tmavší */
body.reviews-page {
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(95,122,53,.12), transparent 60%),
    radial-gradient(900px 500px at 110% 0%, rgba(212,175,55,.06), transparent 60%),
    var(--rv-bg);
  color:var(--rv-ink);
}

/* Skryj prázdné obrazky (dokud nedoplníš src) */
img[src=""], img:not([src]){ display:none; }

/* ===== Hero / Header sekce ===== */
.rv-hero{
  border-top:1px solid var(--rv-line);
  border-bottom:1px solid var(--rv-line);
  background:linear-gradient(180deg, rgba(20,24,29,.65), rgba(20,24,29,.1));
  padding:28px 0 18px;
}
.rv-wrap{ max-width:1200px; margin:0 auto; padding:0 16px; }
.rv-hero h1{
  margin:8px 0 6px;
  font-family:"Kanit", sans-serif;
  font-weight:800;
  letter-spacing:.02em;
  font-size:32px;
  color:var(--rv-ink);
  text-transform:uppercase;
}
.rv-hero p{ color:var(--rv-muted); margin:0 0 6px; }

/* ===== Summary panel (průměr + distribuce) ===== */
.rv-summary{
  display:grid; gap:16px; margin:18px 0 8px;
  grid-template-columns:1.2fr 1fr;
}
.rv-panel{
  background:var(--rv-card);
  border:1px solid var(--rv-line);
  border-radius:var(--rv-radius);
  box-shadow:var(--rv-shadow);
  padding:var(--rv-pad);
}
.rv-score{ display:flex; gap:18px; align-items:center; }
.rv-value{
  font-family:"Kanit",sans-serif;
  font-size:48px; font-weight:800; line-height:1; color:var(--rv-accent);
}
.rv-stars{ display:flex; gap:2px; align-items:center; }
.rv-star{ width:20px; height:20px; display:inline-block; }
.rv-star svg{ width:100%; height:100%; }
.rv-star path{ fill:#2b3340; }
.rv-star.is-full path{ fill:var(--rv-accent); }
.rv-small{ display:block; color:var(--rv-muted); margin-top:2px; font-size:13px; }

/* Distribuce */
.rv-dist{ display:grid; gap:8px; }
.rv-dist-row{ display:flex; gap:10px; align-items:center; }
.rv-dist-row .rv-label{ width:44px; color:var(--rv-muted); font-size:14px; }
.rv-bar{ flex:1; height:10px; border-radius:999px; background:#1b222b; overflow:hidden; }
.rv-bar > span{ display:block; height:100%;
  background:linear-gradient(90deg,var(--rv-olive),var(--rv-accent));
}

/* ===== Grid s recenzemi ===== */
.rv-grid{
  display:grid; gap:16px; grid-template-columns:repeat(3,1fr);
  margin:16px 0 40px;
}
.rv-review{
  background:var(--rv-card);
  border:1px solid var(--rv-line);
  border-radius:var(--rv-radius);
  box-shadow:var(--rv-shadow);
  padding:var(--rv-pad);
  display:flex; flex-direction:column; gap:12px;
}
.rv-review header{ display:flex; gap:12px; align-items:center; }
.rv-avatar{
  width:46px; height:46px; border-radius:999px; background:#1b222b; flex:0 0 auto;
  border:1px solid #26303a; display:grid; place-items:center; font-weight:800; color:#9fb27a;
}
.rv-who .rv-name{ font-weight:800; color:var(--rv-ink); }
.rv-who .rv-meta{ font-size:12px; color:var(--rv-muted); }
.rv-badge{
  display:inline-flex; align-items:center; gap:6px;
  border:1px solid #2a3a2a; background:rgba(44,182,125,.08);
  color:var(--rv-ok); padding:3px 8px; border-radius:999px;
  font-size:12px; font-weight:700; letter-spacing:.02em;
}
.rv-title{ font-weight:800; font-size:16px; }
.rv-text{ color:#cfd6dd; }
.rv-photos{ display:flex; gap:8px; }
.rv-photo{
  width:72px; height:72px; object-fit:cover;
  border-radius:10px; border:1px solid #2a3139; background:#111;
}

/* ===== Footer CTA ===== */
.rv-footer{
  background:linear-gradient(135deg, rgba(95,122,53,.18), rgba(212,175,55,.12));
  border:1px dashed #34402d; padding:18px; border-radius:var(--rv-radius);
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; align-items:center;
}
.rv-btn{
  display:inline-block; background:var(--rv-accent); color:#000; border-radius:12px; padding:12px 18px;
  font-weight:900; letter-spacing:.04em; text-transform:uppercase; border:0; cursor:pointer;
  box-shadow:0 6px 18px rgba(212,175,55,.25); transition:transform .15s ease;
}
.rv-btn:hover{ transform:translateY(-1px); }
.rv-note{ color:var(--rv-muted); font-size:13px; }

/* ===== Responsivita ===== */
@media (max-width: 980px){
  .rv-summary{ grid-template-columns:1fr; }
  .rv-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 640px){
  .rv-grid{ grid-template-columns:1fr; }
  .rv-hero h1{ font-size:26px; }
}

/* ===== Doplňky (pokud používáš "pulse" animaci v banneru) ===== */
@keyframes pulse{
  0% { transform:scale(1); box-shadow:0 0 12px rgba(212,175,55,.55); }
  50%{ transform:scale(1.02); box-shadow:0 0 18px rgba(212,175,55,.75); }
  100%{ transform:scale(1); box-shadow:0 0 12px rgba(212,175,55,.55); }
}
/* Lightbox */
.rv-lightbox {
  position: fixed; inset: 0; z-index: 9999;
  display: none; align-items: center; justify-content: center;
}
.rv-lightbox.is-open { display: flex; }
.rv-lb-backdrop {
  position: absolute; inset: 0; background: rgba(0,0,0,.75);
}
.rv-lb-figure {
  position: relative; max-width: 92vw; max-height: 92vh; z-index: 1;
  display: flex; align-items: center; justify-content: center;
}
.rv-lb-img {
  max-width: 90vw; max-height: 90vh;
  border-radius: 12px; box-shadow: 0 12px 40px rgba(0,0,0,.6);
}
.rv-lb-close, .rv-lb-prev, .rv-lb-next {
  position: absolute;
  border: none;
  cursor: pointer;
  font-weight: 900;
  font-size: 22px;         /* velikost znaku */
  color: #0a0a0a;
  background: #fff;
  opacity: .95;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;           /* flex zajistí centrování */
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 18px rgba(0,0,0,.35);
  padding: 0;
  line-height: 1;          /* aby znak nebyl posunutý */
}

.rv-lb-close { 
  top: -14px; 
  right: -14px; 
  font-size: 24px;         /* křížek může být o trochu větší */
}

.rv-lb-prev { 
  left: -14px; 
  top: 50%; 
  transform: translateY(-50%); 
}

.rv-lb-next { 
  right: -14px; 
  top: 50%; 
  transform: translateY(-50%); 
}

.rv-lb-close:hover, .rv-lb-prev:hover, .rv-lb-next:hover { 
  opacity: 1; 
}
@media (max-width: 640px){
  .rv-lb-prev, .rv-lb-next { display:none; } /* na mobilu většinou stačí swipe/klik */
}