/* Dialog grow-from-center styles */
.dialog-backdrop {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0);
  opacity: 0;
  transition: background 220ms ease, opacity 220ms ease;
}
.dialog-backdrop.show {
  background: rgba(0,0,0,0.45);
  opacity: 1;
}

.dialog-panel {
  transform: scale(0.92);
  opacity: 0;
  transition: transform 240ms cubic-bezier(.2,.9,.2,1), opacity 240ms cubic-bezier(.2,.9,.2,1);
  will-change: transform, opacity;
}
.dialog-panel.show {
  transform: scale(1);
  opacity: 1;
}

/* sizing */
.dialog-panel { max-width: 95vw; }
@media (min-width: 768px) { .dialog-panel { max-width: 720px; } }
