.serie-wrap { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.serie-toolbar { display:flex; align-items:center; justify-content:space-between; margin: 0 0 12px 0; }
.serie-info { opacity: 0.9; }

.serie-group { margin: 18px 0 8px; }
.serie-tablewrap { overflow-x:auto; -webkit-overflow-scrolling: touch; border: 1px solid rgba(0,0,0,0.12); border-radius: 10px; }

.serie-table { width:100%; border-collapse: collapse; min-width: 820px; }
.serie-table th, .serie-table td { border-bottom: 1px solid rgba(0,0,0,0.10); padding: 8px 10px; vertical-align: middle; }
.serie-table thead th { position: sticky; top: 0; background: #fff; z-index: 1; }

.col-rank { width: 70px; text-align: right; }
.col-name { min-width: 180px; }
.col-club { min-width: 180px; }
.col-t { width: 120px; text-align: center; white-space: nowrap; }
.col-total { width: 120px; text-align: right; font-weight: 700; }
.col-count { width: 90px; text-align: center; opacity: 0.85; }

.col-t .val { font-weight: 700; }
.col-t .sub { font-size: 12px; opacity: 0.75; margin-top: 2px; }
.unit { font-weight: 500; opacity: 0.7; }

.col-t.empty { opacity: 0.5; }

.col-t.dropped {
  background: rgba(255, 0, 0, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 0, 0, 0.22);
  border-radius: 8px;
}

.serie-loading { padding: 10px 0; opacity: 0.8; }
.serie-error { padding: 12px; border: 1px solid rgba(255,0,0,0.3); background: rgba(255,0,0,0.06); border-radius: 10px; }
