/* Keep the complete original page in view, including in Safari's flex layout. */
.statement-dialog {
  width: min(620px, calc(100vw - 32px));
  width: min(620px, calc(100vw - 32px), max(360px, calc((100svh - 240px) * .773 + 32px)));
  max-width: none;
  max-height: calc(100vh - 32px);
  max-height: calc(100svh - 32px);
}
.statement-dialog[open] {
  height: calc(100vh - 32px);
  height: calc(100svh - 32px);
}
.statement-dialog .dialog-bar { gap: 12px; padding: 12px 16px; }
.dialog-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.dialog-original { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.dialog-original:hover { text-decoration: underline; text-underline-offset: 4px; }
.statement-dialog .dialog-close { width: 44px; height: 44px; flex-shrink: 0; }
.statement-dialog .dialog-scroll { display: flex; flex-direction: column; flex: 1; min-height: 0; overflow: hidden; }
.statement-dialog .dialog-paper { display: flex; flex: 1; min-height: 0; padding: 12px 16px 8px; }
#dialogImage { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; object-position: center; box-shadow: none; filter: drop-shadow(0 2px 6px #00000016); }
.statement-dialog .dialog-caption { flex-shrink: 0; margin: 0; padding: 2px 16px 10px; font-size: 12px; line-height: 1.5; }
.statement-dialog .dialog-navigation { padding: 4px 12px 8px; }
.statement-dialog .dialog-controls { display: flex; align-items: center; gap: 8px; margin-bottom: 2px; }
.statement-dialog .dialog-arrow { min-width: 44px; min-height: 44px; font-size: 13px; }
.statement-dialog .dialog-counter { font-size: 13px; padding: 0; }
.statement-dialog .dialog-thumbnails { gap: 8px; padding: 2px 2px 6px; }
.statement-dialog .dialog-thumbnail { flex: 0 0 195px; justify-content: flex-start; min-height: 58px; padding: 7px 10px; gap: 10px; }
.statement-dialog .dialog-thumbnail img { display: block; width: 30px; height: 39px; }
.statement-dialog .dialog-thumbnail small { font-size: 12px; line-height: 1.3; letter-spacing: 0; }
.statement-dialog .dialog-thumbnail strong { font-size: 16px; line-height: 1.3; }
.statement-dialog .thumbnail-period { display: none; }
@media (max-width: 540px) {
  .statement-dialog { width: calc(100% - 20px); max-height: calc(100svh - 24px); }
  .statement-dialog[open] { height: calc(100vh - 24px); height: min(calc(100svh - 24px), calc((100vw - 44px) * 1.295 + 238px)); }
  .statement-dialog .dialog-bar { padding: 8px 12px; gap: 8px; }
  .statement-dialog .dialog-bar .micro { font-size: 12px; letter-spacing: .08em; }
  .statement-dialog .dialog-bar h2 { font-size: 12px; line-height: 1.35; }
  .dialog-actions { gap: 8px; }
  .statement-dialog .dialog-paper { padding: 10px 12px 6px; }
  .statement-dialog .dialog-caption { padding: 2px 12px 8px; }
  .statement-dialog .dialog-arrow span { display: none; }
}
/* Short landscape displays keep arrows available and give the page more room. */
@media (max-height: 520px) {
  .statement-dialog .dialog-bar { padding-block: 6px; }
  .statement-dialog .dialog-bar .micro { display: none; }
  .statement-dialog .dialog-bar h2 { margin: 0; }
  .statement-dialog .dialog-thumbnails { display: none; }
  .statement-dialog .dialog-caption { padding-bottom: 4px; }
  .statement-dialog .dialog-navigation { padding-block: 2px; }
}
