/* * ESTILOS GERAIS DO DASHBOARD
 * Garante que o menu lateral seja fixo em desktop e fluido em mobile.
 */

body {
  font-size: .875rem;
}

/* --- SIDEBAR (MENU LATERAL) --- */
.sidebar {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100; /* Fica atrás da navbar (que geralmente é z-index 1020 ou mais) */
  padding: 48px 0 0; /* Altura da Navbar */
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}

/* Comportamento no Mobile (telas menores que 768px - md) */
@media (max-width: 767.98px) {
  .sidebar {
    position: static; /* Deixa de ser fixo e flui com a página */
    padding-top: 0;   /* Remove o padding do topo pois a navbar empurra */
    width: 100%;      /* Ocupa toda a largura */
    height: auto;     /* Altura automática baseada no conteúdo */
    visibility: visible;
  }
}

/* Área de conteúdo do menu (scrollável se for muito alto) */
.sidebar-sticky {
  position: relative;
  top: 0;
  height: calc(100vh - 48px);
  padding-top: .5rem;
  overflow-x: hidden;
  overflow-y: auto; /* Scroll se o menu for maior que a tela */
}

/* Links do Menu */
.sidebar .nav-link {
  font-weight: 500;
  color: #333;
  padding: 10px 15px;
  border-radius: 5px;
  margin: 0 10px;
}

.sidebar .nav-link .feather {
  margin-right: 4px;
  color: #727272;
}

.sidebar .nav-link.active {
  color: #007bff;
  background-color: #e9ecef;
}

.sidebar .nav-link:hover {
  color: #007bff;
  background-color: #f8f9fa;
}

.sidebar .nav-link.active .feather,
.sidebar .nav-link:hover .feather {
  color: inherit;
}

.sidebar-heading {
  font-size: .75rem;
  text-transform: uppercase;
}

/* --- AJUSTES DA TABELA NO PRINT E TELA --- */
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Correções de impressão para garantir o layout paisagem */
@media print {
    .sidebar { display: none !important; } /* Esconde sidebar na impressão */
    .navbar { display: none !important; }  /* Esconde navbar na impressão */
    main { width: 100% !important; margin: 0 !important; padding: 0 !important; }
}