/* =====================================================================
   SSIT Tema · login do admin (entrar, esqueci a senha, redefinir senha)
   Layout em duas colunas: marca (azul-marinho) + acesso (claro).
   O script login.js monta as colunas; sem script, a página continua
   legível e bonita em uma coluna clara.
   ===================================================================== */
:root{--st-tinta:#0F1B2D;--st-suave:#3A4456;--st-apagado:#5B6475;--st-linha:#E3E7EE;--st-linha2:#C9D0DB;--st-azul:#2448C7;--st-azul2:#1D3B9E;--st-fundo:#F3F5F8}
html,body,body.login_admin,body.authentication{background:var(--st-fundo)!important;font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important;color:var(--st-tinta)!important;-webkit-font-smoothing:antialiased}
body.login_admin::before,body.authentication::before{content:none!important}

/* ---------- coluna de acesso (funciona com ou sem o script) ---------- */
.authentication-form-wrapper{max-width:420px!important;width:100%;padding-top:0!important;margin:0 auto!important}
.authentication-form-wrapper .company-logo{text-align:left!important;margin:0 0 36px!important}
.authentication-form-wrapper .company-logo img{max-height:46px!important;width:auto;background:none!important;padding:0!important;box-shadow:none!important;border-radius:0!important}
.authentication-form-wrapper h1,.authentication-form-wrapper .authentication-heading{text-align:left!important;color:var(--st-tinta)!important;font-size:28px!important;font-weight:700!important;letter-spacing:-.015em;margin:0 0 6px!important}
.authentication-form-wrapper h1+p,.authentication-form-wrapper .authentication-subheading,.ssit-login-sub{text-align:left!important;color:var(--st-apagado)!important;font-size:15px!important;margin:0 0 28px!important}
.authentication-form-wrapper .tw-bg-white,.authentication-form-wrapper .panel_s,.authentication-form,.login-form{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important}
.authentication-form-wrapper label,.authentication-form-wrapper .control-label{color:var(--st-suave)!important;font-weight:600!important;font-size:13.5px!important;margin-bottom:6px!important}
.authentication-form-wrapper .form-group{margin-bottom:18px!important}
.authentication-form-wrapper .form-control{height:48px!important;min-height:48px!important;background:#fff!important;border:1px solid var(--st-linha2)!important;border-radius:10px!important;box-shadow:none!important;font-size:15px!important;color:var(--st-tinta)!important;padding:0 14px!important}
.authentication-form-wrapper .form-control:hover{border-color:#9AA5B8!important}
.authentication-form-wrapper .form-control:focus{border-color:var(--st-azul)!important;box-shadow:0 0 0 4px rgba(36,72,199,.14)!important;outline:none!important}
.authentication-form-wrapper a{color:var(--st-azul)!important;font-weight:600!important;text-decoration:none!important}
.authentication-form-wrapper a:hover{color:var(--st-azul2)!important;text-decoration:underline!important}
.authentication-form-wrapper .checkbox label,.authentication-form-wrapper input[type=checkbox]+label{color:var(--st-suave)!important;font-weight:500!important;font-size:14px!important}
.authentication-form-wrapper input[type=checkbox]{accent-color:var(--st-azul);width:16px;height:16px}
.authentication-form-wrapper .btn-primary,.authentication-form-wrapper button[type=submit]{width:100%;height:50px!important;min-height:50px!important;background:var(--st-azul)!important;border:0!important;border-radius:10px!important;color:#fff!important;font-weight:700!important;font-size:15.5px!important;letter-spacing:.01em;box-shadow:0 8px 20px rgba(36,72,199,.28)!important;transition:background .15s,box-shadow .15s,transform .05s}
.authentication-form-wrapper .btn-primary:hover,.authentication-form-wrapper button[type=submit]:hover{background:var(--st-azul2)!important;box-shadow:0 10px 24px rgba(29,59,158,.34)!important}
.authentication-form-wrapper .btn-primary:active,.authentication-form-wrapper button[type=submit]:active{transform:translateY(1px)}
.authentication-form-wrapper .btn-primary:focus-visible{outline:3px solid #9DB0E8!important;outline-offset:2px}
.authentication-form-wrapper .alert{border-radius:12px!important;font-size:14px}
.authentication-form-wrapper .alert-danger{background:#FCEBEA!important;border-color:#F0B7B2!important;color:#8F1F17!important}
.authentication-form-wrapper .alert-success{background:#E7F5EE!important;border-color:#A9DCC2!important;color:#14653E!important}
.authentication-form-wrapper .text-danger,.authentication-form-wrapper .help-block{color:#8F1F17!important;font-size:13px}

/* ---------- duas colunas (montadas pelo login.js) ---------- */
.ssit-login{display:grid;grid-template-columns:minmax(380px,46%) 1fr;min-height:100vh;width:100%}
.ssit-login-marca{position:relative;overflow:hidden;background:#0F1B2D;color:#fff;padding:56px 64px;display:flex;flex-direction:column;justify-content:space-between}
.ssit-login-marca::before{content:"";position:absolute;inset:0;background:
  radial-gradient(640px 420px at 110% -10%,rgba(36,72,199,.55),transparent 62%),
  radial-gradient(520px 380px at -20% 115%,rgba(14,138,154,.32),transparent 60%);pointer-events:none}
.ssit-login-marca::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.4px);background-size:22px 22px;-webkit-mask-image:linear-gradient(160deg,#000 10%,transparent 70%);mask-image:linear-gradient(160deg,#000 10%,transparent 70%);pointer-events:none}
.ssit-login-marca>*{position:relative;z-index:1}
.ssit-login-marca{align-items:center;justify-content:center}
.ssit-login-ilustra{display:block;width:min(580px,88%);height:auto;user-select:none;-webkit-user-drag:none;animation:ssitFlutua 7s ease-in-out infinite}
@keyframes ssitFlutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.ssit-login-acesso{display:flex;flex-direction:column;justify-content:center;padding:48px 32px;background:#fff}
.ssit-login-acesso .authentication-form-wrapper{animation:ssitEntra .35s ease-out}
.ssit-login-ajuda{max-width:420px;width:100%;margin:28px auto 0;font-size:13px;color:var(--st-apagado);display:flex;align-items:center;gap:8px}
.ssit-login-ajuda svg{flex:0 0 auto;color:#8A93A5}
@keyframes ssitEntra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ssit-login-acesso .authentication-form-wrapper{animation:none}}
@media (max-width:960px){
  .ssit-login{grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:100vh}
  .ssit-login-marca{padding:18px 20px 0;max-height:190px}
  .ssit-login-ilustra{width:auto;max-width:92%;max-height:172px;animation:none}
  .ssit-login-acesso{padding:28px 20px 40px;justify-content:flex-start}
  .authentication-form-wrapper .company-logo{margin-bottom:24px!important}
}
@media (prefers-reduced-motion:reduce){.ssit-login-ilustra{animation:none}}
/* área do cliente: a tela cobre o cabeçalho e o rodapé do tema do cliente */
.ssit-login-area-cliente{position:fixed;inset:0;z-index:1030;overflow-y:auto;background:#fff}
body.ssit-login-ok-cliente{overflow:hidden}
.ssit-login-cliente .panel_s,.ssit-login-cliente .panel-body{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
.ssit-login-cliente .company-logo strong{font-size:22px;color:var(--st-tinta)}
.ssit-login-cliente .col-md-4,.ssit-login-cliente [class*=col-]{width:auto!important;float:none!important;margin:0!important;padding:0!important}
.ssit-login-cliente .text-center{text-align:left!important}
/* sem o script (equipe): centraliza em coluna única */
body.login_admin:not(.ssit-login-ok) .authentication-form-wrapper,body.authentication:not(.ssit-login-ok) .authentication-form-wrapper{padding:64px 20px!important}
/* caixa "lembrar" alinhada e botão secundário (Registrar) */
.authentication-form-wrapper .checkbox{padding-left:0!important;margin:4px 0 18px!important;display:flex;align-items:center;gap:10px;min-height:24px}
.authentication-form-wrapper .checkbox input[type=checkbox]{position:static!important;margin:0!important;opacity:1!important;width:18px;height:18px;flex:0 0 auto}
.authentication-form-wrapper .checkbox label{padding-left:0!important;margin:0!important;min-height:0!important;display:inline!important}
.authentication-form-wrapper .checkbox label::before,.authentication-form-wrapper .checkbox label::after{display:none!important}
.authentication-form-wrapper a.btn-primary{color:#fff!important;text-decoration:none!important}
.authentication-form-wrapper a.btn-success,.authentication-form-wrapper a.btn-default{color:var(--st-tinta)!important;text-decoration:none!important}
.authentication-form-wrapper .btn-success,.authentication-form-wrapper .btn-default{width:100%;height:48px!important;min-height:48px!important;margin-top:10px!important;background:#fff!important;border:1px solid var(--st-linha2)!important;border-radius:10px!important;color:var(--st-tinta)!important;font-weight:600!important;font-size:15px!important;box-shadow:none!important;display:flex!important;align-items:center;justify-content:center}
.authentication-form-wrapper .btn-success:hover,.authentication-form-wrapper .btn-default:hover{border-color:var(--st-tinta)!important;background:#F6F8FC!important;color:var(--st-tinta)!important;text-decoration:none!important}
.authentication-form-wrapper .btn-block+.btn-block{margin-top:10px!important}
