/* Dialog and backdrop use the same quiet opacity change; native focus stays intact. */
dialog[data-forge-dialog-phase='opening']::backdrop {
  animation: forge-dialog-backdrop-in 340ms cubic-bezier(0.32, 0, 0.24, 1) both;
}
dialog[data-forge-dialog-phase='closing']::backdrop {
  animation: forge-dialog-backdrop-out 300ms cubic-bezier(0.32, 0, 0.24, 1) both;
}
[data-forge-motion-layer] {
  pointer-events: none;
}
@keyframes forge-dialog-backdrop-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes forge-dialog-backdrop-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  dialog::backdrop {
    animation: none !important;
  }
}
