#membres-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

#membres-table thead th {
  background-color: #00a3a6;
  color: white;
  padding: 0.75rem 1rem;
  text-align: left;
  font-weight: 600;
  white-space: nowrap;
}

#membres-table tbody tr {
  border-bottom: 1px solid #e8f0f0;
  transition: background 0.15s;
}

#membres-table tbody tr:nth-child(even) {
  background-color: #f4fbfb;
}

#membres-table tbody tr:hover {
  background-color: #d6f0f0;
}

#membres-table tbody td {
  padding: 0.6rem 1rem;
  vertical-align: middle;
}

#membres-table tbody td:nth-child(2) {
  font-weight: 600;
}

.badge {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 0.78rem;
  font-weight: 600;
  white-space: nowrap;
}

.badge-bap       { background: #e8f4ff; color: #2980b9; border: 1px solid #b3d4f0; }
.badge-aqua      { background: #e8fff4; color: #27ae60; border: 1px solid #b3e8cc; }
.badge-alimh     { background: #e8fffb; color: #16a085; border: 1px solid #b3e8de; }
.badge-spe       { background: #fff8e8; color: #e67e22; border: 1px solid #f0d4a0; }
.badge-dsi       { background: #f0e8ff; color: #8e44ad; border: 1px solid #d4b3f0; }
.badge-dipso     { background: #fff3e8; color: #6a0cee; border: 1px solid #d4b3f0; }
.badge-ecodiv    { background: #f0ffe8; color: #1a8c3a; border: 1px solid #a8e0b0; }
.badge-metabohub { background: #ffe8f4; color: #c0392b; border: 1px solid #f0b3c8; }
.badge-transfo   { background: #fff3e8; color: #d35400; border: 1px solid #f0c890; }
.badge-empty     { background: #f5f5f5; color: #aaa; border: 1px solid #e0e0e0; font-style: italic; font-weight: 400; }
