.table-scroll {
    position: relative;
    overflow: auto;
    max-height: 450px;
}

/* テーブルの1行目（ヘッダー）を固定 */
.table-scroll thead th {
    position: sticky;
    top: 0;
    z-index: 10;
}

/* テーブルの1列目（選手名）を固定 */
.table-scroll tbody th {
    position: sticky;
    left: 0;
    z-index: 5;
}

/* 左上のセル（両方向固定） */
.table-scroll thead th:first-child {
    position: sticky;
    left: 0;
    z-index: 11;
}

/* ホバー効果 */
.table-scroll tbody tr:hover {
    background-color: #f5f5f5;
}

/* 合計行を特別な色で強調 */
.table-scroll tbody tr:last-child {
    background-color: #e8f4ff;
    font-weight: bold;
}

.table-scroll tbody tr:last-child:hover {
    background-color: #d0e8ff;
}

tbody tr:last-child th {
    background: #4cc2f0;
    color: white;
    font-weight: bold;
}