/* ============================================================
   MDHUB · Login — estilo Vuexy (override sobre flatdream/vuexy)
   Carregado apenas nas telas de autenticação (Login/*.ctp).
   Variáveis próprias (mínimo) para funcionar sem o tema admin.
   ============================================================ */

:root{
  --surface:#ffffff;
  --primary:#4aa3df;
  --primary-2:#3b8fd0;
  --ink:#5e5873;
  --muted:#7b7f87;
  --line:#ebe9f1;
  --radius:6px;
  --shadow:0 4px 24px 0 rgba(34,41,47,.1);
  --mono:'IBM Plex Mono',ui-monospace,monospace;
}

body.texture{
  background:#f4f5fa;
  background-image:none;
}

/* Neutraliza o .container genérico do niftymodals (fundo vermelho #e74c3c) */
.login-container .container,
#cookieConsent .container{
  background:transparent;
  min-height:0;
}

#cl-wrapper.login-container{
  position:static;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  padding:24px;
}

.login-container .middle-login{
  position:static;
  width:100%;
  max-width:420px;
  margin:0;
}

.login-container .block-flat{
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:0;
  overflow:visible;
  margin-bottom:0;
}

/* Marca */
.auth-brand{
  text-align:center;
  padding:32px 32px 0;
}
.auth-brand .auth-logo-img{
  display:inline-block;
  width:200px;
  height:51px;
  background:url('../images/logo.png') no-repeat top center;
  background-size:200px auto;
}

.login-container .block-flat .header{
  background:transparent;
  border:none;
  border-bottom:1px solid var(--line);
  padding:22px 32px 20px;
}
.login-container .block-flat .header h3{
  color:var(--ink);
  text-shadow:none;
  line-height:1.3;
  font-size:22px;
  min-height:0;
  margin:0 0 4px;
}
.login-container .block-flat .header .auth-sub{
  font-size:13px;
  color:var(--muted);
  margin:0;
}

.login-container .block-flat .content{
  padding:24px 32px 6px;
}
.login-container .block-flat .content .form-group{ margin-bottom:16px; }
.login-container .block-flat .content .form-control{
  height:42px;
  padding:8px 12px;
  font-size:14px;
}
.login-container .block-flat .input-group-addon{
  background:var(--surface);
  border-color:var(--line);
  color:var(--muted);
  border-radius:var(--radius) 0 0 var(--radius);
}
.login-container .block-flat .input-group .form-control{
  border-radius:0 var(--radius) var(--radius) 0;
}
.login-container .block-flat .g-recaptcha{
  margin:4px 0;
  display:flex;
  justify-content:center;
}

.login-container .block-flat .foot{
  text-align:center;
  padding:10px 32px 30px;
}
.login-container .block-flat .foot .btn{
  min-width:100%;
  height:42px;
  font-size:15px;
}
.login-container .block-flat .foot a{
  color:var(--primary);
}
.login-container .block-flat .foot a:hover{ color:var(--primary-2); }

/* Seleção de conta */
.login-container.account-selection .middle-login{
  max-width:600px;
}
.login-container .block-flat .dv-accounts{
  padding:4px 32px 24px;
}
.dv-accounts .acct-row{
  display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);min-width:0;
}
.dv-accounts .acct-row:last-child{border-bottom:0}
.dv-accounts .acct-id{font-family:var(--mono);font-size:12px;color:var(--muted);flex:none}
.dv-accounts .acct-nick{font-weight:600;color:var(--ink);flex:1;min-width:0;overflow-wrap:anywhere}
.dv-accounts .btn{min-width:auto;height:auto;font-size:12px;padding:4px 10px;white-space:nowrap;flex:none}