/* Preserve each dialog's design while the shared controller owns its motion. */
dialog[data-dime-dialog-motion]{animation:none!important}
dialog[data-dime-dialog-motion="opening"]::backdrop{animation:dime-dialog-backdrop-in .32s cubic-bezier(.22,.8,.25,1) both}
dialog[data-dime-dialog-motion="closing"]::backdrop{animation:dime-dialog-backdrop-out .24s cubic-bezier(.22,.8,.25,1) both}
@keyframes dime-dialog-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes dime-dialog-backdrop-out{from{opacity:1}to{opacity:0}}
/* The age check keeps its immediate verification/media handoff. */
@media(prefers-reduced-motion:no-preference){.age-gate:not([hidden]) .age-gate__panel{animation:dime-age-panel-in .32s cubic-bezier(.22,.8,.25,1) both}}
@keyframes dime-age-panel-in{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){dialog[data-dime-dialog-motion]::backdrop{animation:none!important}}
