/* ==========================================================================
   Product gallery lightbox — kotlybrt.pl. Self-contained, brand #ff3e17.
   ========================================================================== */
.slider-for .product-img img.shv-zoomable{ cursor: zoom-in; }

.shv-lb-overlay{
  position:fixed; inset:0; z-index:100000; background:rgba(10,6,4,.93);
  display:none; align-items:center; justify-content:center;
  -webkit-user-select:none; user-select:none;
}
.shv-lb-overlay.is-open{ display:flex; }

.shv-lb-stage{ max-width:92vw; max-height:86vh; overflow:hidden; display:flex; }
.shv-lb-img{
  max-width:92vw; max-height:86vh; display:block;
  transform:translate(0,0) scale(1); transform-origin:center center;
  transition:transform .2s ease; cursor:zoom-in; -webkit-user-drag:none;
}
.shv-lb-img.is-zoomed{ cursor:grab; transition:none; }
.shv-lb-img.is-panning{ cursor:grabbing; }

.shv-lb-btn{
  position:fixed; z-index:100001; border:0; color:#fff; cursor:pointer;
  background:rgba(255,255,255,.14); display:flex; align-items:center;
  justify-content:center; border-radius:50%; line-height:1; transition:background .2s;
  font-family:Poppins,system-ui,sans-serif;
}
.shv-lb-btn:hover{ background:#ff3e17; }
.shv-lb-close{ top:18px; right:18px; width:46px; height:46px; font-size:26px; }
.shv-lb-prev, .shv-lb-next{ top:50%; transform:translateY(-50%); width:52px; height:52px; font-size:26px; }
.shv-lb-prev{ left:18px; } .shv-lb-next{ right:18px; }

.shv-lb-counter{
  position:fixed; bottom:20px; left:50%; transform:translateX(-50%);
  color:#fff; font:13px/1 Poppins,system-ui,sans-serif; background:rgba(0,0,0,.45);
  padding:6px 12px; border-radius:20px; z-index:100001;
}

@media (max-width:575.98px){
  .shv-lb-prev, .shv-lb-next{ width:42px; height:42px; font-size:22px; }
  .shv-lb-close{ width:40px; height:40px; font-size:22px; }
  .shv-lb-stage, .shv-lb-img{ max-width:96vw; max-height:80vh; }
}
