
/* School rank summary detail: grouped lists */
.school-detail-groups { display: flex; flex-direction: column; gap: 18px; padding: 8px 0 12px; }
.school-detail-group { margin: 0 16px; overflow: hidden; border: 1px solid #d9e6f3; border-radius: 12px; background: #fff; }
.school-detail-group-head { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-bottom: 1px solid #dce5ef; background: linear-gradient(90deg,#f5f8fd,#fff); }
.school-detail-group-head .group-box { min-width: 0; width: auto; padding: 6px 10px; border-radius: 8px; font-size: 11px; font-weight: 800; }
.school-detail-group-head .group-count { margin-left: auto; color: #718298; font-size: 10px; font-weight: 700; }
.school-detail-list { list-style: none; margin: 0; padding: 4px 14px; }
.school-detail-list li { display: flex; align-items: center; gap: 12px; padding: 9px 2px; border-bottom: 1px solid #eef2f7; }
.school-detail-list li:last-child { border-bottom: 0; }
.item-rank { width: 24px; flex: none; color: #718298; font-weight: 800; text-align: right; }
.item-code { flex: none; font-weight: 800; color: #173e71; }
.item-group { flex: none; max-width: 180px; color: #5f7286; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.item-activity { flex: 1 1 auto; min-width: 0; color: #173e71; font-weight: 700; }
.item-score { flex: none; font-weight: 800; color: #173e70; }
.item-score.is-emphasis { color: #8c6000; }
.score-medal, .score-status { flex: none; }
@media (max-width: 767px) {
  .school-detail-list li { flex-wrap: wrap; gap: 6px 10px; }
  .item-activity { flex-basis: 100%; order: 2; }
  .item-group { max-width: none; }
}
