.table-responsive {
    max-height: 600px;
    overflow: auto;
    position: relative;
}

/* Фиксируем шапку таблицы */
.table thead th {
    position: sticky;
    top: 0;
    background-color: #f8f9fa;
    z-index: 10;
    border-bottom: 2px solid #dee2e6;
}

/* Фиксируем первый столбец */
.table tbody td:first-child,
.table thead th:first-child {
    position: sticky;
    left: -1px;
    background-color: #f8f9fa;
    z-index: 5;
    border-right: 2px solid #dee2e6;
}

.table thead th:first-child {
    z-index: 11;
}

@media screen and (max-width: 768px) {
    .table-responsive {
        max-height: 400px;
    }
}
