.media-stage .gallery-zoom{position:absolute;z-index:3;top:14px;right:14px;display:flex;align-items:center;gap:7px;min-height:44px;padding:10px 13px;border:1px solid #dedfd9;border-radius:24px;background:#fffffff2;color:#20231f;font-size:12px;cursor:zoom-in}
.gallery-zoom svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6}
.detail-media-slide img.detail-image{cursor:zoom-in}
dialog.image-zoom-dialog{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#fff;color:#20231f;overflow:hidden;overscroll-behavior:contain}
dialog.image-zoom-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}
.image-zoom-dialog::backdrop{background:#fff}
.image-zoom-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left));border-bottom:1px solid #e5e5df;min-height:68px}
.image-zoom-header>div{min-width:0;display:grid;gap:4px}
.image-zoom-title{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.image-zoom-count{font-size:12px;color:#64695f}
.image-zoom-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#f2f3ef;color:#20231f;font-size:29px}
.image-zoom-viewport{position:relative;width:100%;min-width:0;min-height:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;background:#fafaf8}
.image-zoom-viewport.is-zoomed{cursor:grab}
.image-zoom-viewport.is-zoomed.is-dragging{cursor:grabbing}
.image-zoom-photo{position:absolute;left:50%;top:50%;max-width:none;min-height:0;object-fit:contain;transform-origin:center;will-change:transform;pointer-events:none}
.image-zoom-status{position:absolute;left:20px;right:20px;top:45%;text-align:center;font-size:14px;color:#64695f;pointer-events:none}
.image-zoom-toolbar{display:flex;color:#20231f;align-items:center;justify-content:space-between;gap:12px;padding:10px max(18px,env(safe-area-inset-right)) 4px max(18px,env(safe-area-inset-left));border-top:1px solid #e5e5df;background:#fff;font-size:14px;line-height:1.4}
.image-zoom-navigation,.image-zoom-controls{display:flex;align-items:center;gap:8px}
.image-zoom-toolbar button{display:grid;place-items:center;min-width:44px;height:44px;padding:8px;border:1px solid #dfe1da;border-radius:50%;font-size:25px}
.image-zoom-toolbar button:disabled{opacity:.35}
.image-zoom-toolbar [data-zoom-reset]{border-radius:20px;padding:8px 14px;font-size:12px;white-space:nowrap}
.image-zoom-level{font-size:13px;font-variant-numeric:tabular-nums;min-width:48px;text-align:center}
.image-zoom-help{margin:0;padding:8px 18px max(12px,env(safe-area-inset-bottom));font-size:12px;line-height:1.5;text-align:center;color:#64695f;background:#fff}
@media(max-width:600px){.media-stage .gallery-zoom{top:10px;right:10px;padding:9px 12px;font-size:11px}.image-zoom-header{padding-top:max(8px,env(safe-area-inset-top));min-height:64px}.image-zoom-title{font-size:12px}.image-zoom-toolbar{gap:6px;padding-left:10px;padding-right:10px}.image-zoom-navigation,.image-zoom-controls{gap:4px}.image-zoom-level{min-width:43px}.image-zoom-help{font-size:11px;padding-left:12px;padding-right:12px}}
@media(max-width:360px){.image-zoom-toolbar [data-zoom-reset]{padding:8px;font-size:11px}.image-zoom-toolbar{padding-left:6px;padding-right:6px;gap:2px}.image-zoom-navigation,.image-zoom-controls{gap:2px}.image-zoom-level{min-width:38px}}
