.lb-overlay{
  position:fixed;
  inset:0;
  background:rgba(15,15,13,.94);
  z-index:1000;
  display:none;
  align-items:center;
  justify-content:center;
}
.lb-overlay.is-open{display:flex;}

.lb-stage{
  max-width:88vw;
  max-height:78vh;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lb-img{
  max-width:88vw;
  max-height:78vh;
  object-fit:contain;
  border-radius:2px;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
  animation:lbFade .2s ease;
}
@keyframes lbFade{from{opacity:0;transform:scale(.98);}to{opacity:1;transform:scale(1);}}

.lb-close{
  position:absolute;
  top:22px;right:26px;
  background:none;border:none;
  color:#fff;
  font-size:2.2rem;
  line-height:1;
  cursor:pointer;
  opacity:.85;
  transition:opacity .15s ease;
}
.lb-close:hover{opacity:1;}

.lb-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  width:48px;height:48px;
  border-radius:50%;
  font-size:1.1rem;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease;
}
.lb-arrow:hover{background:rgba(255,255,255,.18);}
.lb-prev{left:18px;}
.lb-next{right:18px;}

.lb-footer{
  position:absolute;
  bottom:22px;left:0;right:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  color:rgba(255,255,255,.85);
  font-family:var(--sans, 'Noto Sans Thai', sans-serif);
  text-align:center;
  padding:0 20px;
}
.lb-title{font-size:14.5px;font-weight:600;}
.lb-counter{font-size:12.5px;color:rgba(255,255,255,.55);}

@media (max-width:600px){
  .lb-arrow{width:40px;height:40px;font-size:1rem;}
  .lb-prev{left:8px;}
  .lb-next{right:8px;}
  .lb-close{top:14px;right:16px;font-size:1.9rem;}
}
