.login-page{background:var(--paper);grid-template-columns:1fr;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--card);border:1px solid var(--bdr);border-radius:14px;width:100%;max-width:380px;padding:30px 28px}.login-title{letter-spacing:-.01em;font-size:21px;font-weight:600}.login-sub{color:var(--ink3);margin-top:5px;font-size:13px}.login-form{flex-direction:column;gap:15px;margin-top:22px;display:flex}.login-field{color:var(--ink2);flex-direction:column;gap:6px;min-width:0;font-size:13px;font-weight:500;display:flex}.login-field input{border:1px solid var(--bdr);background:var(--paper);color:var(--ink);border-radius:10px;padding:10px 13px;font-family:inherit;font-size:14px}.login-field input:focus{outline:2px solid var(--red-soft);outline-offset:1px;border-color:var(--red)}.login-error{color:var(--miss);font-size:12px;font-style:normal}.login-failure{color:var(--miss);background:var(--missbg);border-radius:9px;padding:9px 12px;font-size:13px}.login-form .btn-primary{width:100%;margin-top:4px;padding:11px 18px}.login-form .btn-primary:disabled{filter:grayscale(.4);cursor:progress}.login-sent{color:var(--ink3);background:var(--redbg);border-radius:9px;padding:9px 12px;font-size:13px}.login-sent b{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.login-form input[inputmode=numeric]{font-variant-numeric:tabular-nums;letter-spacing:.32em;text-align:center;padding:11px 13px;font-size:18px}.login-alt{width:100%;color:var(--red-deep);cursor:pointer;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--bdr-strong);text-decoration-color:var(--bdr-strong);background:0 0;border:0;margin-top:2px;padding:8px;font-family:inherit;font-size:13px;font-weight:600}.login-alt:hover{-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red)}.login-alt:focus-visible{outline:2px solid var(--red-soft);outline-offset:2px;border-radius:6px}.login-switch{text-align:center;color:var(--ink3);margin-top:4px;font-size:13px}.login-switch a{color:var(--red-deep);text-underline-offset:3px;font-weight:600}.signup{flex-direction:column;gap:18px;margin-top:20px;display:flex}.signup-steps{gap:5px;margin:0;padding:0;list-style:none;display:flex}.signup-steps li{background:var(--bdr);border-radius:2px;flex:1;height:3px}.signup-steps li.on{background:var(--red)}.signup-q{color:var(--ink);font-size:15px;font-weight:600}.signup-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.signup-opts{flex-wrap:wrap;gap:8px;display:flex}.signup-opt{border:1px solid var(--bdr);background:var(--paper);color:var(--ink2);cursor:pointer;border-radius:999px;padding:9px 15px;font-family:inherit;font-size:13px;font-weight:500}.signup-opt:hover{border-color:var(--bdr-strong)}.signup-opt.on{background:var(--redbg);border-color:var(--red);color:var(--red-deep);font-weight:600}.signup-opt:focus-visible{outline:2px solid var(--red-soft);outline-offset:2px}.login-hint{color:var(--ink3);font-size:11.5px;font-style:normal}@media (max-width:519px){.signup-row{grid-template-columns:1fr}}.login-forgot{text-align:center;margin-top:-4px;font-size:12.5px}.login-forgot a{color:var(--ink3);text-decoration:underline;-webkit-text-decoration-color:var(--bdr-strong);text-decoration-color:var(--bdr-strong);text-underline-offset:3px}.login-forgot a:hover{color:var(--red-deep);-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red)}.login-forgot a:focus-visible{outline:2px solid var(--red-soft);outline-offset:2px;border-radius:6px}.login-note{color:var(--ink3);font-size:12.5px;line-height:1.5}.login-preview{border:1px solid var(--bdr);background:var(--paper);border-radius:11px;flex-direction:column;gap:8px;margin:0;padding:13px 15px;display:flex}.login-preview>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:3px 12px;display:flex}.login-preview dt{color:var(--ink3);font-size:12px;font-weight:500}.login-preview dd{min-width:0;color:var(--ink);text-align:right;overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600}.login-oauth{gap:12px;margin-top:18px;display:grid}.login-oauth[hidden]{display:none}.login-oauth-or{letter-spacing:.04em;text-transform:uppercase;color:var(--ink3);align-items:center;gap:12px;margin:0;font-size:12px;font-weight:600;display:flex}.login-oauth-or:before,.login-oauth-or:after{content:"";background:var(--bdr);flex:1;height:1px}.login-oauth-button{justify-content:center;min-height:40px;display:flex}.login-oauth-button>*{max-width:100%}.login-oauth-busy{text-align:center;color:var(--ink3);margin:0;font-size:13px}
