.table-responsive {
  overflow-x: auto;
}
.table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;        /* smaller text */
  line-height: 1.2;       /* tighter line height */
}
.table th,
.table td {
  border: 1px solid #bbb;
  padding: 2px 2px;       /* reduced horizontal padding from 4px to 2px */
  text-align: center;
  white-space: nowrap;    /* prevent wrapping */
}
.table th {
  background: #f1f1f1;
  font-weight: 600;
  font-size: 12px;        /* smaller headers */
}
.table td small {
  font-size: 11px;        /* smaller text in small tags */
}
.table tr:nth-child(even) {
  background: #f9f9f9;
}
/* Super compact mode on small screens */
@media (max-width: 768px) {
  .table {
    font-size: 10px;
  }
  .table th,
  .table td {
    padding: 2px 1px;     /* even tighter on mobile */
  }
}