.page-module-scss-module__Cd0NXG__page{background:#0a0a0b;justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.page-module-scss-module__Cd0NXG__container{width:100%;max-width:400px}.page-module-scss-module__Cd0NXG__brand{text-align:center;margin-bottom:32px}.page-module-scss-module__Cd0NXG__logo{border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;display:inline-flex;overflow:hidden}.page-module-scss-module__Cd0NXG__title{color:#fff;margin:0 0 8px;font-size:26px;font-weight:700}.page-module-scss-module__Cd0NXG__subtitle{color:#6b7280;margin:0;font-size:15px}.page-module-scss-module__Cd0NXG__form{flex-direction:column;gap:20px;display:flex}.page-module-scss-module__Cd0NXG__inputGroup{flex-direction:column;gap:8px;display:flex}.page-module-scss-module__Cd0NXG__labelRow{justify-content:space-between;align-items:center;display:flex}.page-module-scss-module__Cd0NXG__label{color:#9ca3af;font-size:14px;font-weight:500}.page-module-scss-module__Cd0NXG__forgotLink{color:#22c55e;font-size:13px;text-decoration:none}.page-module-scss-module__Cd0NXG__forgotLink:hover{text-decoration:underline}.page-module-scss-module__Cd0NXG__inputWrapper{align-items:center;display:flex;position:relative}.page-module-scss-module__Cd0NXG__inputIcon{color:#6b7280;pointer-events:none;position:absolute;left:14px}.page-module-scss-module__Cd0NXG__input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;outline:none;width:100%;height:52px;padding:0 44px;font-size:15px;transition:all .2s}.page-module-scss-module__Cd0NXG__input::placeholder{color:#4b5563}.page-module-scss-module__Cd0NXG__input:focus{background:#ffffff14;border-color:#22c55e}.page-module-scss-module__Cd0NXG__togglePassword{color:#6b7280;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:14px}.page-module-scss-module__Cd0NXG__togglePassword:hover{color:#9ca3af}.page-module-scss-module__Cd0NXG__submitButton{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:52px;margin-top:4px;font-size:16px;font-weight:600;transition:all .2s;display:flex}.page-module-scss-module__Cd0NXG__submitButton:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #22c55e4d}.page-module-scss-module__Cd0NXG__submitButton:disabled{opacity:.7;cursor:not-allowed}.page-module-scss-module__Cd0NXG__loader{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite page-module-scss-module__Cd0NXG__spin}@keyframes page-module-scss-module__Cd0NXG__spin{to{transform:rotate(360deg)}}.page-module-scss-module__Cd0NXG__divider{align-items:center;gap:16px;margin:24px 0;display:flex}.page-module-scss-module__Cd0NXG__divider:before,.page-module-scss-module__Cd0NXG__divider:after{content:"";background:#ffffff1a;flex:1;height:1px}.page-module-scss-module__Cd0NXG__divider span{color:#6b7280;font-size:13px}.page-module-scss-module__Cd0NXG__socialButtons{gap:12px;display:flex}.page-module-scss-module__Cd0NXG__socialButton{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:10px;height:48px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.page-module-scss-module__Cd0NXG__socialButton:hover{background:#ffffff14;border-color:#ffffff26}.page-module-scss-module__Cd0NXG__switchAuth{text-align:center;color:#6b7280;margin-top:24px;font-size:14px}.page-module-scss-module__Cd0NXG__switchLink{color:#22c55e;font-weight:500;text-decoration:none}.page-module-scss-module__Cd0NXG__switchLink:hover{text-decoration:underline}.page-module-scss-module__Cd0NXG__errorBanner{color:#f87171;text-align:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;padding:12px 16px;font-size:14px;font-weight:500;animation:.4s ease-out page-module-scss-module__Cd0NXG__errorShake}@keyframes page-module-scss-module__Cd0NXG__errorShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}
