/* ==========================================================
   ŽIJ PADEL! – GOOGLE RECENZE (manual reviews widget)
   Šířka napojena na jednotný gutter systém ze zp-base.css,
   svislé paddingy zachovány.
   ========================================================== */
.manual-reviews-widget,
.manual-reviews-widget *{ box-sizing:border-box; }

.manual-reviews-widget{
  padding-left:0 !important;
  padding-right:0 !important;
  padding-bottom:30px !important;
  padding-top:10px !important;
  font-family:system-ui, -apple-system, Segoe UI, Roboto;
}

.mr-title{ text-align:center; font-size:32px; margin-bottom:30px; }

/* summary */
.mr-summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#f3f4f6;
  padding:20px;
  border-radius:20px;
  gap:20px;
  flex-wrap:wrap;
}
.mr-brand{ display:flex; align-items:center; gap:12px; font-weight:600; font-size:20px; }
.mr-google-logo svg{ height:30px; width:auto; display:block; }
.mr-score{ display:flex; align-items:center; gap:8px; }
.mr-rating{ font-size:24px; font-weight:800; }
.mr-cta{ background:#2563eb; color:#fff !important; padding:12px 18px; border-radius:999px; text-decoration:none; font-weight:700; }

/* carousel */
.mr-carousel{ position:relative; margin-top:20px; overflow:visible; }
.mr-viewport{ overflow:hidden; border-radius:22px; min-width:0; }
.mr-track{ display:flex; gap:18px; will-change:transform; transition:transform .35s ease; min-width:0; flex-wrap:nowrap; }
.mr-card{
  background:#f3f4f6;
  border-radius:16px;
  padding:18px;
  border:none;
  box-shadow:none;
  display:flex;
  flex-direction:column;
  flex:0 0 100%;   /* 1 karta na mobilu */
  min-width:0;
}
@media (min-width:700px){ .mr-card{ flex:0 0 calc((100% - 18px)/2); } }   /* 2 karty */
@media (min-width:1024px){ .mr-card{ flex:0 0 calc((100% - 54px)/4); } } /* 4 karty */

.mr-name{ font-weight:700; margin-bottom:6px; }
.mr-text{ font-size:14px; color:#444; margin-top:8px; margin-bottom:8px; }
.mr-star{ color:#d1d5db; }
.mr-on{ color:#fbbf24; }

/* arrows */
.mr-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#fff;
  font-size:28px;
  cursor:pointer;
  display:grid;
  place-items:center;
  z-index:50;
}
.mr-left{ left:-16px; }
.mr-right{ right:-16px; }
.mr-nav.is-hidden{ opacity:0; pointer-events:none; }

/* dots */
.mr-dots{ display:flex; justify-content:center; align-items:center; gap:8px; margin-top:16px; min-height:16px; }
.mr-dot{
  width:6px; height:6px; border-radius:999px; background:#d1d5db;
  border:none; padding:0; line-height:1; display:block; cursor:pointer;
  appearance:none; -webkit-appearance:none;
  transition:transform .2s ease, background .2s ease, opacity .2s ease;
  transform:scale(1); opacity:.65;
}
.mr-dot.is-active{ background:#111827; transform:scale(2.1); opacity:1; }
.mr-dot.is-d1{ transform:scale(1.6); opacity:.9; }
.mr-dot.is-d2{ transform:scale(1.25); opacity:.75; }

/* review photo */
.mr-photo{ width:100%; aspect-ratio:16 / 10; border-radius:14px; overflow:hidden; margin-top:auto; background:#e5e7eb; }
.mr-photo img{ width:100%; height:100%; object-fit:cover; display:block; image-rendering:auto; backface-visibility:hidden; transform:translateZ(0); filter:contrast(0.98) saturate(0.98); }

@media (max-width:800px){
  .mr-summary{
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-areas:"brand cta" "rating cta";
    align-items:center;
    gap:10px 20px;
  }
  .mr-brand{ grid-area:brand; }
  .mr-score{ grid-area:rating; }
  .mr-cta{ grid-area:cta; align-self:center; }
}
@media (max-width:569px){
  .mr-summary{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:14px; }
  .mr-brand{ justify-content:center; }
  .mr-score{ justify-content:center; }
  .mr-cta{ align-self:center; }
}
