.btn-hover{transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-hover:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(99,106,232,.3)}.btn-hover:active{transform:scale(.98)}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.1)}.input-focus{transition:all .2s ease}.input-focus:focus{transform:scale(1.01);box-shadow:0 0 0 3px rgba(99,106,232,.1)}.ripple{position:relative;overflow:hidden}.ripple: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%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.float{animation:float 3s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.shake{animation:shake .5s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease-in}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-up{animation:slideUp .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.scale-in{animation:scaleIn .2s ease-out}.shimmer{background:linear-gradient(90deg,#f0f0f0,#f8f8f8 50%,#f0f0f0);background-size:1000px 100%;animation:shimmer 2s infinite}.glow{box-shadow:0 0 20px rgba(99,106,232,.5);transition:box-shadow .3s ease}.glow:hover{box-shadow:0 0 30px rgba(99,106,232,.8)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bounce{animation:bounce .5s}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-animate{background-size:200% 200%;animation:gradientShift 3s ease infinite}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .4s ease-out forwards}@keyframes slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:slide-down .5s ease-out forwards}@keyframes slide-left{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.animate-slide-left{animation:slide-left .5s ease-out forwards}@keyframes bounce-coin{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-15px) rotate(-5deg)}50%{transform:translateY(0) rotate(0deg)}75%{transform:translateY(-8px) rotate(5deg)}}.animate-bounce-coin{animation:bounce-coin 2s ease-in-out infinite}@keyframes search{0%,to{transform:translate(0) rotate(0deg)}25%{transform:translate(5px,-5px) rotate(10deg)}50%{transform:translate(-5px,5px) rotate(-10deg)}75%{transform:translate(5px,5px) rotate(5deg)}}.animate-search{animation:search 3s ease-in-out infinite}@keyframes draw-line{0%{stroke-dasharray:100;stroke-dashoffset:100}to{stroke-dasharray:100;stroke-dashoffset:0}}.animate-draw-line{animation:draw-line .8s ease-out forwards}@keyframes spin-slow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin-slow{animation:spin-slow 4s linear infinite}@keyframes spin-reverse{0%{transform:rotate(1turn)}to{transform:rotate(0deg)}}.animate-spin-reverse{animation:spin-reverse 3s linear infinite}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.8}}.animate-pulse-subtle{animation:pulse-subtle 2s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 3s ease-in-out infinite}@keyframes upload{0%{transform:translateY(20px);opacity:0}50%{opacity:1}to{transform:translateY(-10px);opacity:0}}.animate-upload{animation:upload 2s ease-in-out infinite}@keyframes draw-check{0%{stroke-dasharray:100;stroke-dashoffset:100}to{stroke-dasharray:100;stroke-dashoffset:0}}.animate-draw-check polyline{stroke-dasharray:100;stroke-dashoffset:100;animation:draw-check .8s ease-out forwards}@keyframes page-slide-in{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.page-slide-in{animation:page-slide-in .3s ease-out}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.page-fade-in{animation:page-fade-in .3s ease-out}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-shimmer{background:linear-gradient(90deg,#f0f0f0,#e0e0e0 20%,#f0f0f0 40%,#f0f0f0);background-size:1000px 100%;animation:shimmer 2s linear infinite}@keyframes progress{0%{width:0}to{width:100%}}.animate-progress{animation:progress 2s ease-out forwards}@keyframes scale-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scale-in .4s ease-out forwards}@keyframes wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.animate-wiggle{animation:wiggle .5s ease-in-out}@keyframes document-flow{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(40px) scale(.8);opacity:0}}.animate-document-flow{animation:document-flow 1.5s ease-in-out infinite}@keyframes fetch-arrow{0%,to{transform:translateX(0);opacity:1}50%{transform:translateX(10px);opacity:.5}}.animate-fetch-arrow{animation:fetch-arrow 1.5s ease-in-out infinite}@keyframes coin-stack-1{0%,to{opacity:0;transform:translateY(10px)}33%,66%{opacity:1;transform:translateY(0)}}@keyframes coin-stack-2{0%,33%,to{opacity:0;transform:translateY(10px)}66%{opacity:1;transform:translateY(0)}}@keyframes coin-stack-3{0%,66%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-coin-stack-1{animation:coin-stack-1 3s ease-in-out infinite}.animate-coin-stack-2{animation:coin-stack-2 3s ease-in-out infinite}.animate-coin-stack-3{animation:coin-stack-3 3s ease-in-out infinite}@keyframes circle-loading{0%{transform:rotate(0deg);stroke-dashoffset:251.2}50%{stroke-dashoffset:62.8}to{transform:rotate(1turn);stroke-dashoffset:251.2}}.animate-circle-loading{animation:circle-loading 2s linear infinite;transform-origin:center}@keyframes error-shake{0%,to{transform:translateX(0) scale(1)}10%,30%,50%,70%,90%{transform:translateX(-5px) scale(1.05)}20%,40%,60%,80%{transform:translateX(5px) scale(1.05)}}.animate-error-shake{animation:error-shake .6s ease-in-out}@keyframes fetch-arrow-down{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:.5}}.animate-fetch-arrow-down{animation:fetch-arrow-down 1.5s ease-in-out infinite}@keyframes sms-wave{0%,to{opacity:0;transform:translateX(0) scale(.8)}50%{opacity:1;transform:translateX(5px) scale(1)}}.animate-sms-wave{animation:sms-wave 2s ease-in-out infinite}@keyframes success-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.animate-success-pop{animation:success-pop .6s cubic-bezier(.68,-.55,.265,1.55);transform-origin:center center}@keyframes success-ring-1{0%{transform:scale(1);opacity:.2}to{transform:scale(1.5);opacity:0}}@keyframes success-ring-2{0%{transform:scale(1);opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes success-ring-3{0%{transform:scale(1);opacity:.5}to{transform:scale(1.7);opacity:0}}.animate-success-ring-1{animation:success-ring-1 1.5s ease-out infinite;transform-origin:center center}.animate-success-ring-2{animation:success-ring-2 1.5s ease-out .2s infinite;transform-origin:center center}.animate-success-ring-3{animation:success-ring-3 1.5s ease-out .4s infinite;transform-origin:center center}@keyframes checkmark-draw{0%{stroke-dasharray:100;stroke-dashoffset:100}to{stroke-dasharray:100;stroke-dashoffset:0}}.animate-checkmark-draw{animation:checkmark-draw .6s ease-out .3s forwards}@keyframes sparkle-1{0%,to{transform:scale(0) rotate(0deg);opacity:0}50%{transform:scale(1.5) rotate(180deg);opacity:1}}@keyframes sparkle-2{0%,to{transform:scale(0) rotate(0deg);opacity:0}50%{transform:scale(1.5) rotate(-180deg);opacity:1}}.animate-sparkle-1{animation:sparkle-1 1.5s ease-in-out infinite}.animate-sparkle-2{animation:sparkle-1 1.5s ease-in-out .3s infinite}.animate-sparkle-3{animation:sparkle-2 1.5s ease-in-out .6s infinite}.animate-sparkle-4{animation:sparkle-2 1.5s ease-in-out .9s infinite}@keyframes submit-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}.animate-submit-bounce{animation:submit-bounce 2s ease-in-out infinite;transform-origin:center center}@keyframes pulse-glow{0%,to{transform:scale(1);opacity:.1}50%{transform:scale(1.2);opacity:.2}}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite;transform-origin:center center}@keyframes confetti-1{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(50px) rotate(180deg);opacity:0}}@keyframes confetti-2{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(60px) rotate(-180deg);opacity:0}}@keyframes confetti-3{0%{transform:translateY(0) rotate(0deg) translateX(0);opacity:1}to{transform:translateY(40px) rotate(270deg) translateX(20px);opacity:0}}.animate-confetti-1{animation:confetti-1 2s ease-out infinite}.animate-confetti-2{animation:confetti-2 2s ease-out .3s infinite}.animate-confetti-3{animation:confetti-1 2s ease-out .6s infinite}.animate-confetti-4{animation:confetti-2 2s ease-out .9s infinite}.animate-confetti-5{animation:confetti-3 2s ease-out .4s infinite}.animate-confetti-6{animation:confetti-3 2s ease-out .7s infinite}@keyframes success-arrow-1{0%{transform:translateY(20px);opacity:0}50%{opacity:1}to{transform:translateY(-20px);opacity:0}}@keyframes success-arrow-2{0%{transform:translateY(20px);opacity:0}50%{opacity:1}to{transform:translateY(-20px);opacity:0}}.animate-success-arrow-1{animation:success-arrow-1 2s ease-in-out infinite}.animate-success-arrow-2{animation:success-arrow-2 2s ease-in-out .5s infinite}@keyframes delete-document{0%{transform:translateY(0) scale(1);opacity:1}30%{transform:translateY(10px) scale(.95);opacity:.8}60%{transform:translateY(40px) scale(.7) rotate(5deg);opacity:.4}to{transform:translateY(60px) scale(.3) rotate(10deg);opacity:0}}.animate-delete-document{animation:delete-document 1.5s ease-in-out infinite}@keyframes puff-1{0%{transform:translate(0) scale(0);opacity:0}20%{opacity:.6}to{transform:translate(-15px,-20px) scale(2);opacity:0}}@keyframes puff-2{0%{transform:translate(0) scale(0);opacity:0}20%{opacity:.6}to{transform:translate(15px,-20px) scale(2);opacity:0}}@keyframes puff-3{0%{transform:translate(0) scale(0);opacity:0}20%{opacity:.4}to{transform:translate(-20px,-15px) scale(1.5);opacity:0}}@keyframes puff-4{0%{transform:translate(0) scale(0);opacity:0}20%{opacity:.4}to{transform:translate(20px,-15px) scale(1.5);opacity:0}}.animate-puff-1{animation:puff-1 1.5s ease-out infinite;animation-delay:.3s}.animate-puff-2{animation:puff-2 1.5s ease-out infinite;animation-delay:.5s}.animate-puff-3{animation:puff-3 1.5s ease-out infinite;animation-delay:.7s}.animate-puff-4{animation:puff-4 1.5s ease-out infinite;animation-delay:.9s}