@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}@keyframes aniPulse{0%{transform:scaleX(1)}50%{transform:scale3d(1.35,1.35,1.35)}to{transform:scaleX(1)}}@keyframes aniWave{0%{transform:rotate(0)}20%{transform:rotate(-25deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-25deg)}80%{transform:rotate(10deg)}to{transform:rotate(0)}}@keyframes aniRotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes aniEnterBounce{0%{opacity:0;transform:translateY(30px)}60%{opacity:1;transform:translateY(-10px)}80%{transform:translateY(5px)}to{transform:translateY(0)}}@keyframes aniEnterRotate{0%{opacity:0;transform:rotate(-180deg) scale(.8)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes aniUpLeftRotateEnter{0%{opacity:0;transform:rotate(-90deg);transform-origin:left bottom}to{opacity:1;transform:rotate(0);transform-origin:left bottom}}@keyframes aniUpRightRotateEnter{0%{opacity:0;transform:rotate(90deg);transform-origin:right bottom}to{opacity:1;transform:rotate(0);transform-origin:right bottom}}@keyframes aniEnterZoom{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes aniZoomUpEnter{0%{opacity:0;transform:scale(.5) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes aniZoomDownEnter{0%{opacity:0;transform:scale(.5) translateY(-40px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes aniEnterDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes aniEnterFlipX{0%{opacity:0;transform:perspective(400px) rotateX(90deg)}to{opacity:1;transform:perspective(400px) rotateX(0)}}@keyframes aniEnterFlipY{0%{opacity:0;transform:perspective(400px) rotateY(90deg)}to{opacity:1;transform:perspective(400px) rotateY(0)}}@keyframes aniEnterRoll{0%{opacity:0;transform:translate(-100%) rotate(-120deg)}to{opacity:1;transform:translate(0) rotate(0)}}@keyframes aniEnterLightLeft{0%{opacity:0;transform:translate(-100%) skew(30deg)}60%{opacity:1;transform:translate(20px) skew(-10deg)}to{opacity:1;transform:translate(0) skew(0)}}@keyframes aniEnterLightRight{0%{opacity:0;transform:translate(100%) skew(-30deg)}60%{opacity:1;transform:translate(-20px) skew(10deg)}to{opacity:1;transform:translate(0) skew(0)}}@keyframes aniEnterBackUp{0%{opacity:0;transform:translateY(200px) scale(.7)}60%{opacity:1;transform:translateY(-30px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes aniEnterBackDown{0%{opacity:0;transform:translateY(-200px) scale(.7)}60%{opacity:1;transform:translateY(30px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes aniEnterBackRight{0%{opacity:0;transform:translate(-200px) scale(.7)}60%{opacity:1;transform:translate(30px) scale(1.05)}to{transform:translate(0) scale(1)}}@keyframes aniEnterBackLeft{0%{opacity:0;transform:translate(200px) scale(.7)}60%{opacity:1;transform:translate(-30px) scale(1.05)}to{transform:translate(0) scale(1)}}@keyframes aniShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-6px)}}@keyframes aniXShake{0%,to{transform:translate(0)}25%{transform:translate(-3px) rotate(-1deg)}50%{transform:translate(3px) rotate(1deg)}75%{transform:translate(-2px) rotate(-.5deg)}}@keyframes aniYShake{0%,to{transform:translateY(0)}25%{transform:translateY(-3px) rotate(-.5deg)}50%{transform:translateY(3px) rotate(.5deg)}75%{transform:translateY(-2px) rotate(-.25deg)}}@keyframes aniCuteShake{0%,to{transform:rotate(0)}25%{transform:rotate(-2deg) translate(-2px)}50%{transform:rotate(2deg) translate(2px)}75%{transform:rotate(-1deg) translate(-1px)}}@keyframes aniElastic{0%{transform:scale(1)}30%{transform:scale(1.25)}40%{transform:scale(.75)}60%{transform:scale(1.15)}80%{transform:scale(.95)}to{transform:scale(1)}}@keyframes aniMicroBounce{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes aniBreathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes aniFadeIn{0%{opacity:0}to{opacity:1}}@keyframes aniFadeOut{0%{opacity:1}to{opacity:0}}@keyframes aniSpin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes skeletonLoading{0%{background-position:200% 0}to{background-position:-200% 0}}.auth-button-wrapper{position:relative;width:100%}.auth-button-wrapper .auth-button{align-items:center;background-color:#2f3545;border:none;border-radius:16px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:18px;height:58px;justify-content:center;outline:none;text-align:center;transition:all .3s linear;white-space:nowrap;width:100%}.auth-button-wrapper .auth-button.auth-btn__disabled{cursor:not-allowed}.auth-button-wrapper .auth-button.auth-btn__primary{background-image:linear-gradient(90deg,#9c47f1,#8770e4);box-shadow:0 4px 14px #a855f740}.auth-button-wrapper .auth-button.auth-btn__primary:hover:not(.auth-btn__disabled){background-image:linear-gradient(97deg,#9c47f1 20.73%,#d752ea 92.79%);box-shadow:0 0 10px #8770e4}.auth-button-wrapper .auth-button.auth-btn__primary:active:not(.auth-btn__disabled){box-shadow:0 2px 8px #a855f733;transform:translateY(0)}.auth-button-wrapper .auth-button.auth-btn__secondary{background:transparent;border:1px solid #475569;color:#94a3b8}.auth-button-wrapper .auth-button.auth-btn__secondary:hover:not(.auth-btn__disabled){background:#94a3b81a;border-color:#64748b}.auth-button-wrapper .auth-button.auth-btn__google{background:transparent;border:2px solid #f97316;color:#f8fafc}.auth-button-wrapper .auth-button.auth-btn__google:hover:not(.auth-btn__disabled){background:#f973161a;transform:translateY(-1px)}.auth-button-wrapper .auth-button .auth-btn__spinner{font-size:24px}.auth-button-wrapper .auth-btn__error{color:#ef4444;display:block;font-size:12px;margin-top:4px;position:absolute;right:0;text-align:right;top:100%}@media (max-width:1023px){.auth-button-wrapper .auth-button{border-radius:.1rem;font-size:.16rem;height:.42rem}.auth-button-wrapper .auth-button.auth-btn__primary{background-image:linear-gradient(90deg,#9c47f1,#8770e4);box-shadow:0 .04rem .14rem #a855f740}.auth-button-wrapper .auth-button.auth-btn__primary:hover:not(.auth-btn__disabled){background-image:linear-gradient(97deg,#9c47f1 20.73%,#d752ea 92.79%);box-shadow:0 0 .1rem #8770e4}.auth-button-wrapper .auth-button.auth-btn__primary:active:not(.auth-btn__disabled){box-shadow:0 .02rem .08rem #a855f733;transform:translateY(0)}.auth-button-wrapper .auth-button .auth-btn__spinner{font-size:.24rem}.auth-button-wrapper .auth-btn__error{font-size:.12rem;margin-top:.04rem}}
