button[data-image-viewer-src] { padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; cursor: zoom-in; }
button.assembly-equipment__image-link, button.assembly-quality-equipment__image-link { width: 100%; }
button.image-viewer-flow-trigger { display: block; width: 100%; min-width: 1180px; }
button.image-viewer-text-trigger { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
button[data-image-viewer-src]:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
html.image-viewer-open { overflow: hidden; scrollbar-gutter: stable; }
.image-viewer { position: fixed; inset: 0; box-sizing: border-box; width: 100vw; max-width: none; height: 100vh; height: 100dvh; max-height: none; margin: 0; padding: 0; border: 0; color: #fff; background: transparent; cursor: zoom-out; }
.image-viewer::backdrop { background: rgba(0, 0, 0, .88); }
.image-viewer__close { position: absolute; z-index: 2; top: max(12px, env(safe-area-inset-top)); right: max(16px, env(safe-area-inset-right)); width: 44px; height: 44px; padding: 0; border: 1px solid rgba(255, 255, 255, .65); border-radius: 50%; color: #fff; background: #153e47; font: 32px/1 Arial, sans-serif; cursor: pointer; }
.image-viewer__close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.image-viewer__stage { position: absolute; inset: 72px 24px 60px; overflow: hidden; }
.image-viewer__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: contain; }
.image-viewer--wide .image-viewer__stage { overflow: auto; overscroll-behavior: contain; }
.image-viewer--wide .image-viewer__image { width: max(100%, 1695px); height: auto; }
.image-viewer__hint { position: absolute; right: 20px; bottom: max(16px, env(safe-area-inset-bottom)); left: 20px; margin: 0; color: #fff; font-size: 14px; line-height: 1.4; text-align: center; }
@media (max-width: 640px) {
  .image-viewer__stage { inset: 68px 12px 70px; }
  .image-viewer__hint { right: 12px; left: 12px; font-size: 13px; }
}
