[hidden]{display:none!important}.login-page{min-height:100svh;display:flex;flex-direction:column;background:var(--app-background);background-attachment:fixed}.login-brand{padding:38px 48px}.login-brand img{width:104px;display:block}.login-main{margin:0;padding:25px 24px 60px;max-width:none;flex:1;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:390px}.auth-symbol{width:88px;height:88px;margin:0 0 32px;color:#aab7d1}.auth-symbol svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.corners{opacity:.45}.auth-idle{stroke-width:2.5}.auth-ring{opacity:0;stroke-dasharray:160 23;transform-origin:center}.auth-check{stroke-dasharray:60;stroke-dashoffset:60;opacity:0;stroke-width:4}.auth-symbol.verifying .auth-idle,.auth-symbol.success .auth-idle{opacity:0}.auth-symbol.verifying .auth-ring{opacity:1;animation:scan .8s linear infinite}.auth-symbol.verifying .corners{animation:breathe .65s ease-in-out infinite alternate}.auth-symbol.success{color:#84d4b5}.auth-symbol.success .corners{opacity:.8;animation:settle .55s ease-out both}.auth-symbol.success .auth-check{opacity:1;animation:check-in .65s cubic-bezier(.25,.7,.25,1) .12s both}.login-card h1{font-size:36px;line-height:1.12;letter-spacing:-1.3px}.login-intro{color:#8f9bb0;font-size:13px;line-height:1.8;margin:20px 0 30px}.login-intro strong{font-weight:400;color:#d1d8e5;overflow-wrap:anywhere}.login-card form label{display:block;font-size:11px;color:#b0bbcd;margin:0 0 10px}.login-card input{display:block;width:100%;background:#ffffff04;padding:15px 17px;border:1px solid #ffffff1d;border-radius:9px;font-size:14px;outline-offset:3px}.login-card input::placeholder{color:#56647d}.login-card input:focus{border-color:#9baed0}.login-submit{display:flex;width:100%;justify-content:space-between;align-items:center;padding:15px 18px;margin-top:16px;border:1px solid #ff8c7133;border-radius:9px;background:#fe5e37;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.login-submit:hover{background:#e94e2a}.login-submit:disabled{opacity:.6;cursor:wait}.login-submit span{font-size:18px;font-weight:400}.login-card #code{font-size:25px;letter-spacing:12px;text-align:center;padding-left:28px;font-weight:600}.demo-code{font-size:10px;color:#7d8ba3;line-height:1.7;margin:12px 0 22px}.demo-code b{color:#c3ccdd;letter-spacing:1px}.login-secondary{display:flex;justify-content:space-between;gap:15px;margin-top:14px}.login-secondary button{background:none;border:0;padding:5px 0;font-size:10px;color:#98a6bc}.login-secondary button:hover{color:#fff}#auth-status{font-size:11px;line-height:1.6;color:#c1cbdc;margin-top:18px;min-height:18px}.login-footer{margin:0 48px;padding:20px 0 25px;font-size:10px;color:#687790}.login-footer a{color:#9ba8bc}@keyframes scan{to{transform:rotate(360deg)}}@keyframes breathe{to{opacity:1}}@keyframes check-in{from{stroke-dashoffset:60}to{stroke-dashoffset:0}}@keyframes settle{0%{transform:scale(1)}45%{transform:scale(1.07)}100%{transform:scale(1)}}@media(max-width:600px){.login-brand{padding:26px}.login-brand img{width:88px}.login-main{padding:30px 28px}.login-card h1{font-size:32px}.login-footer{margin:0 28px;font-size:9px}.auth-symbol{width:76px;height:76px;margin-bottom:28px}}@media(prefers-reduced-motion:reduce){.auth-symbol *{animation:none!important}.auth-symbol.success .auth-check{stroke-dashoffset:0}.auth-symbol.verifying .auth-ring{opacity:.6}}
/* A confirmação recebe foco apenas para anunciar a mudança de etapa. */
#success-step:focus,#success-step:focus-visible{outline:none;box-shadow:none}

/* Login: títulos em uma linha no desktop, botões sem setas. */
.login-card{max-width:570px}.login-card h1{font-size:36px}.login-submit{justify-content:center}.login-card #email-step h1,.login-card #email-step .login-intro{white-space:nowrap}@media(max-width:650px){.login-card #email-step h1,.login-card #email-step .login-intro{white-space:normal}.login-card h1{font-size:clamp(26px,6vw,32px)}}
