html.image-gallery-open{overflow:hidden}body.lightbox-open{overflow:hidden}.lightbox{position:fixed;inset:0;z-index:10001;display:flex;flex-direction:column;box-sizing:border-box;background:rgba(0,0,0,.82);backdrop-filter:blur(4px);opacity:1}.lightbox.is-open{animation:sakura-lightbox-in .28s cubic-bezier(.22,1,.36,1)forwards}.lightbox.is-closing{animation:sakura-lightbox-out .24s cubic-bezier(.4,0,.2,1)forwards;pointer-events:none}.lightbox.is-open .lightbox__main,.lightbox.is-open .lightbox__thumbs{animation:sakura-lightbox-content-in .34s cubic-bezier(.16,1,.3,1)forwards}.lightbox.is-closing .lightbox__main,.lightbox.is-closing .lightbox__thumbs{animation:sakura-lightbox-content-out .22s cubic-bezier(.4,0,.2,1)forwards}@keyframes sakura-lightbox-in{from{opacity:0}to{opacity:1}}@keyframes sakura-lightbox-out{from{opacity:1}to{opacity:0}}@keyframes sakura-lightbox-content-in{from{opacity:0;transform:scale(.92)translateY(10px)}to{opacity:1;transform:none}}@keyframes sakura-lightbox-content-out{from{opacity:1;transform:none}to{opacity:0;transform:scale(.94)translateY(8px)}}@keyframes sakura-lightbox-media-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes sakura-lightbox-slide-in-from-right{from{opacity:0;transform:translateX(10%)}to{opacity:1;transform:none}}@keyframes sakura-lightbox-slide-in-from-left{from{opacity:0;transform:translateX(-10%)}to{opacity:1;transform:none}}@keyframes sakura-lightbox-slide-out-left{from{opacity:1;transform:none}to{opacity:0;transform:translateX(-10%)}}@keyframes sakura-lightbox-slide-out-right{from{opacity:1;transform:none}to{opacity:0;transform:translateX(10%)}}.lightbox[hidden]{display:none!important}.lightbox__main{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:56px 72px 20px;box-sizing:border-box}.lightbox__stage-wrap{position:relative;display:flex;flex-direction:column;align-items:center;max-width:min(96vw,1200px);max-height:100%}.lightbox__stage{display:flex;align-items:center;justify-content:center;max-width:100%;max-height:calc(100vh - 220px);overflow:hidden;touch-action:pan-y pinch-zoom}.lightbox__stage.is-transitioning{position:relative;width:100%}.lightbox__stage.is-zoomed{touch-action:none}.lightbox__slide-layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;pointer-events:none}.lightbox__slide-layer.is-exiting-left,.lightbox__slide-layer.is-exiting-right{z-index:1}.lightbox__slide-layer.is-entering,.lightbox__slide-layer.is-entering-from-left,.lightbox__slide-layer.is-entering-from-right{z-index:2;pointer-events:auto}.lightbox__viewport{display:flex;justify-content:center;align-items:center;max-width:100%;max-height:calc(100vh - 220px);overflow:hidden}.lightbox__viewport.is-entering{animation:sakura-lightbox-media-in .26s cubic-bezier(.22,1,.36,1)forwards}.lightbox__viewport.is-entering-from-right{animation:sakura-lightbox-slide-in-from-right .28s cubic-bezier(.22,1,.36,1)forwards}.lightbox__viewport.is-entering-from-left{animation:sakura-lightbox-slide-in-from-left .28s cubic-bezier(.22,1,.36,1)forwards}.lightbox__viewport.is-exiting-left{animation:sakura-lightbox-slide-out-left .22s cubic-bezier(.4,0,.2,1)forwards}.lightbox__viewport.is-exiting-right{animation:sakura-lightbox-slide-out-right .22s cubic-bezier(.4,0,.2,1)forwards}.lightbox__viewport.is-zoomed,.lightbox__viewport.is-pinching{touch-action:none}.lightbox__viewport.is-zoomed{cursor:grab;width:100%;height:calc(100vh - 220px)}.lightbox__viewport.is-zoomed.is-dragging{cursor:grabbing}.lightbox__media{display:block;max-width:100%;max-height:calc(100vh - 220px);object-fit:contain;border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.35)}.lightbox__media.is-entering{animation:sakura-lightbox-media-in .26s cubic-bezier(.22,1,.36,1)forwards}.lightbox__media.is-entering-from-right{animation:sakura-lightbox-slide-in-from-right .28s cubic-bezier(.22,1,.36,1)forwards}.lightbox__media.is-entering-from-left{animation:sakura-lightbox-slide-in-from-left .28s cubic-bezier(.22,1,.36,1)forwards}.lightbox__media.is-exiting-left{animation:sakura-lightbox-slide-out-left .22s cubic-bezier(.4,0,.2,1)forwards}.lightbox__media.is-exiting-right{animation:sakura-lightbox-slide-out-right .22s cubic-bezier(.4,0,.2,1)forwards}.lightbox__img{user-select:none;cursor:zoom-in;-webkit-user-drag:none}.lightbox__img.is-zoomed{cursor:zoom-out}.lightbox video.lightbox__media{width:100%;background:#000}.lightbox__counter{position:absolute;top:20px;left:50%;z-index:2;min-width:4.5em;font-size:.82rem;color:rgba(255,255,255,.72);font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;pointer-events:none;transform:translateX(-50%)}.lightbox__thumbs{position:relative;width:100%;padding:12px 0 calc(14px + env(safe-area-inset-bottom,0px));box-sizing:border-box;overflow:hidden;background:linear-gradient(to top,rgba(0,0,0,.55),rgba(0,0,0,.18));border-top:1px solid rgba(255,255,255,.1)}.lightbox__thumbs[hidden]{display:none!important}.lightbox__thumbs-indicator{position:absolute;top:12px;left:50%;z-index:2;width:72px;height:54px;border:2px solid var(--sakura-color-primary);border-radius:8px;pointer-events:none;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(223,145,147,.35)}.lightbox__thumbs-track{display:flex;gap:10px;align-items:center;width:max-content;transition:transform .28s ease;will-change:transform}.lightbox__thumb{position:relative;flex:none;width:72px;height:54px;padding:0;border:none;border-radius:8px;overflow:hidden;cursor:pointer;background:rgba(255,255,255,8%);transition:opacity .2s ease,transform .2s ease;opacity:.72}.lightbox__thumb:hover{opacity:.95;transform:translateY(-2px)}.lightbox__thumb[aria-current=true]{opacity:1}.lightbox__thumb-media{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;user-select:none;pointer-events:none}.lightbox__thumb-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28);pointer-events:none}.lightbox__thumb-play svg{width:18px;height:18px;fill:#fff}.lightbox__close,.lightbox__prev,.lightbox__next{position:absolute;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;cursor:pointer;color:#fff;background:rgba(0,0,0,.42);transition:background .2s ease}.lightbox__close:hover,.lightbox__prev:hover,.lightbox__next:hover{background:rgba(0,0,0,.62)}.lightbox__close[hidden],.lightbox__prev[hidden],.lightbox__next[hidden]{display:none!important}.lightbox__close{top:16px;right:16px;width:40px;height:40px;border-radius:50%;font-size:1.5rem;line-height:1}.lightbox__prev,.lightbox__next{top:50%;width:48px;height:48px;border-radius:50%;transform:translateY(-50%);font-size:1.2rem}.lightbox__prev{left:16px}.lightbox__next{right:16px}@media(prefers-reduced-motion:reduce){.lightbox.is-open,.lightbox.is-closing,.lightbox.is-open .lightbox__main,.lightbox.is-open .lightbox__thumbs,.lightbox.is-closing .lightbox__main,.lightbox.is-closing .lightbox__thumbs,.lightbox__media.is-entering,.lightbox__viewport.is-entering,.lightbox__media.is-entering-from-right,.lightbox__viewport.is-entering-from-right,.lightbox__media.is-entering-from-left,.lightbox__viewport.is-entering-from-left,.lightbox__media.is-exiting-left,.lightbox__viewport.is-exiting-left,.lightbox__media.is-exiting-right,.lightbox__viewport.is-exiting-right{animation:none}}@media(max-width:640px){.lightbox__main{padding:48px 12px 12px}.lightbox__prev,.lightbox__next{display:none}.lightbox__media{max-height:calc(100vh - 200px)}.lightbox__viewport.is-zoomed{height:calc(100vh - 200px)}.lightbox__thumb,.lightbox__thumbs-indicator{width:60px;height:45px}}