/* DS 2.6 — presentation only. No calendar cell/event selectors. */
:root{--ds-motion-feedback:160ms;--ds-motion-selection:320ms;--ds-motion-enter:420ms;--ds-motion-exit:220ms;--ds-motion-ease:cubic-bezier(.22,1,.36,1)}
.app-sidebar{transition:transform var(--ds-motion-enter) var(--ds-motion-ease)}
.app-shell .container,.app-shell .topbar{transition:none}
.sidebar-collapse .ui-icon{transition:transform var(--ds-motion-selection) var(--ds-motion-ease)}
.sidebar-collapsed .sidebar-collapse .ui-icon{transform:rotate(180deg)}
.btn{transition:transform var(--ds-motion-feedback) var(--ds-motion-ease),box-shadow var(--ds-motion-feedback),background var(--ds-motion-feedback)}
@media(hover:hover){.btn:hover:not(:disabled):not([aria-busy=true]){transform:translateY(-2px)}}
.btn:active:not(:disabled){transform:translateY(0) scale(.97)}
.btn[aria-busy=true]{transform:none}
.ds-motion-rail{position:relative;isolation:isolate}
.ds-motion-rail>a,.ds-motion-rail>button{position:relative;z-index:1}
.ds-motion-rail .ds-motion-marker{position:absolute;top:0;left:0;z-index:0;background:#111;border-radius:999px;pointer-events:none;transition:transform var(--ds-motion-selection) var(--ds-motion-ease),width var(--ds-motion-selection) var(--ds-motion-ease),height var(--ds-motion-selection) var(--ds-motion-ease)}
.ds-motion-rail.ds-motion-ready>a.active,.ds-motion-rail.ds-motion-ready>button.active,.ds-motion-rail.ds-motion-ready>[aria-selected=true]{background:transparent!important;color:#fff!important;box-shadow:none}
.ds-motion-rail .active .ui-icon{filter:brightness(0) invert(1)}
.side-nav.ds-motion-navigating{background:#fff}
.side-nav.ds-motion-navigating>a,.side-nav.ds-motion-navigating>a.active,.side-nav.ds-motion-navigating>a:hover{background:transparent!important;color:#fff!important;mix-blend-mode:difference}
.side-nav.ds-motion-navigating>a .ui-icon{filter:brightness(0) invert(1)!important}
.settings-tabs{gap:4px;padding:5px;border:0;border-radius:999px;background:#fff;box-shadow:0 5px 18px #24241812}
.settings-tabs button{min-height:44px;padding:0 16px;border-radius:999px;color:#242424;font-weight:500;transition:background var(--ds-motion-feedback),color var(--ds-motion-feedback)}
.settings-tabs button:hover:not(.active){background:#f0efe9;color:#111}
.settings-tabs button.active{background:#111;color:#fff;box-shadow:none}
.settings-tabs button.active .ui-icon{filter:brightness(0) invert(1)}
@media(max-width:760px){.settings-tabs button{min-width:44px;padding:0 13px}}
.topbar-drawer{transition:transform var(--ds-motion-exit) var(--ds-motion-ease)}
.topbar-drawer.open{transition-duration:var(--ds-motion-enter)}
.topbar-drawer.ds-enter{animation:none}
/* Discrete transitions let modern browsers animate hidden without delaying handlers. */
@supports(transition-behavior:allow-discrete){
 .modal-backdrop,.ds-shade,.agenda-more-actions-menu{opacity:1;transition:opacity var(--ds-motion-exit),display var(--ds-motion-exit) allow-discrete}
 .modal-backdrop[hidden],.ds-shade[hidden],.agenda-more-actions-menu[hidden]{opacity:0}
 .modal-backdrop .modal-card{transform:none;transition:transform var(--ds-motion-exit) var(--ds-motion-ease)}
 .modal-backdrop[hidden] .modal-card{transform:translateY(12px) scale(.98)}
 .modal-backdrop.ds-enter{animation:none}
 @starting-style{.modal-backdrop,.ds-shade,.agenda-more-actions-menu{opacity:0}.modal-backdrop .modal-card{transform:translateY(20px) scale(.96)}}
}
@media(prefers-reduced-motion:reduce){.app-sidebar,.app-shell .container,.btn,.ds-motion-marker,.topbar-drawer,.modal-backdrop,.modal-card,.ds-shade,.agenda-more-actions-menu{animation:none!important;transition:none!important}}
