/* Native horizontal scrolling provides touch swipes and momentum in iOS Safari. */
.lightbox{position:fixed;inset:0;margin:0;border:0;border-radius:0;padding:0;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;background:#071014;overflow:hidden;overscroll-behavior:none;color:#fff}
.lightbox::backdrop{background:#071014;backdrop-filter:none}
.gallery-track{position:absolute;inset:0;display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pinch-zoom}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-slide{flex:0 0 100%;min-width:0;height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;padding:calc(64px + env(safe-area-inset-top,0px)) 0 calc(72px + env(safe-area-inset-bottom,0px))}
.gallery-slide img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.lightbox-top{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));background:linear-gradient(#071014dc,transparent);pointer-events:none}
.lightbox button{-webkit-appearance:none;appearance:none;color:#fff;-webkit-text-fill-color:#fff;background:#142b37c9;border:1px solid #ffffff55;min-width:44px;min-height:44px;pointer-events:auto;touch-action:manipulation}
.lightbox-close{gap:12px}.lightbox .lightbox-prev,.lightbox .lightbox-next{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border-radius:50%;font-size:1.4rem}
.lightbox-prev{left:max(10px,env(safe-area-inset-left,0px))}.lightbox-next{right:max(10px,env(safe-area-inset-right,0px))}
.lightbox-bottom{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:12px max(20px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));text-align:center;background:linear-gradient(transparent,#071014e8);pointer-events:none}
.lightbox-bottom p{margin:0;font-size:1rem;line-height:1.4}.swipe-hint{display:block;font-size:.8rem;color:#c5d3d9;margin-top:5px}
@media(min-width:761px) and (hover:hover) and (pointer:fine){.swipe-hint{display:none}.gallery-slide{padding:70px 65px}}
@media(orientation:landscape) and (max-height:600px){.gallery-slide{padding:0 env(safe-area-inset-right,0px) 0 env(safe-area-inset-left,0px)}.lightbox-bottom{padding-top:6px;padding-bottom:max(6px,env(safe-area-inset-bottom,0px))}.lightbox-bottom p{font-size:.85rem}.swipe-hint{display:none}.lightbox-top{padding-top:max(6px,env(safe-area-inset-top,0px))}.lightbox-close{padding:4px 12px}}
@media(prefers-reduced-motion:reduce){.gallery-track{scroll-behavior:auto}}

