﻿﻿﻿﻿﻿﻿﻿﻿﻿﻿html body .container .ranking-section .table-container #rankingTable {
  table-layout: fixed !important;
  width: 100% !important;
}
html body .container .ranking-section .table-container #rankingTable thead tr th,
html body .container .ranking-section .table-container #rankingTable tbody tr td {
  width: auto !important;
}


@media (max-width: 768px) {
  html body .container .ranking-section .table-container {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  html body .container .ranking-section .table-container #rankingTable {
    table-layout: auto !important;
    width: 100% !important;
  }
  html body .container .ranking-section .table-container #rankingTable col,
  html body .container .ranking-section .table-container #rankingTable colgroup {
    width: auto !important;
  }
  html body .container .ranking-section .table-container #rankingTable thead th,
  html body .container .ranking-section .table-container #rankingTable tbody td {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 2px !important;
    height: auto !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .copy-btn {
    height: 24px !important;
    line-height: 24px !important;
    padding: 0 5px !important;
    margin: 0 !important;
    align-self: center !important;
  }
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .id-text {
    display: inline-flex !important;
    align-items: center !important;
    height: 22px !important;
    line-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
    align-self: center !important;
    overflow: visible !important;
  }

  
  html body .container .ranking-section .table-container #rankingTable {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
  }
  html body .container .ranking-section .table-container #rankingTable thead th,
  html body .container .ranking-section .table-container #rankingTable tbody td {
    border-top-color: transparent !important;
  }
  html body .container .ranking-section .table-container #rankingTable thead {
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
  }
  html body .container .ranking-section .table-container #rankingTable thead tr,
  html body .container .ranking-section .table-container #rankingTable thead th {
    border-bottom: 0 !important;
    border-bottom-color: transparent !important;
    border-bottom-style: none !important;
    box-shadow: none !important;
    outline: none !important;
    background-clip: padding-box !important;
  }
  html body .container .ranking-section .table-container #rankingTable tbody tr:first-child td {
    border-top: none !important;
  }

  
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .id-text {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .copy-btn {
    flex: 0 0 auto;
    padding: 2px 6px;
    font-size: 12px;
  }
}


@media (min-width: 769px) {
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(1),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(1) { min-width: 40px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(2),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(2) { min-width: 48px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(3),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(3) { min-width: 56px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(4),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(4) { min-width: 180px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(5),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(5) { min-width: 140px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(6),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(6) { min-width: 64px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(7),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(7) { min-width: 72px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th:nth-child(8),
  html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(8) { min-width: 120px !important; }

  
  html body .container .ranking-section .table-container #rankingTable thead th.type-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.type-cell { min-width: 40px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.employment-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.employment-cell { min-width: 48px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.job-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.job-cell { min-width: 56px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.id-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell { min-width: 180px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.card-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.card-cell { min-width: 80px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.battle-level-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.battle-level-cell { min-width: 64px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.main-attr-level-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.main-attr-level-cell { min-width: 72px !important; }
  html body .container .ranking-section .table-container #rankingTable thead th.time-column,
  html body .container .ranking-section .table-container #rankingTable tbody td.job-time { min-width: 120px !important; }

  
  html body .container .ranking-section .table-container #rankingTable th,
  html body .container .ranking-section .table-container #rankingTable td {
    box-sizing: border-box !important;
  }
}


@media (max-width: 820px) {
  .table-container { overflow-x: auto !important; }
  #rankingTable {
    table-layout: auto !important;
    width: max-content !important;
    min-width: 100% !important;
  }

  html body .container .ranking-section .table-container #rankingTable thead th,
  html body .container .ranking-section .table-container #rankingTable tbody td {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  #rankingTable thead th.job-column,
  #rankingTable tbody td.job-column,
  #rankingTable thead th:nth-child(3),
  #rankingTable tbody td:nth-child(3) {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #rankingTable thead th.id-column,
  #rankingTable tbody td.id-column,
  #rankingTable tbody td.id-cell {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  #rankingTable tbody td.id-cell { padding-right: 60px !important; position: relative !important; }

  #rankingTable th.maps-column,
  #rankingTable td.maps-column,
  #rankingTable th.remarks-column,
  #rankingTable td.remarks-column {
    white-space: normal !important;
    word-break: break-word !important;
    text-overflow: clip !important;
  }
}


@media (max-width: 768px), (min-width: 769px) {
  
  #rankingTable tbody td.actions-cell > div {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }
  
  #rankingTable tbody td.actions-cell .copy-btn,
  #rankingTable tbody td.actions-cell .edit-btn,
  #rankingTable tbody td.card-cell .edit-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 25px !important;
    line-height: 25px !important;
    padding: 0 7px !important;
    font-size: 12px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }
  
  #rankingTable tbody td.actions-cell { overflow: visible !important; }
}

html body #rankingTable tbody td.actions-cell .copy-btn,
html body #rankingTable tbody td.actions-cell .edit-btn,
html body #rankingTable tbody td.card-cell .edit-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 24px !important;
  line-height: 24px !important;
  padding: 0 5px !important;
  font-size: 12px !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
}


@media (min-width: 769px) {
  html body #rankingTable tbody td.id-cell {
    display: table-cell !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
}
@media (max-width: 768px) {
  html body #rankingTable tbody td.id-cell {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    height: auto !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    white-space: nowrap !important;
  }
  html body #rankingTable tbody td.id-cell .id-text,
  html body #rankingTable tbody td.id-cell .copy-btn {
    display: inline-flex !important;
    align-items: center !important;
    height: 22px !important;
    line-height: 22px !important;
    margin: 0 !important;
  }
}


