@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInFromRight{0%{opacity:0;transform:translate(40px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes fadeInFromLeft{0%{opacity:0;transform:translate(-40px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes fadeOutToLeft{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-30px) scale(.98)}}@keyframes fadeOutToRight{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(30px) scale(.98)}}@keyframes crossFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes crossFadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}:root{--ease-calm: cubic-bezier(.4, 0, .2, 1);--ease-smooth: cubic-bezier(.25, .1, .25, 1);--ease-gentle: cubic-bezier(.33, 0, .2, 1);--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s}.page-transition-enter{animation:fadeInUp var(--duration-slow) var(--ease-calm)}.page-transition-exit{animation:fadeIn var(--duration-normal) var(--ease-calm) reverse}.btn-hover{position:relative;overflow:hidden;transition:all var(--duration-normal) var(--ease-calm)}.btn-hover:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff1a;transform:translate(-50%,-50%);transition:width var(--duration-slow) var(--ease-calm),height var(--duration-slow) var(--ease-calm)}.btn-hover:hover:before{width:300px;height:300px}.btn-hover:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.btn-hover:active{transform:translateY(0);transition-duration:var(--duration-fast)}.card-hover{transition:all var(--duration-normal) var(--ease-calm)}.card-hover:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 12px 24px #00000014}.ripple{position:relative;overflow:hidden}.ripple-circle{position:absolute;border-radius:50%;background:#ffffff80;pointer-events:none;transform:scale(0);animation:ripple-expand .65s ease-out;z-index:1;mix-blend-mode:normal}.dark .ripple-circle{background:#ffffff4d}.ripple-dark .ripple-circle{background:#0003}.dark .ripple-dark .ripple-circle{background:#00000040}@keyframes ripple-expand{0%{transform:scale(0);opacity:.6}50%{opacity:.3}to{transform:scale(2.5);opacity:0}}.focus-calm:focus{outline:none;box-shadow:0 0 0 3px #3b82f633;transition:box-shadow var(--duration-normal) var(--ease-calm)}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.skeleton{animation:shimmer 1.5s infinite linear;background:linear-gradient(to right,#f0f0f0 4%,#f8f8f8 25%,#f0f0f0 36%);background-size:1000px 100%}.dark .skeleton{background:linear-gradient(to right,#2d2d2d 4%,#3d3d3d 25%,#2d2d2d 36%);background-size:1000px 100%}.stagger-item{animation:fadeInUp var(--duration-normal) var(--ease-calm) backwards}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}.stagger-item:nth-child(9){animation-delay:.4s}.stagger-item:nth-child(10){animation-delay:.45s}.modal-overlay{animation:fadeIn var(--duration-slow) var(--ease-calm)}.modal-content{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.accordion-content-enter{animation:accordionExpand .3s cubic-bezier(.4,0,.2,1) forwards;overflow:hidden}.accordion-content-exit{animation:accordionCollapse .25s cubic-bezier(.4,0,.2,1) forwards;overflow:hidden}@keyframes accordionExpand{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:500px;transform:translateY(0)}}@keyframes accordionCollapse{0%{opacity:1;max-height:500px}to{opacity:0;max-height:0}}html{scroll-behavior:smooth}.page-transition{will-change:transform,opacity;backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input:focus,textarea:focus,select:focus{transition:all var(--duration-normal) var(--ease-calm)}[disabled]{opacity:.5;cursor:not-allowed;transition:opacity var(--duration-normal) var(--ease-calm)}.lift-on-hover{transition:transform var(--duration-normal) var(--ease-calm),box-shadow var(--duration-normal) var(--ease-calm)}.lift-on-hover:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}@keyframes pulse-calm{0%,to{opacity:1}50%{opacity:.6}}.pulse-calm{animation:pulse-calm 2s var(--ease-calm) infinite}.press-scale:active{transform:scale(.98);transition:transform var(--duration-fast) var(--ease-calm)}.animate-slide-in-right{animation:slideInRightBounce .5s cubic-bezier(.34,1.56,.64,1);animation-fill-mode:both}@keyframes slideInRightBounce{0%{opacity:0;transform:translate(100px) scale(.9)}60%{opacity:1;transform:translate(-8px) scale(1.02)}80%{transform:translate(4px) scale(.99)}to{transform:translate(0) scale(1)}}.toast-shake{animation:toastShake .5s cubic-bezier(.36,.07,.19,.97) .1s}@keyframes toastShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes checkmark-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.checkmark-pop{animation:checkmark-pop .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.confetti-piece{animation:confetti-fall 3s ease-in forwards}@keyframes task-complete{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1);opacity:.6}}.task-complete-anim{animation:task-complete .5s ease-out}@keyframes save-pulse{0%{transform:scale(1);opacity:0}50%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:0}}.save-pulse{animation:save-pulse .6s ease-out}.focus-visible-ring:focus-visible{outline:3px solid rgb(59,130,246);outline-offset:2px;transition:outline var(--duration-fast) var(--ease-calm)}.dark .focus-visible-ring:focus-visible{outline:3px solid rgb(147,197,253)}@keyframes scale-in{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.animate-scale-in{animation:scale-in .3s cubic-bezier(.175,.885,.32,1.275)}@keyframes subtle-glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.05)}}.field-tab-selected{animation:subtle-glow 2s ease-in-out infinite}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-calm)}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}:root{--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-spring-gentle: cubic-bezier(.25, 1.25, .5, 1)}@keyframes pillSlide{0%{transform:scaleX(.8)}50%{transform:scaleX(1.05)}to{transform:scaleX(1)}}.nav-pill-indicator{transition:left .3s var(--ease-spring),width .3s var(--ease-spring)}@keyframes sidebarExpand{0%{width:64px}to{width:240px}}@keyframes sidebarCollapse{0%{width:240px}to{width:64px}}@keyframes labelFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.sidebar-label-enter{animation:labelFadeIn .2s var(--ease-calm) .1s backwards}@keyframes dockIconMagnify{0%{transform:scale(1) translateY(0)}to{transform:scale(1.2) translateY(-8px)}}.dock-icon-hover{transition:transform .2s var(--ease-calm)}.dock-icon-hover:hover{transform:scale(1.15) translateY(-6px)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipFadeInRight{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.nav-tooltip-enter{animation:tooltipFadeIn .15s var(--ease-calm)}.nav-tooltip-right-enter{animation:tooltipFadeInRight .15s var(--ease-calm)}@keyframes mobileMenuSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileMenuSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.mobile-menu-enter{animation:mobileMenuSlideIn .2s var(--ease-calm)}.mobile-menu-exit{animation:mobileMenuSlideOut .15s var(--ease-calm)}@keyframes drawerSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes drawerSlideOut{0%{transform:translate(0)}to{transform:translate(-100%)}}.drawer-enter{animation:drawerSlideIn .3s var(--ease-calm)}.drawer-exit{animation:drawerSlideOut .25s var(--ease-calm)}@keyframes dotPop{0%{transform:translate(-50%) scale(0)}60%{transform:translate(-50%) scale(1.3)}to{transform:translate(-50%) scale(1)}}.nav-dot-enter{animation:dotPop .3s var(--ease-spring)}@keyframes glassShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.glass-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);background-size:200% 100%;animation:glassShimmer 3s ease-in-out infinite}@keyframes floatNavEnter{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.floating-nav-enter{animation:floatNavEnter .4s var(--ease-calm)}@keyframes dockEnter{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.dock-enter{animation:dockEnter .4s var(--ease-calm)}@keyframes sideTabsEnter{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.side-tabs-enter{animation:sideTabsEnter .3s var(--ease-calm)}.safe-area-pb{padding-bottom:env(safe-area-inset-bottom,0)}@keyframes bounceSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-bounce-subtle{animation:bounceSubtle 2s ease-in-out infinite}
