/* Shadow motion adds feedback without changing its colors or glass surfaces. */
html[data-skin="glass"][data-motion="soft"]{
 --shadow-ease:cubic-bezier(.22,1,.36,1);
}
html[data-skin="glass"][data-motion="soft"] :is(.btn,.workspace-nav .nav,.sw-toolbar button,.sw-new,.sw-thread,.sw-modes button,.sw-send,.sw-stop,.sw-starters button,.dev-session-tabs button,.dev-review-tabs button,.dev-job,.shadow-home-tools button,.shadow-home-links a,.shadow-setup button,.login button){
 transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease,translate 180ms var(--shadow-ease),scale 180ms var(--shadow-ease);
}
html[data-skin="glass"][data-motion="soft"] :is(.sw-composer,.shadow-home-composer){transition:border-color 180ms ease,box-shadow 180ms ease}
html[data-skin="glass"][data-motion="soft"] :is(.switch,.group-switch):before{transition:transform 200ms var(--shadow-ease),background-color 160ms ease}
@media(hover:hover) and (pointer:fine){
 html[data-skin="glass"][data-motion="soft"] :is(.btn,.sw-toolbar button,.sw-new,.sw-send,.sw-starters button,.dev-session-tabs button,.shadow-home-links a,.shadow-home-tools button,.shadow-setup button,.login button):hover:not(:disabled){translate:0 -1px}
}
html[data-skin="glass"][data-motion="soft"] :is(.btn,.workspace-nav .nav,.sw-toolbar button,.sw-new,.sw-send,.sw-stop,.sw-starters button,.dev-session-tabs button,.dev-review-tabs button,.shadow-home-tools button,.shadow-setup button,.login button):active:not(:disabled){scale:.98;translate:0 0;transition-duration:90ms}
@keyframes shadow-soft-open{from{opacity:.6;translate:0 5px}to{opacity:1;translate:0 0}}
@keyframes shadow-soft-drawer{from{opacity:.6;translate:-8px 0}to{opacity:1;translate:0 0}}
html[data-skin="glass"][data-motion="soft"] :is(.user-pop:not([hidden]),.friend-menu:not([hidden]),.sw-model-dialog[open],.sw-artifact:not([hidden]),.dev-review-pane:not([hidden])){animation:shadow-soft-open 200ms var(--shadow-ease)}
html[data-skin="glass"][data-motion="soft"] body[data-page="home"] .shadow-home-hero :is(h1,.shadow-hero-sub,.shadow-home-composer){animation:shadow-soft-open 300ms var(--shadow-ease)}
html[data-skin="glass"][data-motion="soft"] :is(.shadow-entry-intro,.login-wrap .login,.shadow-setup main){animation:shadow-soft-open 260ms var(--shadow-ease)}
@media(max-width:780px){
 html[data-skin="glass"][data-motion="soft"] .side.menu-open .workspace-nav,html[data-skin="glass"][data-motion="soft"] .sw-workspace.history-open .sw-history{animation:shadow-soft-drawer 180ms var(--shadow-ease)}
}
.motion-preference{max-width:180px;min-height:40px;padding:8px 10px;border:1px solid var(--v-line2);border-radius:10px;color:var(--v-ink);background:var(--v-surface2);font:inherit;font-size:12px}
/* This local preference also covers animations supplied by existing themes. */
html[data-motion="reduce"] *,html[data-motion="reduce"] *:before,html[data-motion="reduce"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-motion="reduce"] :is(.workspace-nav .nav,.sw-starters button):hover{transform:none!important}
@media(prefers-reduced-motion:reduce){
 html[data-motion] *,html[data-motion] *:before,html[data-motion] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 html[data-motion] :is(.workspace-nav .nav,.sw-starters button):hover{transform:none!important}
}
