main > .container {
    padding: 70px 15px 20px;
}

.footer {
    background-color: #f5f5f5;
    font-size: .9em;
    height: 60px;
}

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #212529;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #212529;
    border-bottom-width: 0;
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding-top: 7px;
    color: rgba(255, 255, 255, 0.5);
}

@media(max-width:767px) {
    .nav li > form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}

.nav > li > form > button.logout:focus {
    outline: none;
}

/* Paleta da empresa (ajuste para as suas cores) */
:root{
  --brand-primary: #0057B7;   /* azul principal */
  --brand-secondary: #00A859; /* verde secundário */
  --brand-accent: #FF7A00;    /* laranja destaque */
  --brand-dark: #343a40;      /* cinza escuro */
}

/* Tile base */
.tile {
  transition: transform .12s ease, box-shadow .12s ease;
  border: none;
  border-radius: 0.8rem;
}
.tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
}
.tile .tile-icon i {
  font-size: 1.2rem;
  line-height: 1;
}
.tile .tile-title {
  font-weight: 700;
  font-size: 1.2rem;
}
.tile .tile-subtitle {
  font-size: 0.8rem;
  opacity: 1.2;
}

/* Variações de cor (background sutil e ícone colorido) */
.tile-primary .tile-icon i { color: var(--brand-primary); }
.tile-secondary .tile-icon i { color: var(--brand-secondary); }
.tile-accent .tile-icon i { color: var(--brand-accent); }
.tile-dark .tile-icon i { color: var(--brand-dark); }

/* Fundo suave */
.tile-primary .card-body { background: rgba(0,87,183,.07); }
.tile-secondary .card-body { background: rgba(0,168,89,.07); }
.tile-accent .card-body { background: rgba(255,122,0,.07); }
.tile-dark .card-body { background: rgba(52,58,64,.08); color: #212529; }

/* ===== Submenu arrows ===== */
#sidebar .nav-list a.dropdown-toggle {
  position: relative;
  padding-right: 25px; /* espaço para a setinha */
}

#sidebar .nav-list a .submenu-arrow {
  position: absolute;
  right: 10px;      /* distância da borda direita */
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.9em;
  opacity: 0.8;
  pointer-events: none; /* evita clicar na setinha em vez do link */
  transition: transform 0.2s ease;
}

/* quando aberto, gira a seta */
#sidebar .nav-list li.open > a .submenu-arrow {
  transform: translateY(-50%) rotate(90deg); /* ► vira ▼ */
}
/* CSS vem depois do Bootstrap */
button.btn.btn-acessar {
  border-radius: 12px !important; /* arredonda ao máximo */
  padding: 5px 30px !important;
  font-size: 16px !important;
  font-weight: 500;
  transition: background-color 0.3s, transform 0.2s;
}

button.btn.btn-acessar:hover {
  background-color: #0056b3 !important; /* azul no hover */
  transform: scale(1.08);
}

/* Ajuste global dos selects no seu formulário */
.form-select {
    padding: 0.6rem 1rem;   /* mais espaçamento interno */
    font-size: 0.8rem;        /* tamanho uniforme */
    height: auto;           /* altura automática em vez de fixa */
    min-height: 40px;       /* garante altura mínima confortável */
    border-radius: 0.5rem;  /* bordas arredondadas como os inputs */
}

/* Mantém consistência ao lado de checkboxes e inputs */
.form-check-input {
    margin-top: 0.3rem; 
}

/* ===============================
   Estilo do item ativo no menu
   =============================== */
.nav-list li.active > a {
    background-color: #0d6efd;   /* Azul Bootstrap */
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
}

/* Ícones dentro do item ativo */
.nav-list li.active > a .menu-icon {
    color: #fff !important;
}

/* Texto do item ativo */
.nav-list li.active > a .menu-text {
    color: #fff !important;
}

/* ===============================
   Submenus quando abertos (li.open)
   =============================== */
.nav-list li.open > a {
    background-color: #e9ecef;  /* Cinza claro */
    color: #000 !important;
    font-weight: 600;
    border-radius: 4px;
}

/* Itens dentro do submenu ativo */
.nav-list .submenu li.active > a {
    background-color: #0d6efd;
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
}

/* Submenu visível */
.nav-list .submenu {
    display: none;
    padding-left: 20px;
}
.nav-list li.open .submenu {
    display: block;
}


/* /* Itens ativos simples */
.nav-list li.active > a {
    background-color: #0d6efd; /* azul */
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
}
.nav-list li.active > a .menu-icon {
    color: #fff !important;
}

/* Submenu ativo (mesma cor do pai) */
.nav-list .submenu li.active > a {
    background-color: #0d6efd; /* azul igual ao pai */
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
}

/* Pai aberto + ativo */
.nav-list li.open.active > a {
    background-color: #0d6efd; /* azul */
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
}
.nav-list li.open.active > a .menu-icon {
    color: #fff !important;
}

/* Submenu visível */
.nav-list .submenu {
    display: none;
    padding-left: 20px;
}
.nav-list li.open .submenu {
    display: block;
}

