.login-root{font-family:Nunito,sans-serif;color:#2b1530;background:#fcfbfc;min-height:100vh;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;align-items:center;padding:48px 20px 30px;position:relative}.login-root .top{text-align:center;margin-bottom:26px;position:relative}.login-root .brand{font-family:Baloo\ 2,cursive;font-weight:800;font-size:2.5rem;letter-spacing:-.5px;color:#c2398a;line-height:1}.login-root .subtitle{font-family:Quicksand,sans-serif;font-weight:600;font-size:.98rem;color:#8a7682;margin-top:8px}.login-root .top-spark{font-family:Caveat,cursive;font-weight:700;font-size:2rem;color:#f4c94c;position:absolute;top:-22px;right:-46px;transform:rotate(-9deg);animation:login-wiggle 4.5s ease-in-out infinite}@keyframes login-wiggle{0%,to{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-5px)}}.login-root .card{background:#ffffff;width:100%;max-width:440px;border-radius:26px;padding:30px 32px 34px;box-shadow:0 16px 50px rgba(43,21,48,.1);border:1px solid #f0ecef}.login-root .tabs{display:flex;background:#f5f1f4;border-radius:14px;padding:5px;margin-bottom:26px}.login-root .tab{flex:1;text-align:center;padding:13px;border-radius:10px;font-family:Quicksand,sans-serif;font-weight:700;font-size:.98rem;color:#8a7682;cursor:pointer;border:none;background:transparent;transition:all .2s}.login-root .tab.active{background:#fff;color:#c2398a;box-shadow:0 1px 4px rgba(43,21,48,.1)}.login-root h1{font-family:Quicksand,sans-serif;font-weight:700;font-size:1.7rem;margin-bottom:6px;color:#2b1530}.login-root .lead{color:#8a7682;font-size:.98rem;margin-bottom:24px}.login-root .field{margin-bottom:18px}.login-root .field label{display:block;font-size:.82rem;color:#8a7682;font-weight:700;margin-bottom:7px;margin-left:2px}.login-root .field input{width:100%;border:1.5px solid #e7e0e5;border-radius:14px;padding:15px 16px;font-family:Nunito,sans-serif;font-size:1.02rem;color:#2b1530;outline:none;background:#fff;transition:border-color .2s,box-shadow .2s}.login-root .field input::-moz-placeholder{color:#c3b6bf}.login-root .field input::placeholder{color:#c3b6bf}.login-root .field input:focus{border-color:#c2398a;box-shadow:0 0 0 4px rgba(194,57,138,.1)}.login-root .form-error{color:#d23a55}.login-root .form-error,.login-root .form-info{font-size:.9rem;font-weight:700;margin:-4px 0 16px}.login-root .form-info{color:#c2398a}.login-root .cta{width:100%;border:none;cursor:pointer;background:#c2398a;color:#fff;border-radius:16px;padding:17px;font-family:Quicksand,sans-serif;font-weight:700;font-size:1.1rem;transition:transform .15s,background .2s,box-shadow .2s;box-shadow:0 8px 20px rgba(194,57,138,.25);margin-top:6px}.login-root .cta:hover{transform:translateY(-2px);background:#a32a73;box-shadow:0 12px 26px rgba(194,57,138,.34)}.login-root .cta:disabled{opacity:.6;cursor:default;transform:none;box-shadow:0 8px 20px rgba(194,57,138,.25)}.login-root .links{text-align:center;margin-top:22px}.login-root .links .register{font-size:.95rem;color:#8a7682;font-weight:600;margin-bottom:10px}.login-root .links .register button{color:#c2398a;font-weight:700;background:none;border:none;cursor:pointer;font-size:.95rem;font-family:inherit}.login-root .links .register button:hover{text-decoration:underline}.login-root .links .forgot{display:inline-block;font-size:.92rem;color:#4f6bc4;font-weight:700;text-decoration:none}.login-root .links .forgot:hover{text-decoration:underline}.login-root .hint{background:#fdeef6;border:1px solid #f6cfe4;border-radius:14px;padding:14px 16px;font-size:.92rem;color:#a32a73;margin-bottom:20px;line-height:1.5}.login-root .sent{text-align:center}.login-root .sent-emoji{font-size:2.6rem;margin-bottom:8px}.login-root .sent b{color:#2b1530;font-weight:800}.login-root .text-link{background:none;border:none;cursor:pointer;color:#8a7682;font-weight:600;font-size:.9rem;text-decoration:underline;font-family:inherit;margin-top:12px}.login-root .text-link:hover{color:#c2398a}.login-root .page-foot{margin-top:26px;font-size:.85rem;color:#bcb0b8;font-weight:600}@media (max-width:480px){.login-root .card{padding:26px 22px 28px}.login-root .top-spark{right:-10px;font-size:1.6rem}.login-root .brand{font-size:2.1rem}}@media (prefers-reduced-motion:reduce){.login-root *{animation:none!important;transition:none!important}}