html,
body {
  height: 100%;
  margin: 0;
  font-family: sans-serif;
}

/* Page container pour assurer 100vh proprement */
.page-shell {
  min-height: 100vh;
  /* overflow: hidden; */
}

.scrollable-zone {
  flex: 1 1 auto; /* prend tout l’espace restant */
  min-height: 0; /* crucial pour scroll */
  overflow-y: auto; /* une seule scrollbar ici */
}

.sidebar {
    background: #15bebe;
    height: 100%;
    overflow-y: auto;
}

.sidebar .list-group-item {
    border-radius: 0 !important;
}

.sidebar .list-group-item i {
    margin-right: 8px;
}

.table thead th {
    position: sticky;
    top: 0;
    background-color: #78ce16; /* IMPORTANT */
    z-index: 2;
}

.table thead th {
    box-shadow: 0 2px 2px -1px rgba(0,0,0,0.1);
}

.table-panel {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.table-panel h3 {
    flex-shrink: 0; /* le titre garde sa taille */
}

.table-container {
    flex: 1;              /* prend le reste */

    overflow: auto;
    min-height: 0; /* ✅ OBLIGATOIRE */

}

.main-column {
  height: 100vh;
  display: flex;
  flex-direction: column;
}
