/* One image, one close control. The inline case layouts remain untouched. */
.case-page [data-case-lightbox],.case-page [data-lightbox-host]{cursor:pointer}
.case-page [data-case-lightbox]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.case-lightbox{position:fixed;inset:0;width:100vw;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);box-sizing:border-box;border:0;overflow:hidden;background:transparent;color:#fff;overscroll-behavior:none;touch-action:none;isolation:isolate;cursor:pointer}
.case-lightbox:not([open]){display:none}
.case-lightbox:focus{outline:none}
.case-lightbox::backdrop{background:transparent}
.case-lightbox-shade{position:absolute;inset:0;background:rgba(28,31,38,.88);opacity:0;pointer-events:none}
[data-theme=dark] .case-lightbox-shade{background:rgba(2,3,6,.95)}
.case-lightbox-image{position:absolute;margin:0;max-width:none;max-height:none;transform-origin:center;will-change:transform,clip-path;pointer-events:none;user-select:none;-webkit-user-drag:none;object-fit:contain}
.case-lightbox-close{position:absolute;z-index:2;top:max(40px,env(safe-area-inset-top));right:max(40px,env(safe-area-inset-right));display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:1px solid #ffffff26;border-radius:50%;background:#ffffff14;color:#fff;cursor:pointer;opacity:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.case-lightbox-close svg{width:20px;height:20px;pointer-events:none}
.case-lightbox-close:hover{background:#ffffff26}
.case-lightbox-close:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:820px){.case-lightbox-close{display:none}}
@media(prefers-reduced-motion:reduce){.case-lightbox-image{will-change:auto}}
