@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes glow{0%,to{box-shadow:0 0 5px rgba(239,68,68,.5)}50%{box-shadow:0 0 20px rgba(239,68,68,.8)}}@keyframes glowGoal{0%,to{box-shadow:0 0 5px rgba(22,163,74,.5)}50%{box-shadow:0 0 20px rgba(22,163,74,.8)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-slide-in-right{animation:slideInRight .3s cubic-bezier(0,0,.2,1)}.animate-slide-in-left{animation:slideInLeft .3s cubic-bezier(0,0,.2,1)}.animate-slide-out-right{animation:slideOutRight .3s cubic-bezier(0,0,.2,1)}.animate-fade-in{animation:fadeIn .3s cubic-bezier(0,0,.2,1)}.animate-fade-out{animation:fadeOut .3s cubic-bezier(0,0,.2,1)}.animate-fade-in-slow{animation:fadeIn .5s cubic-bezier(0,0,.2,1)}.animate-scale-in{animation:scaleIn .3s cubic-bezier(0,0,.2,1)}.animate-scale-out{animation:scaleOut .3s cubic-bezier(0,0,.2,1)}.animate-glow{animation:glow 2s cubic-bezier(.4,0,.6,1) infinite}.animate-glow-goal{animation:glowGoal 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s cubic-bezier(.4,0,.6,1) infinite}.animate-shake{animation:shake .5s cubic-bezier(.4,0,.6,1)}.animate-spin{animation:spin 1s linear infinite}.transition-all{transition:all .3s cubic-bezier(0,0,.2,1)}.transition-opacity{transition:opacity .3s cubic-bezier(0,0,.2,1)}.transition-transform{transition:transform .3s cubic-bezier(0,0,.2,1)}.transition-colors{transition:background-color .3s cubic-bezier(0,0,.2,1),color .3s cubic-bezier(0,0,.2,1),border-color .3s cubic-bezier(0,0,.2,1)}.transition-fast{transition-duration:.15s}.transition-slow{transition-duration:.5s}.hover-lift{transition:transform .3s cubic-bezier(0,0,.2,1),box-shadow .3s cubic-bezier(0,0,.2,1)}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.hover-scale{transition:transform .3s cubic-bezier(0,0,.2,1)}.hover-scale:hover{transform:scale(1.05)}.hover-opacity{transition:opacity .3s cubic-bezier(0,0,.2,1)}.hover-opacity:hover{opacity:.8}@keyframes highlight-fade{0%{background-color:rgba(37,99,235,.1);border-left-color:#2563eb}to{background-color:transparent;border-left-color:#d1d5db}}.highlight-recent{animation:highlight-fade 120s cubic-bezier(0,0,.2,1) forwards}@keyframes new-event-flash{0%,to{background-color:transparent}50%{background-color:rgba(22,163,74,.2)}}.new-event-flash{animation:new-event-flash .5s cubic-bezier(0,0,.2,1) 3}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg,#f3f4f6,#e5e7eb 40px,#f3f4f6 80px);background-size:200px 100%;animation:skeleton-loading 1.5s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.stagger-item{opacity:0;animation:fadeIn .3s cubic-bezier(0,0,.2,1) forwards}.stagger-item:first-child{animation-delay:.05s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}.stagger-item:nth-child(7){animation-delay:.35s}.stagger-item:nth-child(8){animation-delay:.4s}.stagger-item:nth-child(9){animation-delay:.45s}.stagger-item:nth-child(10){animation-delay:.5s}