
.data-status {
  max-width: 1180px;
  margin: 1.25rem auto;
  padding: 1rem 1.25rem;
  border-radius: 0.9rem;
  background: rgba(86, 174, 255, 0.12);
  border: 1px solid rgba(86, 174, 255, 0.38);
  line-height: 1.5;
}
.data-status.success { background: rgba(50, 190, 120, 0.12); }
.data-status.error {
  background: rgba(220, 70, 70, 0.14);
  border-color: rgba(220, 70, 70, 0.55);
}
.data-status a { color: inherit; font-weight: 700; }
#roster-grid:empty { display: none; }
.metrics-panel { margin-bottom: 1.5rem; }
.empty-data { opacity: 0.72; margin: 0; }
.primary-link {
  display: inline-block;
  margin-top: 0.8rem;
  font-weight: 700;
}
.player-number {
  margin: 0 0 0.25rem;
  font-weight: 800;
  opacity: 0.78;
}

/* Player-card share and social icons */
.social-toggle svg,
.social-site-link svg {
  display: block;
  width: 21px;
  height: 21px;
  fill: currentColor;
}

.social-toggle {
  color: #ffffff;
}

.social-toggle[aria-expanded="true"] {
  background: #56AEFF;
  color: #071126;
}

.social-site-link {
  font-size: 0;
}

.social-site-link[aria-label*="Instagram"] svg {
  width: 22px;
  height: 22px;
}

.social-site-link[aria-label*="YouTube"] svg {
  width: 23px;
  height: 23px;
}


/* Compact, Unity-style player cards */
.player-card .card-body {
  position: relative;
  padding: 1.15rem 1.15rem 4.25rem;
  min-height: 13.25rem;
}

.player-card .player-number {
  margin: 0 0 0.45rem;
  font-size: 1rem;
  line-height: 1;
  font-weight: 800;
  color: rgba(255,255,255,.72);
}

.player-card .card-body h3 {
  margin: 0 0 0.55rem;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.player-card .player-position,
.player-card .player-school,
.player-card .player-hometown {
  margin: 0;
  line-height: 1.25;
}

.player-card .player-position {
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
}

.player-card .player-school {
  margin-top: 0.55rem;
  color: rgba(255,255,255,.64);
  font-size: 0.93rem;
  font-weight: 650;
}

.player-card .player-gpa {
  display: inline-block;
  margin-left: 0.35rem;
  color: #56aeff;
  font-weight: 800;
  white-space: nowrap;
}

.player-card .player-hometown {
  margin-top: 0.25rem;
  color: rgba(255,255,255,.52);
  font-size: 0.88rem;
}

/* Small direct-link button using the supplied white icon */
.profile-icon-link {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #56aeff;
  border: 2px solid rgba(255,255,255,.92);
  box-shadow: 0 6px 16px rgba(0,0,0,.28);
  transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.profile-icon-link img {
  width: 18px !important;
  height: 18px !important;
  object-fit: contain;
  display: block;
}

.profile-icon-link:hover,
.profile-icon-link:focus-visible {
  transform: translateY(-2px) scale(1.05);
  background: #3d9df0;
  box-shadow: 0 9px 22px rgba(86,174,255,.32);
}

.profile-icon-link:focus-visible {
  outline: 3px solid rgba(86,174,255,.45);
  outline-offset: 3px;
}

@media (max-width: 600px) {
  .player-card .card-body {
    padding: 1rem 1rem 3.9rem;
    min-height: 12.5rem;
  }

  .profile-icon-link {
    width: 34px;
    height: 34px;
    right: .9rem;
    bottom: .9rem;
  }

  .profile-icon-link img {
    width: 16px !important;
    height: 16px !important;
  }
}
