/* Custom styles goes here */

/* Staff index — one-line responsive rows */
.staff-list .staff-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  padding: 0.75rem 0.5rem;
  border-bottom: 1px solid var(--bs-border-color, #eee);
}

.staff-list .staff-row:last-child {
  border-bottom: none;
}

.staff-list .staff-row:hover {
  background-color: var(--bs-tertiary-bg, #f8f9fa);
}

.staff-list .staff-media {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 220px;
  flex: 3 1 220px;
}

.staff-list .staff-schedule {
  color: var(--bs-primary, #696cff);
}

.staff-list .staff-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-width: 140px;
  flex: 1 1 140px;
}

.staff-list .staff-dates {
  min-width: 110px;
  flex: 1 1 110px;
}

.staff-list .staff-actions {
  margin-left: auto;
  flex: 0 0 auto;
}

/* Stack into a narrow card layout on small screens */
@media (max-width: 575.98px) {
  .staff-list .staff-row {
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.75rem 0.25rem;
  }

  .staff-list .staff-badges,
  .staff-list .staff-dates {
    flex: 1 1 100%;
    min-width: 0;
  }

  .staff-list .staff-actions {
    margin-left: 62px;
  }
}
