.document-gallery-open { overflow: hidden; }
.document-dialog .ash-dialog__panel { grid-template-rows: auto minmax(0, 1fr) auto; }
.document-dialog .ash-dialog__header { align-items: flex-start; }
.document-dialog h2 { margin: 0; font-size: var(--ash-font-size-card-title); line-height: var(--ash-line-height-heading); }
.document-dialog [data-document-counter] { margin: var(--ash-space-2) 0 0; color: var(--ash-color-text-muted); }
.document-dialog .ash-dialog__header > div { min-width: 0; flex: 1; }
.document-dialog [data-document-close] { flex-shrink: 0; width: auto; }
.document-dialog .ash-dialog__body { background: var(--ash-color-surface-muted); }
.document-dialog__stage { overflow: auto; min-height: 0; max-height: 62dvh; }
.document-dialog__stage img { display: block; width: auto; max-width: 100%; max-height: 62dvh; margin: auto; object-fit: contain; }
.document-dialog__stage.is-zoomed img { max-width: none; max-height: none; margin: 0 auto; }
.document-dialog [hidden] { display: none !important; }
.document-dialog button:disabled { opacity: .5; cursor: default; }
.document-dialog .ash-dialog__footer { flex-wrap: wrap; }
@media (max-width: 767px) {
  .document-dialog .ash-dialog__header, .document-dialog .ash-dialog__body, .document-dialog .ash-dialog__footer { padding: var(--ash-space-4); gap: var(--ash-space-3); }
  .document-dialog .ash-dialog__footer { display: grid; grid-template-columns: 1fr 1fr; }
  .document-dialog [data-document-zoom] { grid-column: 1 / -1; grid-row: 2; }
  .document-dialog .ash-button { padding-inline: var(--ash-space-4); }
}
