/* Native dialog top layer: no menu/footer/backdrop can cover the photo. */
dialog.image-viewer{position:fixed;inset:0;margin:0;border:0;padding:0;width:100%;max-width:none;height:100dvh;max-height:none;background:#101310;color:#fff;overflow:hidden;box-sizing:border-box}
dialog.image-viewer[open]{display:flex;flex-direction:column}
dialog.image-viewer::backdrop{background:#101310}
.image-viewer-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex:none;padding:calc(12px + max(env(safe-area-inset-top),var(--mini-top,0px))) 16px 12px;z-index:1;background:#101310}
.image-viewer-toolbar button{display:grid;place-items:center;min-width:48px;height:48px;padding:8px 12px;border:1px solid #626d62;border-radius:12px;background:#202920;color:#fff;font-size:20px;line-height:1;touch-action:manipulation}
.image-viewer-toolbar button:disabled{opacity:.35}.image-viewer-toolbar button:focus-visible{outline:2px solid #cdf05e;outline-offset:2px}
.image-viewer-stage{display:grid;place-items:center;position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none;user-select:none;padding-bottom:env(safe-area-inset-bottom)}
.image-viewer-stage img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;pointer-events:none;will-change:transform}
[data-image-zoom],.bubble img,.product-swatch img,.photo-project-thumb{cursor:zoom-in;touch-action:pan-y}
.showcase-pair-labels{pointer-events:none}

html.image-viewer-open,html.image-viewer-open body{overflow:hidden;overscroll-behavior:none}
