/* ============================================
   AuditaJá — folha de estilos principal
   Identidade: azul-marinho (Confisped) + verde-check
   ============================================ */

:root {
  --aj-blue:   #1F4E79;
  --aj-blue-d: #163b5d;
  --aj-green:  #2E7D32;
  --aj-bg:     #f4f6f9;
  --aj-card:   #ffffff;
}

body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }

.bg-app { background: var(--aj-bg); min-height: 100vh; }
.bg-login {
  min-height: 100vh;
  background:
    radial-gradient(circle at 20% 20%, rgba(31,78,121,.08), transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(46,125,50,.08), transparent 40%),
    var(--aj-bg);
}

/* Navbar */
.navbar-aj { background: var(--aj-blue); }
.navbar-aj .nav-link.disabled { color: rgba(255,255,255,.5) !important; }

/* Marca / logo */
.brand-mark {
  background: #fff;
  color: var(--aj-blue);
  border-radius: 8px;
  padding: 2px 8px;
  font-weight: 800;
  font-size: 1.1rem;
  letter-spacing: -0.5px;
}
.brand-mark .text-check { color: var(--aj-green); }
.brand-mark-lg {
  display: inline-block;
  background: var(--aj-blue);
  color: #fff;
  border-radius: 14px;
  padding: 8px 18px;
  font-weight: 800;
  font-size: 1.8rem;
  letter-spacing: -1px;
}
.brand-mark-lg .text-check { color: #7ee389; }

/* Login */
.login-wrapper {
  display: flex; align-items: center; justify-content: center;
  min-height: calc(100vh - 60px); padding: 2rem 1rem;
}
.login-card {
  background: var(--aj-card);
  border-radius: 16px;
  padding: 2.2rem;
  width: 100%; max-width: 380px;
  border: 1px solid rgba(0,0,0,.05);
}

/* Botão padrão AuditaJá */
.btn-aj {
  background: var(--aj-blue);
  color: #fff;
  border: 0;
  padding: 10px 16px;
  border-radius: 8px;
  transition: background .15s;
}
.btn-aj:hover, .btn-aj:focus { background: var(--aj-blue-d); color: #fff; }
.btn-aj.disabled, .btn-aj:disabled { opacity: .5; }

/* Cards do dashboard */
.card { border: 1px solid rgba(0,0,0,.06); border-radius: 12px; }
.card-stat .card-body { display: flex; flex-direction: column; gap: 4px; }
.card-stat .stat-icon {
  width: 42px; height: 42px; border-radius: 10px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 1.3rem; margin-bottom: 8px;
}
.card-stat .stat-num { font-size: 1.8rem; font-weight: 700; line-height: 1; color: var(--aj-blue); }
.card-stat .stat-lbl { color: #6c757d; font-size: .85rem; }

/* Footer */
.footer-aj { background: transparent; }
