.auth{--roxo:#41268f;--roxo-deep:#2e1a66;--roxo-card:#4c1c9a;--verde:#4ed9a0;--verde-dark:#13b880;--claro:#f2eff7;--branco:#fff;--preto:#0e0b14;--w60:#ffffffa8;--muted-text:#6b5f8a;background:var(--claro);min-height:100vh;color:var(--roxo-card);font-family:var(--font-poppins), system-ui, sans-serif}.auth a{color:inherit}.auth-shell{grid-template-columns:1fr;min-height:100vh;display:grid}@media (min-width:960px){.auth-shell{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}.auth-brand{background:radial-gradient(900px 520px at 85% -10%, #4ed9a029, transparent 60%), radial-gradient(700px 500px at -12% 108%, #4c1c9ae6, transparent 62%), var(--roxo);color:var(--branco);padding:40px 48px;display:none;position:relative;overflow:hidden}@media (min-width:960px){.auth-brand{flex-direction:column;justify-content:center;align-items:center;display:flex}}.auth-brand-grid{opacity:.45;pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(720px 480px at 70% 20%,#000 30%,#0000 75%);mask-image:radial-gradient(720px 480px at 70% 20%,#000 30%,#0000 75%)}.auth-brand-inner{z-index:1;flex-direction:column;justify-content:center;width:100%;max-width:480px;display:flex;position:relative}.auth-brand .eyebrow{letter-spacing:.16em;text-transform:uppercase;width:fit-content;color:var(--verde);border:1.5px solid #4ed9a080;border-radius:999px;margin-bottom:22px;padding:7px 16px;font-size:12.5px;font-weight:600;display:inline-flex}.auth-brand h1{letter-spacing:-.5px;text-wrap:balance;font-size:clamp(32px,4vw,46px);font-weight:800;line-height:1.15}.auth-brand h1 b{color:var(--verde);font-weight:800}.auth-brand p{max-width:420px;color:var(--w60);margin-top:18px;font-size:16.5px;line-height:1.6}.auth-brand-points{flex-direction:column;gap:12px;margin-top:36px;display:flex}.auth-brand-points li{color:var(--w60);align-items:center;gap:10px;font-size:14.5px;font-weight:500;display:flex}.auth-brand-footer{color:#ffffff73;margin-top:48px;font-size:13px}.auth-panel{background:var(--claro);flex-direction:column;min-height:100vh;display:flex}.auth-header{justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}@media (min-width:960px){.auth-header{padding:28px 40px 12px}}.auth-brand-link{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.auth-brand-link .mini-sticker{width:40px;height:40px}.auth-brand-link .mini-sticker>svg{width:100%;height:100%;display:block}.auth-wordmark{letter-spacing:-.5px;font-size:22px;font-weight:600}.auth-wordmark .psy{color:var(--roxo)}.auth-wordmark .horizon{color:var(--verde-dark)}.auth-back{color:var(--muted-text);font-size:14px;font-weight:600;text-decoration:none;transition:color .18s}.auth-back:hover{color:var(--roxo-card)}.auth-main{flex:1;justify-content:center;align-items:center;padding:24px 20px 48px;display:flex}.auth-card{background:var(--branco);border-radius:28px;width:min(100%,440px);padding:34px 28px 30px;box-shadow:0 4px #41268f1f}.auth-card-wide{width:min(100%,480px)}@media (min-width:640px){.auth-card{padding:40px 36px 34px}}.auth-card-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--verde-dark);margin-bottom:10px;font-size:12.5px;font-weight:600}.auth-card h2{letter-spacing:-.3px;color:var(--roxo-card);font-size:clamp(26px,4vw,32px);font-weight:700;line-height:1.2}.auth-card-lead{color:var(--muted-text);margin-top:10px;font-size:15px;line-height:1.55}.auth-form{flex-direction:column;gap:18px;margin-top:28px;display:flex}.auth-field{flex-direction:column;gap:8px;display:flex}.auth-field-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-label{color:var(--roxo-card);font-size:14px;font-weight:600}.auth-link{color:var(--verde-dark);font-size:13px;font-weight:600;text-decoration:none}.auth-link:hover{text-underline-offset:3px;text-decoration:underline}.auth-input-wrap{position:relative}.auth-input{background:var(--claro)!important;height:48px!important;color:var(--roxo-card)!important;border-color:#41268f24!important;border-radius:14px!important;padding-inline:14px!important;font-size:15px!important}.auth-input:focus-visible{border-color:var(--verde-dark)!important;box-shadow:0 0 0 3px #13b8802e!important}.auth-input[aria-invalid=true]{border-color:#d14343!important;box-shadow:0 0 0 3px #d143431f!important}.auth-input-wrap .auth-eye{color:var(--muted-text);cursor:pointer;background:0 0;border:0;padding:4px;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth-input-wrap .auth-eye:hover{color:var(--roxo-card)}.auth-error{color:#d14343;font-size:13px}.auth-success{color:var(--verde-dark);font-size:13px}.auth-submit{background:var(--verde);width:100%;min-height:52px;color:var(--preto);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;margin-top:8px;font-family:inherit;font-size:16px;font-weight:700;transition:transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 6px #0e0b1433}.auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px #0e0b1433}.auth-submit:active:not(:disabled){transform:translateY(2px);box-shadow:0 3px #0e0b1433}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-role-switch{background:#41268f14;border:1.5px solid #41268f1f;border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-role-switch button{min-height:40px;color:var(--muted-text);cursor:pointer;background:0 0;border:0;border-radius:999px;font-family:inherit;font-size:14px;font-weight:600;transition:color .18s,background .18s,box-shadow .18s}.auth-role-switch button:hover{color:var(--roxo-card)}.auth-role-switch button.is-active{background:var(--verde);color:var(--preto);box-shadow:0 2px #0e0b142e}.auth-check{color:var(--muted-text);cursor:pointer;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;display:flex}.auth-check input{width:16px;height:16px;accent-color:var(--verde-dark);cursor:pointer;flex:none;margin-top:3px}.auth-footer-text{text-align:center;color:var(--muted-text);margin-top:22px;font-size:14px}.auth-footer-text a{color:var(--roxo-card);font-weight:700;text-decoration:none}.auth-footer-text a:hover{color:var(--verde-dark);text-underline-offset:3px;text-decoration:underline}
