html.modal-scroll-locked{overflow:hidden;overscroll-behavior:none}
html.modal-scroll-locked body{position:fixed;top:var(--modal-scroll-y);left:0;right:0;width:100%;padding-right:var(--modal-scrollbar);overflow:hidden}
.dialog{overscroll-behavior:contain}
.dialog.modal-entering{animation:modal-enter 240ms cubic-bezier(.2,.65,.3,1) both}
.dialog.modal-leaving{animation:modal-exit 180ms ease-in both;pointer-events:none}
.dialog.modal-entering::backdrop{animation:modal-backdrop-in 240ms ease both}
.dialog.modal-leaving::backdrop{animation:modal-backdrop-out 180ms ease both}
@keyframes modal-enter{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes modal-exit{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(12px) scale(.985)}}
@keyframes modal-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes modal-backdrop-out{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.dialog.modal-entering,.dialog.modal-leaving,.dialog.modal-entering::backdrop,.dialog.modal-leaving::backdrop{animation:none}}
@media print{html.modal-scroll-locked body{position:static;padding-right:0;overflow:visible}}
