:root {
  --cor-primaria: #00aa9e;
  --cor-secundaria: #002d48;
  --cor-texto: #323233;
  --cor-fundo: #f4f7fb;
  --cor-aba: #e7eefc;
  --cor-aba-ativa: #fff;
}

html, body {
  height: 100%;
  background: var(--cor-fundo);
  color: var(--cor-texto);
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  font-family: 'Inter', 'Roboto', Arial, sans-serif;
}

.container{
	 width: 100%; /* Ocupa toda a largura da tela */
      max-width: 1400px; /* Limite a largura máxima em telas grandes */
      margin: 0 auto;
      padding: 0 15px; /* Adiciona um pouco de espaço nas laterais */
}

.main-content {
  flex: 1 0 auto;
}
footer {
  margin-top: auto;
  background: var(--cor-aba-ativa);
}

.text-i{
	font-size: 10pt;
}

/* Tabs tipo pasta (nav-tabs do Bootstrap modificadas) */
.nav-tabs .nav-link {
  font-weight: 500;
  color: var(--cor-secundaria);
  background: var(--cor-aba);
  border-radius: 5px 5px 0 0;
  margin-right: 4px;
  transition: background 0.2s, color 0.2s;
  border: none;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-link:focus {
  background: var(--cor-aba-ativa) !important;
  color: var(--cor-primaria) !important;
  border-bottom: 2px solid var(--cor-primaria);
}

/* Cards de estatística */
.stats-card {
  box-shadow: 0 2px 8px rgba(0,0,0,0.09);
  border-radius: 10px;
  border: 0;
}
.card.stats-card .display-6 {
  font-size: 2.1rem;
  margin-top: .7rem;
  color: var(--cor-primaria);
}

/* Cabeçalhos de página/título */
h2, .h2, .navbar-brand {
  color: var(--cor-primaria) !important;
}

/* Botões customizados (opcional) */
.btn-primary, .btn-primary:active, .btn-primary:focus, .btn-primary:hover {
  background: var(--cor-primaria) !important;
  border-color: var(--cor-primaria) !important;
  color: #fff !important;
}
.btn-outline-primary {
  border-color: var(--cor-primaria);
  color: var(--cor-primaria);
}

.btn-outline-primary:hover {
  background: var(--cor-primaria);
  color: #fff !important;
  border-color: var(--cor-primaria);
}

/* Treeview dos módulos: verde primária */
.modulo-ativo { color: var(--cor-primaria); font-weight: 500; }
.modulo-inativo { color: #aaa; }

/* Tabela header: texto escuro brand */
.table thead th, .table-light th {
  color: var(--cor-secundaria);
}

/* Links */
a, .text-primary {
  color: var(--cor-primaria) !important;
}

/* Navbar */
.navbar {
  background: var(--cor-aba-ativa) !important;
  border-bottom: 1.5px solid var(--cor-aba);
}
/* Foco nos campos de formulário */
.form-control:focus, .form-select:focus {
  border-color: var(--cor-primaria);
  box-shadow: 0 0 0 0.15rem rgba(0,170,158,.18);
}

::-webkit-input-placeholder { color: #789; }
::-moz-placeholder { color: #789; }
:-ms-input-placeholder { color: #789; }
::placeholder { color: #789; }

.active>.page-link, .page-link.active {
    z-index: 3;
    color: #fff!important;
    background-color: var(--cor-primaria);
    border-color: var(--cor-primaria);
}