@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn-hover-lift{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1)}.btn-hover-lift:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-hover-scale{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}.btn-hover-scale:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.btn-hover-scale:active,.btn-hover-scale:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-hover-scale:active{--tw-scale-x:.95;--tw-scale-y:.95}.card-hover-lift{cursor:pointer;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1)}.card-hover-lift:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.card-hover-glow{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1);position:relative;overflow:hidden}.card-hover-glow:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.card-hover-glow:hover:before{left:100%}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border-radius:50%;border:2px solid #fff;border-top-color:transparent;animation:btn-loading-spinner .8s linear infinite}@keyframes btn-loading-spinner{to{transform:rotate(1turn)}}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{transition:opacity .3s,transform .3s}.page-transition-enter-active,.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s}@keyframes success-checkmark{0%{stroke-dashoffset:100;opacity:0}50%{opacity:1}to{stroke-dashoffset:0;opacity:1}}.success-checkmark{stroke-dasharray:100;animation:success-checkmark .8s ease-out forwards}@keyframes celebration-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.celebration-pulse{animation:celebration-pulse 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:0;transform:scale(0) rotate(0deg)}50%{opacity:1;transform:scale(1) rotate(180deg)}}.sparkle{animation:sparkle 1.5s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-animation{animation:float 3s ease-in-out infinite}@keyframes gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-text-animate{background:linear-gradient(270deg,gold,#ff69b4,#9b59b6,gold);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 3s ease infinite}.input-focus-glow{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}.input-focus-glow:focus{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1));--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:rgb(192 132 252/var(--tw-ring-opacity,1));--tw-ring-opacity:0.5}@keyframes badge-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.05)}}.badge-bounce{animation:badge-bounce .5s ease-out}@keyframes slide-in-right{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.notification-slide-in{animation:slide-in-right .3s ease-out forwards}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}@keyframes milestone-appear{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.1) rotate(10deg)}to{transform:scale(1) rotate(0deg);opacity:1}}.milestone-appear{animation:milestone-appear .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes points-increment{0%{transform:scale(1)}50%{transform:scale(1.3);color:gold}to{transform:scale(1)}}.points-increment{animation:points-increment .4s ease-out}@keyframes ripple{to{transform:scale(4);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:hsla(0,0%,100%,.5);transform:translate(-50%,-50%);animation:ripple .6s ease-out}@keyframes calendar-flip{0%{transform:rotateX(0deg)}50%{transform:rotateX(90deg)}to{transform:rotateX(0deg)}}.calendar-flip{animation:calendar-flip .6s ease-in-out}@keyframes toast-pop{0%{transform:scale(.8) translateY(100%);opacity:0}80%{transform:scale(1.05) translateY(0)}to{transform:scale(1) translateY(0);opacity:1}}.toast-pop{animation:toast-pop .4s cubic-bezier(.68,-.55,.265,1.55)}.hover-shine{position:relative;overflow:hidden}.hover-shine:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,hsla(0,0%,100%,.1) 50%,transparent 70%);transform:rotate(45deg) translate(-100%,-100%);transition:transform .6s}.hover-shine:hover:before{transform:rotate(45deg) translate(100%,100%)}@media (max-width:768px){.btn-hover-scale:active{--tw-scale-x:.95;--tw-scale-y:.95}.btn-hover-scale:active,.card-hover-lift:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.1s}.card-hover-lift:active{--tw-scale-x:0.98;--tw-scale-y:0.98}}@keyframes gentle-up{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.scroll-icon-up{animation:gentle-up 2s ease-in-out infinite}@keyframes scroll-indicator-fade-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@keyframes scroll-indicator-fade-out{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}.scroll-indicator-fade-in{animation:scroll-indicator-fade-in .3s ease-out forwards}.scroll-indicator-fade-out{animation:scroll-indicator-fade-out .3s ease-out forwards}:root{--celebration-gold:gold;--celebration-pink:#ff69b4;--celebration-purple:#9b59b6;--celebration-gradient:linear-gradient(135deg,var(--celebration-gold),var(--celebration-pink),var(--celebration-purple))}