:root{--motion-fast:120ms;--motion-page:160ms;--motion-ease:cubic-bezier(.2,.75,.25,1)}
.btn,.live-picks button,.live-call-tabs button,.live-nav a,.norm-toc-item,.norm-back,.location-option,.hour-column,.heat-cell,.staff-band-grid button{
 transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),opacity var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);
}
.btn:not(:disabled):active,.live-picks button:not(:disabled):active,.live-call-tabs button:not(:disabled):active{transform:translateY(1px)}
.checks label,.order-grants label,label.answer,.choice-option,.field,input,select,textarea,.career-stage,.career-check,.career-milestone-icon,.career-milestone-check{
 transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease);
}
a.row,.live-call-row,.career-shift,.body-zone{transition:background-color var(--motion-fast) var(--motion-ease)}
.live-human svg [fill]{transition:fill var(--motion-fast) var(--motion-ease)}
.career-condition-track>span,.career-mini-track>span{transition:width var(--motion-page) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease)}
.career-disclosure{transition:transform var(--motion-page) var(--motion-ease)}
#live-app{transition:opacity var(--motion-fast) var(--motion-ease)}
.auth-page,.auth-progress-card,.location-options,#live-status,.preview-toast{animation:ems-soft-enter var(--motion-page) var(--motion-ease)}
#live-status,.preview-toast{animation-name:ems-toast-enter}
#live-modal[open]::backdrop{animation:ems-backdrop-enter var(--motion-page) var(--motion-ease) both}
#live-modal[data-motion-closing]::backdrop{animation:ems-backdrop-exit 100ms var(--motion-ease) both}
@keyframes ems-soft-enter{from{opacity:0;translate:0 4px}to{opacity:1;translate:0 0}}
@keyframes ems-toast-enter{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@keyframes ems-backdrop-enter{from{background-color:transparent}to{background-color:#10272665}}
@keyframes ems-backdrop-exit{from{background-color:#10272665}to{background-color:transparent}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{
 *,*::before,*::after{animation:none!important;transition:none!important}
}
