/* Original-image viewer only. The page layout uses the source site's CSS. */
.image-view-button { cursor: zoom-in; }
.image-viewer {
  position: fixed; inset: 0; z-index: 1100; padding: 24px;
  background: rgba(6, 3, 12, .94); display: grid; place-items: center;
}
.image-viewer[hidden] { display: none; }
.image-viewer-panel { max-width: 100%; max-height: 100%; overflow: auto; text-align: center; }
.image-viewer img {
  display: block; max-width: min(100%, 760px); max-height: calc(100dvh - 120px);
  width: auto; height: auto; margin: auto; object-fit: contain;
}
.image-viewer-caption { font-size: 15px; color: var(--muted); margin-top: 14px; }
.image-viewer-close {
  position: absolute; top: 18px; right: 18px; width: 48px; height: 48px;
  border: 1px solid var(--border-strong); border-radius: 50%;
  background: #fffdf9; color: var(--text); font-size: 30px; cursor: pointer;
}
@media (max-width: 600px) {
  .image-viewer { padding: 64px 16px 20px; }
}
