/* LEVORA HOSPITALITY v0.2.1 — MOBILE LIGHTBOX POLISH
   Scope: gallery lightbox only. Keeps v0.2.0 single-page visual baseline intact. */
.lvh-lightbox,
.lvh-lightbox *{box-sizing:border-box}
.lvh-lightbox button,
.lvh-lightbox__figure,
.lvh-lightbox__figure img{
  -webkit-tap-highlight-color:transparent;
}
.lvh-lightbox button{
  touch-action:manipulation;
  -webkit-user-select:none;
  user-select:none;
  outline:none;
}
.lvh-lightbox button:focus-visible{
  outline:1px solid rgba(255,255,255,.7);
  outline-offset:-4px;
}
.lvh-lightbox__figure img{
  display:block;
  image-rendering:auto;
}

@media(max-width:600px){
  .lvh-lightbox{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    background:#141612!important;
    overflow:hidden!important;
    overscroll-behavior:none;
  }
  .lvh-lightbox[hidden]{display:none!important}

  .lvh-lightbox__topbar{
    position:absolute!important;
    z-index:5!important;
    left:0!important;
    right:0!important;
    top:0!important;
    min-height:58px!important;
    padding:env(safe-area-inset-top) 14px 0!important;
    border-bottom:1px solid rgba(255,255,255,.13)!important;
    background:rgba(20,22,18,.92)!important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  .lvh-lightbox__topbar>span{
    font:500 11px/1 Arial,sans-serif!important;
    letter-spacing:.04em!important;
    color:rgba(255,255,255,.72)!important;
  }
  .lvh-lightbox__topbar button{
    width:44px!important;
    height:44px!important;
    margin-right:-8px!important;
    border-radius:50%!important;
    background:transparent!important;
  }
  .lvh-lightbox__topbar svg{
    width:25px!important;
    height:25px!important;
    stroke-width:1.35!important;
  }

  .lvh-lightbox__figure{
    position:absolute!important;
    z-index:1!important;
    inset:58px 0 0!important;
    margin:0!important;
    padding:10px 8px calc(12px + env(safe-area-inset-bottom))!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .lvh-lightbox__figure img{
    width:auto!important;
    height:auto!important;
    max-width:calc(100vw - 16px)!important;
    max-height:calc(100vh - 86px)!important;
    max-height:calc(100dvh - 86px - env(safe-area-inset-bottom))!important;
    object-fit:contain!important;
    box-shadow:0 20px 55px rgba(0,0,0,.28)!important;
  }

  .lvh-lightbox__nav{
    position:absolute!important;
    z-index:6!important;
    top:50%!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:50%!important;
    background:rgba(20,22,18,.58)!important;
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
    color:#fff!important;
    transform:translateY(-50%)!important;
    transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
  }
  .lvh-lightbox__nav--prev{left:9px!important}
  .lvh-lightbox__nav--next{right:9px!important}
  .lvh-lightbox__nav:active{
    background:rgba(20,22,18,.82)!important;
    border-color:rgba(255,255,255,.32)!important;
    transform:translateY(-50%) scale(.96)!important;
  }
  .lvh-lightbox__nav svg{
    width:21px!important;
    height:21px!important;
    stroke-width:1.45!important;
  }
}

@media(max-width:380px){
  .lvh-lightbox__figure{padding-left:5px!important;padding-right:5px!important}
  .lvh-lightbox__figure img{max-width:calc(100vw - 10px)!important}
  .lvh-lightbox__nav{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important}
  .lvh-lightbox__nav--prev{left:6px!important}.lvh-lightbox__nav--next{right:6px!important}
}
