@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes progress-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes slideInFromRight{0%{transform:translateX(20px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-shimmer{animation:shimmer 2s infinite}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .6s ease-out forwards}.animate-scale-in{animation:scaleIn .3s ease-out forwards}.animate-slide-in{animation:slideInFromRight .3s ease-out forwards}.stagger-animate>*{opacity:0}.stagger-animate>:first-child{animation-delay:0s}.stagger-animate>:nth-child(2){animation-delay:.1s}.stagger-animate>:nth-child(3){animation-delay:.2s}.stagger-animate>:nth-child(4){animation-delay:.3s}.stagger-animate>:nth-child(5){animation-delay:.4s}.hover-lift{transition:transform .2s ease-out}.hover-lift:hover{transform:translateY(-2px)}.hover-glow{transition:box-shadow .2s ease-out}.hover-glow:hover{box-shadow:0 0 20px rgba(0,0,0,.1)}.skeleton-loading{position:relative;overflow:hidden;background:#f3f4f6}.skeleton-loading:after{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateX(-100%);background-image:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.2) 20%,rgba(255,255,255,.5) 60%,rgba(255,255,255,0));animation:shimmer 2s infinite;content:""}.card-hover,.smooth-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px rgba(0,0,0,.15)}.animate-in{animation-duration:.35s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.21,1.02,.73,1)}.fade-in{animation-name:fadeIn}.slide-in-from-top-2{animation-name:slideInFromTop}.slide-in-from-right-2{animation-name:slideInFromRight}.zoom-in-95{animation-name:zoomIn}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:background-color,border-color,color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.group:hover .group-hover\:translate-x-0\.5{transform:translateX(.125rem)}html{scroll-behavior:smooth}.focus-visible\:ring-2:focus-visible{--tw-ring-width:2px;box-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus-visible\:ring-brand-blue:focus-visible{--tw-ring-color:rgb(34 64 224)}.focus-visible\:border-transparent:focus-visible{border-color:transparent}.backdrop-blur-sm{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.hover\:bg-brand-blue-50:hover{background-color:rgb(232 237 252)}.hover\:bg-brand-blue-600:hover{background-color:rgb(27 51 179)}.text-brand-blue{color:rgb(34 64 224)}.bg-brand-blue{background-color:rgb(34 64 224)}.bg-brand-blue-50{background-color:rgb(232 237 252)}.border-brand-blue{border-color:rgb(34 64 224)}a,button,input,select,textarea{transition:all .2s ease}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c4c4c4}::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.animate-gradient{background-size:200% 200%;animation:gradient 3s ease infinite}@keyframes gradient{0%,to{background-position:0 50%}50%{background-position:100% 50%}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgba(0,0,0,.05);border-radius:4px}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.dark ::-webkit-scrollbar-track{background:rgba(255,255,255,.05)}.dark ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2)}.dark ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.glass{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.3)}.dark .glass{background:rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.1)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-down{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-backdrop-blur{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:backdrop-filter .8s cubic-bezier(.4,0,.2,1)}.modal-backdrop-blur.active{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@keyframes blur-in{0%{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}@keyframes blur-out{0%{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}to{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}}.modal-backdrop-blur-animated{animation:blur-in .6s ease forwards}.modal-backdrop-blur-animated.exiting{animation:blur-out .3s ease forwards}