
body.auth-page{
  min-height:100vh;
  margin:0;
  background:#e2e2e2;
  color:#665c55;
}
.auth-shell{min-height:100vh;display:flex;flex-direction:column}
.auth-header{
  background:var(--color-banner,#807050);
  color:#fff;
  padding:18px 5%;
}
.auth-header-inner{max-width:1180px;margin:auto;display:flex;align-items:center;gap:14px}
.auth-brand-logo{width:54px;height:54px;object-fit:contain;border-radius:12px;background:#fff;padding:5px}
.auth-main{width:min(1180px,calc(100% - 32px));margin:34px auto;flex:1}
.auth-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:start}
.auth-card{
  background:#fff;border:1px solid rgba(128,112,80,.12);border-left:4px solid #838C6E;
  border-radius:16px;box-shadow:0 8px 28px rgba(72,62,48,.10);padding:28px;
}
.auth-card h1,.auth-card h2,.auth-card h3{color:#807050}
.auth-card .btn-primary,.setup-form .btn-primary{
  background:#838C6E!important;border-color:#838C6E!important;color:#fff!important
}
.auth-card .btn-primary:hover,.setup-form .btn-primary:hover{background:#6f785d!important;border-color:#6f785d!important}
.auth-card .btn-outline-primary{color:#838C6E;border-color:#838C6E}
.auth-card .btn-outline-primary:hover{background:#838C6E;color:#fff}
.auth-help{font-size:.9rem;color:#776c64}
.setup-form .section-card{
  background:#fff;border:1px solid rgba(128,112,80,.12);border-left:4px solid #838C6E;
  border-radius:16px;box-shadow:0 8px 28px rgba(72,62,48,.08);padding:24px;margin-bottom:18px
}
.setup-form .section-card h2{font-size:1.15rem;color:#807050;margin-bottom:18px}
.setup-avatar-preview{width:82px;height:82px;border-radius:50%;object-fit:cover;background:#f3f3ef;border:2px solid #838C6E}
.setup-logo-preview{width:130px;height:90px;object-fit:contain;background:#fff;border:1px dashed #b19e86;border-radius:12px;padding:8px}
.auth-footer{padding:20px;text-align:center;color:#776c64}
.auth-error{background:#fff1f0;border:1px solid #e8b5af;color:#8b3f36;border-radius:10px;padding:10px 12px;margin-bottom:16px}
@media(max-width:850px){.auth-grid{grid-template-columns:1fr}.auth-main{margin:20px auto}.auth-card{padding:22px}}
.password-field .form-control{border-right:0}
.password-toggle{border-color:#ced4da;background:#fff;color:#807050}
.password-toggle:hover,.password-toggle:focus{background:#f5f3ef;color:#665c55;border-color:#b19e86}
.cep-status{display:block;min-height:1.25rem;margin-top:.3rem;font-size:.82rem}
