.js-lightbox{cursor:zoom-in}
.lb-overlay{position:fixed;inset:0;background:rgba(10,10,10,.92);z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}
.lb-overlay.lb-open{display:flex}
.lb-img-wrap{position:relative;max-width:94vw;max-height:90vh;display:flex;align-items:center;justify-content:center}
.lb-img{max-width:94vw;max-height:90vh;object-fit:contain;border-radius:6px;box-shadow:0 10px 40px rgba(0,0,0,.5);cursor:zoom-in;transition:transform .15s ease}
.lb-img.lb-zoomed{cursor:zoom-out}
.lb-close{position:absolute;top:16px;right:20px;background:rgba(255,255,255,.12);color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:22px;line-height:40px;text-align:center;cursor:pointer}
.lb-close:hover{background:rgba(255,255,255,.25)}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);color:#fff;border:none;border-radius:50%;width:48px;height:48px;font-size:24px;cursor:pointer}
.lb-nav:hover{background:rgba(255,255,255,.25)}
.lb-prev{left:12px}
.lb-next{right:12px}
.lb-counter{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:#fff;background:rgba(0,0,0,.4);padding:4px 12px;border-radius:12px;font-size:13px}
@media (max-width:640px){
  .lb-nav{width:38px;height:38px;font-size:18px}
  .lb-close{width:34px;height:34px;font-size:18px;line-height:34px}
}