@media (min-width: 769px), (max-width: 768px) {
  
  html body #rankingTable thead th:nth-child(5),
  html body #rankingTable tbody td:nth-child(5) {
    width: 170px !important;
    min-width: 170px !important;
    max-width: 170px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }
  
  html body #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(5) {
    width: 170px !important;
  }
}


@media (min-width: 769px), (max-width: 768px) {
  
  html body #rankingTable thead th:nth-child(6),
  html body #rankingTable tbody td:nth-child(6),
  html body #rankingTable thead th.card-column,
  html body #rankingTable tbody td.card-cell {
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }
  
  html body #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(6) {
    width: 150px !important;
  }
}


@media (max-width: 768px) {
  
  html body .container .ranking-section .table-container {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  
  html body #rankingTable thead th:nth-child(4),
  html body #rankingTable tbody td:nth-child(4),
  html body #rankingTable thead th.id-column,
  html body #rankingTable tbody td.id-cell {
    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    text-align: center !important;
    vertical-align: middle !important;
  }
  
  html body #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(4) {
    width: 220px !important;
  }
}


@media (min-width: 769px), (max-width: 768px) {
  html body #submitModal .modal-content .form-grid-container .form-group.grid-id-tip {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 36px !important; 
  }
  html body #submitModal .modal-content .form-grid-container .form-group.grid-id-tip .tip-text {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: auto !important;
    text-align: center !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
}


 
@media (max-width: 99999px) {
  
  #rankingTable thead th.type-column,
  #rankingTable tbody td.type-cell,
  #rankingTable thead th.job-column,
  #rankingTable tbody td.job-cell {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  
  #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(1),
  #rankingTable colgroup col:nth-child(1),
  #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(3),
  #rankingTable colgroup col:nth-child(3) {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
  }
}
 
@media (max-width: 99999px) {
  
  #rankingTable thead th.type-column,
  #rankingTable tbody td.type-cell,
  #rankingTable thead th.job-column,
  #rankingTable tbody td.job-cell {
    width: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  
  #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(1),
  #rankingTable colgroup col:nth-child(1),
  #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(3),
  #rankingTable colgroup col:nth-child(3) {
    width: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
  }
}
 
@media (max-width: 99999px) {
  
  #rankingTable thead th.job-column,
  #rankingTable tbody td.job-cell {
    width: 65px !important;
    min-width: 65px !important;
    max-width: 65px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  
  #rankingTable colgroup#ranking-colgroup-fixed col:nth-child(3),
  #rankingTable colgroup col:nth-child(3) {
    width: 65px !important;
    min-width: 65px !important;
    max-width: 65px !important;
  }
}


input[type=checkbox]:checked + label,
input[type=checkbox]:checked ~ label,
label.checked,
label.active,
.employment-status input[type=checkbox]:checked + label,
.employment-status input[type=checkbox]:checked ~ label,
.resume-form input[type=checkbox]:checked + label,
.resume-form input[type=checkbox]:checked ~ label {
  font-weight: inherit !important;
  font-style: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
}


.employment-status .checked,
.employment-status .active,
.resume-form .checked,
.resume-form .active {
  font-weight: inherit !important;
  font-style: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
}


