:root {
  --brand: #0b5d3b;
  --brand-dark: #06331f;
}
body { background: #f4f6f8; }
.app-navbar { background: var(--brand-dark); }
.app-wrapper.with-sidebar { display: flex; min-height: calc(100vh - 56px); }
.app-sidebar {
  width: 240px;
  background: #ffffff;
  border-right: 1px solid #e5e7eb;
  padding-top: 1rem;
  flex-shrink: 0;
}
.app-sidebar .nav-link {
  color: #374151;
  padding: .65rem 1.25rem;
  border-left: 3px solid transparent;
}
.app-sidebar .nav-link.active,
.app-sidebar .nav-link:hover {
  background: #eefaf3;
  color: var(--brand);
  border-left-color: var(--brand);
}
.app-content { flex-grow: 1; min-width: 0; }
.stat-card {
  border: none;
  border-radius: .75rem;
  color: #fff;
  padding: 1.25rem 1.5rem;
}
.stat-card h3 { font-weight: 700; margin-bottom: .25rem; }
.stat-card.bg-green { background: linear-gradient(135deg,#0b5d3b,#128a56); }
.stat-card.bg-blue { background: linear-gradient(135deg,#1d4ed8,#2563eb); }
.stat-card.bg-amber { background: linear-gradient(135deg,#b45309,#d97706); }
.stat-card.bg-red { background: linear-gradient(135deg,#991b1b,#dc2626); }
.card { border-radius: .75rem; }
.badge-status { font-size: .75rem; }
.auth-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg,#06331f,#0b5d3b);
}
.auth-card {
  width: 100%;
  max-width: 420px;
  border-radius: 1rem;
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
