/* ===========================
   League Library
=========================== */
.leagueCards{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:14px;
}
.leagueCard{
  background:#fff;
  border:1px solid #d7e0ec;
  border-radius:18px;
  padding:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.07);
}
.leagueCard.activeLeague{
  border:2px solid #ff7a00;
  box-shadow:0 10px 28px rgba(255,122,0,.22);
}
.leagueCardTitle{
  font-size:18px;
  font-weight:1000;
  margin-bottom:8px;
  color:#07111f;
}
.leagueMeta{
  color:#5d6b7c;
  font-size:13px;
  font-weight:700;
  line-height:1.65;
}
.leagueActions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:12px;
}


.activeLeagueBanner{
  background:#fff;
  border:1px solid #d7e0ec;
  border-radius:18px;
  padding:16px;
  margin-bottom:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
}
.activeLeagueBanner.hasLeague{
  border:2px solid #ff7a00;
  background:linear-gradient(135deg,#fff7ed,#ffffff);
}
.leagueBannerLabel{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#92400e;
  font-weight:1000;
}
.leagueBannerTitle{
  font-size:24px;
  font-weight:1000;
  color:#07111f;
}
.leagueBannerSub{
  color:#5d6b7c;
  font-weight:800;
  margin-top:3px;
}
.leagueCard{
  position:relative;
}
.leagueCard.activeLeague::after{
  content:"ACTIVE";
  position:absolute;
  top:12px;
  right:12px;
  background:#ff7a00;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  border-radius:999px;
  padding:4px 8px;
}
.leagueEmptyState{
  text-align:center;
  padding:28px 18px;
  border:2px dashed #d7e0ec;
  border-radius:18px;
  background:#f8fafc;
}
.leagueEmptyIcon{
  font-size:40px;
  margin-bottom:8px;
}
.leagueEmptyState h3{
  margin:0 0 6px;
}
.leagueEmptyState p{
  color:#5d6b7c;
  font-weight:700;
  margin-bottom:14px;
}
.leagueUpdated{
  color:#68778a;
  font-size:12px;
}