input[type=checkbox]:checked + label span,
input[type=checkbox]:checked ~ label span,
.employment-status input[type=checkbox]:checked + label span,
.employment-status input[type=checkbox]:checked ~ label span,
.resume-form input[type=checkbox]:checked + label span,
.resume-form input[type=checkbox]:checked ~ label span {
  font-weight: inherit !important;
  font-style: inherit !important;
  color: inherit !important;
}

.modal-content .filter-checkbox-item input[type="checkbox"]:checked ~ .filter-label-text,
#submitModal .modal-content .filter-checkbox-item input[type="checkbox"]:checked ~ .filter-label-text {
  color: inherit !important;
  font-weight: inherit !important;
  font-style: inherit !important;
  text-decoration: none !important;
}
 
@media (max-width: 99999px) {
  
  .radio-group .radio-item input[type=radio]:checked ~ .radio-label-text,
  .radio-group .radio-item.selected .radio-label-text,
  .radio-group .radio-item.is-checked .radio-label-text {
    font-weight: inherit !important;
    font-style: inherit !important;
    color: inherit !important;
    text-decoration: none !important;
    letter-spacing: inherit !important;
    word-spacing: inherit !important;
  }
  
  .radio-group .radio-item input[type=radio]:hover ~ .radio-label-text,
  .radio-group .radio-item input[type=radio]:focus ~ .radio-label-text,
  .radio-group .radio-item input[type=radio]:active ~ .radio-label-text {
    font-weight: inherit !important;
    font-style: inherit !important;
    color: inherit !important;
    text-decoration: none !important;
  }
  
  .radio-group .radio-item:hover .radio-label-text,
  .radio-group .radio-item:focus-within .radio-label-text,
  .radio-group .radio-item:active .radio-label-text {
    font-weight: inherit !important;
    font-style: inherit !important;
    color: inherit !important;
    text-decoration: none !important;
  }
}
 
@media (max-width: 99999px) {
  #submitType,
  #job {
    text-align: center !important;
    text-align-last: center !important;        
    -moz-text-align-last: center !important;   
  }
  #submitType option,
  #job option {
    text-align: center !important;
  }
}
 
@media (max-width: 99999px) {
  #submitType,
  #job {
    
    text-align: center !important;
    text-align-last: center !important;
    -moz-text-align-last: center !important;

    
    padding-top: 6px !important;
    padding-bottom: 4px !important;

    
    box-sizing: border-box !important;
  }
  
  #submitType option,
  #job option {
    text-align: center !important;
  }
}
 
@media (max-width: 99999px) {
  
  html body .modal-content .form-group select#submitType,
  html body .modal-content .form-group select#job,
  select#submitType,
  select#job {
    text-align: center !important;
    text-align-last: center !important;
    -moz-text-align-last: center !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    box-sizing: border-box !important;
  }

  
  html body .form-group select {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    box-sizing: border-box !important;
  }

  
  select#submitType option,
  select#job option,
  html body .modal-content .form-group select#submitType option,
  html body .modal-content .form-group select#job option {
    text-align: center !important;
  }
}
 
@media (max-width: 99999px) {
  #submitType,
  #job {
    text-align: center !important;
    text-align-last: center !important;
    -moz-text-align-last: center !important;
    box-sizing: border-box !important;

    
    height: 34px !important;
    line-height: 34px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #submitType option,
  #job option { text-align: center !important; }
}


/* 高优先级覆盖：PC端提交简历弹窗宽度 */
@media (min-width: 769px) {
  html body #submitModal .modal-content {
    width: 670px !important;
    min-width: 670px !important;
  }
}

/* 队伍边框统一覆盖（修复顶部与其他边颜色不一致） */
html body .table-container #rankingTable.team-mode .team-group-0 { --team-color: #007bff; }
html body .table-container #rankingTable.team-mode .team-group-1 { --team-color: #28a745; }
html body .table-container #rankingTable.team-mode .team-group-2 { --team-color: #ffc107; }
html body .table-container #rankingTable.team-mode .team-group-3 { --team-color: #17a2b8; }
html body .table-container #rankingTable.team-mode .team-group-4 { --team-color: #6f42c1; }

/* 清除默认 1px 边框对队伍包裹视觉的干扰（避免与 4px 顶/底/左右混色） */
html body .table-container #rankingTable.team-mode .team-group-0 td,
html body .table-container #rankingTable.team-mode .team-group-1 td,
html body .table-container #rankingTable.team-mode .team-group-2 td,
html body .table-container #rankingTable.team-mode .team-group-3 td,
html body .table-container #rankingTable.team-mode .team-group-4 td {
  border-bottom-color: transparent !important;
}

