.gallery-dialog{max-height:calc(100svh - 32px);overflow-y:auto}
.gallery-dialog #zoom-title{padding-right:30px}
.zoom-help{font-size:12px;line-height:1.7;color:#73786e;margin:-4px 0 16px}
.zoom-stage{position:relative;width:100%;height:min(60svh,650px);padding:0;overflow:hidden;background:#f4f4f2;touch-action:pan-y}
.zoom-stage.has-magnifier{cursor:crosshair;touch-action:none}
.zoom-stage .zoom-base{display:block;width:100%;height:100%;max-width:none;object-fit:contain;transform:none;user-select:none;-webkit-user-drag:none}
.zoom-lens{position:absolute;z-index:1;overflow:hidden;border-radius:50%;background:#f4f4f2;box-shadow:0 0 0 3px #ffffff,0 6px 28px #17201738;pointer-events:none}
.zoom-lens[hidden]{display:none}
.zoom-stage .zoom-lens img{position:absolute;max-width:none;object-fit:fill;transform:none;user-select:none;-webkit-user-drag:none}
.zoom-toolbar [data-zoom-toggle][aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.zoom-toolbar [data-zoom-toggle]:hover{background:#e9eee0;color:var(--ink)}
@media(max-width:700px){
 .gallery-dialog{width:calc(100% - 24px);padding:22px 16px;max-height:calc(100svh - 24px)}
 .gallery-dialog #zoom-title{font-size:20px;line-height:1.45;letter-spacing:-.3px;padding-right:24px;margin-bottom:14px}
 .zoom-help{font-size:11px;margin-bottom:14px}
 .zoom-stage{height:min(55svh,540px)}
 .zoom-toolbar{gap:10px;font-size:12px;margin-top:16px}
 .zoom-toolbar button{min-height:42px;padding:9px 12px;white-space:nowrap}
 .zoom-toolbar [data-zoom-toggle]{font-size:11px;padding-inline:10px}
}
