#root,.App,body,html{height:100%;margin:0;padding:0;overflow-x:hidden}.auth-wrapper{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-family:Poppins,sans-serif;overflow:hidden;padding:20px;box-sizing:border-box}.auth-tabs{display:flex;width:100%;max-width:400px;margin-bottom:20px;background:#f0f0f0;border-radius:12px;padding:4px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.auth-tab{flex:1;padding:12px 16px;border:none;background:transparent;border-radius:8px;font-family:Poppins,sans-serif;font-weight:600;font-size:14px;color:#514f4f;cursor:pointer;transition:all .3s ease}.auth-tab.active{background:linear-gradient(90deg,#514f4f,#202841);color:white;box-shadow:0 2px 8px rgba(0,0,0,.2)}.auth-tab:hover:not(.active){background:rgba(81,79,79,.1)}.auth-mobile-forms{width:100%;max-width:400px}.mobile-form-container{background:#f7fafd;border-radius:12px;box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22);overflow:hidden;transform-origin:center}@media (max-width:1023px){.mobile-form-container.animating,.mobile-form-container.returning-from-password-reset{animation:expandContainer .5s cubic-bezier(.4,0,.2,1)}}@media (min-width:1024px){.auth-container.returning-from-password-reset{animation:expandContainer .5s cubic-bezier(.4,0,.2,1)}}.mobile-form{padding:30px 20px}.mobile-form-header{text-align:center;margin-bottom:30px}.lottie-mobile-icon{margin-bottom:20px}.mobile-form-header h2{font-size:1.5rem;font-weight:700;color:#202841;margin-bottom:10px}.mobile-form-header p{font-size:.9rem;color:#514f4f;line-height:1.5}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes expandContainer{0%{transform:scale(.95)}50%{transform:scale(1.02)}to{transform:scale(1)}}.auth-container{background-color:#f0f0f0;border-radius:12px;box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22);position:relative;overflow:hidden;width:900px;max-width:95%;min-height:550px;display:block}@media (min-width:768px){.auth-wrapper{flex-direction:row;padding:20px}.auth-container{display:block!important}.auth-mobile-forms,.auth-tabs{display:none}.auth-container{width:700px;min-height:500px}.form-container{padding:0 30px}.overlay-panel{padding:0 40px}.lottie-panel-icon{margin-bottom:20px}}@media (min-width:1024px){.auth-wrapper{padding:40px}.auth-container{width:900px;min-height:600px;display:block!important}.form-container{padding:0 40px}.overlay-panel{padding:0 60px}.lottie-panel-icon{margin-bottom:30px}}.form-container{position:absolute;top:0;height:100%;width:50%;background-color:#f7fafd;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 40px;box-sizing:border-box;transition:all .6s ease-in-out!important}.sign-in-container{left:0;transform:translateX(0);z-index:3;opacity:1}.sign-up-container{left:50%;transform:translateX(100%);z-index:1;opacity:0}.auth-container.right-panel-active .sign-in-container{transform:translateX(-100%)!important;opacity:0!important;z-index:1!important}.auth-container.right-panel-active .sign-up-container{transform:translateX(0)!important;opacity:1!important;z-index:3!important}.overlay-container{position:absolute;top:0;left:50%;width:50%;height:100%;overflow:hidden;transition:transform .6s ease-in-out!important;z-index:2}.auth-container.right-panel-active .overlay-container{transform:translateX(-100%)!important}.overlay{background:linear-gradient(90deg,#514f4f,#202841);background-repeat:no-repeat;background-size:cover;background-position:0 0;color:#fff;position:relative;left:-100%;height:100%;width:200%;transform:translateX(0);transition:transform .6s ease-in-out!important;display:flex}.auth-container.right-panel-active .overlay{transform:translateX(50%)!important}.overlay-panel{display:flex;justify-content:center;flex-direction:column;padding:0 60px;height:100%;width:50%;transition:all .6s ease-in-out!important;align-items:center;text-align:center}.overlay-left{opacity:0;z-index:1}.overlay-right{opacity:1;z-index:2}.auth-container.right-panel-active .overlay-left{opacity:1!important;z-index:2!important}.auth-container.right-panel-active .overlay-right{opacity:0!important;z-index:1!important}.auth-form h2{font-size:1.5rem;margin-top:0;margin-bottom:1.25rem;color:#514f4f}.login-form h2,.register-form h2{color:#202841}.auth-form input{width:100%;padding:.35rem;margin-bottom:.65rem;border-radius:8px;border:1px solid #ccc;transition:border-color .3s ease,box-shadow .3s ease;font-size:1rem;outline:none;font-family:Poppins,sans-serif;box-sizing:border-box;background-color:#eee;color:#514f4f}.auth-form input:focus{border-color:#202841;box-shadow:0 0 0 3px rgba(32,40,65,.35)}.auth-form input.valid,.auth-form input.valid:focus{border-color:#2ed573;box-shadow:0 0 0 3px rgba(46,213,115,.25);color:#2b9d55}.auth-form input.invalid,.auth-form input.invalid:focus{border-color:#ee3c23!important;box-shadow:0 0 0 3px #ee3b238d!important;color:#ee3c23}.auth-form label{text-align:left;width:100%;margin-top:10px;margin-bottom:3px;color:#514f4f;font-size:.8rem;font-weight:700}.auth-form button[type=submit]{width:100%;background-color:#202841;color:white;border:none;padding:.8rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .3s ease,transform .2s ease;font-family:Poppins,sans-serif;margin-top:20px}.auth-form button[type=submit]:hover{background-color:#514f4f;transform:scale(1.02)}.ghost-button{background-color:transparent;border:1px solid #fff;color:#fff;padding:12px 45px;border-radius:20px;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase;cursor:pointer;margin-top:24px;transition:background-color .3s ease-in-out,color .3s ease-in-out}.ghost-button:hover{background-color:#fff;color:#202841}.overlay-content{width:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:0}.overlay-content h2{font-size:28px;margin-bottom:15px;max-width:250px;margin-left:auto;margin-right:auto}.overlay-content h2,.overlay-content p{word-wrap:break-word;white-space:normal;overflow-wrap:break-word;text-align:center}.overlay-content p{font-size:14px;line-height:1.4;letter-spacing:.5px;max-width:280px;margin:15px auto 25px}.overlay-panel .ghost-button{margin-top:20px}.auth-form .switch-button{display:none}.login-lottie-icon,.register-lottie-icon{margin-bottom:20px}.lottie-placeholder{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border-radius:8px;border:2px dashed rgba(255,255,255,.3)}.loading-spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.lottie-fallback{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border-radius:8px;border:2px solid rgba(255,255,255,.3)}.fallback-icon{font-size:2rem;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@media (max-width:768px){.lottie-fallback,.lottie-placeholder{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.2)}.loading-spinner{width:20px;height:20px}.fallback-icon{font-size:1.5rem}}.auth-form input.password-input{border:1px solid #ccc}.auth-form input.password-strength-border-low,.auth-form input.password-strength-border-low:focus{border-color:#ff4757!important;box-shadow:0 0 0 3px rgba(255,71,87,.25)!important}.auth-form input.password-strength-border-medium,.auth-form input.password-strength-border-medium:focus{border-color:#ffa502!important;box-shadow:0 0 0 3px rgba(255,165,2,.25)!important}.auth-form input.password-strength-border-strong,.auth-form input.password-strength-border-strong:focus{border-color:#2ed573!important;box-shadow:0 0 0 3px rgba(46,213,115,.25)!important}.auth-form input.password-strength-border-very-strong,.auth-form input.password-strength-border-very-strong:focus{border-color:#1e90ff!important;box-shadow:0 0 0 3px rgba(30,144,255,.25)!important}.auth-form input.invalid,.auth-form input.invalid.password-strength-border-low,.auth-form input.invalid.password-strength-border-medium,.auth-form input.invalid.password-strength-border-strong,.auth-form input.invalid.password-strength-border-very-strong{border-color:#ee3c23!important;box-shadow:0 0 0 3px #ee3b238d!important;color:#ee3c23}.auth-form.register-form .password-input-container{position:relative;width:100%;margin-bottom:3px!important}.password-strength-bar-container,.password-strength-text{margin-bottom:0}.password-error-message{top:calc(100% - -5px)}.hidden{opacity:0;transition:visibility 0s .3s,opacity .3s linear}.forgot-password-link{display:block;width:100%;text-align:center;margin-top:10px;color:#202841;text-decoration:none;font-size:.9rem;transition:color .3s ease}.forgot-password-link:hover{color:#007bff}.auth-form.register-form label[for=register-confirm-password]{margin-top:0!important}@media (max-width:767px){.auth-wrapper{padding:10px}.auth-container{display:none!important}.auth-tabs{max-width:100%;margin-bottom:15px}.auth-tab{padding:10px 12px;font-size:13px}.auth-mobile-forms{max-width:100%}.mobile-form{padding:20px 15px}.mobile-form-header h2{font-size:1.25rem}.mobile-form-header p{font-size:.85rem}.lottie-mobile-icon{margin-bottom:15px}.auth-form input{padding:12px;font-size:16px}.auth-form button{padding:12px 20px;font-size:16px}.auth-form h2{font-size:1.25rem}.auth-form{width:100%}.auth-form label{font-size:14px;margin-bottom:5px}.password-input-container{position:relative;width:100%}.password-toggle-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;color:#514f4f;font-size:16px}.auth-form button[type=submit]{width:100%;margin-top:20px;height:48px;font-weight:600}.login-lottie-icon,.register-lottie-icon{margin-bottom:20px;text-align:center}}.overlay-content h2{font-size:24px}.overlay-content p{margin:15px 0 25px}.ghost-button{margin-top:10px}.password-error-message,.password-strength-feedback{left:5%;width:90%}#root{position:relative;z-index:1;min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column}@media (max-width:1023px){.main-card{width:100%;max-width:400px;min-height:auto;border-radius:12px;box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22)}.panels-container{flex-direction:column;min-height:auto}.form-panel{width:100%;padding:30px 20px;order:1}.animated-panel{display:none!important}.form-panel h2{font-size:1.5rem;margin-bottom:10px}.form-panel p{font-size:.9rem;margin-bottom:20px}.input-group{margin-bottom:15px}.input-group input{padding:12px;font-size:16px}.btn-primary{width:100%;padding:12px 20px;font-size:16px;height:48px}.btn-back{padding:8px 12px;font-size:14px}}@media (min-width:1024px){.main-card{width:800px;min-height:550px}.form-panel{padding:50px 40px}.animated-panel{display:block!important;height:300px}}.lottie-panel-icon{margin-bottom:20px;pointer-events:none;cursor:default}.auth-form.login-form{flex-direction:column;align-items:center;justify-content:center}.login-lottie-icon,.register-lottie-icon{margin-bottom:10px;pointer-events:none;cursor:default}body,html{font-family:Poppins,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#background-image{position:fixed;right:0;bottom:0;min-width:100%;min-height:100%;z-index:-1;-o-object-fit:cover;object-fit:cover;filter:brightness(60%) contrast(110%);transition:filter .5s ease-in-out}.password-reset-container{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif;padding:20px;box-sizing:border-box;position:relative}.main-card{width:900px;max-width:95%;background:white;border-radius:12px;box-shadow:0 24px 48px rgba(0,0,0,.35),0 16px 24px rgba(0,0,0,.25);overflow:hidden;position:relative;height:600px}.panels-container{display:flex;height:600px}.form-panel{flex:1;padding:3rem;flex-direction:column;position:relative}.back-to-login-btn,.form-panel{display:flex;justify-content:center}.back-to-login-btn{position:absolute;top:1.5rem;left:1.5rem;background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:.75rem;padding:.75rem;color:#6b7280;cursor:pointer;transition:all .2s;align-items:center;box-shadow:0 2px 4px rgba(0,0,0,.1);z-index:10}.back-to-login-btn:hover{background:white;color:#374151;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.animated-panel{flex:1;background:linear-gradient(135deg,#202841,#1a2332);padding:3rem;display:flex;flex-direction:column;justify-content:center;align-items:center;color:white;position:relative;overflow:hidden;text-align:center;font-size:1rem;line-height:1.5;min-height:600px}.background-animation{position:absolute;inset:0;opacity:.1}.floating-circle-1{width:16rem;height:16rem;top:-8rem;right:-8rem}.floating-circle-1,.floating-circle-2{position:absolute;background:white;border-radius:50%;animation:pulse 2s infinite}.floating-circle-2{width:12rem;height:12rem;bottom:-6rem;left:-6rem;animation-delay:1s}.icon-container{width:6rem;height:6rem;background:rgba(255,255,255,.2);border-radius:1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;backdrop-filter:blur(4px)}.form-content{max-width:28rem;margin:0 auto;width:100%}.form-header{text-align:center;margin-bottom:1.5rem}.header-icon{width:3rem;height:3rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;box-shadow:0 4px 6px rgba(59,130,246,.1);overflow:hidden}.shield-gif{width:48px;height:48px;-o-object-fit:contain;object-fit:contain;filter:brightness(1.1) contrast(1.1)}.form-title{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem;line-height:1.2}.form-description{color:#6b7280;font-size:.875rem;line-height:1.4}.form-step{display:flex;flex-direction:column;gap:1rem}.input-container{position:relative;margin-bottom:.5rem}.input-container,.input-icon{display:flex;align-items:center}.input-icon{position:absolute;left:1rem;z-index:1}.input-field-with-icon{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:2px solid #e5e7eb;border-radius:.75rem;outline:none;transition:all .2s;color:#1f2937;font-size:.875rem}.input-field-with-icon:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.back-step-btn{display:flex;align-items:center;gap:.5rem;color:#6b7280;background:none;border:none;cursor:pointer;transition:color .2s;align-self:flex-start;padding:.5rem;margin:-.5rem 0 0 -.5rem}.back-step-btn:hover{color:#374151}.btn-secondary{width:100%;background:transparent;color:#3b82f6;font-weight:500;padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.75rem;cursor:pointer;transition:all .2s;font-size:.875rem}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#3b82f6}.btn-secondary:disabled{color:#9ca3af;cursor:not-allowed}.progress-dots-wrapper{margin-top:1.5rem}.progress-dots-container{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:2rem}.progress-dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.3);transition:all .4s ease;cursor:pointer;position:relative;box-shadow:0 2px 4px rgba(0,0,0,.1)}.progress-dot.active{background:white;transform:scale(1.2);box-shadow:0 0 12px rgba(255,255,255,.6)}.progress-dot:hover:not(.active){background:rgba(255,255,255,.5);transform:scale(1.1)}.btn-primary{width:100%;background:#3b82f6;color:white;font-weight:600;padding:.75rem 1rem;border-radius:.75rem;border:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;transform:scale(1);font-size:.875rem}.btn-primary:hover:not(:disabled){background:#2563eb;transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed;transform:scale(1)}.input-field{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:.75rem;outline:none;transition:border-color .2s;color:#1f2937;font-size:.875rem}.input-field:focus{border-color:#3b82f6}.input-field::-moz-placeholder{color:#9ca3af}.input-field::placeholder{color:#9ca3af}.code-input{width:3rem;height:3rem;text-align:center;font-size:1.25rem;font-weight:600;border:2px solid #e5e7eb;border-radius:.75rem;outline:none;transition:all .2s;background:white;color:#1f2937}.code-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);transform:scale(1.05)}@media (max-width:1023px){.main-card{width:100%;max-width:400px;min-height:auto;border-radius:12px;box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22)}.panels-container{flex-direction:column;min-height:auto}.form-panel{width:100%;padding:30px 20px;order:1;max-height:none}.animated-panel{display:none!important}.form-panel h2{font-size:1.5rem;margin-bottom:10px}.form-panel p{font-size:.9rem;margin-bottom:20px}.input-group{margin-bottom:15px}.input-group input{padding:12px;font-size:16px}.btn-primary{width:100%;padding:12px 20px;font-size:16px;height:48px}.btn-back{padding:8px 12px;font-size:14px}}@media (min-width:1024px){.main-card{width:800px;min-height:550px}.form-panel{padding:50px 40px}.animated-panel{display:flex!important}}.main-card.expanding{animation:expandContainer .5s cubic-bezier(.4,0,.2,1)}.password-input{border:1px solid #ccc!important}.password-strength-border-low,.password-strength-border-low:focus{border-color:#ff4757!important;box-shadow:0 0 0 3px rgba(255,71,87,.25)!important}.password-strength-border-medium,.password-strength-border-medium:focus{border-color:#ffa502!important;box-shadow:0 0 0 3px rgba(255,165,2,.25)!important}.password-strength-border-strong,.password-strength-border-strong:focus{border-color:#2ed573!important;box-shadow:0 0 0 3px rgba(46,213,115,.25)!important}.password-strength-border-very-strong,.password-strength-border-very-strong:focus{border-color:#1e90ff!important;box-shadow:0 0 0 3px rgba(30,144,255,.25)!important}.password-input-container{position:relative;width:100%;margin-bottom:1rem}.password-input-container input{padding-right:45px}.password-toggle-icon{position:absolute;right:8px;top:40%;transform:translateY(-50%);cursor:pointer;color:#514f4f;font-size:1rem;z-index:10;padding:8px;border-radius:50%;transition:all .2s ease-in-out}.password-toggle-icon:hover{color:#202841;background-color:rgba(32,40,65,.1)}.password-strength-feedback{position:absolute;top:calc(100% - 5px);left:0;width:100%;z-index:20;background-color:#ffffff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);padding:10px 15px;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;opacity:0;transform:translateY(10px);transition:opacity .3s ease-out,transform .3s ease-out}.password-strength-feedback.active{opacity:1;transform:translateY(0)}.password-strength-text{font-size:.75rem;font-weight:700;transition:color .3s ease-in-out;margin-bottom:5px;text-align:left}.password-strength-text-none{color:#888}.password-strength-text-low{color:#ff4757}.password-strength-text-medium{color:#ffa502}.password-strength-text-strong{color:#2ed573}.password-strength-text-very-strong{color:#1e90ff}.password-strength-bar-container{width:100%;height:5px;background-color:#e0e0e0;border-radius:2.5px;overflow:hidden}.password-strength-bar{height:100%;width:0;border-radius:2.5px;transition:width .3s ease-in-out,background-color .3s ease-in-out}.password-strength-bar-none{width:0;background-color:#e0e0e0}.password-strength-bar-low{width:25%;background-color:#ff4757}.password-strength-bar-medium{width:50%;background-color:#ffa502}.password-strength-bar-strong{width:75%;background-color:#2ed573}.password-strength-bar-very-strong{width:100%;background-color:#1e90ff}.password-error-message{position:absolute;top:calc(100% - 5px);left:0;width:100%;z-index:21;background-color:#ffe0e6;border:1px solid #ee3c23;color:#ee3c23;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);padding:10px 15px;box-sizing:border-box;text-align:left;font-size:.85rem;font-weight:700;opacity:0;transform:translateY(10px);transition:opacity .3s ease-out,transform .3s ease-out}.password-error-message.active{opacity:1;transform:translateY(0)}.checkmark-icon-container{position:absolute;right:14px;top:40%;transform:translateY(-50%);z-index:15;display:flex;align-items:center;justify-content:center;pointer-events:none}.hidden{visibility:hidden}