/* Shared native motion; no layout is hidden pending JavaScript. */
@keyframes dmBackdropEnter{from{background-color:rgba(0,0,0,0)}to{background-color:rgba(0,0,0,.6)}}
dialog[data-workspace-dialog][open]::backdrop,dialog[data-template-preview-dialog][open]::backdrop{animation:dmBackdropEnter .15s ease-out both}
@media(max-width:767px){.app-sidebar.dm-v4-closing,html.phone-layout .app-sidebar.dm-v4-closing{display:flex!important;width:min(85vw,288px);z-index:90;box-shadow:0 0 0 100vmax #0009}.app-sidebar.dm-v4-closing .dm-v4-sidebar-close{display:inline-flex}}
@media(prefers-reduced-motion:reduce){html:not([data-dm-motion="on"]){scroll-behavior:auto!important}html:not([data-dm-motion="on"]) *,html:not([data-dm-motion="on"]) *::before,html:not([data-dm-motion="on"]) *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important} }

/* V4.3: explicit nested source reveals; no-JS remains fully visible. */
[data-dm-reveal-state="pending"]{opacity:0;transform:translateY(10px) scale(.97)}
@media(prefers-reduced-motion:reduce){html:not([data-dm-motion="on"]) [data-dm-reveal-state="pending"]{opacity:1;transform:none}}

/* An explicit Off is also effective when the OS allows animations. */
html[data-dm-motion="off"],html[data-dm-motion="off"] *,html[data-dm-motion="off"] *::before,html[data-dm-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-dm-motion="off"] [data-dm-reveal-state="pending"]{opacity:1;transform:none}
.dm-motion-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 0;font-size:13px}.dm-motion-controls select{background:inherit;color:inherit;border:1px solid currentColor;border-radius:8px;padding:8px}.dm-motion-controls button,.dm-motion-controls a{padding:8px;border:1px solid currentColor;border-radius:8px}.dm-motion-controls small{flex-basis:100%}
