.yokocho-gallery .yk-header{position:fixed;inset:0 0 auto;z-index:20}
.admin-bar.yokocho-gallery .yk-header{top:var(--yk-shell-admin-offset,32px)}
.ykg-page,.yokocho-gallery .yk-footer{background:var(--yk-ink)}
.ykg-mosaic{position:relative;isolation:isolate;padding:10px;background:radial-gradient(ellipse at center,var(--yk-green),var(--yk-ink))}
.ykg-mosaic:before,.ykg-mosaic:after{content:'';position:absolute;inset:0 0 auto;height:180px;z-index:3;pointer-events:none;background:linear-gradient(var(--yk-ink),#010a0740 65%,transparent)}
.ykg-mosaic:after{inset:auto 0 0;height:clamp(120px,20vw,300px);background:linear-gradient(transparent,#032116)}
.ykg-final{padding:clamp(45px,7vw,110px) 24px clamp(65px,9vw,140px);text-align:center;color:var(--yk-gold);text-transform:uppercase}
.ykg-final{background:linear-gradient(#032116,var(--yk-ink))}
.ykg-final h2{font:400 clamp(25px,4.2vw,64px)/1.1 var(--yk-extended);letter-spacing:-.04em;margin:0 0 14px;color:white}
.ykg-final a{font:400 clamp(15px,2.5vw,36px)/1.4 var(--yk-extended);color:var(--yk-gold);text-decoration:none;overflow-wrap:anywhere}
.ykg-final a:hover{text-decoration:underline}.ykg-final a:focus-visible{outline:2px solid currentColor;outline-offset:8px}
.ykg-caption{position:absolute;inset:auto 0 0;margin:0;padding:30px 18px 14px;color:white;background:linear-gradient(transparent,#010a07e0);font-size:14px}
@media(max-width:767px){.admin-bar.yokocho-gallery .yk-header{top:var(--yk-shell-admin-offset,46px)}.ykg-mosaic{padding:8px}.ykg-mosaic:before{height:130px}.ykg-final{padding-inline:18px}}

/* Gallery-only enhancement: preserve Bento's direct media children and placement. */
.ykg-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.ykg-open{position:absolute;inset:0;z-index:1;cursor:pointer}.ykg-open-video{bottom:64px}
.ykg-open:focus-visible{outline:3px solid var(--yk-gold);outline-offset:-5px;border-radius:inherit}
html.ykg-modal-open{overflow:hidden}
.ykg-lightbox{box-sizing:border-box;position:fixed;inset:0;width:min(1200px,96vw);height:min(920px,96dvh);max-width:100vw;max-height:100dvh;margin:auto;padding:64px 24px 16px;border:0;background:transparent;color:white;overscroll-behavior:contain}
.ykg-lightbox:not([open]){display:none}.ykg-lightbox[open]{display:flex;flex-direction:column;gap:8px}
.ykg-lightbox::backdrop{background:radial-gradient(ellipse at center,rgba(1,10,7,.86) 0%,rgba(1,10,7,.94) 62%,rgba(1,10,7,.98) 100%)}
.ykg-lightbox button{flex-shrink:0;min-width:48px;min-height:48px;border:1px solid #ffffff70;border-radius:8px;background:#163d2c;color:white;font:24px/1 sans-serif;cursor:pointer;touch-action:manipulation}
.ykg-lightbox button:focus-visible{outline:3px solid var(--yk-gold);outline-offset:3px}
.ykg-close{position:absolute;top:8px;right:24px;z-index:2}
.ykg-viewer{display:flex;justify-content:center;align-items:center;flex:1;min-height:0;min-width:0;touch-action:pan-y pinch-zoom}
.ykg-viewer img,.ykg-viewer video{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.ykg-lightbox-toolbar{display:flex;align-items:center;justify-content:center;gap:24px}
.ykg-status{margin:0;text-align:center;font:16px/1.4 var(--yk-body,sans-serif)}
@media(max-width:767px){.ykg-lightbox{width:100%;height:100dvh;padding:calc(64px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));border-radius:0}.ykg-close{top:calc(8px + env(safe-area-inset-top));right:12px}.ykg-lightbox-toolbar{justify-content:space-between;gap:12px}}
