/* Capturas de tela ampliáveis: ver zoom-imagem.js */
.main-content a.zoom-imagem { display: inline-block; max-width: 100%; cursor: zoom-in; }
.main-content a.zoom-imagem:focus-visible { outline: 3px solid #1d6fe0; outline-offset: 2px; }

dialog.zoom-dialog {
  position: fixed; inset: 0; margin: 0; padding: 0; border: 0;
  width: 100vw; max-width: 100vw; height: 100vh; height: 100dvh; max-height: 100dvh;
  background: rgba(0, 0, 0, .96); color: #fff; overflow: hidden;
}
dialog.zoom-dialog::backdrop { background: rgba(0, 0, 0, .96); }
.zoom-dialog .zoom-area {
  position: absolute; inset: 0; overflow: auto; -webkit-overflow-scrolling: touch;
  display: flex; padding: 56px 12px 12px; box-sizing: border-box;
}
.zoom-dialog .zoom-area img {
  margin: auto; background: #fff; border-radius: 4px; cursor: zoom-in;
  max-width: 100%; max-height: 100%; width: auto; height: auto; flex: none;
}
.zoom-dialog.zoom-cheio .zoom-area img { max-width: none; max-height: none; cursor: zoom-out; }
.zoom-dialog .zoom-barra {
  position: absolute; top: 0; left: 0; right: 0; z-index: 1; display: flex; gap: 8px;
  justify-content: flex-end; padding: 8px 12px; pointer-events: none;
}
.zoom-dialog .zoom-barra button {
  pointer-events: auto; font: inherit; font-size: 15px; line-height: 1; min-height: 44px; min-width: 44px;
  padding: 0 14px; color: #fff; background: rgba(40, 40, 40, .95);
  border: 1px solid rgba(255, 255, 255, .6); border-radius: 8px; cursor: pointer;
}
.zoom-dialog .zoom-barra button:hover { background: #000; }
.zoom-dialog .zoom-barra button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
body.zoom-aberto { overflow: hidden; }
