.sports-utility-page {
  gap: 16px;
}

.sports-utility-nav {
  display: flex;
  gap: 9px;
  overflow-x: auto;
  padding: 8px;
  border-radius: 20px;
  border: 1px solid rgba(148,163,184,.14);
  background: rgba(2,6,23,.42);
}

.sports-utility-nav a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 999px;
  color: #dbeafe;
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(15,23,42,.72);
  font-weight: 900;
}

.sports-results-groups,
.sports-stat-sports-list,
.sports-provider-health {
  display: grid;
  gap: 10px;
}

.sports-results-group,
.sports-provider-health,
.sports-stat-sports-list {
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(148,163,184,.15);
  background: rgba(15,23,42,.78);
  box-shadow: var(--shadow);
}

.sports-results-group h3,
.sports-provider-health h3,
.sports-stat-sports-list h3 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
}

.sports-results-group h3 span,
.sports-stat-sports-list a span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
}

.sports-result-row,
.sports-stat-sports-list a,
.sports-provider-health div {
  min-width: 0;
  display: grid;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.12);
  background: rgba(2,6,23,.36);
  color: #e5edf7;
  text-decoration: none;
}

.sports-result-row {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.sports-result-row > div:last-child {
  text-align: right;
}

.sports-result-row strong,
.sports-result-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sports-result-row small,
.sports-provider-health span {
  color: #94a3b8;
}

.sports-result-row b {
  color: #d9ff99;
  font-size: 1.1rem;
}

.sports-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.sports-stat-grid article {
  display: grid;
  gap: 5px;
  padding: 14px;
  border-radius: 20px;
  border: 1px solid rgba(34,197,94,.16);
  background: rgba(34,197,94,.08);
}

.sports-stat-grid article span,
.sports-stat-sports-list a em {
  color: #94a3b8;
  font-size: .84rem;
}

.sports-stat-grid article strong {
  color: #d9ff99;
  font-size: 1.7rem;
}

.sports-provider-health div {
  grid-template-columns: minmax(0, 1fr) auto;
}

.sports-stat-sports-list a {
  grid-template-columns: auto minmax(0, 1fr) auto auto auto;
}

.sports-stat-sports-list a b {
  color: #d9ff99;
}

.sports-utility-empty {
  padding: 18px;
  border-radius: 18px;
  border: 1px dashed rgba(148,163,184,.2);
  color: #94a3b8;
  background: rgba(2,6,23,.30);
}

@media (max-width: 760px) {
  .sports-utility-page { gap: 10px; }
  .sports-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sports-results-group, .sports-provider-health, .sports-stat-sports-list { padding: 10px; border-radius: 18px; }
  .sports-result-row { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); padding: 8px; }
  .sports-result-row b { font-size: .92rem; }
  .sports-stat-sports-list a { grid-template-columns: auto minmax(0, 1fr) auto; }
  .sports-stat-sports-list a em { display: none; }
}

/* Pack 11 canonical results and pagination */
.sports-results-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(148,163,184,.14);
  border-radius: 18px;
  background: rgba(15,23,42,.62);
  color: #cbd5e1;
}
.sports-results-summary span { color: #94a3b8; font-size: .86rem; }
.sports-results-filters { display:flex; gap:8px; overflow-x:auto; padding:4px 0 6px; }
.sports-results-filters button { display:inline-flex; align-items:center; gap:7px; min-height:36px; padding:7px 11px; border-radius:999px; border:1px solid rgba(148,163,184,.16); background:rgba(15,23,42,.72); color:#cbd5e1; white-space:nowrap; cursor:pointer; font-weight:800; }
.sports-results-filters button.active { border-color:rgba(163,230,53,.5); background:rgba(132,204,22,.14); color:#d9ff99; }
.sports-results-filters button b { min-width:20px; padding:2px 5px; border-radius:999px; background:rgba(148,163,184,.14); font-size:.72rem; }
.sports-result-status-text { max-width:120px; text-align:center; text-transform:capitalize; font-size:.78rem !important; color:#fbbf24 !important; }
.sports-results-load-more { margin: 4px auto 0; display:flex; }
@media (max-width:760px) { .sports-results-summary { align-items:flex-start; flex-direction:column; gap:4px; } }

/* Pack 12: results accessibility, focus and retry states */
.sports-utility-error {
  display: grid;
  justify-items: start;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(248, 113, 113, .35);
  border-radius: 18px;
  background: rgba(127, 29, 29, .16);
  color: #fecaca;
}

.sports-utility-error span {
  color: #fca5a5;
}

.sports-utility-page :where(button, a):focus-visible {
  outline: 3px solid #d9ff99;
  outline-offset: 3px;
  box-shadow: 0 0 0 5px rgba(2, 6, 23, .9);
}

.sports-results-filters button[aria-pressed="true"] {
  border-color: rgba(217, 255, 153, .68);
}

@media (pointer: coarse) {
  .sports-utility-nav a,
  .sports-results-filters button,
  .sports-results-load-more {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sports-utility-page *,
  .sports-utility-page *::before,
  .sports-utility-page *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}