/* 单人队伍：四边统一同色 */
html body .table-container #rankingTable.team-mode .team-group-0.team-single td,
html body .table-container #rankingTable.team-mode .team-group-1.team-single td,
html body .table-container #rankingTable.team-mode .team-group-2.team-single td,
html body .table-container #rankingTable.team-mode .team-group-3.team-single td,
html body .table-container #rankingTable.team-mode .team-group-4.team-single td {
  border-top: 4px solid var(--team-color) !important;
  border-bottom: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-single td:first-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-single td:first-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-single td:first-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-single td:first-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-single td:first-child {
  border-left: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-single td:last-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-single td:last-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-single td:last-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-single td:last-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-single td:last-child {
  border-right: 4px solid var(--team-color) !important;
}

/* 队伍首行：顶部与左右同色 */
html body .table-container #rankingTable.team-mode .team-group-0.team-first td,
html body .table-container #rankingTable.team-mode .team-group-1.team-first td,
html body .table-container #rankingTable.team-mode .team-group-2.team-first td,
html body .table-container #rankingTable.team-mode .team-group-3.team-first td,
html body .table-container #rankingTable.team-mode .team-group-4.team-first td {
  border-top: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-first td:first-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-first td:first-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-first td:first-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-first td:first-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-first td:first-child {
  border-left: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-first td:last-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-first td:last-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-first td:last-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-first td:last-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-first td:last-child {
  border-right: 4px solid var(--team-color) !important;
}

/* 队伍中间行：左右同色 */
html body .table-container #rankingTable.team-mode .team-group-0.team-middle td:first-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-middle td:first-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-middle td:first-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-middle td:first-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-middle td:first-child {
  border-left: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-middle td:last-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-middle td:last-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-middle td:last-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-middle td:last-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-middle td:last-child {
  border-right: 4px solid var(--team-color) !important;
}

/* 队伍末行：底部与左右同色 */
html body .table-container #rankingTable.team-mode .team-group-0.team-last td,
html body .table-container #rankingTable.team-mode .team-group-1.team-last td,
html body .table-container #rankingTable.team-mode .team-group-2.team-last td,
html body .table-container #rankingTable.team-mode .team-group-3.team-last td,
html body .table-container #rankingTable.team-mode .team-group-4.team-last td {
  border-bottom: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-last td:first-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-last td:first-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-last td:first-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-last td:first-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-last td:first-child {
  border-left: 4px solid var(--team-color) !important;
}
html body .table-container #rankingTable.team-mode .team-group-0.team-last td:last-child,
html body .table-container #rankingTable.team-mode .team-group-1.team-last td:last-child,
html body .table-container #rankingTable.team-mode .team-group-2.team-last td:last-child,
html body .table-container #rankingTable.team-mode .team-group-3.team-last td:last-child,
html body .table-container #rankingTable.team-mode .team-group-4.team-last td:last-child {
  border-right: 4px solid var(--team-color) !important;
}

/* 覆盖：ID/名字文本颜色与悬停态 */
html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .id-text,
html body .container .ranking-section .table-container #rankingTable tbody td:nth-child(4) .id-text,
html body #rankingTable .id-text,
html body span.id-text {
  color: #ffffff !important;
}

/* 悬停态同色 */
html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .id-text:hover,
html body #rankingTable .id-text:hover,
html body span.id-text:hover {
  color: #ffffff !important;
}

/* 移动端提升字重 */
@media (max-width: 768px) {
  html body .container .ranking-section .table-container #rankingTable tbody td.id-cell .id-text,
  html body #rankingTable .id-text,
  html body span.id-text {
    font-weight: 600 !important;
  }
}

/* 移动端渲染稳定性修复：避免滚动时随机列不显示 */
@media (max-width: 768px) {
  /* 移除会影响绘制/合成层的属性，强制可见 */
  html body #rankingTable th,
  html body #rankingTable td {
    -webkit-transform: none !important;
    transform: none !important;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    contain: initial !important;
    will-change: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* ID 列与其子元素禁用 contain/transform，避免内容未绘制 */
  html body #rankingTable tbody td.id-cell,
  html body #rankingTable tbody td.id-cell * {
    -webkit-transform: none !important;
    transform: none !important;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    contain: initial !important;
    will-change: auto !important;
  }

  /* 覆盖绝对定位，确保文本参与正常文档流进行绘制与测量 */
  html body #rankingTable span.id-text {
    position: static !important;
    display: inline-flex !important;
    overflow: visible !important;
    white-space: nowrap !important;
  }
}