
:root {
  --navy-950: #020712;
  --navy-925: #030d1b;
  --navy-900: #061529;
  --navy-850: #081d39;
  --navy-800: #0b274d;
  --gold: #f5b51b;
  --gold-2: #ffcf4d;
  --text: #f7fbff;
  --muted: #b9c7d8;
  --line: rgba(255,255,255,.16);
  --gold-line: rgba(245,181,27,.55);
}

/* === 20260620 coach stats workflow === */
.coach-stats-context-card {
  display: grid;
  gap: 16px;
}

.coach-stats-context-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: end;
}

.coach-stats-context-form label,
.past-stats-request-form label {
  min-width: 0;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.coach-stats-context-form select,
.past-stats-request-form textarea,
.stats-edit-request-review-form input {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 8px;
  background: rgba(2,7,18,.74);
  color: #fff;
  font: inherit;
}

.coach-stats-context-form select,
.stats-edit-request-review-form input {
  min-height: 42px;
  padding: 0 11px;
}

.past-stats-request-form textarea {
  min-height: 88px;
  padding: 10px 11px;
  resize: vertical;
}

.coach-stats-context-form button,
.past-stats-request-form button,
.stats-edit-request-review-form button {
  min-height: 42px;
  border: 0;
  border-radius: 8px;
  padding: 0 14px;
  background: linear-gradient(180deg, #d7192a, #97101e);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}

.past-stats-access {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(245,181,27,.34);
  border-radius: 10px;
  background: rgba(245,181,27,.07);
}

.past-stats-access.is-approved {
  border-color: rgba(53,201,125,.38);
  background: rgba(53,201,125,.08);
}

.past-stats-access.is-denied {
  border-color: rgba(215,25,42,.42);
  background: rgba(215,25,42,.08);
}

.past-stats-access strong,
.past-stats-access span {
  display: block;
}

.past-stats-access span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .86rem;
}

.past-stats-request-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.coach-stats-selected-game {
  padding: 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.05);
}

.stats-edit-request-list {
  display: grid;
  gap: 10px;
}

.stats-edit-request-item {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(2,7,18,.36);
}

.stats-edit-request-item.is-pending {
  border-color: rgba(245,181,27,.35);
}

.stats-edit-request-item.is-approved {
  border-color: rgba(53,201,125,.25);
}

.stats-edit-request-summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.stats-edit-request-summary strong,
.stats-edit-request-summary span {
  display: block;
}

.stats-edit-request-summary span,
.stats-edit-request-item p,
.stats-edit-request-item small {
  color: var(--muted);
}

.stats-edit-request-summary em {
  flex: 0 0 auto;
  color: var(--gold);
  font-size: .72rem;
  font-style: normal;
  font-weight: 900;
}

.stats-edit-request-item p {
  margin: 0;
  line-height: 1.5;
}

.stats-edit-request-review-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 9px;
}

@media (max-width: 780px) {
  .coach-stats-context-form,
  .past-stats-request-form,
  .stats-edit-request-review-form {
    grid-template-columns: 1fr;
  }

  .stats-edit-request-summary {
    display: grid;
  }
}

/* === 20260614 final selection show rebuild: stable bracket UI === */
.selection-show-page {
  min-height: calc(100vh - var(--rfcl-scoreboard-offset, 0px));
  padding: clamp(14px, 2vw, 28px);
  overflow-x: auto;
  background:
    radial-gradient(circle at 50% 0%, rgba(215, 25, 42, .16), transparent 34%),
    linear-gradient(180deg, #070b10, #020407 68%, #000);
}

.selection-stage {
  width: min(1480px, 100%);
  min-width: 1060px;
  min-height: 690px;
  height: auto;
  max-height: none;
  margin: 0 auto;
  aspect-ratio: auto;
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: 10px;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.09), transparent 35%),
    linear-gradient(180deg, #10140f, #070907);
  background-size: 96px 96px, 96px 96px, auto, auto;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .55);
}

.selection-titlebar {
  min-height: 92px;
  height: auto;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 64px;
  align-items: center;
  gap: 18px;
  padding: 16px 36px;
  border-bottom: 2px solid rgba(255, 255, 255, .8);
  background: linear-gradient(180deg, #0d2d54, #061f3d);
}

.selection-titlebar h1 {
  margin: 0;
  min-width: 0;
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(2.6rem, 5vw, 4.9rem);
  font-weight: 900;
  line-height: .92;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
  white-space: normal;
  text-shadow: 0 4px 0 rgba(0,0,0,.42);
}

.selection-ball-mark {
  width: 54px;
  height: 74px;
  border: 2px solid rgba(255, 207, 34, .72);
  border-left-color: transparent;
  border-right-color: transparent;
  border-radius: 50%;
  opacity: .9;
}

.selection-ball-mark::before,
.selection-ball-mark::after {
  display: none;
}

.selection-board.selection-bracket-board,
.selection-board {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-columns: minmax(250px, 1fr) minmax(185px, .72fr) minmax(230px, .82fr) minmax(185px, .72fr) minmax(250px, 1fr);
  grid-template-rows: auto;
  grid-template-areas: none;
  gap: 22px;
  align-items: center;
  min-height: 500px;
  padding: 34px 38px;
}

.selection-lines,
.selection-region-label,
.selection-first-out,
.selection-board::before,
.selection-board::after {
  display: none !important;
  content: none !important;
}

.selection-round {
  position: relative;
  display: grid;
  gap: 18px;
  min-width: 0;
}

.selection-round-title {
  align-self: end;
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: .84rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-round-right .selection-round-title {
  text-align: right;
}

.selection-matchup {
  position: relative;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  background: rgba(0, 0, 0, .26);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35);
}

.selection-round-left .selection-matchup::after,
.selection-round-right .selection-matchup::before,
.selection-round-mid:first-of-type .selection-advance-card::after,
.selection-round-mid:nth-of-type(4) .selection-advance-card::before {
  content: "";
  position: absolute;
  top: 50%;
  width: 22px;
  height: 2px;
  background: rgba(255,255,255,.56);
}

.selection-round-left .selection-matchup::after,
.selection-round-mid:first-of-type .selection-advance-card::after {
  right: -22px;
}

.selection-round-right .selection-matchup::before,
.selection-round-mid:nth-of-type(4) .selection-advance-card::before {
  left: -22px;
}

.selection-advance-card,
.selection-championship-panel {
  display: grid;
  place-items: center;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(0,0,0,.24));
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35);
}

.selection-advance-card {
  min-height: 86px;
  color: rgba(255,255,255,.58);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.selection-championship-panel {
  min-height: 230px;
  padding: 22px 14px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 18%, rgba(255, 207, 34, .16), transparent 42%),
    linear-gradient(180deg, rgba(9, 39, 75, .82), rgba(4, 10, 18, .9));
}

.selection-championship-panel span,
.selection-championship-panel em {
  color: rgba(255,255,255,.74);
  font-family: "Inter", Arial, sans-serif;
  font-size: .8rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-championship-panel strong {
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: 2.1rem;
  font-weight: 900;
  line-height: .96;
  text-transform: uppercase;
  text-shadow: 0 3px 0 rgba(0,0,0,.38);
}

.selection-slot,
.selection-slot.seed-1,
.selection-slot.seed-2,
.selection-slot.seed-3,
.selection-slot.seed-4,
.selection-slot.seed-5,
.selection-slot.seed-6,
.selection-slot.seed-7,
.selection-slot.seed-8 {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  grid-area: auto !important;
  display: block;
  width: 100%;
  min-width: 0;
  transform: none !important;
  z-index: 2;
}

.selection-team-plate {
  width: 100%;
  max-width: none;
  height: 86px;
  display: grid;
  grid-template-columns: 42px 66px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 7px;
  background: linear-gradient(180deg, #fff 0 56%, #08090c 56% 100%);
  box-shadow: 0 12px 26px rgba(0,0,0,.38);
}

.selection-team-plate::before,
.selection-team-plate::after {
  display: none !important;
}

.selection-seed,
.selection-slot.seed-2 .selection-seed,
.selection-slot.seed-3 .selection-seed,
.selection-slot.seed-6 .selection-seed,
.selection-slot.seed-8 .selection-seed {
  order: 0 !important;
  display: grid;
  place-items: center;
  width: auto;
  min-width: 0;
  height: 100%;
  padding: 0;
  color: #eef2f7;
  background: linear-gradient(180deg, #2d3642, #050608);
  border-right: 1px solid rgba(255,255,255,.18);
  font-family: "Oswald", Impact, sans-serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-shadow: 0 2px 0 rgba(0,0,0,.55);
  -webkit-text-stroke: 0;
}

.selection-team-face {
  display: grid;
  place-items: center;
  min-width: 0;
  height: 100%;
  padding: 6px;
  opacity: .12;
  border-right: 1px solid rgba(0,0,0,.22);
  background: linear-gradient(135deg, var(--selection-primary, #c8192e), var(--selection-secondary, #0b2240));
}

.selection-team-face img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 54px;
  max-height: 54px;
  object-fit: contain;
}

.selection-team-copy {
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: minmax(0, 1fr) 30px;
  background: transparent;
}

.selection-team-name {
  min-width: 0;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 9px 12px 6px;
  overflow: hidden;
  color: #101620;
  background: transparent;
  font-family: "Inter", Arial, sans-serif;
  font-size: .92rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1.05;
  text-align: left;
  text-shadow: none;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.selection-team-meta {
  min-width: 0;
  display: block;
  padding: 7px 12px 8px;
  overflow: hidden;
  color: #fff;
  background: #050506;
  font-family: "Oswald", Impact, sans-serif;
  font-size: .78rem;
  font-style: italic;
  font-weight: 800;
  line-height: 1;
  text-align: left;
  text-overflow: ellipsis;
  text-shadow: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.selection-slot.is-revealed .selection-team-face {
  opacity: 1;
}

.selection-slot.is-revealed .selection-team-plate {
  border-color: color-mix(in srgb, var(--selection-primary, #d7192a) 42%, #ffffff);
}

.selection-slot:not(.is-revealed) .selection-team-name::before {
  content: "Awaiting Reveal";
  color: rgba(16, 22, 32, .44);
}

.selection-live-footer {
  position: static;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  padding: 12px 22px 16px;
  color: rgba(255,255,255,.78);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-live-footer strong {
  color: #ffcf22;
}

.selection-live-footer em {
  justify-self: end;
  font-style: italic;
}

.selection-spotlight-card {
  max-width: min(720px, 88vw);
  overflow: hidden;
}

.selection-spotlight-card img {
  max-width: 72%;
  max-height: 54vh;
  object-fit: contain;
}

@media (max-width: 1180px) {
  .selection-show-page {
    padding: 12px;
  }

  .selection-stage {
    width: 1060px;
  }
}

@media (min-width: 1500px) {
  .selection-stage {
    min-height: 760px;
  }

  .selection-team-plate {
    height: 94px;
    grid-template-columns: 48px 74px minmax(0, 1fr);
  }

  .selection-team-face img {
    max-width: 62px;
    max-height: 62px;
  }
}

* { box-sizing: border-box; }

body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 50% 0%, rgba(18, 71, 122, .24), transparent 34rem),
    linear-gradient(180deg, var(--navy-900), var(--navy-950) 64%);
  font-family: Inter, system-ui, sans-serif;
}

a { color: inherit; text-decoration: none; }

.site-header {
  min-height: 92px;
  padding: 0 clamp(18px, 4vw, 44px);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 32px;
  background: rgba(2, 7, 18, .94);
  border-bottom: 3px solid var(--gold);
  position: sticky;
  top: 0;
  z-index: 50;
  box-shadow: 0 12px 32px rgba(0,0,0,.36);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  width: fit-content;
  max-width: max-content;
  justify-self: start;
}

.brand img {
  width: 82px;
  height: 82px;
  object-fit: contain;
  border-radius: 999px;
}

.brand strong,
.brand em,
.site-nav a,
.coach-login,
h1,
h2,
.eyebrow,
.btn,
.card-label,
.team-card,
.league-panel b,
.site-footer strong {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.brand strong {
  display: block;
  font-size: clamp(1.18rem, 2vw, 1.78rem);
  line-height: 1;
  letter-spacing: .8px;
}

.brand em {
  display: block;
  margin-top: 6px;
  color: var(--gold);
  font-style: normal;
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: 1.2px;
}

.site-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(18px, 3vw, 36px);
}

.site-nav a {
  color: var(--text);
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: .75px;
  white-space: nowrap;
  transition: .16s ease;
}

.site-nav a:hover { color: var(--gold); }

.coach-login {
  justify-self: end;
  padding: 13px 18px;
  border: 1px solid var(--gold);
  border-radius: 8px;
  color: var(--gold);
  font-weight: 700;
  letter-spacing: .8px;
  transition: .16s ease;
  white-space: nowrap;
}

.coach-login:hover {
  color: var(--navy-950);
  background: var(--gold);
}

.menu-button { display: none; }

.hero {
  position: relative;
  min-height: 390px;
  display: grid;
  grid-template-columns: minmax(420px, 1fr) 370px minmax(320px, 410px);
  align-items: center;
  gap: 28px;
  padding: clamp(30px, 4vw, 46px) clamp(22px, 4vw, 44px);
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(2, 7, 18, .98), rgba(5, 24, 45, .9) 47%, rgba(2, 7, 18, .98)),
    radial-gradient(ellipse at 50% 112%, rgba(245, 181, 27, .09), transparent 36%),
    radial-gradient(ellipse at 50% 115%, rgba(92, 139, 178, .14), transparent 44%);
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.field-lines {
  position: absolute;
  inset: 0;
  opacity: .58;
  background:
    radial-gradient(ellipse at 50% 115%, rgba(245,181,27,.14), transparent 34%),
    radial-gradient(ellipse at 50% 120%, rgba(80,128,178,.18), transparent 42%),
    linear-gradient(115deg, transparent 0 18%, rgba(255,255,255,.045) 18.2% 18.45%, transparent 18.7% 81.3%, rgba(255,255,255,.04) 81.55% 81.8%, transparent 82%),
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 38%);
}


.field-lines::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: -22px;
  height: 145px;
  background:
    radial-gradient(ellipse at center, rgba(255,255,255,.12), transparent 62%),
    linear-gradient(90deg, transparent 0 49.8%, rgba(245,181,27,.25) 50%, transparent 50.2%);
  clip-path: polygon(13% 100%, 87% 100%, 61% 0, 39% 0);
}

.field-lines::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 28% 18%, rgba(255,255,255,.08), transparent 16rem),
    radial-gradient(circle at 72% 18%, rgba(245,181,27,.08), transparent 17rem);
}

.hero-content,
.hero-logo-panel,
.week-card { position: relative; z-index: 2; }

.eyebrow {
  margin: 0 0 10px;
  color: var(--gold);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 1.5px;
}

h1 {
  max-width: 740px;
  margin: 0;
  font-size: clamp(3.1rem, 6vw, 5.2rem);
  line-height: .92;
  letter-spacing: .2px;
}

h1::after {
  content: "";
  display: block;
  width: 58px;
  height: 4px;
  margin: 18px 0 18px;
  background: var(--gold);
}

.hero-text {
  max-width: 620px;
  color: var(--text);
  font-size: 1.08rem;
  line-height: 1.65;
  margin: 0;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 28px;
}

.btn {
  min-height: 50px;
  min-width: 205px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  font-weight: 700;
  letter-spacing: .65px;
  transition: .16s ease;
}

.btn:hover { transform: translateY(-2px); }

.btn-gold {
  background: linear-gradient(180deg, var(--gold-2), #e4a30d);
  color: #06101f;
  box-shadow: 0 12px 26px rgba(0,0,0,.22);
}

.btn-outline {
  border: 2px solid var(--gold);
  color: var(--gold);
  background: rgba(2, 7, 18, .48);
}

.hero-logo-panel {
  min-height: 255px;
  display: grid;
  place-items: center;
}

.hero-logo-panel img {
  width: min(100%, 340px);
  object-fit: contain;
  border-radius: 999px;
  box-shadow: 0 0 46px rgba(245,181,27,.12), 0 18px 36px rgba(0,0,0,.42);
}

.week-card {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 22px;
  border: 2px solid var(--gold);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(5, 20, 38, .96), rgba(2, 8, 16, .98));
  box-shadow: 0 0 22px rgba(245,181,27,.28), 0 18px 38px rgba(0,0,0,.38);
}

.card-label {
  margin: 0 0 6px;
  color: var(--gold);
  font-weight: 700;
  letter-spacing: 1px;
}

.week-card h2 {
  margin: 0 0 22px;
  font-size: 2rem;
  line-height: 1;
}

.featured-player {
  display: grid;
  grid-template-columns: 118px 1fr;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.featured-player img {
  width: 112px;
  height: 86px;
  object-fit: contain;
  filter: drop-shadow(0 7px 8px rgba(0,0,0,.4));
}

.featured-player span,
.featured-player strong,
.featured-player em {
  display: block;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.featured-player span { color: var(--muted); font-size: 1.1rem; }
.featured-player strong { font-size: 1.75rem; line-height: 1; }
.featured-player em { color: var(--gold); font-style: normal; font-weight: 700; margin-top: 6px; }

.stat-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 18px;
  text-align: center;
}

.stat-row div { border-right: 1px solid var(--gold-line); }
.stat-row div:last-child { border-right: 0; }

.stat-row b {
  display: block;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.8rem;
  line-height: 1;
}

.stat-row span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: .82rem;
  text-transform: uppercase;
  font-weight: 800;
}

.page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 350px;
  gap: 16px;
  padding: 16px clamp(18px, 4vw, 44px) 22px;
  border-bottom: 3px solid var(--gold);
}

.panel {
  background: linear-gradient(180deg, rgba(6, 24, 44, .92), rgba(3, 13, 25, .88));
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.teams-panel { padding: 18px; }

.section-heading p {
  margin: 0;
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .75px;
}

.section-heading h2,
.league-panel h2 {
  margin: 2px 0 14px;
  font-size: 2.05rem;
  line-height: 1;
}

.teams-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

.team-card {
  position: relative;
  min-height: 154px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 12px 8px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 7px;
  background:
    radial-gradient(circle at 50% 10%, rgba(255,255,255,.06), transparent 54%),
    linear-gradient(180deg, rgba(8, 34, 62, .78), rgba(3, 15, 28, .94));
  transition: .16s ease;
  overflow: hidden;
}

.team-card:hover {
  transform: translateY(-3px);
  border-color: var(--gold);
  box-shadow: 0 0 18px rgba(245,181,27,.18);
}

.team-logo-wrap {
  width: 124px;
  height: 86px;
  display: grid;
  place-items: center;
}

.team-logo-wrap img {
  max-width: 124px;
  max-height: 86px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 7px 8px rgba(0,0,0,.4));
}

.team-name {
  min-height: 34px;
  display: flex;
  align-items: end;
  justify-content: center;
  color: white;
  font-size: .98rem;
  line-height: 1.05;
  font-weight: 700;
  text-align: center;
  text-shadow: 0 2px 5px rgba(0,0,0,.6);
}

.team-meta {
  color: var(--gold);
  font-family: Inter, sans-serif;
  text-transform: none;
  font-size: .75rem;
  font-weight: 800;
  opacity: 0;
  transform: translateY(4px);
  transition: .16s ease;
}

.team-card:hover .team-meta {
  opacity: 1;
  transform: translateY(0);
}

.league-panel {
  padding: 24px 22px;
}

.league-panel h2 {
  color: var(--gold);
}

.league-panel a {
  min-height: 76px;
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: center;
  gap: 14px;
  border-top: 1px solid rgba(255,255,255,.22);
  transition: .16s ease;
}

.league-panel a:hover { color: var(--gold); transform: translateX(2px); }

.league-panel span {
  color: white;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.8rem;
}

.league-panel b {
  display: block;
  font-size: 1.05rem;
}

.league-panel em {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-style: normal;
  font-size: .94rem;
}

.site-footer {
  display: grid;
  grid-template-columns: 1.4fr .8fr .8fr;
  gap: 42px;
  padding: 28px clamp(18px, 5vw, 64px);
  background: linear-gradient(90deg, #020712, #04172d 48%, #020712);
}

.site-footer img {
  width: 118px;
  height: 118px;
  object-fit: contain;
  float: left;
  margin-right: 20px;
  border-radius: 999px;
}

.site-footer p {
  max-width: 430px;
  color: var(--text);
  line-height: 1.6;
}

.site-footer nav {
  display: grid;
  gap: 7px;
  align-content: start;
}

.site-footer strong {
  color: var(--gold);
  font-size: 1.18rem;
  letter-spacing: .7px;
  margin-bottom: 4px;
}

.site-footer a { color: var(--muted); }
.site-footer a:hover { color: var(--gold); }

.team-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background:
    radial-gradient(circle at 18% 0%, rgba(245,181,27,.11), transparent 28rem),
    linear-gradient(180deg, #04182c, #020712);
}

.team-hero,
.team-detail-grid article {
  background: linear-gradient(180deg, rgba(6, 24, 44, .94), rgba(3, 13, 25, .9));
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.team-hero {
  max-width: 1120px;
  margin: 0 auto 18px;
  padding: 30px;
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 24px;
  align-items: center;
}

.team-hero img {
  max-width: 180px;
  max-height: 130px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 9px 10px rgba(0,0,0,.45));
}

.team-hero p {
  margin: 0;
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .7px;
}

.team-hero h1 {
  margin: 6px 0 10px;
  max-width: none;
  font-size: clamp(3rem, 7vw, 5.2rem);
}

.team-hero h1::after { display: none; }

.team-hero span {
  color: var(--muted);
  font-weight: 800;
}

.team-detail-grid {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 18px;
}

.team-detail-grid article {
  padding: 24px;
}

.team-detail-grid h2 {
  margin: 0 0 12px;
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.8rem;
}

.team-detail-grid p,
.team-detail-grid li {
  color: var(--muted);
  line-height: 1.65;
}

@media (max-width: 1280px) {
  .site-header { grid-template-columns: auto 1fr auto; }
  .coach-login { display: none; }
  .hero { grid-template-columns: 1fr .8fr; }
  .week-card { grid-column: 1 / -1; }
  .page-grid { grid-template-columns: 1fr; }
  .teams-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .site-header {
    min-height: 78px;
    grid-template-columns: auto 1fr;
  }

  .brand img { width: 58px; height: 58px; }
  .brand strong { font-size: 1.08rem; }
  .brand em { font-size: .78rem; }

  .menu-button {
    display: grid;
    gap: 5px;
    width: 44px;
    height: 40px;
    border: 1px solid var(--gold);
    border-radius: 8px;
    background: transparent;
    padding: 9px;
  }

  .menu-button span {
    display: block;
    height: 2px;
    background: var(--gold);
  }

  .site-nav {
    position: absolute;
    left: 16px;
    right: 16px;
    top: 82px;
    display: none;
    flex-direction: column;
    gap: 0;
    padding: 10px;
    background: #030d1b;
    border: 1px solid var(--gold);
    border-radius: 8px;
  }

  .site-nav.open { display: flex; }
  .site-nav a { padding: 13px 12px; border-bottom: 1px solid rgba(255,255,255,.12); }

  .hero { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; }
  .team-detail-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .brand span { display: none; }
  .hero-actions { display: grid; }
  .btn { width: 100%; }
  .teams-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .featured-player { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .stat-row { grid-template-columns: 1fr; gap: 12px; }
  .stat-row div { border-right: 0; }
  .team-hero { grid-template-columns: 1fr; text-align: center; justify-items: center; }
}

.discord-section {
  padding: 18px clamp(18px, 4vw, 44px) 32px;
  background: linear-gradient(180deg, rgba(2,7,18,.2), rgba(2,7,18,.58));
}

.discord-card {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
  padding: 28px;
  border: 1px solid rgba(245,181,27,.35);
  border-radius: 12px;
  background:
    radial-gradient(circle at top right, rgba(88,101,242,.22), transparent 28rem),
    linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.discord-card h2 {
  margin: 0 0 10px;
  font-size: clamp(2rem, 4vw, 3.25rem);
}

.discord-card h2::after {
  display: none;
}

.discord-card p:not(.eyebrow) {
  max-width: 760px;
  color: var(--muted);
  line-height: 1.65;
  margin: 0;
}

.discord-button {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 8px;
  background: #5865f2;
  color: white;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .8px;
  box-shadow: 0 12px 26px rgba(0,0,0,.22);
  transition: .16s ease;
  white-space: nowrap;
}

.discord-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.08);
}

.auth-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background:
    radial-gradient(circle at 18% 0%, rgba(245,181,27,.11), transparent 28rem),
    radial-gradient(circle at 82% 10%, rgba(88,101,242,.12), transparent 26rem),
    linear-gradient(180deg, #04182c, #020712);
}

.auth-shell {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 18px;
  align-items: start;
}

.auth-card,
.portal-card {
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.auth-card {
  padding: 28px;
}

.auth-card h1,
.portal-card h1 {
  margin: 0 0 10px;
  font-size: clamp(2.5rem, 5vw, 4.2rem);
}

.auth-card h1::after,
.portal-card h1::after {
  display: none;
}

.auth-card p {
  color: var(--muted);
  line-height: 1.65;
}

.auth-form {
  display: grid;
  gap: 14px;
  margin-top: 22px;
}

.auth-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-weight: 800;
}

.auth-form input,
.auth-form select,
.stat-form input {
  width: 100%;
  min-height: 48px;
  padding: 0 13px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(2,7,18,.62);
  color: var(--text);
  font: inherit;
}

.auth-form select {
  cursor: pointer;
}

.auth-form button,
.portal-action {
  min-height: 50px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(180deg, var(--gold-2), #e4a30d);
  color: #06101f;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .8px;
  cursor: pointer;
}

.auth-error {
  padding: 12px 14px;
  border-radius: 8px;
  background: rgba(255,80,80,.12);
  border: 1px solid rgba(255,80,80,.35);
  color: #ffd0d0;
}

.portal-card {
  padding: 24px;
}

.portal-top {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: start;
  margin-bottom: 18px;
}

.logout-link {
  color: var(--gold);
  font-weight: 800;
}

.stat-form {
  display: grid;
  gap: 18px;
}

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

.stat-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: .92rem;
  font-weight: 800;
}

.saved-box {
  margin: 18px 0;
  padding: 14px;
  border-radius: 8px;
  background: rgba(245,181,27,.1);
  border: 1px solid rgba(245,181,27,.28);
  color: var(--gold);
  font-weight: 800;
}

.team-login-list {
  margin-top: 20px;
  display: grid;
  gap: 8px;
}

.team-login-list div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  padding: 9px 11px;
  border-radius: 8px;
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: .92rem;
}

.team-login-list code {
  color: var(--gold);
}

.public-stats-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 18px;
  overflow: hidden;
  border-radius: 10px;
}

.public-stats-table th,
.public-stats-table td {
  padding: 12px 10px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  text-align: left;
}

.public-stats-table th {
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

@media (max-width: 920px) {
  .discord-card,
  .auth-shell {
    grid-template-columns: 1fr;
  }

  .stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .stat-grid {
    grid-template-columns: 1fr;
  }
}


/* === Final RFCL user-provided logo placement === */
/* Images are copied exactly as uploaded. These rules only control display size. */
:root {
  --accent: #d7192a;
  --accent-2: #ff3347;
  --accent-dark: #8f0d1b;
  --silver: #d7dde7;
  --gold: var(--accent);
  --gold-2: var(--accent-2);
  --gold-line: rgba(215,25,42,.55);
}

.brand-logo {
  width: 74px !important;
  height: 74px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 4px 8px rgba(0,0,0,.35));
}

.hero-logo-wide {
  width: min(100%, 430px) !important;
  max-height: 205px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.56));
}

.hero-logo-panel {
  min-height: 220px !important;
}

.footer-logo-wide,
.site-footer img.footer-logo-wide {
  width: 220px !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 120px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 8px 12px rgba(0,0,0,.42));
}

.site-header {
  border-bottom-color: var(--accent) !important;
  background: linear-gradient(90deg, rgba(2,7,18,.98), rgba(5,13,32,.96) 48%, rgba(2,7,18,.98)) !important;
}

.hero {
  background:
    linear-gradient(90deg, rgba(2,7,18,.98), rgba(7,18,42,.9) 47%, rgba(2,7,18,.98)),
    radial-gradient(ellipse at 52% 48%, rgba(215,25,42,.16), transparent 36%),
    radial-gradient(ellipse at 50% 112%, rgba(180,190,205,.10), transparent 44%) !important;
}

.field-lines {
  background:
    radial-gradient(ellipse at 50% 115%, rgba(215,25,42,.12), transparent 34%),
    radial-gradient(ellipse at 50% 120%, rgba(190,200,215,.12), transparent 42%),
    linear-gradient(115deg, transparent 0 18%, rgba(255,255,255,.035) 18.2% 18.45%, transparent 18.7% 81.3%, rgba(255,255,255,.03) 81.55% 81.8%, transparent 82%),
    linear-gradient(180deg, rgba(255,255,255,.03), transparent 38%) !important;
}

.btn-gold,
.auth-form button,
.portal-action {
  background: linear-gradient(180deg, #ff3347, #9d0f1e) !important;
  color: #fff !important;
}

.btn-outline,
.coach-login {
  border-color: var(--accent) !important;
  color: #ffffff !important;
  background: rgba(215,25,42,.12) !important;
}

.coach-login:hover,
.btn-outline:hover {
  background: var(--accent) !important;
  color: #fff !important;
}

.week-card,
.discord-card {
  border-color: rgba(215,25,42,.6) !important;
  box-shadow: 0 0 22px rgba(215,25,42,.22), 0 18px 38px rgba(0,0,0,.38) !important;
}

.team-card:hover {
  border-color: var(--accent) !important;
  box-shadow: 0 0 18px rgba(215,25,42,.18) !important;
}

.team-meta,
.section-heading p,
.eyebrow,
.card-label,
.league-panel h2,
.site-footer strong,
.quick-links h3,
.stay-connected h3,
.auth-card .eyebrow,
.portal-card .eyebrow {
  color: var(--accent-2) !important;
}

h1::after {
  background: var(--accent) !important;
}

.page-grid,
.content-band {
  border-bottom-color: var(--accent) !important;
}

.hero-text,
.discord-card p:not(.eyebrow),
.site-footer p {
  color: #d8dee8 !important;
}

@media (max-width: 900px) {
  .brand-logo {
    width: 58px !important;
    height: 58px !important;
  }

  .hero-logo-wide {
    width: min(100%, 340px) !important;
  }
}


/* === RFCL logo sizing correction === */
/* The uploaded logo files are used exactly as-is. These rules only change website display sizing. */

.site-header {
  min-height: 104px !important;
}

.brand-logo {
  width: 104px !important;
  height: 104px !important;
  object-fit: contain !important;
}

.brand {
  gap: 18px !important;
}

.hero {
  grid-template-columns: minmax(420px, 1fr) minmax(460px, 560px) minmax(320px, 410px) !important;
}

.hero-logo-panel {
  min-height: 315px !important;
}

.hero-logo-wide {
  width: min(100%, 620px) !important;
  max-height: 300px !important;
  object-fit: contain !important;
}

.footer-logo-wide,
.site-footer img.footer-logo-wide {
  width: 340px !important;
  max-width: 100% !important;
  max-height: 185px !important;
}

@media (max-width: 1280px) {
  .hero {
    grid-template-columns: 1fr minmax(360px, 520px) !important;
  }

  .hero-logo-wide {
    width: min(100%, 540px) !important;
    max-height: 270px !important;
  }
}

@media (max-width: 900px) {
  .site-header {
    min-height: 86px !important;
  }

  .brand-logo {
    width: 72px !important;
    height: 72px !important;
  }

  .hero {
    grid-template-columns: 1fr !important;
  }

  .hero-logo-panel {
    min-height: 230px !important;
  }

  .hero-logo-wide {
    width: min(100%, 420px) !important;
    max-height: 220px !important;
  }
}


/* Footer cleanup */
.site-footer {
  padding: 24px 40px !important;
}

.site-footer img.footer-logo-wide {
  width: 180px !important;
  max-height: 90px !important;
}

.site-footer p {
  font-size: 0.9rem !important;
}

.site-footer .footer-grid {
  gap: 20px !important;
}



/* === Hero title + stream button refinement === */
.hero-content .eyebrow {
  display: none !important;
}

.hero-title {
  margin: 0 !important;
  max-width: 720px !important;
  line-height: .94 !important;
}

.hero-title::after {
  content: "" !important;
  display: block !important;
  width: 58px !important;
  height: 4px !important;
  margin: 18px 0 18px !important;
  background: var(--accent) !important;
}

.hero-title span,
.hero-title strong {
  display: block;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .4px;
}

.hero-title span {
  color: #f7fbff;
  font-size: clamp(2.35rem, 4.1vw, 3.7rem);
  text-shadow: 0 3px 0 rgba(0,0,0,.38);
}

.hero-title strong {
  color: var(--accent-2);
  font-size: clamp(3.35rem, 6.2vw, 5.6rem);
  font-weight: 700;
  text-shadow:
    0 4px 0 rgba(0,0,0,.42),
    0 0 20px rgba(215,25,42,.18);
}

.hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 27px !important;
}

.hero-actions .btn {
  min-width: 0 !important;
  width: auto !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 11px !important;
  border-radius: 6px !important;
  font-family: Oswald, Impact, sans-serif !important;
  text-transform: uppercase !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  letter-spacing: .55px !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.24) !important;
}

.btn-icon {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  font-size: .95rem;
  line-height: 1;
}

.btn-red,
.hero-actions .btn-youtube {
  color: #fff !important;
  background: linear-gradient(180deg, #ff3347, #9d0f1e) !important;
  border: 1px solid rgba(255,80,95,.82) !important;
}

.btn-red .btn-icon,
.btn-youtube .btn-icon {
  color: #9d0f1e;
  background: #fff;
}

.hero-actions .btn-outline {
  color: #f7fbff !important;
  background: rgba(2, 7, 18, .58) !important;
  border: 2px solid rgba(215,25,42,.85) !important;
}

.hero-actions .btn-outline:hover {
  background: rgba(215,25,42,.22) !important;
  border-color: var(--rfcl-red, #d7192a) !important;
}

.btn-twitch .btn-icon {
  color: #fff;
  background: #9146ff;
}

.btn-discord .btn-icon {
  color: #fff;
  background: #5865f2;
}

.hero-actions .btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
}

@media (max-width: 620px) {
  .hero-title span {
    font-size: 2.1rem;
  }

  .hero-title strong {
    font-size: 3.1rem;
  }

  .hero-actions {
    display: grid !important;
  }

  .hero-actions .btn {
    width: 100% !important;
  }
}


/* === RFCL title/color correction + View All Teams === */
:root {
  --accent: #d7192a;
  --accent-2: #d7192a;
  --accent-dark: #8f0d1b;
  --rfcl-red: #d7192a;
  --rfcl-red-light: #ef233c;
  --rfcl-navy: #061529;
}

.hero-title {
  margin: 0 !important;
  max-width: 720px !important;
  line-height: .9 !important;
}

.hero-title::after {
  content: "" !important;
  display: block !important;
  width: 58px !important;
  height: 4px !important;
  margin: 18px 0 18px !important;
  background: var(--rfcl-red) !important;
}

.hero-title span,
.hero-title strong {
  display: block !important;
  font-family: Oswald, Impact, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: .45px !important;
}

.hero-title span {
  color: #f7fbff !important;
  font-size: clamp(2.15rem, 3.7vw, 3.25rem) !important;
  font-weight: 700 !important;
  text-shadow: 0 3px 0 rgba(0,0,0,.38) !important;
}

.hero-title strong {
  color: var(--rfcl-red) !important;
  font-size: clamp(3.2rem, 5.4vw, 4.95rem) !important;
  font-weight: 700 !important;
  text-shadow:
    0 4px 0 rgba(0,0,0,.42),
    0 0 18px rgba(215,25,42,.14) !important;
}

/* Normalize all accent text back to the RFCL red instead of the overly bright red */
.team-meta,
.section-heading p,
.eyebrow,
.card-label,
.league-panel h2,
.site-footer strong,
.quick-links h3,
.stay-connected h3,
.auth-card .eyebrow,
.portal-card .eyebrow,
.discord-card .eyebrow {
  color: var(--rfcl-red) !important;
}

.btn-red,
.hero-actions .btn-youtube,
.btn-gold,
.auth-form button,
.portal-action {
  background: linear-gradient(180deg, #d7192a, #8f0d1b) !important;
  color: #fff !important;
  border-color: rgba(215,25,42,.75) !important;
}

.btn-outline,
.coach-login {
  border-color: var(--rfcl-red) !important;
  background: rgba(215,25,42,.10) !important;
}

.hero-actions .btn-outline:hover,
.coach-login:hover,
.btn-outline:hover {
  background: rgba(215,25,42,.24) !important;
  border-color: var(--rfcl-red) !important;
}

h1::after,
.page-grid,
.content-band {
  border-bottom-color: var(--rfcl-red) !important;
}

h1::after {
  background: var(--rfcl-red) !important;
}

.site-header {
  border-bottom-color: var(--rfcl-red) !important;
}

.week-card,
.discord-card {
  border-color: rgba(215,25,42,.48) !important;
  box-shadow: 0 0 22px rgba(215,25,42,.16), 0 18px 38px rgba(0,0,0,.38) !important;
}

.team-card:hover {
  border-color: var(--rfcl-red) !important;
  box-shadow: 0 0 18px rgba(215,25,42,.14) !important;
}

.view-all-teams {
  width: fit-content;
  margin: 14px auto 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--rfcl-red);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .7px;
  font-size: 1.02rem;
  transition: .16s ease;
}

.teams-panel .view-all-teams {
  display: flex;
  justify-content: center;
}

.view-all-teams span {
  font-size: 1.45rem;
  line-height: 1;
}

.view-all-teams:hover {
  color: #fff;
  transform: translateY(-1px);
}

.all-teams-page {
  max-width: 1120px;
  margin: 0 auto;
}

.all-teams-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.all-teams-list a {
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  font-weight: 800;
  transition: .16s ease;
}

.all-teams-list a:hover {
  border-color: var(--rfcl-red);
  color: var(--rfcl-red);
  transform: translateY(-2px);
}

.past-teams-placeholder {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.14);
}

.past-teams-placeholder h2 {
  color: var(--rfcl-red);
}

.past-teams-placeholder h2::after {
  display: none;
}

.past-teams-placeholder p {
  color: var(--muted);
}

@media (max-width: 760px) {
  .all-teams-list {
    grid-template-columns: 1fr;
  }
}


/* === Correct hero title: 2 lines like the reference mockup === */
.hero-title {
  margin: 0 !important;
  max-width: 760px !important;
  line-height: .92 !important;
}

.hero-title span,
.hero-title strong {
  display: block !important;
  font-family: Oswald, Impact, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: .45px !important;
}

.hero-title span {
  color: #f7fbff !important;
  font-size: clamp(2.35rem, 3.9vw, 3.6rem) !important;
  font-weight: 700 !important;
  text-shadow: 0 3px 0 rgba(0,0,0,.38) !important;
}

.hero-title strong {
  color: var(--rfcl-red, #d7192a) !important;
  font-size: clamp(3.25rem, 5.8vw, 5.15rem) !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  text-shadow:
    0 4px 0 rgba(0,0,0,.42),
    0 0 18px rgba(215,25,42,.14) !important;
}

.hero-title::after {
  content: "" !important;
  display: block !important;
  width: 58px !important;
  height: 4px !important;
  margin: 18px 0 18px !important;
  background: var(--rfcl-red, #d7192a) !important;
}

@media (max-width: 720px) {
  .hero-title strong {
    white-space: normal !important;
  }
}

/* === 20260610 public draft room refinement === */
.draft-live-strip {
  width: min(1280px, 100%);
  margin: 0 auto 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.draft-live-strip article {
  min-height: 82px;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 8px;
  background: rgba(255,255,255,.055);
}

.draft-live-strip span,
.draft-current-clock span,
.draft-progress-text,
.draft-pick-card footer span,
.draft-clock em {
  display: block;
  color: rgba(216,222,232,.72);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.draft-live-strip strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.75rem);
  line-height: 1;
  text-transform: uppercase;
}

.draft-clock {
  border-radius: 8px !important;
}

.draft-clock em {
  margin-top: 5px;
  font-style: normal;
  color: rgba(122, 218, 161, .92);
}

.draft-clock em.is-error {
  color: #ff8a96;
}

.draft-board-column {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.draft-board-toolbar,
.draft-prospects-head {
  display: grid;
  gap: 10px;
}

.draft-board-toolbar {
  grid-template-columns: auto minmax(180px, 280px);
  align-items: center;
}

.draft-board-tabs {
  display: inline-grid;
  grid-template-columns: repeat(3, minmax(72px, 1fr));
  gap: 5px;
  padding: 5px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 8px;
  background: rgba(2,7,18,.52);
}

.draft-board-tabs button,
.draft-board-toolbar input,
.draft-prospects-head input {
  min-height: 38px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(2,7,18,.68);
  color: #fff;
  font: inherit;
  font-weight: 900;
}

.draft-board-tabs button {
  padding: 0 12px;
  cursor: pointer;
  color: rgba(216,222,232,.72);
  text-transform: uppercase;
}

.draft-board-tabs button.active {
  background: #fff;
  color: #061529;
}

.draft-board-toolbar input,
.draft-prospects-head input {
  width: 100%;
  min-width: 0;
  padding: 0 12px;
}

.draft-current {
  overflow: hidden;
  border-color: color-mix(in srgb, var(--draft-primary, #d7192a) 55%, rgba(255,255,255,.14)) !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--draft-primary, #d7192a) 24%, transparent), rgba(255,255,255,.045)),
    rgba(2,7,18,.66) !important;
}

.draft-current-team,
.draft-pick-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.draft-current-logo,
.draft-pick-logo {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14);
}

.draft-current-logo {
  width: 68px;
  height: 68px;
}

.draft-pick-logo {
  width: 38px;
  height: 38px;
}

.draft-current-logo::before,
.draft-pick-logo::before {
  content: attr(data-initials);
  color: rgba(255,255,255,.9);
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
}

.draft-current-logo img,
.draft-pick-logo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}

.draft-current-clock {
  margin-top: 18px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
}

.draft-current-clock strong,
.draft-pick-card footer strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  line-height: 1;
}

.draft-current-clock strong {
  font-size: 2.6rem;
}

.draft-progress-bar {
  height: 8px;
  margin-top: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
}

.draft-progress-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--draft-primary, #d7192a), #f5b51b);
}

.draft-progress-text {
  margin: 8px 0 0;
}

.draft-pick-card {
  min-height: 132px !important;
  border-radius: 8px !important;
  border-color: color-mix(in srgb, var(--draft-primary, #d7192a) 28%, rgba(255,255,255,.14)) !important;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--draft-primary, #d7192a) 9%, transparent), rgba(255,255,255,.035)),
    rgba(2,7,18,.58) !important;
}

.draft-pick-card.is-active {
  border-color: var(--draft-primary, #d7192a) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--draft-primary, #d7192a) 28%, transparent), 0 18px 34px rgba(0,0,0,.28) !important;
}

.draft-pick-card.is-pick-in {
  background:
    linear-gradient(180deg, color-mix(in srgb, #f5b51b 18%, transparent), color-mix(in srgb, var(--draft-primary, #d7192a) 20%, transparent)),
    rgba(2,7,18,.62) !important;
}

.draft-pick-card p {
  min-height: 2.4em;
}

.draft-pick-card footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
}

.draft-pick-card footer strong {
  font-size: 1.2rem;
}

.draft-empty-state {
  margin: 0;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  color: rgba(216,222,232,.78);
  font-weight: 900;
}

.draft-prospects-head {
  margin-bottom: 12px;
}

.draft-prospects-head h2 {
  margin-bottom: 0 !important;
}

@media (max-width: 1180px) {
  .draft-live-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .draft-board-toolbar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .draft-live-strip {
    grid-template-columns: 1fr;
  }

  .draft-board-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .draft-current-clock {
    display: grid;
  }

  .draft-current-clock strong {
    font-size: 2.25rem;
  }
}

/* === RFCL draft board === */
.draft-page {
  min-height: 100vh;
  padding: 34px clamp(16px, 4vw, 48px) 64px;
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.18), transparent 25rem),
    linear-gradient(180deg, #061529 0%, #020712 100%);
}

.draft-hero {
  width: min(1280px, 100%);
  margin: 0 auto 18px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
}

.draft-hero p,
.draft-current span {
  margin: 0 0 5px;
  color: #d7192a;
  font-weight: 900;
  text-transform: uppercase;
}

.draft-hero h1 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: clamp(2.2rem, 6vw, 5rem);
}

.draft-clock {
  min-width: 190px;
  padding: 14px 18px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 12px;
  background: rgba(2,7,18,.58);
  text-align: right;
}

.draft-clock span {
  display: block;
  color: #b8c2cf;
  font-weight: 900;
}

.draft-clock strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 3rem;
  line-height: 1;
}

.draft-clock strong.is-warning {
  color: #ff4d5e;
}

.draft-layout {
  width: min(1280px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr) 280px;
  gap: 14px;
  align-items: start;
}

.draft-current,
.draft-prospects-panel,
.draft-pick-card {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(255,255,255,.045);
}

.draft-current,
.draft-prospects-panel {
  padding: 16px;
  position: sticky;
  top: calc(var(--rfcl-scoreboard-offset, 0px) + 92px);
}

.draft-current strong {
  display: block;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 2rem;
  text-transform: uppercase;
  line-height: 1;
}

.draft-current em {
  color: #b8c2cf;
  font-style: normal;
  font-weight: 800;
}

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

.draft-pick-card {
  min-height: 112px;
  padding: 12px;
  display: grid;
  align-content: space-between;
}

.draft-pick-card.is-active {
  border-color: rgba(215,25,42,.85);
  box-shadow: 0 0 0 2px rgba(215,25,42,.18);
}

.draft-pick-card.is-picked {
  background: linear-gradient(180deg, rgba(215,25,42,.18), rgba(255,255,255,.04));
}

.draft-pick-card.is-pick-in {
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(215,25,42,.2));
}

.draft-pick-card.is-pick-in p,
.draft-current em {
  color: #fff;
  font-weight: 900;
}

.draft-pick-card span,
.draft-pick-card small,
.draft-prospect span {
  color: #9eaabc;
  font-weight: 800;
}

.draft-pick-card strong,
.draft-prospects-panel h2,
.draft-prospect strong {
  color: #fff;
}

.draft-pick-card p {
  margin: 8px 0 0;
  color: #d8dee8;
  font-weight: 900;
}

.draft-prospects-panel h2 {
  margin: 0 0 12px;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.draft-prospect {
  display: grid;
  gap: 3px;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.09);
}

.draft-prospect.is-picked {
  opacity: .45;
  text-decoration: line-through;
}

.draft-admin-pick-list {
  max-height: 560px;
  overflow: auto;
}

.coach-draft-prospects {
  position: static;
  margin-top: 18px;
}

.draft-submit-form {
  margin-top: 18px;
}

#draft-admin textarea {
  width: 100%;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: rgba(2,7,18,.56);
  color: #fff;
  font: inherit;
  font-weight: 700;
  resize: vertical;
}

html:not(.rfcl-draft-visible) .site-nav a[href$="draft"],
html:not(.rfcl-draft-visible) .site-nav a[href="../draft"],
html:not(.rfcl-draft-visible) .coach-dropdown a[href$="draft"],
html:not(.rfcl-draft-visible) .coach-dropdown a[href$="coach/draft"],
html:not(.rfcl-draft-visible) .dashboard-actions a[href="draft"],
html:not(.rfcl-draft-visible) .dashboard-actions a[href="../draft"],
html:not(.rfcl-draft-visible) .dashboard-actions a[href="coach/draft"] {
  display: none !important;
}

.draft-prospect-editor {
  max-height: 520px;
  overflow: auto;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(2,7,18,.35);
}

.draft-prospect-editor table {
  width: 100%;
  border-collapse: collapse;
  min-width: 680px;
}

.draft-prospect-editor th,
.draft-prospect-editor td {
  padding: 7px 8px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  text-align: left;
}

.draft-prospect-editor th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #061529;
  color: #d8dee8;
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.draft-prospect-editor td:first-child {
  width: 52px;
  color: #9eaabc;
  font-weight: 900;
  text-align: center;
}

.draft-prospect-editor input {
  width: 100%;
  min-height: 34px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: rgba(2,7,18,.62);
  color: #fff;
  font: inherit;
  font-weight: 700;
  padding: 6px 8px;
}

.draft-prospect-editor td:nth-child(3),
.draft-prospect-editor td:nth-child(5) {
  width: 90px;
}

@media (max-width: 1050px) {
  .draft-layout {
    grid-template-columns: 1fr;
  }

  .draft-current,
  .draft-prospects-panel {
    position: static;
  }

  .draft-board-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .draft-hero {
    display: grid;
  }

  .draft-clock {
    width: 100%;
    text-align: left;
  }

  .draft-board-grid {
    grid-template-columns: 1fr;
  }
}


/* Real platform icons */
.hero-actions .icon {
  width: 22px;
  height: 22px;
  filter: invert(1);
}

.hero-actions .btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}



/* === Season 12 / login status additions === */
.coach-login.is-logged-in {
  background: rgba(215,25,42,.22) !important;
  color: #fff !important;
}

.coach-status-pill {
  justify-self: end;
  padding: 9px 12px;
  border: 1px solid rgba(215,25,42,.45);
  border-radius: 999px;
  color: #d8dee8;
  background: rgba(255,255,255,.04);
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
  transition: .16s ease;
}

.coach-status-pill:hover {
  color: #fff;
  border-color: #d7192a;
  background: rgba(215,25,42,.16);
}

.season12-team-card .team-seed {
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
}

.season12-team-card {
  min-height: 138px;
}

.view-all-teams {
  width: fit-content;
  margin: 14px auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .7px;
  font-size: 1.02rem;
  transition: .16s ease;
}

.view-all-teams:hover {
  color: #fff;
  transform: translateY(-1px);
}

.all-teams-page {
  max-width: 1120px;
  margin: 0 auto;
}

.all-teams-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.all-teams-list a {
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  font-weight: 800;
  transition: .16s ease;
}

.all-teams-list a:hover {
  border-color: var(--rfcl-red, #d7192a);
  color: var(--rfcl-red, #d7192a);
  transform: translateY(-2px);
}

.past-teams-placeholder {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.14);
}

.past-teams-placeholder h2 {
  color: var(--rfcl-red, #d7192a);
}

.past-teams-placeholder h2::after {
  display: none;
}

.past-teams-placeholder p {
  color: var(--muted);
}

@media (max-width: 1280px) {
  .coach-status-pill {
    display: none;
  }
}

@media (max-width: 760px) {
  .all-teams-list {
    grid-template-columns: 1fr;
  }
}


/* === Global coach login + live broadcast section === */
.coach-login.is-logged-in {
  background: rgba(215,25,42,.24) !important;
  color: #fff !important;
}

.coach-status-pill {
  justify-self: end;
  padding: 9px 12px;
  border: 1px solid rgba(215,25,42,.45);
  border-radius: 999px;
  color: #d8dee8;
  background: rgba(255,255,255,.04);
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
  transition: .16s ease;
}

.coach-status-pill:hover {
  color: #fff;
  border-color: #d7192a;
  background: rgba(215,25,42,.16);
}

.live-broadcast-section {
  padding: 24px clamp(18px, 4vw, 44px) 8px;
  background: linear-gradient(180deg, rgba(2,7,18,.32), rgba(2,7,18,.04));
}

.live-heading {
  max-width: 1180px;
  margin: 0 auto 16px;
}

.live-heading h2 {
  margin: 0 0 8px;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 1;
}

.live-heading h2::after {
  display: none;
}

.live-heading p:not(.eyebrow) {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  line-height: 1.6;
}

.live-grid {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 16px;
}

.live-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.live-card-top {
  min-height: 54px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.live-card-top span {
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: .7px;
}

.live-card-top a,
.youtube-live-button {
  color: #fff;
  border: 1px solid rgba(215,25,42,.7);
  background: rgba(215,25,42,.14);
  border-radius: 8px;
  padding: 8px 11px;
  font-weight: 800;
  transition: .16s ease;
}

.live-card-top a:hover,
.youtube-live-button:hover {
  background: rgba(215,25,42,.32);
  transform: translateY(-1px);
}

.live-frame-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #020712;
}

.live-frame-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.youtube-live-placeholder {
  min-height: 100%;
  padding: 28px;
  display: grid;
  align-content: center;
  gap: 12px;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.18), transparent 18rem),
    linear-gradient(180deg, rgba(2,7,18,.3), rgba(2,7,18,.1));
}

.youtube-live-placeholder strong {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.8rem;
  line-height: 1;
}

.youtube-live-placeholder p {
  color: var(--muted);
  line-height: 1.6;
  margin: 0;
}

.youtube-live-button {
  width: fit-content;
  display: inline-flex;
}

@media (max-width: 980px) {
  .live-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1280px) {
  .coach-status-pill {
    display: none;
  }
}


/* === Redone centered RFCL broadcast center === */
.live-broadcast-section {
  display: none !important;
}

.broadcast-section {
  padding: 34px clamp(18px, 4vw, 44px) 18px;
  background:
    radial-gradient(circle at 50% 0%, rgba(215,25,42,.09), transparent 34rem),
    linear-gradient(180deg, rgba(2,7,18,.35), rgba(2,7,18,0));
}

.broadcast-inner {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.broadcast-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.broadcast-heading span {
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.broadcast-heading h2 {
  margin: 0;
  font-size: clamp(2.25rem, 4vw, 3.6rem);
  line-height: .9;
}

.broadcast-heading h2::after {
  display: none;
}

.broadcast-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  gap: 16px;
  align-items: stretch;
}

.broadcast-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.92));
  box-shadow: 0 18px 38px rgba(0,0,0,.26);
}

.broadcast-card-primary {
  border-color: rgba(215,25,42,.34);
}

.broadcast-card-header {
  min-height: 54px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,18,.35);
}

.broadcast-card-header strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 1.15rem;
}

.broadcast-card-header a {
  color: #fff;
  border: 1px solid rgba(215,25,42,.64);
  background: rgba(215,25,42,.14);
  border-radius: 999px;
  padding: 7px 11px;
  font-size: .82rem;
  font-weight: 900;
  transition: .16s ease;
}

.broadcast-card-header a:hover {
  background: rgba(215,25,42,.32);
  transform: translateY(-1px);
}

.broadcast-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background:
    radial-gradient(circle at center, rgba(215,25,42,.10), transparent 18rem),
    #020712;
}

.broadcast-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.needs-youtube-channel-id .broadcast-frame::before {
  content: "YouTube Live";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: rgba(255,255,255,.72);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: clamp(1.7rem, 3vw, 2.8rem);
  letter-spacing: .08em;
}

.needs-youtube-channel-id .broadcast-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,.06);
  pointer-events: none;
}

@media (max-width: 1050px) {
  .broadcast-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .broadcast-heading {
    display: block;
  }

  .broadcast-heading span {
    display: block;
    margin-bottom: 6px;
  }
}


/* === RFCL broadcast layout alignment fix === */
/* Force the section to align with the exact same content width/grid as the rest of the homepage. */

.broadcast-section {
  width: 100% !important;
  padding: 28px 0 10px !important;
}

.broadcast-inner {
  width: min(1320px, calc(100% - 56px)) !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.broadcast-heading {
  margin: 0 0 18px !important;
  padding: 0 4px !important;
}

.broadcast-heading h2 {
  font-size: clamp(2.4rem, 4.4vw, 4rem) !important;
}

.broadcast-grid {
  width: 100% !important;
  margin: 0 auto !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr) !important;
  align-items: stretch !important;
}

.broadcast-card {
  width: 100% !important;
}

.broadcast-frame {
  width: 100% !important;
}

.broadcast-card-header {
  padding-inline: 18px !important;
}

@media (max-width: 1050px) {
  .broadcast-inner {
    width: min(100%, calc(100% - 34px)) !important;
  }

  .broadcast-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  .broadcast-inner {
    width: calc(100% - 22px) !important;
  }

  .broadcast-section {
    padding-top: 20px !important;
  }
}


/* === Polished logged-in coach account button === */
.coach-status-pill {
  display: none !important;
}

.coach-login.coach-account-button {
  min-width: 178px !important;
  min-height: 54px !important;
  padding: 8px 14px !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 1px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(215,25,42,.72) !important;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.28), transparent 72%),
    linear-gradient(180deg, rgba(10,24,50,.92), rgba(3,10,22,.94)) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
  color: #fff !important;
  text-align: left !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.coach-login.coach-account-button::before {
  content: "";
  grid-row: 1 / 3;
  grid-column: 2;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background:
    linear-gradient(180deg, #d7192a, #8f0d1b);
  box-shadow: 0 0 0 3px rgba(215,25,42,.16);
}

.coach-login.coach-account-button::after {
  content: "✓";
  grid-row: 1 / 3;
  grid-column: 2;
  justify-self: center;
  align-self: center;
  color: #fff;
  font-family: Inter, system-ui, sans-serif;
  font-size: 1rem;
  font-weight: 900;
  z-index: 1;
}

.coach-login.coach-account-button.has-team-logo::before,
.coach-login.coach-account-button.has-team-logo::after {
  display: none !important;
}

.coach-account-logo {
  grid-row: 1 / 3;
  grid-column: 2;
  width: 36px;
  height: 36px;
  align-self: center;
  justify-self: center;
  object-fit: contain;
  border-radius: 0;
  filter: drop-shadow(0 4px 6px rgba(0,0,0,.38));
}

.coach-account-label {
  grid-column: 1;
  color: rgba(216,222,232,.74);
  font-family: Inter, system-ui, sans-serif;
  font-size: .67rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.coach-login.coach-account-button strong {
  grid-column: 1;
  max-width: 145px;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.04rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.coach-login.coach-account-button em {
  display: none;
}

.coach-login.coach-account-button:hover {
  transform: translateY(-1px);
  border-color: rgba(255,51,71,.95) !important;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.36), transparent 72%),
    linear-gradient(180deg, rgba(13,31,64,.96), rgba(3,10,22,.96)) !important;
}

@media (max-width: 1280px) {
  .coach-login.coach-account-button {
    min-width: 142px !important;
  }

  .coach-login.coach-account-button strong {
    max-width: 108px;
  }
}

@media (max-width: 900px) {
  .coach-login.coach-account-button {
    display: inline-grid !important;
    min-height: 46px !important;
    min-width: 128px !important;
    padding: 7px 11px !important;
  }

  .coach-login.coach-account-button::before {
    width: 28px;
    height: 28px;
  }

  .coach-account-label {
    font-size: .6rem;
  }

  .coach-login.coach-account-button strong {
    max-width: 92px;
    font-size: .9rem;
  }
}


/* === Coach quick menu dropdown === */
.coach-menu {
  position: relative;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  z-index: 80;
}

.coach-menu .coach-account-button {
  position: relative;
  z-index: 2;
}

.coach-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(340px, calc(100vw - 24px));
  max-height: min(72vh, 620px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 10px;
  border: 1px solid rgba(215,25,42,.52);
  border-radius: 14px;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.18), transparent 70%),
    linear-gradient(180deg, rgba(6,18,38,.98), rgba(2,7,18,.98));
  box-shadow: 0 22px 48px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.coach-dropdown section {
  display: grid;
  gap: 5px;
  padding: 6px 0;
}

.coach-dropdown section + section {
  border-top: 1px solid rgba(255,255,255,.10);
}

.coach-dropdown h3 {
  margin: 0;
  padding: 2px 8px 4px;
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1;
  text-transform: uppercase;
}

.coach-menu:hover .coach-dropdown,
.coach-menu:focus-within .coach-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.coach-dropdown::before {
  content: "";
  position: absolute;
  right: 26px;
  top: -7px;
  width: 12px;
  height: 12px;
  background: rgba(6,18,38,.98);
  border-left: 1px solid rgba(215,25,42,.52);
  border-top: 1px solid rgba(215,25,42,.52);
  transform: rotate(45deg);
}

.coach-dropdown a {
  display: grid;
  gap: 3px;
  padding: 8px 10px;
  border-radius: 10px;
  color: #fff;
  transition: .14s ease;
}

.coach-dropdown a:hover {
  background: rgba(215,25,42,.16);
  transform: translateX(2px);
}

.coach-dropdown span {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: .92rem;
  letter-spacing: .05em;
}

.coach-dropdown small {
  color: rgba(216,222,232,.72);
  font-size: .7rem;
  font-weight: 700;
}

.coach-dropdown .logout-option {
  color: #ff7480;
}

.coach-dropdown .logout-option:hover {
  color: #fff;
  background: rgba(215,25,42,.24);
}

@media (max-width: 900px) {
  .coach-dropdown {
    right: -4px;
    width: min(320px, calc(100vw - 18px));
    max-height: calc(100vh - 150px);
  }
}


/* === Stabilize coach quick-menu hover area === */
.coach-menu {
  padding-bottom: 14px !important;
  margin-bottom: -14px !important;
}

.coach-dropdown {
  top: calc(100% - 2px) !important;
  right: 0 !important;
  padding-top: 10px !important;
  transition:
    opacity .14s ease,
    transform .14s ease,
    visibility .14s ease !important;
}

.coach-dropdown::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -18px;
  height: 22px;
  background: transparent;
}

.coach-menu:hover .coach-dropdown,
.coach-menu:focus-within .coach-dropdown,
.coach-menu.menu-open .coach-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

.coach-menu .coach-account-button {
  cursor: pointer;
}


/* === RFCL Schedule archive page === */
.schedule-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.11), transparent 28rem),
    linear-gradient(180deg, #04182c, #020712);
}

.schedule-hero,
.schedule-shell {
  max-width: 1180px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.schedule-hero {
  padding: 30px;
  margin-bottom: 18px;
}

.schedule-hero p {
  margin: 0;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .08em;
}

.schedule-hero h1 {
  margin: 6px 0 10px;
  max-width: none;
  font-size: clamp(3rem, 7vw, 5.2rem);
}

.schedule-hero h1::after {
  display: none;
}

.schedule-hero span {
  color: var(--muted);
  font-weight: 800;
}

.schedule-shell {
  padding: 20px;
}

.schedule-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 14px;
  margin-bottom: 18px;
}

.schedule-controls label {
  display: grid;
  gap: 7px;
  min-width: 190px;
}

.schedule-controls label span {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.schedule-controls select {
  min-height: 46px;
  padding: 0 42px 0 13px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(2,7,18,.62);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.schedule-status {
  color: var(--muted);
  font-weight: 800;
  padding-bottom: 12px;
}

.schedule-status.schedule-error {
  color: #ff7480;
}

.schedule-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.schedule-game-card {
  overflow: hidden;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.08), transparent 18rem),
    linear-gradient(180deg, rgba(8,34,62,.78), rgba(3,15,28,.94));
  box-shadow: 0 12px 26px rgba(0,0,0,.18);
}

.schedule-game-top {
  min-height: 48px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,18,.28);
}

.schedule-game-top span {
  color: var(--rfcl-red, #d7192a);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: .88rem;
}

.schedule-game-top strong {
  color: #d8dee8;
  font-size: .85rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.schedule-team-row {
  min-height: 58px;
  padding: 0 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #d8dee8;
  text-decoration: none;
  cursor: pointer;
}

.schedule-team-row:last-child {
  border-bottom: 0;
}

.schedule-team-row span {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  line-height: 1;
}

.schedule-team-row strong {
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.85rem;
  line-height: 1;
}

.schedule-team-row.winner {
  color: #fff;
  background: linear-gradient(90deg, rgba(215,25,42,.18), transparent);
}

.schedule-team-row.winner strong {
  color: var(--rfcl-red, #d7192a);
}

.schedule-empty {
  grid-column: 1 / -1;
  padding: 28px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
  display: grid;
  gap: 6px;
}

.schedule-empty strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.6rem;
}

.schedule-empty span {
  color: var(--muted);
}

@media (max-width: 840px) {
  .schedule-grid {
    grid-template-columns: 1fr;
  }

  .schedule-controls {
    display: grid;
  }

  .schedule-controls label {
    min-width: 0;
  }
}


/* === Schedule records beside each team === */
.schedule-team-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  column-gap: 12px !important;
}

.schedule-team-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.schedule-records {
  display: grid;
  justify-items: end;
  gap: 2px;
  min-width: 88px;
  line-height: 1;
}

.schedule-records b {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .04em;
}

.schedule-records em {
  color: rgba(216,222,232,.68);
  font-style: normal;
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.schedule-team-row.winner .schedule-records b {
  color: var(--rfcl-red, #d7192a);
}

@media (max-width: 620px) {
  .schedule-team-row {
    grid-template-columns: minmax(0, 1fr) auto !important;
    row-gap: 6px;
  }

  .schedule-records {
    grid-column: 1 / -1;
    justify-items: start;
    display: flex;
    gap: 10px;
  }
}


/* === Schedule single week-record display fix === */
.schedule-team-row {
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  column-gap: 12px !important;
  align-items: center !important;
}

.schedule-records {
  display: none !important;
}

.schedule-record {
  min-width: 54px;
  padding: 6px 9px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  color: #d8dee8;
  font-family: Oswald, Impact, sans-serif;
  font-size: .98rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .04em;
}

.schedule-team-row.winner .schedule-record {
  color: #fff;
  border-color: rgba(215,25,42,.48);
  background: rgba(215,25,42,.20);
}

@media (max-width: 620px) {
  .schedule-team-row {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
  }

  .schedule-record {
    min-width: 48px;
    padding: 5px 8px;
    font-size: .9rem;
  }
}


/* === Coaches Poll page === */
.poll-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.11), transparent 28rem),
    linear-gradient(180deg, #04182c, #020712);
}

.poll-hero,
.poll-shell {
  max-width: 980px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.poll-hero {
  padding: 30px;
  margin-bottom: 18px;
}

.poll-hero p {
  margin: 0;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .08em;
}

.poll-hero h1 {
  margin: 6px 0 10px;
  max-width: none;
  font-size: clamp(3rem, 7vw, 5.2rem);
}

.poll-hero h1::after {
  display: none;
}

.poll-hero span {
  color: var(--muted);
  font-weight: 800;
}

.poll-shell {
  padding: 22px;
}

.poll-form {
  display: grid;
  gap: 18px;
}

.poll-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.poll-toolbar strong,
.poll-toolbar span {
  display: block;
}

.poll-toolbar strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.35rem;
}

.poll-toolbar span {
  color: var(--muted);
  font-size: .88rem;
  font-weight: 800;
}

.poll-toolbar button {
  min-height: 46px;
  border: 0;
  border-radius: 9px;
  padding: 0 18px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .08em;
  cursor: pointer;
}

.poll-list {
  display: grid;
  gap: 9px;
}

.poll-rank-row {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 10px;
  align-items: center;
}

.poll-rank-number {
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  border: 1px solid rgba(215,25,42,.38);
  background: rgba(215,25,42,.12);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 700;
  letter-spacing: .04em;
}

.poll-rank-row select {
  width: 100%;
  min-height: 46px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.poll-rank-row.has-duplicate select {
  border-color: #ff7480;
  box-shadow: 0 0 0 2px rgba(255,116,128,.15);
}

@media (max-width: 620px) {
  .poll-toolbar {
    display: grid;
  }

  .poll-toolbar button {
    width: 100%;
  }

  .poll-rank-row {
    grid-template-columns: 54px 1fr;
  }
}


/* === Coaches Poll draggable ballot === */
.poll-drag-list {
  gap: 10px;
}

.poll-draggable-row {
  grid-template-columns: 64px minmax(0, 1fr) 42px !important;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.08), transparent 18rem),
    rgba(255,255,255,.035);
  cursor: grab;
  transition: border-color .14s ease, background .14s ease, transform .14s ease, opacity .14s ease;
}

.poll-draggable-row:hover {
  border-color: rgba(215,25,42,.38);
  background: rgba(255,255,255,.055);
}

.poll-draggable-row.is-dragging {
  opacity: .42;
  transform: scale(.99);
}

.poll-team-card {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.poll-team-card strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.18rem;
  letter-spacing: .04em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.poll-team-card span {
  color: rgba(216,222,232,.72);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.poll-team-card b {
  margin-left: 10px;
  color: var(--rfcl-red, #d7192a);
  font-weight: 900;
}

.poll-drag-handle {
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: rgba(216,222,232,.74);
  background: rgba(2,7,18,.35);
  font-size: 1.25rem;
  cursor: grab;
}

.poll-mobile-controls {
  display: none;
}

@media (max-width: 720px) {
  .poll-draggable-row {
    grid-template-columns: 54px minmax(0, 1fr) 38px !important;
  }

  .poll-team-card span {
    display: grid;
    gap: 2px;
  }

  .poll-team-card b {
    margin-left: 0;
  }
}

@media (max-width: 520px) {
  .poll-draggable-row {
    grid-template-columns: 48px minmax(0, 1fr) !important;
  }

  .poll-drag-handle {
    display: none;
  }

  .poll-mobile-controls {
    grid-column: 1 / -1;
    display: flex;
    gap: 8px;
  }

  .poll-mobile-controls button {
    flex: 1;
    min-height: 34px;
    border: 1px solid rgba(215,25,42,.32);
    border-radius: 8px;
    background: rgba(215,25,42,.12);
    color: #fff;
    font-weight: 900;
  }
}


/* === Actual Season 12 team logos on homepage/team pages === */
.logo-team-card {
  min-height: 158px !important;
  display: grid !important;
  align-content: center !important;
  justify-items: center !important;
  gap: 9px !important;
  text-align: center !important;
}

.logo-team-card .team-logo-wrap {
  height: 64px;
  width: 96px;
  display: grid;
  place-items: center;
}

.team-logo-img {
  max-width: 94px;
  max-height: 64px;
  object-fit: contain;
  filter: drop-shadow(0 8px 12px rgba(0,0,0,.35));
}

.team-logo-placeholder {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  border: 1px solid rgba(215,25,42,.38);
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.18), transparent 70%),
    rgba(255,255,255,.035);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: .05em;
}

.logo-team-card .team-name {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.05;
}

.team-hero-with-logo {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

.team-profile-logo {
  width: 128px;
  max-height: 128px;
  object-fit: contain;
  filter: drop-shadow(0 12px 18px rgba(0,0,0,.42));
}

@media (max-width: 720px) {
  .team-hero-with-logo {
    display: grid !important;
  }

  .team-profile-logo {
    width: 96px;
    max-height: 96px;
  }
}

/* Poll self-vote exclusion text fit */
.poll-hero span,
.poll-toolbar span {
  line-height: 1.45;
}


/* === Admin Console === */
.admin-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.11), transparent 28rem),
    linear-gradient(180deg, #04182c, #020712);
}

.admin-hero,
.admin-shell {
  max-width: 1180px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.admin-hero {
  padding: 30px;
  margin-bottom: 18px;
}

.admin-hero p {
  margin: 0;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .08em;
}

.admin-hero h1 {
  margin: 6px 0 10px;
  max-width: none;
  font-size: clamp(3rem, 7vw, 5.2rem);
}

.admin-hero h1::after {
  display: none;
}

.admin-hero span {
  color: var(--muted);
  font-weight: 800;
}

.admin-shell {
  padding: 22px;
}

.admin-grid,
.admin-console-grid {
  display: grid;
  gap: 16px;
}

.admin-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 16px;
}

.admin-console-grid {
  grid-template-columns: .85fr 1.15fr;
}

.admin-card {
  padding: 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
}

.admin-card h2 {
  margin: 0 0 14px;
  color: #fff;
}

.admin-card h2::after {
  display: none;
}

.admin-inline-form {
  display: flex;
  gap: 10px;
  align-items: center;
}

.admin-inline-form select {
  min-height: 44px;
  flex: 1;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.admin-inline-form button,
.admin-ballot-actions button {
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  padding: 0 14px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}

.admin-status-list {
  display: grid;
  gap: 8px;
}

.admin-vote-status {
  min-height: 44px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.035);
}

.admin-vote-status span {
  color: #fff;
  font-weight: 900;
}

.admin-vote-status strong {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.admin-vote-status.has-voted strong {
  color: #7dffae;
}

.admin-vote-status.missing-vote strong {
  color: #ff7480;
}

.admin-coach-picker {
  margin-bottom: 14px;
}

.admin-ballot-actions {
  margin-top: 14px;
  display: flex;
  gap: 10px;
}

.admin-ballot-actions .danger-button {
  background: linear-gradient(180deg, #76202a, #391016);
}

.admin-login-divider {
  margin: 22px 0 4px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .78rem;
}

.admin-login-divider::before,
.admin-login-divider::after {
  content: "";
  height: 1px;
  background: rgba(255,255,255,.14);
}

@media (max-width: 980px) {
  .admin-grid,
  .admin-console-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .admin-inline-form,
  .admin-ballot-actions {
    display: grid;
  }
}


/* === Unified login cleanup === */
.admin-login-divider,
.admin-login-form {
  display: none !important;
}

.auth-form input[name="username"] {
  text-transform: none;
}

.coach-login.coach-account-button strong {
  max-width: 170px;
}


/* === Admin live update status === */
.admin-live-summary {
  margin: -4px 0 12px;
  padding: 9px 11px;
  border: 1px solid rgba(215,25,42,.24);
  border-radius: 10px;
  background: rgba(215,25,42,.08);
  color: rgba(216,222,232,.86);
  font-size: .82rem;
  font-weight: 900;
}


/* === Poll storage health / diagnostics === */
.admin-storage-health {
  margin: 0 0 16px;
  padding: 11px 13px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 11px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
  font-weight: 900;
}

.admin-storage-health strong {
  color: #fff;
}

.admin-storage-health span {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.admin-storage-health small {
  color: var(--muted);
  margin-left: auto;
}

.admin-storage-health.storage-ok span {
  color: #7dffae;
}

.admin-storage-health.storage-bad {
  border-color: rgba(255,116,128,.55);
  background: rgba(255,116,128,.10);
}

.admin-storage-health.storage-bad span {
  color: #ff7480;
}

.storage-debug {
  white-space: pre-wrap;
  padding: 14px;
  border-radius: 10px;
  background: rgba(2,7,18,.72);
  color: #d8dee8;
  border: 1px solid rgba(255,255,255,.12);
  overflow: auto;
}


/* === Poll locking and admin week advancement === */
.poll-locked-box {
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(215,25,42,.38);
  border-radius: 12px;
  background: rgba(215,25,42,.10);
  display: grid;
  gap: 5px;
}

.poll-locked-box strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.35rem;
}

.poll-locked-box span {
  color: var(--muted);
  font-weight: 800;
}

.poll-readonly-list {
  display: grid;
  gap: 10px;
}

.poll-draggable-row.readonly {
  cursor: default;
  opacity: .94;
}

.poll-draggable-row.readonly .poll-drag-handle,
.poll-draggable-row.readonly .poll-mobile-controls {
  display: none !important;
}

.admin-week-control-card {
  grid-column: span 2;
}

.admin-week-actions {
  display: flex;
  gap: 10px;
  align-items: end;
  margin-top: 10px;
}

.admin-week-actions label {
  flex: 1;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.admin-week-actions input {
  min-height: 44px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.admin-week-actions button {
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  padding: 0 14px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}

@media (max-width: 980px) {
  .admin-week-control-card {
    grid-column: auto;
  }

  .admin-week-actions {
    display: grid;
  }
}


/* === Admin console cleanup / delete-resubmit fix === */
.admin-storage-health {
  display: none !important;
}

.admin-grid {
  align-items: stretch;
}

.admin-card {
  min-width: 0;
}


/* === Safe admin week controls and coach ballot lock === */
.poll-locked-box {
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(215,25,42,.38);
  border-radius: 12px;
  background: rgba(215,25,42,.10);
  display: grid;
  gap: 5px;
}

.poll-locked-box strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.35rem;
}

.poll-locked-box span {
  color: var(--muted);
  font-weight: 800;
}

.admin-week-grid {
  margin-bottom: 16px;
}

.admin-week-control-card {
  grid-column: 1 / -1;
}

.admin-card-note {
  margin: -4px 0 12px;
  color: var(--muted);
  font-weight: 800;
  line-height: 1.45;
}

.admin-week-actions {
  display: flex;
  gap: 10px;
  align-items: end;
  margin-top: 10px;
}

.admin-week-actions label {
  flex: 1;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.admin-week-actions input[type="text"] {
  min-height: 44px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.admin-week-actions button {
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  padding: 0 14px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}

.admin-week-actions .secondary-admin-button {
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06)) !important;
  border: 1px solid rgba(215,25,42,.38) !important;
}

.admin-checkbox-label {
  min-height: 44px;
  display: flex !important;
  align-items: center;
  gap: 9px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
  color: #d8dee8 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.admin-checkbox-label input {
  width: 16px;
  height: 16px;
}

@media (max-width: 760px) {
  .admin-week-actions {
    display: grid;
  }
}


.admin-week-actions select{
min-height:44px;
padding:0 12px;
border-radius:9px;
border:1px solid rgba(255,255,255,.16);
background:rgba(2,7,18,.66);
color:#fff;
font-weight:800;
}


/* === Release 20260519u: visible team logos === */
.logo-team-card {
  min-height: 158px !important;
  display: grid !important;
  align-content: center !important;
  justify-items: center !important;
  gap: 9px !important;
  text-align: center !important;
}

.logo-team-card .team-logo-wrap {
  height: 72px !important;
  width: 112px !important;
  display: grid !important;
  place-items: center !important;
}

.logo-team-card .team-logo-img,
.team-logo-img {
  display: block !important;
  max-width: 106px !important;
  max-height: 72px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 8px 12px rgba(0,0,0,.35));
}

.logo-team-card .team-logo-placeholder,
.team-logo-placeholder {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  border: 1px solid rgba(215,25,42,.38);
  background: radial-gradient(circle at top right, rgba(215,25,42,.18), transparent 70%), rgba(255,255,255,.035);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: .05em;
}

.logo-team-card .team-name {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.05;
}

.team-hero-with-logo {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

.team-profile-logo {
  width: 128px !important;
  max-height: 128px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 12px 18px rgba(0,0,0,.42));
}

.admin-week-actions select {
  min-height: 44px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

@media (max-width: 720px) {
  .team-hero-with-logo {
    display: grid !important;
  }

  .team-profile-logo {
    width: 96px !important;
    max-height: 96px !important;
  }
}


/* === Schedule score submission === */
.score-submit-grid {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
}

.score-submit-card {
  display: grid;
}

.score-submit-form,
.score-issue-form {
  display: grid;
  gap: 10px;
  padding: 14px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.score-submit-form {
  grid-template-columns: 1fr 1fr auto;
  align-items: end;
}

.score-submit-form label,
.score-issue-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.score-submit-form input,
.score-issue-form input {
  min-height: 42px;
  padding: 0 11px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.score-submit-form button,
.score-issue-form button,
.schedule-create-form button {
  min-height: 42px;
  border: 0;
  border-radius: 9px;
  padding: 0 13px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}

.score-issue-form {
  grid-template-columns: 1fr auto;
}

.admin-schedule-grid {
  margin-bottom: 16px;
}

.schedule-create-form {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.schedule-create-form select {
  min-height: 44px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

@media (max-width: 900px) {
  .score-submit-form,
  .score-issue-form,
  .schedule-create-form {
    grid-template-columns: 1fr !important;
  }
}


/* === Admin score editing and locked coach score state === */
.score-locked-box {
  margin: 14px;
}

.admin-score-edit-list {
  display: grid;
  gap: 10px;
}

.admin-score-edit-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 100px 100px auto auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.admin-score-edit-row strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.05rem;
}

.admin-score-edit-row label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.admin-score-edit-row input {
  min-height: 40px;
  padding: 0 10px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.admin-score-edit-row button {
  min-height: 40px;
  border: 0;
  border-radius: 9px;
  padding: 0 12px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}

@media (max-width: 900px) {
  .admin-score-edit-row {
    grid-template-columns: 1fr;
  }
}


/* === Release 20260519x: force team profile logos visible === */
.team-hero-with-logo {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

.team-profile-logo {
  display: block !important;
  width: 136px !important;
  max-width: 136px !important;
  max-height: 136px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 12px 18px rgba(0,0,0,.42));
  flex: 0 0 auto;
}

.portal-action {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  padding: 0 13px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
}

@media (max-width: 720px) {
  .team-hero-with-logo {
    display: grid !important;
  }
}


/* === Release 20260519y: archive schedule importer + forced team logos === */
.team-hero-with-logo,
.team-hero:has(.team-profile-logo) {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

.team-profile-logo {
  display: block !important;
  width: 136px !important;
  max-width: 136px !important;
  max-height: 136px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 12px 18px rgba(0,0,0,.42));
  flex: 0 0 auto;
}

@media (max-width: 720px) {
  .team-hero:has(.team-profile-logo) {
    display: grid !important;
  }
}


/* === Team custom colors === */
.team-page {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--team-primary, #061529) 78%, #020712), #020712 60%),
    radial-gradient(circle at 16% 0%, color-mix(in srgb, var(--team-secondary, #d7192a) 14%, transparent), transparent 28rem),
    radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--team-primary, #061529) 52%, transparent), transparent 30rem) !important;
}

.team-page .team-hero,
.team-page .team-detail-grid article {
  border-color: color-mix(in srgb, var(--team-secondary, #d7192a) 46%, rgba(255,255,255,.14)) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.28),
    0 0 0 1px color-mix(in srgb, var(--team-primary, #061529) 56%, transparent) inset !important;
}

.team-page .team-hero {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--team-primary, #061529) 86%, #020712), rgba(3,13,25,.96)),
    radial-gradient(circle at top right, color-mix(in srgb, var(--team-secondary, #d7192a) 18%, transparent), transparent 18rem) !important;
}

.team-page .team-hero p,
.team-page .team-detail-grid h2 {
  color: var(--team-secondary, var(--rfcl-red, #d7192a)) !important;
}

.team-page .team-hero h1 {
  color: #fff !important;
  text-shadow:
    0 4px 0 rgba(0,0,0,.38),
    0 0 20px color-mix(in srgb, var(--team-secondary, #d7192a) 22%, transparent) !important;
}

.team-page .team-hero span,
.team-page .team-detail-grid p,
.team-page .team-detail-grid li {
  color: color-mix(in srgb, #f7fbff 88%, var(--team-secondary, #d7192a)) !important;
}

.team-page .team-detail-grid article {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--team-primary, #061529) 74%, rgba(6,24,44,.92)), rgba(3,13,25,.94)),
    radial-gradient(circle at top right, color-mix(in srgb, var(--team-secondary, #d7192a) 10%, transparent), transparent 14rem) !important;
}

.team-page .team-detail-grid h2::after {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  margin-top: 9px;
  background: var(--team-secondary, #d7192a);
}

.team-page [data-team-profile-summary] p {
  display: grid;
  gap: 8px;
}

.team-page [data-team-profile-summary] p strong,
.team-page [data-team-profile-summary] p span {
  display: block;
}

.team-page [data-team-profile-summary] p strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.15rem;
  text-transform: uppercase;
}

.team-page .team-profile-logo {
  padding: 10px;
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(2,7,18,.22)),
    color-mix(in srgb, var(--team-primary, #061529) 44%, transparent);
  border: 1px solid color-mix(in srgb, var(--team-secondary, #d7192a) 42%, rgba(255,255,255,.16));
}

.team-profile-tabs-shell {
  width: min(1180px, calc(100% - 32px));
  margin: 22px auto 0;
}

.team-profile-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  padding: 8px;
  border: 1px solid color-mix(in srgb, var(--team-secondary, #f5b51b) 24%, rgba(255,255,255,.12));
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
    color-mix(in srgb, var(--team-primary, #061529) 26%, rgba(3,10,22,.82));
  box-shadow: 0 18px 44px rgba(0,0,0,.24);
}

.team-profile-tabs button,
.team-stats-mode-toggle button {
  min-height: 40px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.055);
  color: rgba(247,251,255,.72);
  padding: 10px 16px;
  font: 900 .78rem/1 Inter, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
}

.team-profile-tabs button[aria-selected="true"],
.team-stats-mode-toggle button.active,
.team-profile-tabs button:hover,
.team-profile-tabs button:focus-visible,
.team-stats-mode-toggle button:hover,
.team-stats-mode-toggle button:focus-visible {
  border-color: color-mix(in srgb, var(--team-secondary, #f5b51b) 58%, rgba(255,255,255,.18));
  background: color-mix(in srgb, var(--team-primary, #d7192a) 26%, rgba(255,255,255,.08));
  color: #fff;
  outline: none;
}

.team-profile-tab-panels {
  margin-top: 14px;
}

.team-profile-tab-panel {
  display: grid;
  gap: 18px;
}

.team-profile-tab-panel[hidden] {
  display: none !important;
}

.team-tab-empty-state {
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  color: rgba(247,251,255,.68);
  font-weight: 800;
}

.team-profile-tab-panel .team-detail-grid,
.team-profile-tab-panel .team-schedule-section,
.team-profile-tab-panel .team-roster-section,
.team-profile-tab-panel .team-timeline-section {
  width: 100%;
  margin: 0;
}

.team-profile-tab-panel .team-detail-grid {
  grid-template-columns: 1fr;
}

.team-stats-mode-toggle {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-self: start;
  padding: 6px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(3,10,22,.72);
}

.team-profile-stats-board {
  display: grid;
  gap: 14px;
}

.team-profile-stats-hero {
  min-height: 118px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  padding: 20px;
  border: 1px solid color-mix(in srgb, var(--team-secondary, #f5b51b) 28%, rgba(255,255,255,.12));
  border-radius: 8px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--team-primary, #d7192a) 42%, rgba(3,10,22,.88)), rgba(2,7,18,.84)),
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--team-secondary, #f5b51b) 26%, transparent), transparent 42%);
  box-shadow: 0 20px 52px rgba(0,0,0,.24);
}

.team-profile-stats-hero span,
.team-profile-stats-summary span {
  display: block;
  color: rgba(247,251,255,.62);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.team-profile-stats-hero strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: .95;
  text-transform: uppercase;
}

.team-profile-stats-hero p {
  margin: 0;
  color: #fff;
  font-weight: 900;
  text-align: right;
}

.team-profile-stats-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.team-profile-stats-summary article {
  min-height: 92px;
  display: grid;
  align-content: space-between;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    rgba(2,7,18,.58);
}

.team-profile-stats-summary strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.65rem, 3vw, 2.45rem);
  line-height: .95;
}

.team-profile-stats-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.team-player-stats-panel {
  display: grid;
  gap: 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
    rgba(2,7,18,.58);
  padding: 20px;
  box-shadow: 0 18px 42px rgba(0,0,0,.2);
}

.team-player-stats-panel[hidden] {
  display: none !important;
}

.team-player-stats-panel h2 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.team-player-stats-body {
  display: grid;
  gap: 14px;
}

.team-player-dashboard {
  display: grid;
  gap: 14px;
}

.team-player-board-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.team-player-board-category {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--team-secondary, #f5b51b) 22%, rgba(255,255,255,.10));
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    color-mix(in srgb, var(--team-primary, #061529) 14%, rgba(2,7,18,.66));
  box-shadow: 0 16px 34px rgba(0,0,0,.18);
}

.team-player-board-head {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

.team-player-board-head h3 {
  margin: 0;
  color: color-mix(in srgb, var(--team-secondary, #f5b51b) 74%, #fff 26%);
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.25rem;
  line-height: 1;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.team-player-stat-list {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.team-player-stat-row {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) repeat(4, minmax(64px, 82px));
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.team-player-stat-row-head {
  padding-block: 6px;
  border-color: transparent;
  background: transparent;
}

.team-player-stat-row-head span {
  color: rgba(247,251,255,.56);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.team-player-stat-row-head span:not(:first-child) {
  text-align: center;
}

.team-player-stat-name {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 2px;
  align-items: center;
  min-width: 0;
}

.team-player-stat-name b {
  grid-row: span 2;
  color: color-mix(in srgb, var(--team-secondary, #f5b51b) 58%, #fff 42%);
  font-family: Oswald, Impact, sans-serif;
  font-size: 1rem;
  font-weight: 900;
  text-align: right;
}

.team-player-stat-name span {
  min-width: 0;
  color: #fff;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.team-player-stat-name em {
  grid-column: 2;
  min-width: 0;
  color: rgba(247,251,255,.52);
  font-style: normal;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .06em;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.team-player-stat-row > strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}

.team-player-stats-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.team-player-stats-summary article {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background: rgba(255,255,255,.04);
  padding: 12px;
}

.team-player-stats-summary span,
.team-player-stat-category-head span {
  display: block;
  color: rgba(247,251,255,.58);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.team-player-stats-summary strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.8rem;
  line-height: 1;
}

.team-player-stat-category {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.team-player-stat-category-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: end;
}

.team-player-stat-category-head h3 {
  margin: 0;
  color: var(--gold, #f5b51b);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.team-player-stat-table-wrap {
  overflow: visible;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 8px;
  background: rgba(2,7,18,.42);
}

.team-player-stat-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.team-player-stat-table th,
.team-player-stat-table td {
  padding: 9px 8px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: rgba(247,251,255,.78);
  text-align: left;
  min-width: 0;
  overflow-wrap: anywhere;
}

.team-player-stat-table th {
  color: rgba(247,251,255,.58);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.team-player-stat-table td:not(:first-child) {
  text-align: center;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .98rem;
  font-weight: 800;
}

.team-player-stat-table th:first-child,
.team-player-stat-table td:first-child {
  width: 44%;
}

.team-player-stat-table td:first-child {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 6px;
  align-items: center;
}

.team-player-stat-table td strong {
  color: #fff;
}

.team-player-stat-table td em {
  grid-column: 2;
  color: rgba(247,251,255,.52);
  font-style: normal;
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.team-player-rank {
  grid-row: span 2;
  min-width: 1.8em;
  color: color-mix(in srgb, var(--team-primary, #f5b51b) 64%, #fff 36%);
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-align: right;
}

@media (max-width: 700px) {
  .team-profile-tabs,
  .team-stats-mode-toggle {
    width: 100%;
  }

  .team-profile-tabs button,
  .team-stats-mode-toggle button {
    flex: 1 1 120px;
    padding-inline: 10px;
  }

  .team-player-stats-summary {
    grid-template-columns: 1fr;
  }
  
  .team-player-board-grid {
    grid-template-columns: 1fr;
  }

  .team-player-board-category {
    padding: 10px;
  }

  .team-player-stat-row {
    grid-template-columns: minmax(130px, 1fr) repeat(4, minmax(38px, 46px));
    gap: 6px;
    padding: 8px 6px;
  }

  .team-player-stat-row-head span {
    font-size: .56rem;
    letter-spacing: .04em;
  }

  .team-player-stat-name {
    grid-template-columns: 22px minmax(0, 1fr);
    column-gap: 6px;
  }

  .team-player-stat-name b {
    font-size: .88rem;
  }

  .team-player-stat-name span {
    font-size: .82rem;
  }

  .team-player-stat-name em {
    font-size: .58rem;
    letter-spacing: .02em;
  }

  .team-player-stat-row > strong {
    font-size: .9rem;
  }

  .team-profile-stats-hero {
    align-items: start;
    flex-direction: column;
  }

  .team-profile-stats-hero p {
    text-align: left;
  }

  .team-profile-stats-summary,
  .team-profile-stats-groups {
    grid-template-columns: 1fr;
  }
}

/* === Admin console reorganization === */
.admin-console-tabs {
  position: sticky;
  top: 82px;
  z-index: 20;
  margin: 0 0 18px;
  padding: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: rgba(2,7,18,.74);
  backdrop-filter: blur(12px);
}

.admin-console-tabs a {
  min-height: 38px;
  padding: 0 13px;
  display: inline-flex;
  align-items: center;
  border-radius: 10px;
  background: rgba(255,255,255,.05);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.admin-console-tabs a:hover {
  background: rgba(215,25,42,.18);
}

.admin-section-panel {
  scroll-margin-top: 110px;
  margin-bottom: 24px;
}

.admin-section-heading {
  margin: 0 0 14px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
}

.admin-section-heading p {
  margin: 0;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .12em;
}

.admin-section-heading h2 {
  margin: 3px 0 0;
}

.admin-section-heading h2::after {
  display: none;
}

.admin-schedule-grid {
  grid-template-columns: 1fr;
}


/* === Admin page-view tabs === */
.admin-console-tabs {
  position: relative !important;
  top: auto !important;
}

.admin-console-tabs a.active {
  background: linear-gradient(180deg, rgba(215,25,42,.34), rgba(215,25,42,.16)) !important;
  border: 1px solid rgba(215,25,42,.48);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.admin-section-hidden {
  display: none !important;
}


/* === Separate schedule editing from voting week + fix score row layout === */
.schedule-score-picker {
  align-items: end;
}

.admin-score-edit-list {
  display: grid !important;
  gap: 12px !important;
}

.admin-score-edit-row {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.6fr) minmax(100px, .45fr) minmax(100px, .45fr) minmax(124px, auto) minmax(96px, auto) !important;
  gap: 12px !important;
  align-items: end !important;
  padding: 14px !important;
  overflow: visible !important;
}

.admin-score-edit-row strong {
  min-width: 0 !important;
  line-height: 1.12 !important;
  overflow-wrap: anywhere !important;
}

.admin-score-edit-row label {
  min-width: 0 !important;
}

.admin-score-edit-row input {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

.admin-score-edit-row button {
  width: 100% !important;
  white-space: nowrap !important;
}

@media (max-width: 1100px) {
  .admin-score-edit-row {
    grid-template-columns: 1fr 90px 90px !important;
  }
}

@media (max-width: 720px) {
  .admin-score-edit-row {
    grid-template-columns: 1fr !important;
  }

  .admin-score-edit-row input {
    text-align: left !important;
  }
}


/* === Admin dependent week dropdowns === */
.admin-week-actions select,
.admin-inline-form select {
  transition: border-color .14s ease, box-shadow .14s ease;
}


/* === Schedule & Scores fully separated from voting week === */
#schedule-admin .admin-card-note {
  line-height: 1.45;
}


/* === Schedule week creation + public rankings === */
.rankings-page {
  min-height: calc(100vh - 92px);
  padding: 44px clamp(18px, 5vw, 64px);
  background: radial-gradient(circle at 18% 0%, rgba(215,25,42,.11), transparent 28rem), linear-gradient(180deg, #04182c, #020712);
}

.rankings-hero,
.rankings-shell {
  max-width: 1180px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(6,24,44,.94), rgba(3,13,25,.9));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  box-shadow: 0 18px 38px rgba(0,0,0,.24);
}

.rankings-hero {
  padding: 30px;
  margin-bottom: 18px;
}

.rankings-hero p {
  margin: 0;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .08em;
}

.rankings-hero h1 {
  margin: 6px 0 10px;
  max-width: none;
  font-size: clamp(3rem, 7vw, 5.2rem);
}

.rankings-hero h1::after {
  display: none;
}

.rankings-hero span {
  color: var(--muted);
  font-weight: 800;
}

.rankings-shell {
  padding: 22px;
}

.rankings-filter {
  display: flex;
  gap: 12px;
  align-items: end;
  margin-bottom: 18px;
  padding: 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.035);
}

.rankings-filter label {
  flex: 1;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.rankings-filter select,
.rankings-filter input {
  min-height: 44px;
  padding: 0 12px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.66);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.rankings-filter button {
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  padding: 0 16px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
}

.rankings-filter.is-loading {
  opacity: .72;
  pointer-events: none;
}

.rankings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.ranking-card {
  padding: 18px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
}

.ranking-card h2 {
  margin: 0 0 14px;
}

.ranking-card h2::after {
  display: none;
}

.ranking-list {
  display: grid;
  gap: 8px;
}

.ranking-row {
  min-height: 48px;
  display: grid;
  grid-template-columns: 64px 46px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,18,.35);
  color: inherit;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.ranking-row:hover,
.ranking-row:focus-visible,
.schedule-team-row:hover,
.schedule-team-row:focus-visible {
  border-color: color-mix(in srgb, var(--row-primary, #f5b51b) 72%, white 28%);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--row-primary, #f5b51b) 24%, transparent), color-mix(in srgb, var(--row-secondary, #061529) 14%, transparent));
}

.ranking-row strong {
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.15rem;
}

.ranking-team-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 5px 10px rgba(0,0,0,.28));
}

.ranking-row span {
  color: #fff;
  font-weight: 900;
}

.ranking-row em {
  color: var(--muted);
  font-style: normal;
  font-weight: 900;
}

@media (max-width: 800px) {
  .rankings-grid,
  .rankings-filter {
    grid-template-columns: 1fr;
    display: grid;
  }
}


/* === Coaches Poll ranking average display === */
.ranking-row em {
  text-align: right;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .ranking-row {
    grid-template-columns: 48px 42px 1fr;
  }

  .ranking-row em {
    grid-column: 3;
    text-align: left;
    white-space: normal;
  }
}


/* === Rankings week dropdown + admin team manager === */
.team-manager-list {
  display: grid;
  gap: 9px;
}

.team-manager-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.team-manager-row strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.team-manager-row span {
  color: var(--muted);
  font-weight: 900;
  font-size: .82rem;
}

.team-manager-row button {
  min-height: 38px;
  border: 0;
  border-radius: 9px;
  padding: 0 12px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .06em;
}

.team-manager-row .danger-button {
  background: linear-gradient(180deg, #76202a, #391016);
}

.team-manager-row.is-retired-team {
  opacity: .72;
}

@media (max-width: 720px) {
  .team-manager-row {
    grid-template-columns: 1fr;
  }
}





/* === Rankings header uses standard site header === */
.site-nav a.active {
  color: #fff;
  background: rgba(215,25,42,.16);
  border-color: rgba(215,25,42,.32);
}

/* === Team Control transfer board === */
.team-transfer-board {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.team-transfer-column {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(2,7,18,.24);
}

.team-transfer-column h3 {
  margin: 0 0 12px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.team-transfer-board .team-manager-row {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.team-transfer-board .retired-column .team-manager-row {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.team-transfer-board .team-manager-row button {
  min-width: 42px;
  font-size: 1.1rem;
}

@media (max-width: 900px) {
  .team-transfer-board {
    grid-template-columns: 1fr;
  }
}


/* === Universal active roster integration === */
.admin-section-hidden {
  display: none !important;
}
.team-transfer-board .team-manager-row span {
  overflow-wrap: anywhere;
}

/* admin header/session white screen fix */

/* admin 500 currentWeek order fix */

/* historical roster rankings fix */

/* local text schedule import */

/* schedule dropdown repair */

/* schedule root cause dropdown repair */

/* backend data path repair */

/* Admin schedule edit controls */
.admin-inline-checkbox {
  align-items: center;
  flex-direction: row !important;
  gap: 0.45rem;
  white-space: nowrap;
}

.admin-inline-checkbox input[type="checkbox"] {
  width: auto;
  min-height: auto;
}

.danger-admin-button {
  border: 1px solid rgba(239, 68, 68, 0.65) !important;
  background: rgba(127, 29, 29, 0.65) !important;
  color: #fff !important;
}

.danger-admin-button:hover {
  background: rgba(185, 28, 28, 0.85) !important;
}

/* === Admin multi-game creator + cleaner score editor === */
.multi-game-create-form {
  display: grid;
  gap: 14px;
}

.multi-game-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(2,7,18,.32);
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
}

.multi-game-stepper,
.multi-game-row-remove {
  width: 42px !important;
  min-width: 42px !important;
  min-height: 40px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  font-size: 1.35rem !important;
  line-height: 1 !important;
}

.multi-game-stepper:disabled,
.multi-game-row-remove:disabled {
  opacity: .38;
  cursor: not-allowed;
}

.multi-game-list {
  display: grid;
  gap: 12px;
}

.multi-game-row {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(150px, .8fr) minmax(120px, .65fr) auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
}

.multi-game-row label,
.admin-score-fields label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.multi-game-row input,
.multi-game-row select,
.admin-score-fields input {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  box-sizing: border-box;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.72);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.multi-game-row input,
.admin-score-fields input {
  padding: 0 11px;
}

.multi-game-row select {
  padding: 0 9px;
}

.create-games-submit {
  justify-self: end;
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  padding: 0 18px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .06em;
  cursor: pointer;
}

.admin-score-edit-list {
  gap: 14px !important;
}

.admin-score-edit-row {
  grid-template-columns: minmax(210px, .75fr) minmax(420px, 1.45fr) minmax(125px, .45fr) !important;
  align-items: stretch !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.admin-game-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  min-width: 0;
}

.admin-game-title span {
  color: var(--muted);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.admin-game-title strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.admin-score-fields {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(120px, .75fr) minmax(86px, .45fr) minmax(86px, .45fr) auto;
  gap: 10px;
  align-items: end;
}

.admin-score-fields input[type="number"] {
  text-align: center;
}

.admin-score-actions {
  display: grid;
  gap: 8px;
  align-content: center;
}

.admin-score-actions button {
  width: 100% !important;
  min-height: 38px !important;
}

.admin-final-switch {
  display: grid !important;
  justify-items: center;
  align-items: center;
  gap: 5px !important;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  cursor: pointer;
  user-select: none;
}

.admin-final-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.switch-track {
  position: relative;
  width: 48px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.9);
  box-shadow: inset 0 1px 4px rgba(0,0,0,.35);
  transition: background .18s ease, border-color .18s ease;
}

.switch-thumb {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #cbd5e1;
  box-shadow: 0 2px 8px rgba(0,0,0,.45);
  transition: transform .18s ease, background .18s ease;
}

.admin-final-switch input:checked + .switch-track {
  border-color: rgba(215,25,42,.72);
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
}

.admin-final-switch input:checked + .switch-track .switch-thumb {
  transform: translateX(22px);
  background: #fff;
}

.switch-label {
  color: #fff;
}

@media (max-width: 1150px) {
  .admin-score-edit-row {
    grid-template-columns: 1fr !important;
  }

  .admin-score-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .multi-game-row,
  .admin-score-fields {
    grid-template-columns: 1fr 1fr;
  }

  .multi-game-row-remove,
  .admin-final-switch {
    justify-self: start;
  }
}

@media (max-width: 620px) {
  .multi-game-toolbar,
  .admin-score-actions {
    grid-template-columns: 1fr;
    display: grid;
  }

  .multi-game-row,
  .admin-score-fields {
    grid-template-columns: 1fr;
  }

  .create-games-submit {
    justify-self: stretch;
  }
}

/* Alternate team page themes */
.team-branding-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  padding: 16px !important;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  box-shadow: 0 16px 34px rgba(0,0,0,.28);
}

.team-branding-team-head,
.coach-theme-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.team-branding-team-head strong {
  padding: 0 !important;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.15rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.team-branding-team-head span,
.coach-theme-heading a {
  color: #dfe7f5;
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.coach-theme-heading a {
  color: #fff;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: 9px 12px;
  background: rgba(255,255,255,.06);
}

.team-branding-core,
.team-theme-activate-form,
.team-theme-create-form,
.coach-theme-activate,
.coach-theme-create {
  display: grid;
  gap: 10px;
  align-items: end;
}

.team-branding-core {
  grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr) minmax(230px, 1.4fr) auto;
}

.team-theme-manager,
.coach-theme-card {
  display: grid;
  gap: 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(2,7,18,.32);
  padding: 12px;
}

.coach-theme-card {
  margin: 18px 0 24px;
}

.team-theme-activate-form,
.coach-theme-activate {
  grid-template-columns: minmax(220px, 1fr) auto;
}

.team-theme-create-form,
.coach-theme-create {
  grid-template-columns: minmax(150px, 1.2fr) minmax(120px, .8fr) minmax(120px, .8fr) auto auto;
}

.team-branding-core label,
.team-theme-activate-form label,
.team-theme-create-form label,
.coach-theme-activate label,
.coach-theme-create label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.team-branding-row input[type="text"],
.team-branding-row input[type="file"],
.team-branding-row select,
.coach-theme-card input[type="text"],
.coach-theme-card select {
  width: 100%;
  min-height: 40px;
  padding: 0 11px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.72);
  color: #fff;
  font-weight: 800;
}

.team-branding-row input[type="file"] {
  padding: 5px;
}

.theme-activate-check {
  min-height: 40px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px !important;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.055);
  color: #fff !important;
}

.theme-activate-check input {
  accent-color: #d7192a;
}

.team-theme-archive,
.coach-theme-archive {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.team-theme-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  color: #dfe7f5;
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.team-theme-chip.active {
  border-color: rgba(215,25,42,.7);
  box-shadow: 0 0 0 1px rgba(215,25,42,.2), 0 0 18px rgba(215,25,42,.18);
  color: #fff;
}

.team-theme-chip i {
  width: 26px;
  height: 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(90deg, var(--swatch-primary) 0 50%, var(--swatch-secondary) 50% 100%);
}

.team-theme-badge {
  display: inline-flex;
  width: fit-content;
  margin-top: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--team-primary) 70%, white 30%);
  background: linear-gradient(135deg, color-mix(in srgb, var(--team-primary) 35%, transparent), color-mix(in srgb, var(--team-secondary) 28%, transparent));
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--team-primary) 30%, transparent);
}

.coach-theme-card h2 {
  margin: 0;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.coach-theme-card button,
.team-branding-row button {
  min-height: 40px;
  border: 0;
  border-radius: 10px;
  padding: 0 14px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .06em;
  cursor: pointer;
}

@media (max-width: 1100px) {
  .team-branding-core,
  .team-theme-create-form,
  .coach-theme-create {
    grid-template-columns: 1fr 1fr;
  }

  .team-theme-activate-form,
  .coach-theme-activate {
    grid-template-columns: 1fr auto;
  }
}

@media (max-width: 700px) {
  .team-branding-team-head,
  .coach-theme-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .team-branding-core,
  .team-theme-activate-form,
  .team-theme-create-form,
  .coach-theme-activate,
  .coach-theme-create {
    grid-template-columns: 1fr;
  }
}

/* Compact alternate team theme manager + per-theme logo support */
.team-branding-list {
  gap: 10px;
}

.team-branding-row {
  display: block !important;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  box-shadow: 0 14px 28px rgba(0,0,0,.24);
}

.team-branding-row[hidden] {
  display: none !important;
}

.team-branding-summary {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(260px, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
}

.team-branding-summary::-webkit-details-marker {
  display: none;
}

.team-branding-summary::marker {
  content: "";
}

.team-branding-summary:hover {
  background: rgba(255,255,255,.035);
}

.team-branding-summary .team-branding-team-head {
  display: grid;
  gap: 3px;
  padding: 0;
  border-bottom: 0;
  justify-content: start;
}

.team-branding-summary .team-branding-team-head span {
  font-size: .7rem;
  opacity: .82;
}

.team-branding-panel {
  display: grid;
  gap: 12px;
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,.1);
  background: rgba(2,7,18,.24);
}

.team-branding-manage-label {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 86px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.07);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.team-branding-row[open] .team-branding-manage-label {
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  border-color: rgba(255,255,255,.1);
}

.team-branding-row[open] .team-branding-manage-label::before {
  content: "Close";
}

.team-branding-row[open] .team-branding-manage-label {
  font-size: 0;
}

.team-branding-row[open] .team-branding-manage-label::before {
  font-size: .78rem;
}

.team-theme-archive-compact {
  flex-wrap: nowrap;
  overflow: hidden;
  min-width: 0;
}

.team-theme-archive-compact .team-theme-chip {
  flex: 0 0 auto;
}

.team-theme-chip-logo {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  object-fit: contain;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  padding: 2px;
}

.team-branding-core {
  grid-template-columns: minmax(130px, .75fr) minmax(130px, .75fr) minmax(190px, 1.1fr) auto;
}

.team-theme-create-form,
.coach-theme-create {
  grid-template-columns: minmax(140px, 1fr) minmax(112px, .65fr) minmax(112px, .65fr) minmax(190px, 1.05fr) auto auto;
}

.coach-theme-card input[type="file"],
.team-branding-row input[type="file"] {
  width: 100%;
  min-height: 40px;
  padding: 5px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.72);
  color: #fff;
  font-weight: 800;
}

.coach-theme-card input[type="file"]::file-selector-button,
.team-branding-row input[type="file"]::file-selector-button {
  border: 0;
  border-radius: 8px;
  padding: 7px 9px;
  margin-right: 8px;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 1180px) {
  .team-branding-summary {
    grid-template-columns: 1fr auto;
  }

  .team-theme-archive-compact {
    grid-column: 1 / -1;
    order: 3;
  }

  .team-theme-create-form,
  .coach-theme-create {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (max-width: 780px) {
  .team-branding-summary,
  .team-branding-core,
  .team-theme-activate-form,
  .team-theme-create-form,
  .coach-theme-activate,
  .coach-theme-create {
    grid-template-columns: 1fr;
  }

  .team-branding-manage-label {
    justify-self: stretch;
  }

  .team-theme-archive-compact {
    flex-wrap: wrap;
    max-height: none;
  }
}

/* Theme chip activation cleanup */
.team-theme-badge {
  display: none !important;
}

.team-theme-chip-form {
  display: inline-flex;
  margin: 0;
  padding: 0;
}

button.team-theme-chip,
.team-branding-row button.team-theme-chip,
.coach-theme-card button.team-theme-chip {
  min-height: auto;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  color: #dfe7f5;
  font-family: Inter, system-ui, sans-serif;
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
  cursor: pointer;
  box-shadow: none;
}

button.team-theme-chip:hover,
.team-branding-row button.team-theme-chip:hover,
.coach-theme-card button.team-theme-chip:hover {
  border-color: rgba(215,25,42,.45);
  background: rgba(255,255,255,.09);
  color: #fff;
}

button.team-theme-chip.active,
.team-branding-row button.team-theme-chip.active,
.coach-theme-card button.team-theme-chip.active {
  border-color: rgba(215,25,42,.7);
  box-shadow: 0 0 0 1px rgba(215,25,42,.2), 0 0 18px rgba(215,25,42,.18);
  color: #fff;
}

.team-theme-activate-form,
.coach-theme-activate {
  grid-template-columns: minmax(220px, 1fr);
}

.team-theme-create-form,
.coach-theme-create {
  grid-template-columns: minmax(140px, 1fr) minmax(112px, .65fr) minmax(112px, .65fr) minmax(190px, 1.05fr) auto;
}

@media (max-width: 1180px) {
  .team-theme-create-form,
  .coach-theme-create {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 780px) {
  .team-theme-activate-form,
  .team-theme-create-form,
  .coach-theme-activate,
  .coach-theme-create {
    grid-template-columns: 1fr;
  }
}

.team-theme-activate-hidden {
  display: none;
}

/* === Schedule team logo + stacked team record layout === */
.schedule-team-row {
  grid-template-columns: 46px minmax(0, 1fr) auto !important;
  column-gap: 12px !important;
  min-height: 66px !important;
  justify-content: initial !important;
}

.schedule-team-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 5px 10px rgba(0,0,0,.28));
}

.schedule-team-row .schedule-team-details {
  min-width: 0;
  display: grid !important;
  gap: 4px;
  align-content: center;
  justify-items: start;
  font-family: Inter, system-ui, sans-serif !important;
  text-transform: none !important;
  font-size: 1rem !important;
  line-height: 1.1 !important;
}

.schedule-team-row .schedule-team-name {
  display: flex;
  align-items: center;
  gap: 7px;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: Oswald, Impact, sans-serif !important;
  text-transform: uppercase !important;
  font-size: clamp(.98rem, 1.45vw, 1.22rem) !important;
  font-weight: 800;
  line-height: 1 !important;
  letter-spacing: .035em;
}

.schedule-team-row .schedule-team-name > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.schedule-team-rank {
  flex: 0 0 auto;
  min-width: 26px;
  padding: 2px 5px;
  border: 1px solid rgba(245,181,27,.45);
  border-radius: 6px;
  color: var(--gold, #f5b51b);
  background: rgba(245,181,27,.10);
  font-family: Oswald, Impact, sans-serif;
  font-size: .72rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.schedule-team-row .schedule-record {
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(216,222,232,.72) !important;
  justify-content: flex-start !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: .74rem !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

.schedule-team-row .schedule-record::before {
  content: "RECORD";
  display: inline-block;
  margin-right: .38em;
  color: rgba(216,222,232,.46);
}

.schedule-team-row.winner .schedule-record {
  color: rgba(255,255,255,.82) !important;
}

.schedule-team-row .schedule-score {
  min-width: 46px;
  text-align: right;
  font-size: 1.9rem !important;
}

@media (max-width: 620px) {
  .schedule-team-row {
    grid-template-columns: 40px minmax(0, 1fr) auto !important;
    min-height: 62px !important;
    gap: 10px !important;
    padding-inline: 13px !important;
  }

  .schedule-team-logo {
    width: 36px;
    height: 36px;
  }

  .schedule-team-row .schedule-team-name {
    font-size: 1rem !important;
  }

  .schedule-team-row .schedule-score {
    min-width: 38px;
    font-size: 1.65rem !important;
  }
}

/* === RFCL standings page === */
.site-nav a.active {
  color: var(--gold);
}

.standings-shell {
  display: grid;
  gap: 18px;
}

.standings-controls {
  margin-bottom: 0;
}

.standings-note {
  align-self: end;
  padding-bottom: 12px;
}

.standings-conference-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.standings-card {
  overflow: hidden;
  border-radius: 15px;
  border: 1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at top right, rgba(245,181,27,.10), transparent 18rem),
    linear-gradient(180deg, rgba(8,34,62,.82), rgba(3,15,28,.96));
  box-shadow: 0 18px 34px rgba(0,0,0,.22);
}

.standings-card-head {
  min-height: 76px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 14px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,18,.30);
}

.standings-conference-logo {
  width: 52px;
  height: 52px;
  flex: 0 0 auto;
  object-fit: contain;
}

.standings-card-head p {
  margin: 0 0 4px;
  color: var(--gold);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .10em;
}

.standings-card-head h2 {
  margin: 0;
  font-size: clamp(1.7rem, 3vw, 2.35rem);
}

.standings-card-head span {
  display: inline-block;
  margin-top: 5px;
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.standings-card-head h2::after {
  display: none;
}

.standings-card-head strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  white-space: nowrap;
}

.standings-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.standings-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 620px;
}

.standings-table th,
.standings-table td {
  padding: 12px 13px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  text-align: center;
  font-weight: 900;
}

.standings-table th:first-child,
.standings-table td:first-child {
  text-align: left;
}

.standings-table th {
  color: var(--muted);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .10em;
  background: rgba(255,255,255,.025);
}

.standings-table td {
  color: #eef5ff;
}

.standings-table tbody tr:hover {
  background: rgba(255,255,255,.04);
}

.standings-team-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 240px;
}

.standings-team-link img {
  width: 38px;
  height: 38px;
  object-fit: contain;
  border-radius: 0;
  background: transparent;
  border: 0;
}

.standings-team-link strong {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-size: 1.08rem;
  letter-spacing: .03em;
}

.standings-rank {
  width: 34px;
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-align: right;
}

.standings-empty {
  padding: 22px;
  color: var(--muted);
  font-weight: 800;
}

@media (max-width: 980px) {
  .standings-conference-grid {
    grid-template-columns: 1fr;
  }
}

/* === Standings no-horizontal-scroll layout cleanup === */
.standings-list {
  display: grid;
  width: 100%;
}

.standings-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 68px 48px 48px 58px;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #eef5ff;
  font-weight: 900;
  text-align: center;
}

.standings-row:last-child {
  border-bottom: 0;
}

.standings-row:hover:not(.standings-row-head) {
  border-color: color-mix(in srgb, var(--row-primary, #f5b51b) 60%, rgba(255,255,255,.18));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--row-primary, #f5b51b) 22%, transparent), color-mix(in srgb, var(--row-secondary, #061529) 14%, transparent));
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--row-primary, #f5b51b) 78%, white 22%);
}

.standings-row-head {
  color: var(--muted);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .10em;
  background: rgba(255,255,255,.025);
}

.standings-row-head span:first-child {
  text-align: left;
}

.standings-list .standings-team-link {
  min-width: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 30px 38px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  text-align: left;
}

.standings-list .standings-team-link img {
  width: 36px;
  height: 36px;
  border-radius: 0;
  background: transparent;
  border: 0;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,.28));
}

.standings-list .standings-team-link strong {
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.05;
  font-size: clamp(.88rem, 1.35vw, 1rem);
}

.standings-list .standings-rank {
  width: 30px;
  text-align: right;
}

@media (max-width: 640px) {
  .standings-card-head {
    padding: 15px 16px;
  }

  .standings-row {
    grid-template-columns: minmax(0, 1fr) 58px;
    gap: 6px;
    padding: 10px 11px;
  }

  .standings-optional-stat {
    display: none !important;
  }

  .standings-list .standings-team-link {
    grid-template-columns: 24px 30px minmax(0, 1fr);
    gap: 7px;
  }

  .standings-list .standings-team-link img {
    width: 30px;
    height: 30px;
    border-radius: 0;
    background: transparent;
    border: 0;
  }

  .standings-list .standings-team-link strong {
    font-size: .84rem;
    line-height: 1.05;
  }

  .standings-list .standings-rank {
    width: 26px;
  }
}


.standings-total-section {
  margin-top: 24px;
}

.standings-total-card {
  width: 100%;
}

.standings-total-card .standings-card-head {
  background: linear-gradient(135deg, rgba(196,30,58,.22), rgba(255,255,255,.035));
}

/* === Schedule overall + conference record cleanup === */
.schedule-team-row .schedule-record {
  white-space: nowrap;
  font-size: .72rem !important;
}
/* === RFCL sportsbook === */
.sportsbook-board,
.sportsbook-coach-list,
.sportsbook-admin-lines,
.sportsbook-ratings-list {
  display: grid;
  gap: 14px;
}

.sportsbook-game-card,
.sportsbook-coach-game,
.sportsbook-admin-line,
.sportsbook-rating-row {
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(4,10,24,.72);
  border-radius: 12px;
  box-shadow: 0 16px 34px rgba(0,0,0,.20);
}

.sportsbook-game-card {
  padding: 18px;
  display: grid;
  gap: 16px;
}

.sportsbook-game-card.is-locked,
.sportsbook-coach-game.is-locked {
  opacity: .72;
}

.sportsbook-game-head,
.sportsbook-matchup,
.sportsbook-line-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.sportsbook-game-head span,
.sportsbook-line-strip em,
.sportsbook-matchup small,
.sportsbook-coach-game span,
.sportsbook-admin-line span,
.sportsbook-existing-bet {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-style: normal;
}

.sportsbook-game-head strong {
  color: var(--gold);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.sportsbook-matchup {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
}

.sportsbook-matchup > span {
  color: var(--gold);
  font-weight: 900;
  text-transform: uppercase;
}

.sportsbook-matchup div {
  min-height: 76px;
  padding: 14px;
  border-radius: 10px;
  background: rgba(255,255,255,.045);
  display: grid;
  align-content: center;
  gap: 5px;
}

.sportsbook-matchup div:last-child {
  text-align: right;
}

.sportsbook-matchup b,
.sportsbook-line-strip strong,
.sportsbook-coach-game strong,
.sportsbook-admin-line strong,
.sportsbook-rating-row strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.sportsbook-line-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sportsbook-line-strip span {
  padding: 12px;
  border-radius: 10px;
  background: rgba(255,255,255,.045);
  display: grid;
  gap: 4px;
}

.sportsbook-line-strip .sportsbook-line-result,
.schedule-betting-strip .schedule-betting-result {
  border: 1px solid rgba(245,181,27,.42);
  background: linear-gradient(135deg, rgba(245,181,27,.2), rgba(216,25,42,.12));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.sportsbook-line-strip .sportsbook-line-result {
  grid-column: 1 / -1;
}

.sportsbook-coach-card {
  margin-bottom: 22px;
}

.sportsbook-coach-game {
  padding: 14px;
  display: grid;
  gap: 12px;
}

.sportsbook-bet-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.sportsbook-bet-form button,
.sportsbook-ratings-form button {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: .06em;
  cursor: pointer;
}

.sportsbook-bet-form button:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.sportsbook-admin-line {
  padding: 12px;
  display: grid;
  gap: 5px;
}

.sportsbook-rating-row {
  padding: 12px;
  display: grid;
  grid-template-columns: minmax(160px, 1fr) repeat(3, minmax(86px, 120px));
  gap: 10px;
  align-items: center;
}

.sportsbook-rating-row label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.sportsbook-rating-row input {
  min-height: 40px;
  width: 100%;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.70);
  color: #fff;
  padding: 0 10px;
  font: inherit;
  font-weight: 900;
}

.sportsbook-ratings-form {
  display: grid;
  gap: 14px;
}

@media (max-width: 780px) {
  .sportsbook-matchup,
  .sportsbook-line-strip,
  .sportsbook-bet-form,
  .sportsbook-rating-row {
    grid-template-columns: 1fr;
  }

  .sportsbook-matchup div:last-child {
    text-align: left;
  }
}
/* === Schedule sportsbook line strip === */
.schedule-betting-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 10px 14px 12px;
  border-top: 1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(90deg, rgba(215,25,42,.11), rgba(255,255,255,.035), rgba(218,165,32,.08));
}

.schedule-betting-strip span {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(2,7,18,.36);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.schedule-betting-strip em {
  color: rgba(216,222,232,.58);
  font-style: normal;
  font-family: Inter, system-ui, sans-serif;
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

.schedule-betting-strip strong {
  min-width: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(.9rem, 1.3vw, 1.08rem);
  font-weight: 800;
  letter-spacing: .035em;
  line-height: 1;
  text-align: right;
  text-transform: uppercase;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .schedule-betting-strip {
    grid-template-columns: 1fr;
    padding: 9px 12px 11px;
  }
}

/* Global scoreboard ribbon */
:root {
  --rfcl-scoreboard-offset: 0px;
  --rfcl-scoreboard-boot-height: 66px;
}

html.rfcl-scoreboard-prep body::before {
  content: "";
  display: block;
  height: var(--rfcl-scoreboard-boot-height, 66px);
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.18), transparent 38%),
    linear-gradient(180deg, rgba(3, 13, 27, .985), rgba(2, 7, 18, .985));
  border-bottom: 1px solid rgba(215,25,42,.32);
}

.site-header {
  top: var(--rfcl-scoreboard-offset, 0px) !important;
}

.rfcl-scoreboard-shell {
  position: sticky;
  top: 0;
  z-index: 80;
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.18), transparent 38%),
    linear-gradient(180deg, rgba(3, 13, 27, .985), rgba(2, 7, 18, .985));
  border-bottom: 1px solid rgba(215,25,42,.46);
  box-shadow: 0 10px 20px rgba(0,0,0,.28);
}

.rfcl-scoreboard-inner {
  min-height: 66px;
  display: grid;
  grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
  align-items: stretch;
  gap: 8px;
  padding: 5px clamp(10px, 2vw, 22px) 7px;
}

.rfcl-scoreboard-title {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 0 11px 0 0;
  border-right: 1px solid rgba(255,255,255,.12);
}

.rfcl-scoreboard-title span,
.rfcl-scoreboard-game-head span,
.rfcl-scoreboard-line span,
.rfcl-scoreboard-handle,
.rfcl-scoreboard-selects select {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .65px;
}

.rfcl-scoreboard-title span {
  color: rgba(247,251,255,.72);
  font-size: .66rem;
  font-weight: 800;
}

.rfcl-scoreboard-title strong {
  color: var(--text);
  font-size: .86rem;
  white-space: nowrap;
}

.rfcl-scoreboard-controls {
  place-content: center stretch;
}

.rfcl-scoreboard-selects {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

.rfcl-scoreboard-selects.is-week-window {
  grid-template-columns: 1fr;
}

.rfcl-scoreboard-selects select {
  width: 100%;
  min-width: 0;
  height: 29px;
  border: 1px solid rgba(245,181,27,.34);
  border-radius: 999px;
  background: rgba(255,255,255,.075);
  color: #fff;
  padding: 0 27px 0 10px;
  font-size: .69rem;
  font-weight: 800;
  outline: none;
  cursor: pointer;
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--gold) 50%),
    linear-gradient(135deg, var(--gold) 50%, transparent 50%);
  background-position:
    calc(100% - 14px) 12px,
    calc(100% - 9px) 12px;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

.rfcl-scoreboard-selects select:hover,
.rfcl-scoreboard-selects select:focus {
  border-color: rgba(245,181,27,.76);
  background-color: rgba(245,181,27,.10);
}

.rfcl-scoreboard-selects select option {
  color: #061529;
  background: #fff;
}

.rfcl-scoreboard-track {
  min-width: 0;
  display: flex;
  align-items: stretch;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(215,25,42,.64) rgba(255,255,255,.08);
  padding-bottom: 1px;
}

.rfcl-scoreboard-track::-webkit-scrollbar { height: 6px; }
.rfcl-scoreboard-track::-webkit-scrollbar-track { background: rgba(255,255,255,.07); border-radius: 999px; }
.rfcl-scoreboard-track::-webkit-scrollbar-thumb { background: rgba(215,25,42,.72); border-radius: 999px; }

.rfcl-scoreboard-card {
  flex: 0 0 198px;
  max-width: 198px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 10px;
  background:
    radial-gradient(circle at 16% 0%, rgba(245,181,27,.12), transparent 54%),
    rgba(255,255,255,.045);
  overflow: hidden;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.rfcl-scoreboard-card:hover,
.rfcl-scoreboard-card:focus-within {
  transform: none;
  border-color: rgba(245,181,27,.56);
  background:
    radial-gradient(circle at 16% 0%, rgba(245,181,27,.18), transparent 54%),
    rgba(255,255,255,.07);
  box-shadow: inset 0 0 0 1px rgba(245,181,27,.08);
}

.rfcl-scoreboard-card-link {
  display: grid;
  gap: 2px;
  padding: 5px 8px 4px;
  height: 100%;
}

.rfcl-scoreboard-game-head,
.rfcl-scoreboard-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.rfcl-scoreboard-game-head span {
  color: var(--muted);
  font-size: .63rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rfcl-scoreboard-game-head strong {
  color: var(--gold);
  font-size: .67rem;
  white-space: nowrap;
}

.rfcl-scoreboard-team {
  display: grid;
  grid-template-columns: 19px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  min-width: 0;
  padding: 0;
}

.rfcl-scoreboard-team img {
  width: 19px;
  height: 19px;
  object-fit: contain;
}

.rfcl-scoreboard-team span {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 5px;
}

.rfcl-scoreboard-team strong {
  min-width: 0;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .2px;
  white-space: nowrap;
}

.rfcl-scoreboard-team em {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: .56rem;
  font-style: normal;
  font-weight: 800;
}

.rfcl-scoreboard-team b {
  color: #fff;
  font-size: .84rem;
  line-height: 1;
  font-weight: 900;
  min-width: 1.1em;
  text-align: right;
}

.rfcl-scoreboard-line {
  margin-top: 1px;
  padding-top: 3px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.rfcl-scoreboard-line span {
  color: rgba(247,251,255,.82);
  font-size: .59rem;
  font-weight: 800;
  white-space: nowrap;
}

.rfcl-scoreboard-placeholder {
  width: 100%;
  min-height: 48px;
  display: grid;
  place-items: center;
  color: var(--muted);
  border: 1px dashed rgba(255,255,255,.17);
  border-radius: 11px;
  background: rgba(255,255,255,.035);
  font-weight: 800;
}

.rfcl-scoreboard-handle {
  position: absolute;
  right: clamp(10px, 2vw, 22px);
  top: 8px;
  transform: none;
  width: auto;
  min-width: 106px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(245,181,27,.52);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(215,25,42,.98), rgba(118,10,24,.98));
  color: var(--gold);
  box-shadow: 0 8px 18px rgba(0,0,0,.34);
  cursor: pointer;
  padding: 0 14px;
}

.rfcl-scoreboard-handle span {
  display: block;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
}

.rfcl-scoreboard-handle:hover,
.rfcl-scoreboard-handle:focus {
  border-color: rgba(245,181,27,.84);
  background: linear-gradient(180deg, rgba(245,181,27,.98), rgba(169,106,8,.98));
  color: #fff;
  outline: none;
}

.rfcl-scoreboard-shell.is-collapsed {
  min-height: 34px;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, rgba(3, 13, 27, .985), rgba(2, 7, 18, .985));
  box-shadow: 0 6px 14px rgba(0,0,0,.2);
}

.rfcl-scoreboard-shell.is-collapsed .rfcl-scoreboard-handle {
  position: static;
  transform: none;
  min-width: 112px;
  height: 28px;
}

@media (max-width: 900px) {
  .rfcl-scoreboard-inner {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 6px 10px 8px;
  }

  .rfcl-scoreboard-title {
    border-right: 0;
    padding: 0;
  }

  .rfcl-scoreboard-selects {
    max-width: 360px;
  }

  .rfcl-scoreboard-card {
    flex-basis: 194px;
    max-width: 194px;
  }
}

/* === RFCL scoreboard polish + schedule admin repair === */
.schedule-betting-strip {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  padding: 9px 14px 11px !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  background: transparent !important;
}

.schedule-betting-strip span {
  display: inline-flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.schedule-betting-strip em {
  color: rgba(216,222,232,.52) !important;
  font-size: .62rem !important;
  letter-spacing: .1em !important;
}

.schedule-betting-strip strong {
  font-size: .82rem !important;
  letter-spacing: .02em !important;
}

.rfcl-scoreboard-inner {
  grid-template-columns: minmax(104px, 132px) minmax(0, 1fr) !important;
  gap: 6px !important;
  padding-bottom: 5px !important;
}

.rfcl-scoreboard-title {
  padding-right: 9px !important;
}

.rfcl-scoreboard-selects {
  grid-template-columns: 1fr !important;
}

.rfcl-scoreboard-selects select {
  height: 31px !important;
  border-color: rgba(255,255,255,.16) !important;
  background-color: rgba(255,255,255,.055) !important;
  color: rgba(247,251,255,.92) !important;
  font-size: .72rem !important;
}

.rfcl-scoreboard-track {
  scrollbar-width: none !important;
  padding-bottom: 0 !important;
}

.rfcl-scoreboard-track::-webkit-scrollbar {
  display: none !important;
}

.rfcl-scoreboard-game-head span {
  color: rgba(247,251,255,.7) !important;
  font-size: .66rem !important;
}

.rfcl-scoreboard-handle {
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: -8px !important;
  transform: translateX(-50%) !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 14px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 0 0 999px 999px !important;
  background: rgba(2,7,18,.78) !important;
  color: rgba(247,251,255,.58) !important;
  box-shadow: 0 5px 12px rgba(0,0,0,.18) !important;
}

.rfcl-scoreboard-handle span {
  font-size: .6rem !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

.rfcl-scoreboard-handle:hover,
.rfcl-scoreboard-handle:focus {
  border-color: rgba(245,181,27,.38) !important;
  background: rgba(3,13,27,.92) !important;
  color: rgba(245,181,27,.84) !important;
}

.rfcl-scoreboard-shell.is-collapsed {
  min-height: 12px !important;
  place-items: start center !important;
  box-shadow: none !important;
}

.rfcl-scoreboard-shell.is-collapsed .rfcl-scoreboard-handle {
  position: absolute !important;
  bottom: -8px !important;
}

#schedule-admin .admin-score-edit-row {
  grid-template-columns: minmax(0, 1fr) minmax(112px, auto) !important;
  gap: 12px !important;
  align-items: end !important;
}

#schedule-admin .admin-game-title {
  grid-column: 1 / -1 !important;
  padding-bottom: 2px !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}

#schedule-admin .admin-score-fields {
  grid-template-columns: minmax(150px, 1.2fr) minmax(118px, .9fr) repeat(2, minmax(92px, .55fr)) repeat(2, minmax(78px, auto)) !important;
  gap: 10px !important;
}

#schedule-admin .admin-final-switch {
  min-height: 42px !important;
  align-self: end !important;
  justify-self: center !important;
}

#schedule-admin .admin-score-actions {
  align-self: end !important;
  min-width: 112px !important;
}

#schedule-admin .multi-game-toolbar {
  justify-content: flex-end !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

#schedule-admin .multi-game-row {
  grid-template-columns: minmax(170px, 1fr) minmax(170px, 1fr) minmax(145px, .8fr) minmax(118px, .65fr) minmax(80px, auto) minmax(42px, auto) !important;
  align-items: end !important;
}

#schedule-admin .multi-game-neutral {
  min-height: 42px !important;
}

#schedule-admin .multi-game-row-remove,
#schedule-admin .multi-game-stepper {
  height: 40px !important;
}

@media (max-width: 1180px) {
  #schedule-admin .admin-score-edit-row,
  #schedule-admin .multi-game-row {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #schedule-admin .admin-score-actions {
    min-width: 0 !important;
  }
}

@media (max-width: 620px) {
  .schedule-betting-strip {
    flex-direction: column !important;
    gap: 4px !important;
  }

  .rfcl-scoreboard-inner {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-fields {
    grid-template-columns: 1fr !important;
  }
}

/* === Schedule moneyline + admin score editor final layout === */
.schedule-betting-strip {
  flex-wrap: wrap !important;
}

.schedule-betting-strip span + span::before {
  content: "|";
  color: rgba(216,222,232,.32);
  font-weight: 900;
  margin-right: 9px;
}

.schedule-betting-strip .schedule-betting-result {
  padding: 6px 10px !important;
  border: 1px solid rgba(245,181,27,.44) !important;
  border-radius: 999px !important;
  background: rgba(245,181,27,.12) !important;
}

.schedule-betting-strip .schedule-betting-result::before {
  content: "" !important;
  margin: 0 !important;
}

.rfcl-scoreboard-line {
  justify-content: flex-start !important;
  gap: 5px !important;
}

.rfcl-scoreboard-line span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rfcl-scoreboard-line span:last-child {
  flex: 1 1 auto;
}

.rfcl-scoreboard-line .rfcl-scoreboard-result {
  flex: 0 1 auto !important;
  max-width: 92px;
  color: #f8d676;
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .04em;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

#schedule-admin .admin-score-edit-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  align-items: stretch !important;
  padding: 14px !important;
}

#schedule-admin .admin-game-title {
  grid-column: auto !important;
  padding-bottom: 10px !important;
}

#schedule-admin .admin-score-fields {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)) !important;
  gap: 10px !important;
  align-items: end !important;
}

#schedule-admin .admin-score-fields label {
  min-width: 0 !important;
}

#schedule-admin .admin-score-fields textarea {
  width: 100%;
  min-height: 96px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: rgba(2,7,18,.56);
  color: #fff;
  font: inherit;
  font-weight: 700;
  resize: vertical;
}

#schedule-admin .admin-score-wide-field {
  grid-column: 1 / -1;
}

#schedule-admin .admin-final-switch {
  justify-self: stretch !important;
  min-height: 38px !important;
  padding: 5px 8px !important;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 9px;
  background: rgba(2,7,18,.24);
}

#schedule-admin .admin-score-actions {
  display: flex !important;
  justify-content: flex-end !important;
  min-width: 0 !important;
}

#schedule-admin .admin-score-actions button {
  width: auto !important;
  min-width: 104px !important;
}

#schedule-admin .multi-game-row {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) minmax(80px, auto) minmax(42px, auto) !important;
}

#schedule-admin .multi-game-neutral {
  justify-self: stretch !important;
}

/* === Sportsbook wallet + score submit readability === */
.rfcl-scoreboard-line {
  justify-content: space-between !important;
  gap: 8px !important;
}

.rfcl-scoreboard-line span {
  flex: 0 1 auto !important;
}

.rfcl-scoreboard-line span:last-child {
  flex: 0 1 auto !important;
  text-align: right;
}

.rfcl-scoreboard-line .rfcl-scoreboard-result {
  flex: 0 1 auto !important;
  max-width: 82px;
  color: #f8d676 !important;
  font-size: .56rem !important;
  font-weight: 900;
  letter-spacing: .03em;
  line-height: 1;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.schedule-game-links,
.game-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  padding: 11px 15px;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #b8c2cf;
  font-size: .82rem;
  font-weight: 800;
}

.schedule-game-links a,
.game-meta-row a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(215,25,42,.65);
}

.schedule-game-top .is-live,
.rfcl-scoreboard-game-head .is-live,
.game-status.is-live {
  color: #ff4d5e !important;
}

.schedule-game-top .is-live::before,
.rfcl-scoreboard-game-head .is-live::before,
.game-status.is-live::before {
  content: "LIVE ";
}

.rfcl-scoreboard-meta {
  color: rgba(216,222,232,.72);
  font-size: .72rem;
}

.game-page {
  min-height: 100vh;
  padding: 38px clamp(18px, 4vw, 56px) 64px;
  background:
    radial-gradient(circle at top right, rgba(215,25,42,.16), transparent 28rem),
    linear-gradient(180deg, #061529 0%, #020712 100%);
}

.game-hero,
.game-content {
  width: min(1080px, 100%);
  margin: 0 auto;
}

.game-hero {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 4vw, 34px);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(255,255,255,.045);
}

.game-kicker {
  color: #d7192a;
  font-weight: 900;
  text-transform: uppercase;
}

.game-matchup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 18px;
  align-items: center;
}

.game-team {
  display: grid;
  justify-items: center;
  gap: 10px;
  text-align: center;
  color: inherit;
  text-decoration: none;
  border-radius: 12px;
  transition: transform .16s ease, background .16s ease;
}

a.game-team:hover,
a.game-team:focus-visible {
  transform: translateY(-2px);
  background: rgba(255,255,255,.04);
  outline: 1px solid rgba(255,255,255,.12);
}

.game-team img {
  width: 82px;
  height: 82px;
  object-fit: contain;
}

.game-team strong {
  font-family: Oswald, Impact, sans-serif;
  color: #fff;
  text-transform: uppercase;
  font-size: clamp(1.5rem, 4vw, 2.7rem);
  line-height: 1;
}

.game-team span {
  font-family: Oswald, Impact, sans-serif;
  color: #fff;
  font-size: clamp(2.4rem, 8vw, 5rem);
  line-height: .9;
}

.game-status {
  padding: 8px 13px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  color: #d8dee8;
  font-weight: 900;
  text-transform: uppercase;
  white-space: nowrap;
}

.game-content {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.game-panel {
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(2,7,18,.52);
}

.game-panel h2 {
  margin: 0 0 14px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.game-panel p {
  color: #d8dee8;
  line-height: 1.7;
  margin: 0;
}

.game-box-table {
  width: 100%;
  border-collapse: collapse;
  color: #d8dee8;
}

.game-box-table th,
.game-box-table td {
  padding: 10px 8px;
  border-bottom: 1px solid rgba(255,255,255,.1);
  text-align: center;
}

.game-box-table th:first-child {
  text-align: left;
  color: #fff;
}

@media (max-width: 720px) {
  .game-matchup {
    grid-template-columns: 1fr;
  }

  .game-status {
    justify-self: center;
  }
}

.score-submit-card .schedule-team-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
  cursor: default;
}

.score-submit-card .schedule-team-name {
  min-width: 0;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  line-height: 1.12 !important;
}

.score-submit-form,
.score-issue-form,
.sportsbook-stake-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  padding: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.score-submit-form label,
.sportsbook-stake-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.score-submit-form input,
.score-issue-form input,
.sportsbook-stake-form input {
  min-width: 0;
  min-height: 40px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 9px;
  background: rgba(2,7,18,.72);
  color: #fff;
  padding: 0 11px;
  font: inherit;
  font-weight: 800;
}

.score-submit-form button,
.score-issue-form button {
  min-height: 40px;
  align-self: end;
  border: 0;
  border-radius: 9px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  cursor: pointer;
}

.coach-sportsbook-page .portal-top h1 {
  font-size: clamp(2.2rem, 5vw, 4rem);
}

.franchise-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.franchise-link-list span {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: rgba(216,222,232,.78);
  font-size: .76rem;
  font-weight: 800;
}

.franchise-link-list strong {
  color: #fff;
}

.franchise-group-form {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.franchise-member-picker {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.franchise-member-picker > span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.franchise-member-picker > div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 7px;
  max-height: 240px;
  overflow: auto;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.franchise-member-picker label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border-radius: 6px;
  background: rgba(255,255,255,.035);
  color: #fff;
  font-size: .78rem;
  letter-spacing: 0;
  text-transform: none;
}

.franchise-member-picker input {
  width: auto;
  margin: 0;
}

.franchise-season-form {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.franchise-season-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.franchise-season-list {
  display: grid;
  gap: 8px;
}

.franchise-season-row {
  display: grid;
  grid-template-columns: 34px minmax(120px, .7fr) minmax(180px, 1fr) 34px;
  gap: 8px;
  align-items: end;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.franchise-season-number {
  display: grid;
  place-items: center;
  min-height: 38px;
  border-radius: 7px;
  background: rgba(215,25,42,.18);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
}

.franchise-season-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.franchise-season-existing {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.franchise-season-card {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.franchise-season-card summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}

.franchise-season-card summary strong {
  color: var(--muted);
  font-size: .78rem;
}

.franchise-season-card .franchise-season-form,
.franchise-delete-form {
  padding: 0 12px 12px;
}

.franchise-delete-form {
  display: flex;
  justify-content: flex-end;
}

/* === 20260526l context-safe team history layout === */
.team-page .team-schedule-section .section-heading {
  display: grid !important;
  grid-template-columns: minmax(0, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px 18px;
}

.team-page .team-schedule-section .section-heading p {
  min-width: 0;
  white-space: normal;
}

.team-page .team-schedule-section .section-heading h2 {
  min-width: 0;
  overflow-wrap: anywhere;
}

.team-schedule-season-select {
  justify-self: end;
  min-width: 0;
  margin-left: 0 !important;
}

.team-schedule-season-select select {
  max-width: min(220px, 42vw);
}

.team-timeline-list > a,
.team-timeline-list > div {
  min-width: 0;
}

.team-timeline-list strong,
.team-timeline-list em {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 820px) {
  .team-page .team-schedule-section .section-heading {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .team-schedule-season-select {
    justify-self: stretch;
  }

  .team-schedule-season-select select {
    width: 100%;
    max-width: none;
  }
}

@media (max-width: 760px) {
  .franchise-season-meta,
  .franchise-season-row {
    grid-template-columns: 1fr;
  }

  .franchise-season-number {
    min-height: 30px;
  }
}

/* === League history + coach profiles === */
.history-feature-grid,
.coach-profile-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 16px;
  margin-bottom: 16px;
}

.history-champion-card,
.history-awards-card,
.history-notes-card,
.coach-profile-card {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(6,15,31,.72);
  box-shadow: 0 18px 42px rgba(0,0,0,.24);
  padding: 18px;
}

.history-champion-card span,
.coach-profile-card p,
.history-awards-card span {
  color: var(--gold, #f5b51b);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.history-champion-card h2,
.coach-profile-card h2,
.history-awards-card h2,
.history-notes-card h2 {
  margin: 4px 0 10px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.45rem, 3vw, 2.5rem);
  text-transform: uppercase;
}

.history-champion-card p,
.history-notes-card p,
.coach-profile-card span {
  color: rgba(216,222,232,.78);
  font-weight: 700;
}

.history-awards-card {
  display: grid;
  gap: 10px;
}

.history-awards-card div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.history-awards-card strong {
  color: #fff;
  text-align: right;
}

.history-season-list {
  display: grid;
  gap: 9px;
}

.history-season-row {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  color: inherit;
  text-decoration: none;
}

.history-season-row strong {
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.history-season-row span {
  color: #fff;
  font-weight: 900;
}

.history-season-row em {
  color: rgba(216,222,232,.66);
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}

.coach-profile-card {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}

.coach-profile-avatar {
  width: 82px;
  height: 82px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(215,25,42,.8), rgba(245,181,27,.72));
  display: grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 auto;
}

.coach-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.coach-profile-avatar strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 2.6rem;
}

.coach-record-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: -6px 0 16px;
}

.coach-record-strip div {
  padding: 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.04);
}

.coach-record-strip span,
.coach-record-strip em {
  display: block;
  color: rgba(216,222,232,.68);
  font-size: .68rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.coach-record-strip strong {
  display: block;
  margin: 3px 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.55rem;
}

.team-timeline-section {
  width: min(1180px, calc(100% - 32px));
  margin: 18px auto 0;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 45%, rgba(255,255,255,.12));
  border-radius: 8px;
  background: rgba(6,15,31,.72);
}

.team-timeline-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.team-timeline-list > a,
.team-timeline-list > div {
  display: grid;
  grid-template-columns: 92px minmax(0, .75fr) minmax(0, 1.25fr);
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  color: inherit;
  text-decoration: none;
}

.team-timeline-list span {
  color: var(--team-secondary, var(--gold, #f5b51b));
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  text-transform: uppercase;
}

.team-timeline-list strong {
  color: #fff;
  font-weight: 900;
}

.team-timeline-list em {
  color: rgba(216,222,232,.72);
  font-style: normal;
  font-weight: 700;
}

.team-timeline-staff-role {
  display: inline-block;
  margin-right: 4px;
  color: var(--team-secondary, var(--gold, #f5b51b)) !important;
  font-family: Oswald, Impact, sans-serif;
  font-size: .78rem;
  font-weight: 900;
}

.team-timeline-staff-link {
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
}

.team-timeline-staff-link:hover {
  color: var(--team-secondary, var(--gold, #f5b51b)) !important;
}

.team-timeline-divider {
  display: inline-block;
  margin: 0 8px;
  color: rgba(216,222,232,.38) !important;
}

[data-team-staff] a {
  color: inherit;
  font-weight: 900;
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--team-secondary, #f5b51b) 62%, transparent);
}

[data-team-staff] a:hover,
[data-team-staff] a:focus-visible {
  color: var(--team-secondary, var(--gold, #f5b51b));
}

.coach-dropdown .coach-notification:not(.is-read) {
  border-left: 3px solid var(--gold, #f5b51b);
}

.coach-dropdown .coach-notification.is-read {
  opacity: .62;
}

.coach-notification-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: stretch;
}

.coach-dropdown .coach-notification-shell {
  margin-bottom: 6px;
}

.notification-clear-button {
  align-self: stretch;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 7px;
  background: rgba(255,255,255,.06);
  color: rgba(216,222,232,.82);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}

.notification-clear-button:hover,
.notification-clear-button:focus-visible {
  border-color: rgba(245,181,27,.45);
  color: #fff;
}

.coach-account-button {
  position: relative;
}

.coach-account-button.has-unread-notifications {
  box-shadow: 0 0 0 2px rgba(245,181,27,.32), 0 14px 28px rgba(0,0,0,.28);
}

.coach-notification-count {
  position: absolute;
  top: -6px;
  right: -6px;
  display: grid;
  min-width: 21px;
  height: 21px;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--gold, #f5b51b);
  color: #061529;
  font-size: .72rem;
  font-weight: 1000;
  line-height: 1;
}

.dashboard-notification-list {
  display: grid;
  gap: 8px;
}

.dashboard-notification-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: stretch;
}

.dashboard-notification {
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.dashboard-notification:not(.is-read) {
  border-left: 3px solid var(--gold, #f5b51b);
}

.dashboard-notification strong {
  color: #fff;
}

.dashboard-notification span {
  color: rgba(216,222,232,.72);
  font-size: .86rem;
  font-weight: 700;
}

.notification-toast-tray {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1000;
  display: grid;
  gap: 10px;
  width: min(360px, calc(100vw - 32px));
  pointer-events: none;
}

.notification-toast {
  transform: translateY(12px);
  opacity: 0;
  display: grid;
  gap: 5px;
  padding: 13px 14px;
  border: 1px solid rgba(245,181,27,.36);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(16,24,38,.96), rgba(5,10,20,.96));
  box-shadow: 0 18px 34px rgba(0,0,0,.36);
  color: #fff;
  transition: opacity .22s ease, transform .22s ease;
}

.notification-toast.is-visible {
  transform: translateY(0);
  opacity: 1;
}

.notification-toast strong {
  font-family: Oswald, Impact, sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
}

.notification-toast span {
  color: rgba(216,222,232,.82);
  font-size: .86rem;
  font-weight: 700;
}

@media (max-width: 760px) {
  .coach-notification-shell,
  .dashboard-notification-shell {
    grid-template-columns: 1fr;
  }

  .history-feature-grid,
  .coach-profile-grid,
  .history-season-row,
  .coach-record-strip {
    grid-template-columns: 1fr;
  }

  .team-timeline-list > a,
  .team-timeline-list > div {
    grid-template-columns: 1fr;
  }

  .history-season-row em {
    white-space: normal;
  }
}

.dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

/* === 2026-05-22 scoreboard, header, and profile polish === */
.site-header {
  transition: top .28s ease !important;
}

.site-nav a.active,
.site-nav a[aria-current="page"] {
  color: #d7192a !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.site-nav a.active:hover,
.site-nav a[aria-current="page"]:hover {
  color: #d7192a !important;
}

.rfcl-scoreboard-shell {
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.13), transparent 36%),
    linear-gradient(180deg, rgba(3,13,27,.99), rgba(2,7,18,.99)) !important;
  border-bottom-color: rgba(215,25,42,.28) !important;
  transition: height .28s ease, min-height .28s ease, background .2s ease, box-shadow .2s ease !important;
}

.rfcl-scoreboard-inner {
  transition: opacity .2s ease, transform .28s ease !important;
}

.rfcl-scoreboard-card {
  border-color: rgba(255,255,255,.12) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(215,25,42,.09), transparent 52%),
    linear-gradient(180deg, rgba(6,21,41,.88), rgba(2,9,20,.96)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055) !important;
}

.rfcl-scoreboard-card:hover,
.rfcl-scoreboard-card:focus-within {
  border-color: rgba(245,181,27,.42) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(245,181,27,.12), transparent 52%),
    linear-gradient(180deg, rgba(8,28,53,.9), rgba(2,9,20,.98)) !important;
}

.rfcl-scoreboard-team {
  min-height: 22px;
  border-radius: 7px;
  padding: 1px 4px !important;
  transition: background .16s ease, box-shadow .16s ease;
}

.rfcl-scoreboard-team.winner {
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--scoreboard-team-primary, #d7192a) 42%, transparent),
      color-mix(in srgb, var(--scoreboard-team-secondary, #061529) 28%, transparent)) !important;
  box-shadow:
    inset 3px 0 0 var(--scoreboard-team-primary, #d7192a),
    inset 0 0 0 1px color-mix(in srgb, var(--scoreboard-team-secondary, #061529) 46%, rgba(255,255,255,.16));
}

.rfcl-scoreboard-team.winner strong,
.rfcl-scoreboard-team.winner b {
  color: #fff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.45);
}

.rfcl-scoreboard-shell.is-collapsed {
  background:
    radial-gradient(circle at 18% 0%, rgba(215,25,42,.1), transparent 36%),
    linear-gradient(180deg, rgba(3,13,27,.98), rgba(2,7,18,.98)) !important;
}

.coach-login.coach-account-button.is-logged-in {
  border-color: color-mix(in srgb, var(--account-secondary, #061529) 72%, rgba(255,255,255,.18)) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--account-secondary, #061529) 28%, transparent), transparent 70%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--account-primary, #d7192a) 36%, rgba(10,24,50,.92)),
      rgba(3,10,22,.96)) !important;
}

.coach-login.coach-account-button.is-logged-in::before {
  background: linear-gradient(180deg, var(--account-secondary, #061529), var(--account-primary, #d7192a)) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--account-secondary, #061529) 22%, transparent) !important;
}

.coach-login.coach-account-button.is-logged-in:hover {
  border-color: color-mix(in srgb, var(--account-secondary, #061529) 88%, #fff) !important;
}

.team-schedule-section {
  width: min(1180px, calc(100% - 32px));
  margin: 18px auto 0;
  padding: 22px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 32%, rgba(255,255,255,.12));
  border-radius: 16px;
  background:
    radial-gradient(circle at 16% 0%, color-mix(in srgb, var(--team-primary, #d7192a) 18%, transparent), transparent 44%),
    linear-gradient(180deg, rgba(8,34,62,.82), rgba(3,15,28,.94));
  box-shadow: 0 18px 36px rgba(0,0,0,.26);
}

.team-schedule-section .section-heading {
  margin-bottom: 14px;
}

.team-schedule-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 10px;
}

.team-schedule-game {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 62px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.045);
}

.team-schedule-game.is-win {
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--team-primary, #d7192a) 32%, transparent),
      color-mix(in srgb, var(--team-secondary, #061529) 18%, transparent));
  box-shadow: inset 3px 0 0 var(--team-primary, #d7192a);
}

.team-schedule-game.is-loss {
  opacity: .76;
}

.team-schedule-game span,
.team-schedule-empty {
  display: block;
  color: rgba(216,222,232,.72);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.team-schedule-game strong {
  display: block;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .02em;
}

.team-schedule-game > div:last-child {
  text-align: right;
}

.team-schedule-empty {
  grid-column: 1 / -1;
  padding: 18px;
  border: 1px dashed rgba(255,255,255,.15);
  border-radius: 10px;
  text-align: center;
  background: rgba(255,255,255,.035);
}

@media (max-width: 720px) {
  .team-schedule-section {
    width: min(100% - 22px, 1180px);
    padding: 16px;
  }

  .team-schedule-game {
    grid-template-columns: 1fr;
  }

  .team-schedule-game > div:last-child {
    text-align: left;
  }
}

/* === Final admin console polish === */
#schedule-admin .admin-score-game-panel {
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.035) !important;
  box-shadow: none !important;
}

#schedule-admin .admin-score-game-panel[open] {
  border-color: rgba(215,25,42,.32) !important;
  background: rgba(255,255,255,.045) !important;
}

#schedule-admin .admin-score-summary {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(360px, auto) auto;
  gap: 14px;
  align-items: center;
  min-height: 64px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
}

#schedule-admin .admin-score-summary::-webkit-details-marker {
  display: none;
}

#schedule-admin .admin-score-summary::marker {
  content: "";
}

#schedule-admin .admin-score-summary:hover {
  background: rgba(255,255,255,.035);
}

#schedule-admin .admin-score-summary .admin-game-title {
  display: grid !important;
  gap: 4px !important;
  padding: 0 !important;
  border: 0 !important;
}

#schedule-admin .admin-score-summary-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

#schedule-admin .admin-score-summary-meta span,
#schedule-admin .admin-score-summary-meta strong,
#schedule-admin .admin-score-summary-meta em,
#schedule-admin .admin-score-expand-label {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,18,.46);
  color: #d8dee8;
  font-size: .74rem;
  font-weight: 900;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: .06em;
  white-space: nowrap;
}

#schedule-admin .admin-score-summary-meta strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .98rem;
}

#schedule-admin .admin-score-summary-meta em {
  border-color: rgba(215,25,42,.3);
  color: #fff;
  background: rgba(215,25,42,.13);
}

#schedule-admin .admin-score-expand-label {
  min-width: 72px;
  color: #fff;
  background: rgba(255,255,255,.07);
}

#schedule-admin .admin-score-game-panel[open] .admin-score-expand-label {
  font-size: 0;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
}

#schedule-admin .admin-score-game-panel[open] .admin-score-expand-label::before {
  content: "Close";
  font-size: .74rem;
}

#schedule-admin .admin-score-details {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 128px;
  gap: 12px;
  padding: 14px;
  border-top: 1px solid rgba(255,255,255,.10);
  background: rgba(2,7,18,.20);
}

#schedule-admin .admin-score-fields {
  grid-template-columns: repeat(auto-fit, minmax(138px, 1fr)) !important;
  gap: 10px !important;
}

#schedule-admin .admin-score-fields label {
  min-width: 0 !important;
}

#schedule-admin .admin-score-fields input,
#schedule-admin .admin-score-fields textarea,
#schedule-admin .multi-game-row input,
#schedule-admin .multi-game-row select,
.admin-add-team-card input,
.admin-add-team-card select {
  max-width: 100%;
  box-sizing: border-box;
}

#schedule-admin .admin-score-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-content: start !important;
  gap: 8px !important;
}

#schedule-admin .admin-score-actions .admin-link-button,
#schedule-admin .admin-score-actions button {
  width: 100% !important;
  min-height: 40px !important;
  margin: 0 !important;
  text-align: center;
}

#schedule-admin .admin-create-game-card {
  overflow: hidden;
}

#schedule-admin .multi-game-create-form {
  gap: 12px !important;
}

#schedule-admin .multi-game-toolbar {
  justify-content: flex-start !important;
  gap: 8px !important;
}

#schedule-admin .multi-game-list {
  gap: 10px !important;
}

#schedule-admin .multi-game-row {
  grid-template-columns: 64px minmax(170px, 1fr) minmax(170px, 1fr) minmax(128px, .7fr) minmax(110px, .55fr) minmax(150px, .8fr) minmax(150px, .8fr) auto auto !important;
  gap: 10px !important;
  padding: 12px !important;
  align-items: end !important;
}

#schedule-admin .multi-game-row-number {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
}

#schedule-admin .multi-game-neutral {
  justify-self: center !important;
}

#schedule-admin .create-games-submit {
  justify-self: end !important;
}

.admin-add-team-card {
  overflow: hidden;
}

.admin-add-team-card .add-team-form {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px !important;
  align-items: end !important;
}

.admin-add-team-card .add-team-form label,
.admin-add-team-card .add-team-form button {
  min-width: 0 !important;
}

.admin-add-team-card .add-team-form input,
.admin-add-team-card .add-team-form select {
  width: 100% !important;
  min-width: 0 !important;
}

.admin-add-team-card .add-team-form input[type="file"] {
  min-height: 44px;
  padding: 7px;
}

.admin-add-team-card .add-team-form input[type="file"]::file-selector-button {
  border: 0;
  border-radius: 8px;
  padding: 7px 9px;
  margin-right: 8px;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.admin-add-team-card .add-team-form button {
  justify-self: end;
  min-width: 136px;
}

.standings-admin-conferences {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

.standings-admin-card {
  min-width: 0;
  overflow: hidden;
}

.standings-admin-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.standings-admin-title {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 11px;
  align-items: center;
}

.standings-admin-title em {
  display: inline-block;
  margin-top: 4px;
  color: var(--gold);
  font-size: .78rem;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.standings-admin-conference-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.standings-admin-card-head p {
  margin: 0 0 3px;
  color: var(--rfcl-red, #d7192a);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.standings-admin-card-head h2 {
  margin: 0;
}

.standings-admin-card-head > strong {
  flex: 0 0 auto;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: #fff;
  font-size: .75rem;
  text-transform: uppercase;
}

.standings-admin-add-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  margin: 12px 0;
}

.standings-admin-conference-form {
  grid-template-columns: minmax(180px, 1.2fr) minmax(110px, .55fr) minmax(170px, .9fr) auto;
}

.standings-admin-add-form label {
  min-width: 0;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.standings-admin-add-form input,
.standings-admin-add-form select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 0 11px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(2,7,18,.72);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.standings-admin-add-form input[type="file"] {
  padding: 7px;
}

.standings-admin-add-form input[type="file"]::file-selector-button {
  margin-right: 8px;
  border: 0;
  border-radius: 8px;
  padding: 7px 9px;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.conference-count-actions,
.standings-admin-remove-conference {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 10px 0 12px;
}

.standings-admin-add-form button,
.standings-admin-team-row button,
.conference-count-actions button,
.standings-admin-remove-conference button {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  padding: 0 13px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .06em;
  cursor: pointer;
}

.standings-admin-remove-conference button {
  background: rgba(255,255,255,.08);
}

.standings-admin-remove-conference button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.admin-submitted-team-stats {
  display: grid;
  gap: 12px;
}

.admin-submitted-team-stat-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(2,7,18,.38);
}

.admin-submitted-team-stat-card > div:first-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
}

.admin-submitted-team-stat-card strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.08rem;
  text-transform: uppercase;
}

.admin-submitted-team-stat-card span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 800;
}

.admin-submitted-team-stat-card dl {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
  margin: 0;
}

.admin-submitted-team-stat-card dl div {
  min-width: 0;
  padding: 9px;
  border-radius: 10px;
  background: rgba(255,255,255,.06);
}

.admin-submitted-team-stat-card dt {
  color: var(--muted);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-submitted-team-stat-card dd {
  margin: 3px 0 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.05rem;
  font-weight: 900;
}

.standings-admin-team-list {
  display: grid;
  gap: 8px;
  max-height: 560px;
  overflow: auto;
  padding-right: 2px;
}

.standings-admin-team-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  background: rgba(2,7,18,.34);
}

.standings-admin-team-row span {
  min-width: 0;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.standings-admin-team-row img {
  width: 34px !important;
  height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

.standings-admin-team-row strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .98rem;
  text-transform: uppercase;
}

#draft-admin .admin-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: start;
}

#draft-admin .admin-week-control-card {
  grid-column: span 6;
}

#draft-admin .sportsbook-bets-card,
#draft-admin .draft-admin-pick-list {
  max-height: 560px;
}

#draft-admin .admin-status-list {
  gap: 10px;
}

#draft-admin .admin-vote-status {
  min-width: 0;
  min-height: 48px;
  background: rgba(2,7,18,.36);
}

#draft-admin .admin-vote-status span,
#draft-admin .admin-vote-status strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

#draft-admin .admin-inline-form,
#draft-admin .admin-week-actions {
  flex-wrap: wrap;
}

#draft-admin .draft-prospect-editor {
  max-height: 420px;
  border-radius: 12px;
}

#draft-admin .draft-prospect-editor table {
  min-width: 560px;
}

#draft-admin .draft-prospect-editor th,
#draft-admin .draft-prospect-editor td {
  padding: 6px;
}

#draft-admin .draft-prospect-editor input {
  min-height: 34px;
}

.draft-page {
  background:
    linear-gradient(180deg, rgba(2,7,18,.10), rgba(2,7,18,.72)),
    radial-gradient(circle at 16% 0%, rgba(215,25,42,.13), transparent 26rem),
    linear-gradient(180deg, #061529 0%, #020712 100%) !important;
}

.draft-hero {
  min-height: 132px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.draft-hero h1 {
  font-size: clamp(2rem, 4.7vw, 4.2rem) !important;
  line-height: .95;
}

.draft-clock,
.draft-current,
.draft-prospects-panel,
.draft-pick-card {
  border-radius: 10px !important;
  background: rgba(3,13,25,.72) !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
}

.draft-board-grid {
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important;
}

.draft-pick-card {
  min-height: 104px !important;
  padding: 11px !important;
}

.draft-pick-card strong {
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  line-height: 1.05;
}

.draft-prospect {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px 10px;
}

.draft-prospect strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-prospect span {
  grid-column: 1 / -1;
  font-size: .75rem;
}

@media (max-width: 1180px) {
  #schedule-admin .admin-score-summary,
  #schedule-admin .admin-score-details,
  #schedule-admin .multi-game-row,
  .standings-admin-add-form {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-summary-meta {
    justify-content: flex-start;
  }

  #schedule-admin .admin-score-expand-label,
  #schedule-admin .create-games-submit,
  .admin-add-team-card .add-team-form button {
    justify-self: stretch !important;
  }

  #draft-admin .admin-week-control-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .admin-add-team-card .add-team-form,
  .standings-admin-conferences {
    grid-template-columns: 1fr;
  }

  .standings-admin-card-head,
  .standings-admin-team-row {
    align-items: stretch;
  }
}

/* === Team page schedule and schedule-admin alignment cleanup === */
.team-page .team-schedule-section {
  width: min(1180px, calc(100% - 32px));
  margin-top: 22px;
  padding: 0;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--team-secondary, #d7192a) 42%, rgba(255,255,255,.14));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--team-primary, #061529) 68%, rgba(6,24,44,.94)), rgba(2,7,18,.96)),
    radial-gradient(circle at top right, color-mix(in srgb, var(--team-secondary, #d7192a) 16%, transparent), transparent 22rem);
  box-shadow: 0 18px 38px rgba(0,0,0,.28);
}

.team-page .team-schedule-section .section-heading {
  margin: 0;
  padding: 22px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--team-primary, #061529) 78%, transparent), transparent),
    rgba(255,255,255,.035);
}

.team-page .team-schedule-section .section-heading p {
  margin: 0;
  color: var(--team-secondary, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-size: .9rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.team-page .team-schedule-section .section-heading h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2.4rem, 5.4vw, 4.8rem);
  line-height: .9;
  letter-spacing: 0;
}

.team-page .team-schedule-section .section-heading h2::after {
  display: none;
}

.team-page .team-schedule-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
}

.team-schedule-season-select {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  color: rgba(216,222,232,.76);
  font: 800 .78rem/1 var(--font-body, Inter, sans-serif);
  text-transform: uppercase;
}

.team-schedule-season-select select {
  min-width: 124px;
  height: 38px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 42%, rgba(255,255,255,.18));
  border-radius: 8px;
  background: rgba(6,12,24,.76);
  color: #fff;
  padding: 0 34px 0 12px;
  font: 800 .86rem/1 var(--font-body, Inter, sans-serif);
}

.team-page .team-schedule-game {
  display: grid;
  grid-template-columns: 112px minmax(0, 1.35fr) minmax(190px, .7fr);
  align-items: center;
  gap: 14px;
  min-height: 82px;
  padding: 13px 16px;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.09);
  border-radius: 0;
  background: rgba(255,255,255,.025);
  color: inherit;
  text-decoration: none;
  box-shadow: inset 0 0 0 1px transparent;
  transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.team-page .team-schedule-game:last-child {
  border-bottom: 0;
}

.team-page .team-schedule-game:hover,
.team-page .team-schedule-game:focus-visible {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--team-secondary, #d7192a) 12%, transparent), rgba(255,255,255,.035));
  box-shadow: inset 4px 0 0 var(--team-secondary, #d7192a);
  outline: 0;
}

.team-page .team-schedule-game.is-win {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--team-primary, #061529) 40%, transparent), rgba(255,255,255,.025));
  box-shadow: inset 4px 0 0 var(--team-secondary, #d7192a);
}

.team-page .team-schedule-game.is-loss {
  opacity: .82;
}

.team-page .team-schedule-week,
.team-page .team-schedule-result,
.team-page .team-schedule-extra {
  min-width: 0;
}

.team-page .team-schedule-week {
  display: grid;
  gap: 7px;
  justify-items: start;
}

.team-page .team-schedule-week span,
.team-page .team-schedule-opponent span,
.team-page .team-schedule-result span,
.team-page .team-schedule-extra span,
.team-page .team-schedule-empty {
  color: rgba(216,222,232,.72);
  font-size: .68rem;
  font-weight: 900;
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.team-page .team-schedule-week b {
  min-width: 46px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--team-secondary, #d7192a) 46%, rgba(255,255,255,.12));
  background: color-mix(in srgb, var(--team-secondary, #d7192a) 14%, transparent);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .88rem;
  font-weight: 900;
  text-transform: uppercase;
}

.team-page .team-schedule-opponent {
  min-width: 0;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.team-page .team-schedule-opponent img,
.team-page .team-schedule-opponent i {
  width: 42px;
  height: 42px;
  display: block;
  object-fit: contain;
  border-radius: 0;
  filter: drop-shadow(0 8px 12px rgba(0,0,0,.28));
}

.team-page .team-schedule-opponent i {
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(135deg, var(--team-primary, #061529), var(--team-secondary, #d7192a));
}

.team-page .team-schedule-opponent strong,
.team-page .team-schedule-result strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.team-page .team-schedule-opponent strong {
  display: block;
  white-space: nowrap;
  font-size: clamp(1.05rem, 1.7vw, 1.35rem);
}

.team-page .team-schedule-result {
  display: grid;
  gap: 6px;
  justify-items: end;
  text-align: right;
}

.team-page .team-schedule-result strong {
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
}

.team-page .team-schedule-extra {
  grid-column: 2 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: -4px;
}

.team-page .team-schedule-extra span {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
}

.team-page .team-schedule-extra strong {
  color: #fff;
  font-size: .72rem;
}

.team-page .team-schedule-empty {
  margin: 16px;
  border-color: color-mix(in srgb, var(--team-secondary, #d7192a) 32%, rgba(255,255,255,.14));
}

#schedule-admin .admin-score-summary {
  grid-template-columns: minmax(0, 1fr) minmax(0, auto) auto !important;
}

#schedule-admin .admin-game-title,
#schedule-admin .admin-game-title strong,
#schedule-admin .admin-score-summary-meta,
#schedule-admin .admin-score-summary-meta span,
#schedule-admin .admin-score-summary-meta strong,
#schedule-admin .admin-score-summary-meta em,
#schedule-admin .admin-score-expand-label {
  min-width: 0 !important;
}

#schedule-admin .admin-game-title strong {
  max-width: 100%;
  overflow-wrap: anywhere;
  line-height: 1.05 !important;
}

#schedule-admin .admin-score-summary-meta span,
#schedule-admin .admin-score-summary-meta strong,
#schedule-admin .admin-score-summary-meta em {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
}

#schedule-admin .admin-score-fields {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
}

#schedule-admin .admin-score-subheading {
  grid-column: 1 / -1;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,.10);
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#schedule-admin .admin-score-fields label,
#schedule-admin .multi-game-row label,
.admin-add-team-card .add-team-form label {
  min-width: 0 !important;
  line-height: 1.15 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

#schedule-admin .admin-score-fields input,
#schedule-admin .admin-score-fields textarea,
#schedule-admin .multi-game-row input,
#schedule-admin .multi-game-row select {
  text-align: left !important;
  overflow: hidden;
  text-overflow: ellipsis;
}

#schedule-admin .admin-score-fields input[type="number"] {
  text-align: center !important;
}

#schedule-admin .admin-final-switch {
  align-self: stretch !important;
  justify-self: stretch !important;
  min-height: 54px !important;
  padding: 7px 6px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
}

#schedule-admin .switch-label {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  line-height: 1.1;
}

#schedule-admin .multi-game-row {
  grid-template-columns: 64px repeat(12, minmax(0, 1fr)) auto !important;
}

#schedule-admin .multi-game-row-number {
  grid-column: span 1;
  white-space: nowrap;
}

#schedule-admin .multi-game-row label:nth-of-type(1),
#schedule-admin .multi-game-row label:nth-of-type(2) {
  grid-column: span 3;
}

#schedule-admin .multi-game-row label:nth-of-type(3),
#schedule-admin .multi-game-row label:nth-of-type(4) {
  grid-column: span 2;
}

#schedule-admin .multi-game-row label:nth-of-type(5),
#schedule-admin .multi-game-row label:nth-of-type(6) {
  grid-column: span 3;
}

#schedule-admin .multi-game-row .multi-game-neutral,
#schedule-admin .multi-game-row-remove {
  grid-column: span 1;
  align-self: stretch !important;
}

#schedule-admin .multi-game-row-remove {
  min-width: 42px !important;
  height: auto !important;
}

@media (max-width: 980px) {
  .team-page .team-schedule-game {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .team-page .team-schedule-result {
    grid-column: 2;
    justify-items: start;
    text-align: left;
  }

  .team-page .team-schedule-extra {
    grid-column: 1 / -1;
    margin-top: 0;
  }
}

@media (max-width: 680px) {
  .team-page .team-schedule-section {
    width: min(100% - 22px, 1180px);
  }

  .team-page .team-schedule-section .section-heading {
    display: grid;
    align-items: start;
    padding: 16px;
  }

  .team-page .team-schedule-game {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 14px;
  }

  .team-page .team-schedule-week {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .team-page .team-schedule-result,
  .team-page .team-schedule-extra {
    grid-column: auto;
  }

  .team-page .team-schedule-opponent strong {
    white-space: normal;
  }

  #schedule-admin .admin-score-summary {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-summary-meta {
    justify-content: flex-start;
  }
}

/* === Draft prospect cards + mobile header/footer polish === */
.draft-prospects-panel > div,
.coach-draft-prospects {
  display: grid;
  gap: 12px;
}

.draft-prospects-panel > div {
  grid-template-columns: 1fr;
}

.draft-prospect {
  position: relative;
  display: grid !important;
  grid-template-rows: minmax(150px, 1fr) auto !important;
  gap: 0 !important;
  overflow: hidden;
  min-height: 238px;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)),
    rgba(2,7,18,.54);
  box-shadow: 0 16px 30px rgba(0,0,0,.22);
  text-decoration: none;
}

.draft-prospect-photo,
.draft-prospect-headshot {
  position: relative;
  min-height: 150px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 16%, rgba(245,181,27,.20), transparent 38%),
    linear-gradient(135deg, rgba(215,25,42,.34), rgba(6,21,41,.94));
}

.draft-prospect-photo::before,
.draft-prospect-headshot::before {
  content: attr(data-initials);
  color: rgba(255,255,255,.92);
  font-family: Oswald, Impact, sans-serif;
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-shadow: 0 8px 18px rgba(0,0,0,.38);
}

.draft-prospect-photo img,
.draft-prospect-headshot img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.draft-prospect-info,
.draft-prospect-edit-meta {
  min-width: 0;
  padding: 12px;
  background: linear-gradient(180deg, rgba(2,7,18,.18), rgba(2,7,18,.58));
}

.draft-prospect-info strong,
.draft-prospect-edit-meta strong {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.08rem;
  line-height: 1;
  text-transform: uppercase;
}

.draft-prospect-info span,
.draft-prospect-edit-meta span {
  display: block;
  margin-top: 6px;
  color: rgba(216,222,232,.76);
  font-size: .72rem;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.draft-prospect.is-picked {
  opacity: .48;
  text-decoration: none !important;
  filter: grayscale(.7);
}

.draft-prospect-editor {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 14px;
  max-height: 680px !important;
  padding: 12px;
  overflow: auto;
  border-radius: 14px !important;
}

.draft-prospect-editor table {
  display: none !important;
}

.draft-prospect-edit-card {
  display: grid;
  grid-template-rows: 170px auto auto;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(2,7,18,.52);
  box-shadow: 0 16px 30px rgba(0,0,0,.18);
}

.draft-prospect-edit-fields {
  display: grid;
  grid-template-columns: 1fr 74px;
  gap: 9px;
  padding: 12px;
}

.draft-prospect-edit-fields label {
  min-width: 0;
  display: grid;
  gap: 5px;
  color: rgba(216,222,232,.72);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.draft-prospect-edit-fields input {
  width: 100%;
  min-width: 0;
  min-height: 38px;
  padding: 0 9px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(2,7,18,.72);
  color: #fff;
  font: inherit;
  font-weight: 800;
}

.draft-prospect-edit-fields label:nth-child(3),
.draft-prospect-image-field {
  grid-column: 1 / -1;
}

.draft-prospect-edit-fields label:nth-child(4) {
  grid-column: 2;
  grid-row: 1;
}

.coach-draft-prospects {
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
}

.coach-draft-prospects h2,
.draft-prospects-panel h2 {
  grid-column: 1 / -1;
}

.draft-prospects-panel:not(.coach-draft-prospects) .draft-prospect {
  min-height: 220px;
}

@media (max-width: 900px) {
  .site-header {
    grid-template-columns: auto 1fr auto !important;
    gap: 10px !important;
    padding-inline: 14px !important;
  }

  .menu-button {
    grid-column: 3;
    justify-self: end;
  }

  .coach-login,
  .coach-menu {
    display: inline-flex !important;
    grid-column: 2;
    justify-self: end;
  }

  .coach-login {
    min-height: 38px;
    max-width: 136px;
    padding: 0 10px !important;
    align-items: center;
    justify-content: center;
    font-size: .78rem !important;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .coach-login.coach-account-button {
    width: auto !important;
    min-width: 112px;
    max-width: 150px;
    padding: 7px 10px 7px 28px !important;
  }

  .coach-login.coach-account-button strong {
    max-width: 90px;
  }

  .site-header .brand span {
    display: none;
  }

  .site-nav {
    left: auto !important;
    right: 14px !important;
    top: calc(100% + 8px) !important;
    width: min(292px, calc(100vw - 28px));
    align-items: stretch;
    text-align: right;
    box-shadow: 0 18px 40px rgba(0,0,0,.36);
  }

  .site-nav a {
    justify-content: flex-end;
    text-align: right;
  }

  .coach-dropdown {
    right: 0 !important;
    left: auto !important;
    width: min(310px, calc(100vw - 28px)) !important;
  }

  .schedule-hero {
    text-align: center;
  }

  .schedule-controls {
    justify-items: center;
  }

  .schedule-controls label {
    width: min(100%, 300px);
    text-align: center;
  }

  .schedule-controls select {
    min-height: 40px !important;
    padding: 0 38px 0 12px !important;
    text-align: center;
    font-size: .88rem !important;
  }
}

@media (max-width: 620px) {
  .brand span {
    display: none !important;
  }

  .brand img,
  .brand-logo {
    width: 58px !important;
    height: 58px !important;
  }

  .coach-login {
    max-width: 118px;
    font-size: .72rem !important;
  }

  .site-footer {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 26px 18px !important;
    text-align: center;
  }

  .site-footer > div {
    display: grid;
    justify-items: center;
    gap: 10px;
  }

  .site-footer img,
  .site-footer img.footer-logo-wide {
    float: none !important;
    margin: 0 !important;
    width: min(220px, 76vw) !important;
    height: auto !important;
    max-height: 110px !important;
    border-radius: 0 !important;
  }

  .site-footer p {
    margin: 0 auto;
    max-width: 32rem;
  }

  .site-footer nav {
    justify-items: center;
    gap: 8px;
  }

  .site-footer nav a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}

/* === 20260524 final schedule/admin overrides === */
.schedule-team-row {
  grid-template-columns: 46px minmax(0, 1fr) auto !important;
  gap: 10px !important;
}

.schedule-team-row .schedule-team-name {
  display: flex !important;
  align-items: baseline !important;
  gap: 7px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.schedule-team-row .schedule-team-name > span:last-child {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.schedule-team-rank {
  flex: 0 0 auto !important;
  display: inline !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--gold, #f5b51b) !important;
  font: 900 .68em/1 Oswald, Impact, sans-serif !important;
  letter-spacing: .02em !important;
  text-decoration: none !important;
  transform: translateY(-1px);
}

.schedule-record {
  min-width: 50px !important;
  white-space: nowrap !important;
}

#schedule-admin .admin-schedule-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: start !important;
}

#schedule-admin .admin-schedule-grid > .admin-card:nth-child(3),
#schedule-admin .admin-live-score-card,
#schedule-admin .admin-create-game-card {
  grid-column: 1 / -1 !important;
}

#schedule-admin .admin-score-edit-form,
#schedule-admin .multi-game-create-form,
#schedule-admin .admin-score-edit-list,
#schedule-admin .multi-game-list {
  display: grid !important;
  gap: 14px !important;
}

#schedule-admin .admin-score-game-panel,
#schedule-admin .multi-game-row {
  border-radius: 8px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.052), rgba(255,255,255,.024)),
    rgba(2,7,18,.50) !important;
}

#schedule-admin .admin-score-game-panel[open] {
  border-color: rgba(245,181,27,.30) !important;
  box-shadow: inset 3px 0 0 rgba(245,181,27,.72) !important;
}

#schedule-admin .admin-score-summary {
  grid-template-columns: minmax(240px, 1fr) minmax(0, auto) 78px !important;
  min-height: 58px !important;
  gap: 12px !important;
  padding: 10px 12px !important;
}

#schedule-admin .admin-score-summary .admin-game-title strong {
  color: #fff !important;
  font-size: clamp(1rem, 1.4vw, 1.22rem) !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
}

#schedule-admin .admin-score-summary-meta {
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 6px !important;
}

#schedule-admin .admin-score-summary-meta span,
#schedule-admin .admin-score-summary-meta strong,
#schedule-admin .admin-score-summary-meta em,
#schedule-admin .admin-score-expand-label {
  min-height: 28px !important;
  max-width: none !important;
  padding: 0 9px !important;
  border-radius: 7px !important;
  font-size: .68rem !important;
  letter-spacing: .05em !important;
}

#schedule-admin .admin-score-expand-label {
  min-width: 68px !important;
  border-color: rgba(245,181,27,.26) !important;
  color: var(--gold, #f5b51b) !important;
  background: rgba(245,181,27,.08) !important;
}

#schedule-admin .admin-score-details {
  grid-template-columns: minmax(0, 1fr) minmax(126px, .16fr) !important;
  gap: 14px !important;
  padding: 14px !important;
}

#schedule-admin .admin-score-fields {
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

#schedule-admin .admin-score-fields label {
  grid-column: span 3;
  display: grid !important;
  gap: 6px !important;
  min-height: 0 !important;
}

#schedule-admin .admin-score-fields label:nth-child(1),
#schedule-admin .admin-score-fields label:nth-child(2),
#schedule-admin .admin-score-fields label:nth-child(7),
#schedule-admin .admin-score-fields label:nth-child(8),
#schedule-admin .admin-score-fields label:nth-child(9),
#schedule-admin .admin-score-fields label:nth-last-child(2) {
  grid-column: span 4;
}

#schedule-admin .admin-score-fields .admin-final-switch {
  grid-column: span 2 !important;
  min-height: 44px !important;
}

#schedule-admin .admin-score-wide-field {
  grid-column: 1 / -1 !important;
}

#schedule-admin .admin-score-fields input,
#schedule-admin .admin-score-fields textarea,
#schedule-admin .multi-game-row input,
#schedule-admin .multi-game-row select {
  min-width: 0 !important;
  min-height: 38px !important;
  border-radius: 8px !important;
}

#schedule-admin .admin-score-fields textarea {
  min-height: 112px !important;
  padding: 10px !important;
}

#schedule-admin .admin-score-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

#schedule-admin .admin-score-bulk-actions,
#schedule-admin .create-games-submit {
  justify-self: end !important;
}

#schedule-admin .multi-game-toolbar {
  justify-content: flex-end !important;
}

#schedule-admin .multi-game-row {
  grid-template-columns: 72px repeat(12, minmax(0, 1fr)) 44px !important;
  gap: 10px !important;
  align-items: end !important;
  padding: 14px !important;
}

#schedule-admin .multi-game-row-number {
  grid-column: span 1 !important;
  min-height: 38px !important;
  border-radius: 8px !important;
}

#schedule-admin .multi-game-row label:nth-of-type(1),
#schedule-admin .multi-game-row label:nth-of-type(2) {
  grid-column: span 3 !important;
}

#schedule-admin .multi-game-row label:nth-of-type(3),
#schedule-admin .multi-game-row label:nth-of-type(4) {
  grid-column: span 2 !important;
}

#schedule-admin .multi-game-row label:nth-of-type(5),
#schedule-admin .multi-game-row label:nth-of-type(6) {
  grid-column: span 3 !important;
}

#schedule-admin .multi-game-row .multi-game-neutral,
#schedule-admin .multi-game-row-remove {
  grid-column: span 1 !important;
}

#schedule-admin .multi-game-row-remove {
  min-width: 42px !important;
  min-height: 38px !important;
  height: auto !important;
}

@media (max-width: 1180px) {
  #schedule-admin .admin-schedule-grid,
  #schedule-admin .admin-score-summary,
  #schedule-admin .admin-score-details {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-summary-meta {
    justify-content: flex-start !important;
  }
}

@media (max-width: 860px) {
  #schedule-admin .admin-score-fields,
  #schedule-admin .multi-game-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #schedule-admin .admin-score-fields label,
  #schedule-admin .admin-score-fields label:nth-child(1),
  #schedule-admin .admin-score-fields label:nth-child(2),
  #schedule-admin .admin-score-fields label:nth-child(7),
  #schedule-admin .admin-score-fields label:nth-child(8),
  #schedule-admin .admin-score-fields label:nth-child(9),
  #schedule-admin .admin-score-fields label:nth-last-child(2),
  #schedule-admin .admin-score-fields .admin-final-switch,
  #schedule-admin .multi-game-row-number,
  #schedule-admin .multi-game-row label:nth-of-type(1),
  #schedule-admin .multi-game-row label:nth-of-type(2),
  #schedule-admin .multi-game-row label:nth-of-type(3),
  #schedule-admin .multi-game-row label:nth-of-type(4),
  #schedule-admin .multi-game-row label:nth-of-type(5),
  #schedule-admin .multi-game-row label:nth-of-type(6),
  #schedule-admin .multi-game-row .multi-game-neutral,
  #schedule-admin .multi-game-row-remove {
    grid-column: span 1 !important;
  }
}

@media (max-width: 620px) {
  .schedule-team-row {
    grid-template-columns: 38px minmax(0, 1fr) auto !important;
  }

  .schedule-record {
    grid-column: 2 !important;
  }

  #schedule-admin .admin-score-fields,
  #schedule-admin .multi-game-row {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-score-fields label,
  #schedule-admin .admin-score-fields .admin-final-switch,
  #schedule-admin .multi-game-row-number,
  #schedule-admin .multi-game-row label,
  #schedule-admin .multi-game-row .multi-game-neutral,
  #schedule-admin .multi-game-row-remove {
    grid-column: 1 / -1 !important;
  }
}

/* === 20260524b Schedule/admin overlap fixes === */
.schedule-team-rank {
  display: inline-block !important;
  flex: 0 0 auto !important;
  min-width: auto !important;
  padding: 0 !important;
  margin-right: 1px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--gold, #f5b51b) !important;
  font-family: Oswald, Impact, sans-serif !important;
  font-size: clamp(.84rem, 1.15vw, 1rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .01em !important;
  transform: none !important;
}

.schedule-team-row .schedule-team-name {
  align-items: center !important;
  gap: 5px !important;
}

#schedule-admin,
#schedule-admin * {
  min-width: 0;
}

#schedule-admin .admin-schedule-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

#schedule-admin .admin-schedule-grid > .admin-card:nth-child(3),
#schedule-admin .admin-schedule-grid > .admin-card:nth-child(4),
#schedule-admin .admin-live-score-card,
#schedule-admin .admin-create-game-card {
  grid-column: 1 / -1 !important;
}

#schedule-admin .admin-score-edit-list,
#schedule-admin .multi-game-list {
  gap: 10px !important;
}

#schedule-admin .admin-score-game-panel,
#schedule-admin .multi-game-row {
  overflow: hidden !important;
  border-radius: 8px !important;
}

#schedule-admin .admin-score-summary {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas:
    "title action"
    "meta meta" !important;
  align-items: center !important;
  gap: 8px 12px !important;
  padding: 11px 12px !important;
}

#schedule-admin .admin-score-summary .admin-game-title {
  grid-area: title !important;
  text-align: left !important;
}

#schedule-admin .admin-score-summary .admin-game-title strong {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  text-align: left !important;
}

#schedule-admin .admin-score-summary-meta {
  grid-area: meta !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 6px !important;
  text-align: left !important;
}

#schedule-admin .admin-score-summary-meta span,
#schedule-admin .admin-score-summary-meta strong,
#schedule-admin .admin-score-summary-meta em {
  max-width: 100% !important;
  min-height: 26px !important;
  padding: 0 8px !important;
  text-align: left !important;
}

#schedule-admin .admin-score-expand-label {
  grid-area: action !important;
  justify-self: end !important;
  min-width: 62px !important;
  min-height: 30px !important;
}

#schedule-admin .admin-score-details {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  padding: 12px !important;
}

#schedule-admin .admin-score-fields {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr)) !important;
  gap: 10px !important;
  align-items: start !important;
}

#schedule-admin .admin-score-fields label,
#schedule-admin .admin-score-fields label:nth-child(1),
#schedule-admin .admin-score-fields label:nth-child(2),
#schedule-admin .admin-score-fields label:nth-child(7),
#schedule-admin .admin-score-fields label:nth-child(8),
#schedule-admin .admin-score-fields label:nth-child(9),
#schedule-admin .admin-score-fields label:nth-last-child(2),
#schedule-admin .admin-score-fields .admin-final-switch {
  grid-column: auto !important;
  text-align: left !important;
}

#schedule-admin .admin-score-fields label {
  display: grid !important;
  gap: 6px !important;
  align-content: start !important;
}

#schedule-admin .admin-score-fields .admin-score-wide-field,
#schedule-admin .admin-score-fields label.admin-score-wide-field {
  grid-column: 1 / -1 !important;
}

#schedule-admin .admin-score-fields input,
#schedule-admin .admin-score-fields textarea,
#schedule-admin .multi-game-row input,
#schedule-admin .multi-game-row select {
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
}

#schedule-admin .admin-score-fields input[type="number"] {
  text-align: left !important;
}

#schedule-admin .admin-final-switch,
#schedule-admin .multi-game-neutral {
  justify-content: flex-start !important;
  justify-items: start !important;
  text-align: left !important;
}

#schedule-admin .switch-label {
  text-align: left !important;
}

#schedule-admin .admin-score-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

#schedule-admin .admin-score-actions .admin-link-button,
#schedule-admin .admin-score-actions button {
  width: auto !important;
  min-width: 110px !important;
}

#schedule-admin .multi-game-toolbar {
  justify-content: flex-start !important;
}

#schedule-admin .multi-game-row {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) auto !important;
  gap: 10px !important;
  align-items: end !important;
  padding: 12px !important;
}

#schedule-admin .multi-game-row-number {
  grid-column: 1 / -1 !important;
  justify-self: start !important;
  width: auto !important;
  min-height: 30px !important;
  padding: 0 10px !important;
}

#schedule-admin .multi-game-row label,
#schedule-admin .multi-game-row label:nth-of-type(1),
#schedule-admin .multi-game-row label:nth-of-type(2),
#schedule-admin .multi-game-row label:nth-of-type(3),
#schedule-admin .multi-game-row label:nth-of-type(4),
#schedule-admin .multi-game-row label:nth-of-type(5),
#schedule-admin .multi-game-row label:nth-of-type(6),
#schedule-admin .multi-game-row .multi-game-neutral {
  grid-column: auto !important;
  text-align: left !important;
}

#schedule-admin .multi-game-row-remove {
  grid-column: auto !important;
  align-self: end !important;
  width: 42px !important;
  min-width: 42px !important;
}

@media (max-width: 900px) {
  #schedule-admin .admin-schedule-grid,
  #schedule-admin .multi-game-row {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .multi-game-row-number,
  #schedule-admin .multi-game-row label,
  #schedule-admin .multi-game-row .multi-game-neutral,
  #schedule-admin .multi-game-row-remove {
    grid-column: 1 / -1 !important;
  }

  #schedule-admin .multi-game-row-remove {
    width: 100% !important;
  }
}

/* === 20260524c Create game form hard reset === */
#schedule-admin .admin-create-game-card {
  overflow: visible !important;
}

#schedule-admin .admin-create-game-card .multi-game-create-form {
  display: block !important;
}

#schedule-admin .admin-create-game-card .multi-game-toolbar {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 12px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

#schedule-admin .admin-create-game-card .multi-game-list {
  display: grid !important;
  gap: 12px !important;
}

#schedule-admin .create-game-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 12px !important;
  align-items: end !important;
  width: 100% !important;
  padding: 14px !important;
  overflow: visible !important;
  border-radius: 8px !important;
}

#schedule-admin .create-game-row > * {
  position: static !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

#schedule-admin .create-game-row .multi-game-row-number {
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  width: 100% !important;
  min-height: 38px !important;
  padding: 0 8px !important;
}

#schedule-admin .create-game-row .create-game-field {
  display: grid !important;
  grid-row: auto !important;
  gap: 6px !important;
  margin: 0 !important;
  text-align: left !important;
  white-space: normal !important;
}

#schedule-admin .create-game-row .create-game-team {
  grid-column: span 2 !important;
}

#schedule-admin .create-game-row .create-game-date,
#schedule-admin .create-game-row .create-game-time,
#schedule-admin .create-game-row .create-game-channel,
#schedule-admin .create-game-row .create-game-venue {
  grid-column: span 1 !important;
}

#schedule-admin .create-game-row .multi-game-neutral {
  grid-column: span 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  margin: 0 !important;
}

#schedule-admin .create-game-row .multi-game-row-remove {
  grid-column: span 1 !important;
  width: 46px !important;
  min-width: 46px !important;
  min-height: 38px !important;
  justify-self: end !important;
}

#schedule-admin .create-game-row input,
#schedule-admin .create-game-row select {
  position: static !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

#schedule-admin .admin-create-game-card .create-games-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 14px !important;
  float: none !important;
}

@media (max-width: 1180px) {
  #schedule-admin .create-game-row {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  #schedule-admin .create-game-row .multi-game-row-number,
  #schedule-admin .create-game-row .create-game-team,
  #schedule-admin .create-game-row .create-game-channel,
  #schedule-admin .create-game-row .create-game-venue,
  #schedule-admin .create-game-row .multi-game-neutral,
  #schedule-admin .create-game-row .multi-game-row-remove {
    grid-column: span 2 !important;
  }

  #schedule-admin .create-game-row .create-game-date,
  #schedule-admin .create-game-row .create-game-time {
    grid-column: span 3 !important;
  }
}

@media (max-width: 700px) {
  #schedule-admin .create-game-row {
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .create-game-row .multi-game-row-number,
  #schedule-admin .create-game-row .create-game-field,
  #schedule-admin .create-game-row .multi-game-neutral,
  #schedule-admin .create-game-row .multi-game-row-remove {
    grid-column: 1 / -1 !important;
  }

  #schedule-admin .create-game-row .multi-game-row-remove {
    width: 100% !important;
    justify-self: stretch !important;
  }
}

/* === 20260526 live scoring console === */
#schedule-admin .admin-live-score-card {
  overflow: hidden !important;
}

#schedule-admin .admin-live-score-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

#schedule-admin .admin-live-score-head h2 {
  margin: 0 0 4px;
}

#schedule-admin .admin-live-score-sync {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(245,181,27,.30);
  background: rgba(245,181,27,.08);
  color: var(--gold, #f5b51b);
  font: 900 .72rem/1 Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

#schedule-admin .admin-live-score-sync.is-error {
  border-color: rgba(215,25,42,.42);
  background: rgba(215,25,42,.12);
  color: #ff8a95;
}

#schedule-admin .admin-live-score-list {
  display: grid;
  gap: 12px;
}

#schedule-admin .admin-live-score-game {
  display: grid;
  grid-template-columns: minmax(220px, 1.35fr) minmax(190px, .9fr);
  gap: 12px;
  padding: 14px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)), rgba(2,7,18,.56);
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition: border-color .16s ease, box-shadow .16s ease, outline-color .16s ease;
}

#schedule-admin .admin-live-score-game.is-operator-active {
  border-color: rgba(245,181,27,.48);
  outline-color: rgba(245,181,27,.58);
  box-shadow: 0 0 0 1px rgba(245,181,27,.12), 0 14px 30px rgba(0,0,0,.22);
}

#schedule-admin .admin-live-operator-guide {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid rgba(245,181,27,.24);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(245,181,27,.12), rgba(255,255,255,.035));
  color: rgba(216,222,232,.86);
}

#schedule-admin .admin-live-operator-guide strong {
  flex: 0 0 auto;
  color: #fff;
  font: 900 .76rem/1 Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

#schedule-admin .admin-live-operator-guide span {
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.35;
}

#schedule-admin .admin-live-score-matchup {
  display: grid;
  gap: 5px;
  align-content: start;
  text-align: left;
}

#schedule-admin .admin-live-score-matchup span {
  width: fit-content;
  padding: 4px 8px;
  border-radius: 7px;
  background: rgba(215,25,42,.16);
  color: #fff;
  font: 900 .68rem/1 Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

#schedule-admin .admin-live-score-matchup strong {
  color: #fff;
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  line-height: 1.08;
}

#schedule-admin .admin-live-score-matchup em {
  color: rgba(216,222,232,.72);
  font-style: normal;
  font-weight: 800;
}

#schedule-admin .admin-live-score-scoreboard {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#schedule-admin .admin-live-score-scoreboard div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border-radius: 8px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
}

#schedule-admin .admin-live-score-scoreboard span {
  overflow: hidden;
  color: rgba(216,222,232,.72);
  font: 900 .68rem/1 Oswald, Impact, sans-serif;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

#schedule-admin .admin-live-score-scoreboard strong {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #fff;
  font: 900 2rem/1 Oswald, Impact, sans-serif;
}

#schedule-admin .admin-live-score-scoreboard strong i {
  display: none;
  color: var(--gold, #f5b51b);
  font-style: normal;
  font-size: 1rem;
  line-height: 1;
}

#schedule-admin .admin-live-score-scoreboard .has-possession strong i {
  display: inline-flex;
}

#schedule-admin .admin-live-score-controls,
#schedule-admin .admin-live-score-buttons,
#schedule-admin .admin-live-score-possession,
#schedule-admin .admin-live-score-meta {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
}

#schedule-admin .admin-live-score-controls button,
#schedule-admin .admin-live-score-buttons button,
#schedule-admin .admin-live-score-possession button,
#schedule-admin .admin-live-score-meta button {
  min-height: 36px;
  width: auto;
  min-width: 82px;
}

#schedule-admin .admin-live-score-buttons span {
  flex: 0 0 180px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  color: rgba(216,222,232,.78);
  font-weight: 900;
}

#schedule-admin .admin-live-score-possession span {
  flex: 0 0 96px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  color: rgba(216,222,232,.78);
  font: 900 .72rem/1 Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

#schedule-admin .admin-live-score-meta label {
  flex: 1 1 150px;
  display: grid;
  gap: 6px;
  margin: 0;
  text-align: left;
}

#schedule-admin .admin-live-score-meta input {
  width: 100%;
  min-height: 38px;
  text-align: left;
}

@media (max-width: 820px) {
  #schedule-admin .admin-live-score-head,
  #schedule-admin .admin-live-score-game {
    grid-template-columns: 1fr;
  }

  #schedule-admin .admin-live-score-head {
    display: grid;
  }

  #schedule-admin .admin-live-operator-guide {
    display: grid;
  }

  #schedule-admin .admin-live-score-buttons span {
    flex-basis: 100%;
  }

  #schedule-admin .admin-live-score-possession span {
    flex-basis: 100%;
  }
}

.possession-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
  color: var(--gold, #f5b51b);
  font-style: normal;
  font-size: .72em;
  line-height: 1;
  vertical-align: middle;
}

.possession-arrow[hidden] {
  display: none !important;
}

.game-team .possession-arrow {
  margin-right: 8px;
  font-size: .42em;
}

/* === 20260524d Stats propagation + mobile login cleanup === */
.league-stats-card {
  display: grid;
  gap: 18px;
}

.public-stats-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
}

.league-stats-card .public-stats-table {
  min-width: 1180px;
}

.public-stat-card-grid,
.game-team-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px;
}

.public-stat-card,
.game-team-stat-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(2,7,18,.38);
}

.public-stat-card h2,
.game-team-stat-card h3 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.public-stat-card h3,
.game-team-stat-card h4,
.team-profile-stat-group h3 {
  margin: 0 0 8px;
  color: var(--gold, #f5b51b);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.public-stat-card dl,
.game-team-stat-card dl,
.team-profile-stat-group dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.public-stat-card dl div,
.game-team-stat-card dl div,
.team-profile-stat-group dl div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(2,7,18,.36);
}

.public-stat-card dt,
.game-team-stat-card dt,
.team-profile-stat-group dt {
  color: rgba(216,222,232,.64);
  font-size: .66rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.public-stat-card dd,
.game-team-stat-card dd,
.team-profile-stat-group dd {
  margin: 3px 0 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.15rem;
  font-weight: 800;
}

.team-profile-stats-preview {
  display: grid;
  gap: 14px;
}

.team-profile-stat-group {
  padding: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.025)),
    rgba(2,7,18,.50);
}

.team-profile-stats-empty {
  margin: 0;
  color: rgba(216,222,232,.76);
  font-weight: 800;
}

.stat-grid-heading {
  grid-column: 1 / -1;
  margin-top: 4px;
  color: var(--gold, #f5b51b);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .site-header .coach-login:not(.coach-account-button) {
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    min-height: 34px !important;
    padding: 0 11px !important;
    border-radius: 999px !important;
    font-size: .68rem !important;
    letter-spacing: .06em !important;
    white-space: nowrap !important;
  }

  .coach-menu {
    justify-self: end !important;
    max-width: 124px !important;
  }

  .site-header .coach-login.coach-account-button {
    min-width: 0 !important;
    width: 124px !important;
    max-width: 124px !important;
    min-height: 36px !important;
    padding: 5px 9px !important;
    grid-template-columns: minmax(0, 1fr) 22px !important;
    column-gap: 7px !important;
    border-radius: 999px !important;
  }

  .site-header .coach-login.coach-account-button::before {
    width: 22px !important;
    height: 22px !important;
  }

  .site-header .coach-login.coach-account-button::after {
    font-size: .75rem !important;
  }

  .site-header .coach-account-label {
    display: none !important;
  }

  .site-header .coach-login.coach-account-button strong {
    max-width: 82px !important;
    font-size: .74rem !important;
    line-height: 1 !important;
  }
}

@media (max-width: 620px) {
  .public-stat-card dl,
  .game-team-stat-card dl,
  .team-profile-stat-group dl {
    grid-template-columns: 1fr;
  }

  .site-header {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    gap: 8px !important;
  }

  .brand img,
  .brand-logo {
    width: 48px !important;
    height: 48px !important;
  }

  .site-header .coach-login:not(.coach-account-button) {
    max-width: 102px !important;
    min-height: 32px !important;
    padding: 0 9px !important;
    font-size: .62rem !important;
  }

  .coach-menu {
    max-width: 108px !important;
  }

  .site-header .coach-login.coach-account-button {
    width: 108px !important;
    max-width: 108px !important;
    min-height: 32px !important;
    grid-template-columns: minmax(0, 1fr) 18px !important;
    padding: 4px 7px !important;
  }

  .site-header .coach-login.coach-account-button::before {
    width: 18px !important;
    height: 18px !important;
  }

  .site-header .coach-login.coach-account-button strong {
    max-width: 74px !important;
    font-size: .66rem !important;
  }
}

/* === 20260524e Mobile login placement === */
@media (max-width: 900px) {
  .site-header {
    grid-template-columns: auto minmax(0, 1fr) auto auto !important;
    grid-template-rows: 1fr !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .site-header .brand {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
  }

  .site-header .coach-login,
  .site-header .coach-menu {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: end !important;
  }

  .site-header .menu-button {
    grid-column: 4 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: end !important;
  }

  .site-header .coach-login:not(.coach-account-button) {
    max-width: 136px !important;
    min-height: 38px !important;
    padding: 0 10px !important;
    border-radius: 8px !important;
    font-size: .78rem !important;
    letter-spacing: .08em !important;
  }

  .site-header .coach-login.coach-account-button {
    width: auto !important;
    min-width: 112px !important;
    max-width: 150px !important;
    min-height: 40px !important;
    border-radius: 12px !important;
  }
}

@media (max-width: 620px) {
  .site-header {
    grid-template-columns: auto minmax(0, 1fr) auto auto !important;
    min-height: 68px !important;
    padding-inline: 10px !important;
    gap: 7px !important;
  }

  .site-header .coach-login:not(.coach-account-button) {
    max-width: 112px !important;
    min-height: 34px !important;
    padding: 0 9px !important;
    font-size: .68rem !important;
  }

  .site-header .coach-login.coach-account-button {
    min-width: 104px !important;
    max-width: 124px !important;
    min-height: 36px !important;
  }
}

@media (max-width: 420px) {
  .site-header .coach-login:not(.coach-account-button) {
    max-width: 98px !important;
    padding-inline: 8px !important;
    font-size: .62rem !important;
  }
}

/* === 20260524f Compact season team manager === */
.team-transfer-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0;
}

.team-transfer-summary span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.team-transfer-summary strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.05rem;
}

.team-transfer-quick-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.team-transfer-action-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(2,7,18,.28);
}

.team-transfer-action-card label {
  min-width: 0;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.team-transfer-action-card select {
  width: 100%;
  min-width: 0;
  margin-top: 7px;
}

.team-transfer-action-card button {
  min-height: 42px;
  border: 0;
  border-radius: 8px;
  padding: 0 16px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.team-transfer-action-card-danger button {
  background: linear-gradient(180deg, #76202a, #391016);
}

.team-transfer-action-card button:disabled,
.team-transfer-action-card select:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.team-transfer-details {
  margin-top: 14px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.025);
}

.team-transfer-details summary {
  cursor: pointer;
  padding: 12px 14px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.team-transfer-details .team-transfer-board {
  padding: 0 14px 14px;
}

.team-transfer-details .team-manager-list {
  max-height: 360px;
  overflow: auto;
  padding-right: 4px;
}

.team-transfer-details .team-manager-row {
  min-height: 44px;
  padding: 8px 10px;
}

.team-transfer-details .team-manager-row button {
  min-width: 72px;
  min-height: 32px;
  padding: 0 10px;
  font-size: .78rem;
}

@media (max-width: 900px) {
  .team-transfer-quick-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .team-transfer-action-card {
    grid-template-columns: 1fr;
  }

  .team-transfer-action-card button {
    width: 100%;
  }
}

/* === 20260524g Coach account control === */
.account-admin-grid {
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
}

.account-control-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: end;
}

.account-control-form label {
  min-width: 0;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.account-control-form input[type="text"],
.account-control-form input[type="password"],
.account-control-form select,
.account-control-form textarea,
.coach-theme-create textarea {
  width: 100%;
  min-width: 0;
  margin-top: 7px;
}

.account-control-form textarea,
.coach-theme-create textarea {
  min-height: 120px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: rgba(2,7,18,.56);
  color: #fff;
  padding: 10px 12px;
  font: 700 .9rem/1.45 Inter, system-ui, sans-serif;
  resize: vertical;
}

.account-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.account-check input {
  width: auto;
  margin: 0;
}

.account-permission-fieldset {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.025);
}

.account-permission-fieldset legend {
  padding: 0 6px;
  color: var(--gold, #f5b51b);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.account-season-assignment-field {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.025);
}

.account-assignment-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.account-assignment-head strong {
  display: block;
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-size: .86rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.account-assignment-head small {
  display: block;
  margin-top: 3px;
  color: rgba(216,222,232,.72);
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.35;
  text-transform: none;
  letter-spacing: 0;
}

.account-assignment-toolbar {
  flex: 0 0 auto;
  display: flex;
  gap: 8px;
}

.account-assignment-list {
  display: grid;
  gap: 9px;
}

.account-assignment-row {
  display: grid;
  grid-template-columns: 42px minmax(130px, .85fr) minmax(180px, 1.25fr) minmax(170px, 1fr) 44px;
  gap: 10px;
  align-items: end;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.account-assignment-number {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  border: 1px solid rgba(245,181,27,.22);
  background: rgba(245,181,27,.08);
  color: var(--gold, #f5b51b);
  font: 900 .78rem/1 Oswald, Impact, sans-serif;
}

.account-assignment-row label {
  margin: 0;
}

.account-assignment-row-remove {
  min-width: 42px;
  min-height: 38px;
  align-self: end;
}

.admin-health-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
}

.admin-health-list {
  display: grid;
  gap: 8px;
}

.admin-health-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.admin-health-summary span {
  display: grid;
  gap: 2px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  color: rgba(216,222,232,.72);
  font-size: .74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-health-summary strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.55rem;
  line-height: 1;
}

.admin-health-summary .error strong { color: #ff7480; }
.admin-health-summary .warning strong { color: #ffd36b; }

.admin-health-group-list,
.admin-audit-list {
  max-height: 560px;
  overflow: auto;
  padding-right: 4px;
}

.admin-health-group,
.admin-audit-row {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
  overflow: hidden;
}

.admin-health-group summary,
.admin-audit-row summary {
  display: grid;
  grid-template-columns: 82px minmax(90px, .35fr) minmax(0, .55fr) minmax(0, 1.4fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  cursor: pointer;
}

.admin-health-group summary b,
.admin-audit-row summary b {
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.admin-health-group.error summary b { color: #ff7480; }
.admin-health-group.warning summary b { color: #ffd36b; }

.admin-health-group summary span,
.admin-health-group summary em,
.admin-audit-row summary span,
.admin-audit-row summary em {
  color: rgba(216,222,232,.72);
  font-size: .78rem;
  font-style: normal;
  font-weight: 800;
}

.admin-health-group summary strong,
.admin-audit-row summary strong {
  color: #fff;
}

.admin-health-sample-list {
  display: grid;
  gap: 5px;
  padding: 0 10px 10px 102px;
}

.admin-health-sample-list span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: rgba(216,222,232,.72);
  font-size: .78rem;
  font-weight: 800;
}

.admin-audit-row code {
  display: block;
  margin: 0 10px 10px 102px;
  max-height: 140px;
  overflow: auto;
  padding: 10px;
  border-radius: 8px;
  background: rgba(2,7,18,.62);
  color: rgba(216,222,232,.82);
  font-size: .74rem;
  white-space: pre-wrap;
  word-break: break-word;
}

.admin-health-row {
  display: grid;
  grid-template-columns: 82px minmax(90px, .35fr) minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.admin-health-row b,
.admin-health-row span,
.admin-health-row strong,
.admin-health-row em {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-health-row b {
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-style: normal;
  text-transform: uppercase;
}

.admin-health-row.error b {
  color: #ff7480;
}

.admin-health-row.warning b {
  color: #ffd36b;
}

.admin-health-row span,
.admin-health-row em {
  color: rgba(216,222,232,.72);
  font-size: .78rem;
  font-style: normal;
  font-weight: 800;
}

.admin-health-row strong {
  color: #fff;
}

@media (max-width: 900px) {
  .admin-health-grid,
  .admin-health-row,
  .admin-health-summary,
  .admin-health-group summary,
  .admin-audit-row summary {
    grid-template-columns: 1fr;
  }

  .admin-health-group-list,
  .admin-audit-list {
    max-height: 480px;
  }

  .admin-health-sample-list,
  .admin-audit-row code {
    margin-left: 10px;
    padding-left: 10px;
  }

  .admin-health-row b,
  .admin-health-row span,
  .admin-health-row strong,
  .admin-health-row em {
    white-space: normal;
  }
}

.account-control-form > button,
.account-control-actions button {
  min-height: 42px;
  border: 0;
  border-radius: 8px;
  padding: 0 16px;
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.external-coach-list {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
}

.external-coach-dropdown {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(2,7,18,.28);
}

.external-coach-dropdown > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  cursor: pointer;
  list-style: none;
}

.external-coach-dropdown > summary::-webkit-details-marker {
  display: none;
}

.external-coach-dropdown > summary span,
.external-coach-dropdown > summary strong,
.external-coach-dropdown > summary em {
  display: block;
}

.external-coach-dropdown > summary strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .95rem;
  text-transform: uppercase;
}

.external-coach-dropdown > summary em {
  margin-top: 3px;
  color: var(--muted);
  font-size: .74rem;
  font-style: normal;
  font-weight: 800;
}

.external-coach-dropdown > summary b {
  flex: 0 0 auto;
  color: var(--gold, #f5b51b);
  font-size: .7rem;
  text-transform: uppercase;
}

.external-coach-dropdown[open] > summary {
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.external-coach-dropdown[open] > summary b {
  font-size: 0;
}

.external-coach-dropdown[open] > summary b::before {
  content: "Close";
  font-size: .7rem;
}

.external-coach-dropdown > .external-coach-form {
  padding: 14px;
}

.stats-admin-dropdown {
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
}

.stats-admin-dropdown > .stats-admin-dropdown-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 !important;
  padding: 15px 16px !important;
  cursor: pointer;
  list-style: none;
  border: 0;
}

.stats-admin-dropdown > .stats-admin-dropdown-summary::-webkit-details-marker {
  display: none;
}

.stats-admin-dropdown > .stats-admin-dropdown-summary::after {
  content: "+";
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(245,181,27,.28);
  border-radius: 50%;
  color: var(--gold, #f5b51b);
  font: 900 1rem/1 Inter, Arial, sans-serif;
}

.stats-admin-dropdown[open] {
  padding-bottom: 16px !important;
}

.stats-admin-dropdown[open] > .stats-admin-dropdown-summary {
  margin-bottom: 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.stats-admin-dropdown[open] > .stats-admin-dropdown-summary::after {
  content: "-";
}

.stats-admin-dropdown > :not(summary) {
  max-width: calc(100% - 32px);
  margin-left: 16px;
  margin-right: 16px;
}

@media (max-width: 620px) {
  .stats-admin-dropdown > .stats-admin-dropdown-summary {
    align-items: flex-start;
    padding: 13px !important;
  }

  .stats-admin-dropdown > .stats-admin-dropdown-summary > span {
    display: none;
  }

  .stats-admin-dropdown > :not(summary) {
    max-width: calc(100% - 26px);
    margin-left: 13px;
    margin-right: 13px;
  }
}

.external-coach-row {
  display: grid;
  grid-template-columns: 42px minmax(160px, 1.2fr) minmax(130px, .8fr) minmax(180px, 1.1fr) minmax(170px, 1fr) 44px;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
}

.external-coach-number {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  border: 1px solid rgba(245,181,27,.22);
  background: rgba(245,181,27,.08);
  color: var(--gold, #f5b51b);
  font: 900 .78rem/1 Oswald, Impact, sans-serif;
}

.external-coach-row label {
  margin: 0;
}

.external-coach-toolbar {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-start;
  gap: 8px;
}

.external-coach-row-remove {
  min-width: 42px;
  min-height: 38px;
  align-self: end;
}

.account-control-list {
  display: grid;
  gap: 10px;
  max-height: 680px;
  overflow: auto;
  padding-right: 4px;
}

.account-control-row {
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(2,7,18,.28);
}

.account-control-row summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px, auto) auto auto auto;
  gap: 10px;
  align-items: center;
  cursor: pointer;
  padding: 12px;
  list-style: none;
}

.account-control-row summary::-webkit-details-marker {
  display: none;
}

.account-control-row summary span,
.account-control-row summary i,
.account-control-row summary b {
  min-width: 0;
}

.account-control-row summary strong {
  display: block;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
}

.account-control-row summary em,
.account-control-row summary i {
  display: block;
  color: var(--muted);
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
}

.account-control-row summary b {
  justify-self: end;
  padding: 5px 8px;
  border: 1px solid rgba(245,181,27,.28);
  border-radius: 999px;
  background: rgba(245,181,27,.1);
  color: var(--gold, #f5b51b);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.account-control-row summary b.inactive {
  border-color: rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  color: var(--muted);
}

.account-control-edit-form {
  padding: 0 12px 12px;
}

.account-control-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.account-control-actions .danger-admin-button {
  background: linear-gradient(180deg, #76202a, #391016);
}

.account-control-actions button:disabled {
  cursor: not-allowed;
  opacity: .45;
}

@media (max-width: 1100px) {
  .account-admin-grid {
    grid-template-columns: 1fr;
  }

  .account-assignment-row {
    grid-template-columns: 42px repeat(3, minmax(0, 1fr)) 44px;
  }

  .external-coach-row {
    grid-template-columns: 42px repeat(2, minmax(0, 1fr)) 44px;
  }

  .external-coach-row label {
    grid-column: span 1;
  }
}

@media (max-width: 720px) {
  .account-control-form,
  .account-control-row summary,
  .account-assignment-row,
  .external-coach-row {
    grid-template-columns: 1fr;
  }

  .account-assignment-head {
    display: grid;
  }

  .account-assignment-toolbar {
    justify-content: start;
  }

  .account-assignment-number,
  .account-assignment-row label,
  .account-assignment-row-remove,
  .external-coach-number,
  .external-coach-row label,
  .external-coach-row-remove {
    grid-column: 1 / -1;
  }

  .external-coach-row-remove {
    width: 100%;
  }

  .account-control-row summary b {
    justify-self: start;
  }

  .account-control-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* === 20260524n responsive scale + team schedule heading correction === */
.site-header {
  min-height: clamp(74px, 6.4vw, 96px) !important;
  padding-inline: clamp(14px, 2.6vw, 38px) !important;
  gap: clamp(14px, 2.2vw, 30px) !important;
}

.brand {
  gap: clamp(10px, 1.3vw, 16px) !important;
  min-width: 0;
}

.brand img,
.brand-logo {
  width: clamp(62px, 6vw, 86px) !important;
  height: clamp(62px, 6vw, 86px) !important;
  flex: 0 0 auto;
}

.brand span {
  min-width: 0;
}

.brand strong {
  max-width: clamp(190px, 21vw, 380px);
  font-size: clamp(1.05rem, 1.65vw, 1.55rem) !important;
  line-height: .95 !important;
}

.brand em {
  margin-top: 4px !important;
  font-size: clamp(.72rem, .9vw, .95rem) !important;
  letter-spacing: .08em !important;
}

.site-nav {
  gap: clamp(10px, 1.7vw, 28px) !important;
}

.site-nav a {
  font-size: clamp(.9rem, 1.05vw, 1.1rem) !important;
  letter-spacing: .04em !important;
}

.hero {
  min-height: clamp(330px, 34vw, 470px) !important;
  grid-template-columns: minmax(340px, 1fr) minmax(260px, 34vw) minmax(280px, 380px) !important;
  gap: clamp(18px, 2vw, 30px) !important;
  padding: clamp(24px, 3vw, 44px) clamp(18px, 3.4vw, 46px) !important;
}

.hero-logo-panel {
  min-height: clamp(180px, 22vw, 285px) !important;
}

.hero-logo-wide {
  width: min(100%, clamp(280px, 34vw, 520px)) !important;
  max-height: clamp(160px, 20vw, 260px) !important;
}

h1 {
  font-size: clamp(2.65rem, 5vw, 5rem) !important;
}

.hero-text {
  font-size: clamp(.98rem, 1vw, 1.08rem) !important;
}

@media (min-width: 1500px) {
  .hero,
  .broadcast-inner,
  .page-grid,
  .team-page > section,
  .schedule-shell,
  .schedule-hero {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
  }
}

.site-header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
}

.schedule-game-top .is-live::before,
.rfcl-scoreboard-game-head .is-live::before,
.game-status.is-live::before {
  content: none !important;
}

@media (max-width: 1220px) {
  .brand strong {
    max-width: 230px;
  }

  .site-nav {
    gap: 12px !important;
  }

  .hero {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 390px) !important;
  }

  .week-card {
    grid-column: 1 / -1;
    min-height: 0;
  }
}

@media (max-width: 1040px) {
  .brand strong {
    max-width: 180px;
    font-size: 1.02rem !important;
  }

  .brand em {
    font-size: .7rem !important;
  }

  .site-nav a {
    font-size: .86rem !important;
  }
}

@media (max-width: 900px) {
  .site-header {
    min-height: 76px !important;
  }

  .brand img,
  .brand-logo {
    width: 58px !important;
    height: 58px !important;
  }

  .hero {
    grid-template-columns: 1fr !important;
  }

  .hero-logo-wide {
    width: min(100%, 360px) !important;
    max-height: 190px !important;
  }
}

.team-page .team-schedule-section {
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 50%, rgba(255,255,255,.14)) !important;
}

.team-page .team-schedule-week span,
.team-page .team-schedule-opponent span,
.team-page .team-schedule-result span,
.team-page .team-schedule-extra span,
.team-page .team-schedule-empty {
  color: rgba(216,222,232,.76) !important;
}

.team-page .team-schedule-section .section-heading p,
.team-profile-stat-group h3,
.team-page .stat-grid-heading {
  color: var(--team-secondary, var(--gold, #f5b51b)) !important;
}

.team-page .team-schedule-section .section-heading p {
  font-size: clamp(1.55rem, 3vw, 2.75rem) !important;
  line-height: .95 !important;
  letter-spacing: .08em !important;
  flex: 0 0 auto;
}

.team-page .team-schedule-section .section-heading h2 {
  color: #fff !important;
  font-size: clamp(1.25rem, 2.1vw, 2rem) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: right;
  flex: 1 1 auto;
}

.team-page .team-schedule-game {
  grid-template-columns: 88px minmax(0, 1.45fr) minmax(170px, .65fr) !important;
  column-gap: 10px !important;
}

.team-page .team-schedule-game:hover,
.team-page .team-schedule-game:focus-visible,
.team-page .team-schedule-game.is-win {
  box-shadow: inset 4px 0 0 var(--team-primary, #d7192a) !important;
}

.team-page .team-schedule-week b {
  min-width: 64px !important;
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 54%, rgba(255,255,255,.12)) !important;
  background: color-mix(in srgb, var(--team-primary, #d7192a) 18%, transparent) !important;
}

.team-page .team-schedule-result strong,
.team-page .team-schedule-extra strong {
  color: #fff !important;
}

.team-page .team-schedule-week b {
  color: #fff !important;
}

.team-page .stat-game-select-label {
  grid-column: 1 / -1;
}

.team-page .stat-form select {
  width: 100%;
  min-height: 44px;
  margin-top: 8px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(2,7,18,.74);
  color: #fff;
  font: inherit;
}

@media (max-width: 760px) {
  .team-page .team-schedule-game {
    grid-template-columns: 1fr !important;
  }

  .team-page .team-schedule-section .section-heading h2 {
    font-size: clamp(1.35rem, 8vw, 2.3rem) !important;
    text-align: left;
  }

  .team-page .team-schedule-section .section-heading p {
    font-size: clamp(1.9rem, 13vw, 3.6rem) !important;
  }
}

/* === 20260526f homepage logo responsive scale === */
.hero-logo-panel {
  min-height: clamp(135px, 18vw, 260px) !important;
}

.hero-logo-wide {
  width: min(100%, clamp(230px, 25vw, 460px)) !important;
  max-height: clamp(125px, 15vw, 225px) !important;
}

.footer-logo-wide,
.site-footer img.footer-logo-wide {
  width: min(100%, clamp(180px, 20vw, 300px)) !important;
  max-height: clamp(82px, 10vw, 145px) !important;
}

@media (max-width: 1220px) {
  .hero-logo-panel {
    min-height: clamp(120px, 16vw, 190px) !important;
  }

  .hero-logo-wide {
    width: min(100%, clamp(210px, 24vw, 310px)) !important;
    max-height: clamp(112px, 13vw, 165px) !important;
  }
}

@media (max-width: 900px) {
  .hero-logo-panel {
    min-height: 132px !important;
  }

  .hero-logo-wide {
    width: min(76vw, 260px) !important;
    max-height: 132px !important;
  }

  .footer-logo-wide,
  .site-footer img.footer-logo-wide {
    width: min(64vw, 220px) !important;
    max-height: 104px !important;
  }
}

@media (max-width: 560px) {
  .hero-logo-panel {
    min-height: 112px !important;
  }

  .hero-logo-wide {
    width: min(70vw, 210px) !important;
    max-height: 106px !important;
  }
}

/* === 20260526g admin polish + game hub === */
.admin-console-overview {
  margin: 0 0 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
}

.admin-console-stat,
.admin-console-shortcuts {
  min-width: 0;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(2,7,18,.48);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.admin-console-stat {
  padding: 12px 13px;
  display: grid;
  gap: 4px;
}

.admin-console-stat span {
  color: rgba(216,222,232,.68);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.admin-console-stat strong {
  min-width: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1rem, 1.6vw, 1.22rem);
  line-height: 1.08;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.admin-console-shortcuts {
  grid-column: 1 / -1;
  padding: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-console-shortcuts a {
  min-height: 36px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: rgba(255,255,255,.045);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.admin-console-shortcuts a:hover,
.admin-console-shortcuts a:focus-visible {
  border-color: rgba(215,25,42,.48);
  background: rgba(215,25,42,.14);
}

.admin-console-tabs {
  overflow-x: auto;
  scrollbar-width: thin;
}

.admin-console-tabs a {
  flex: 0 0 auto;
}

.admin-section-heading,
.admin-card {
  border-radius: 12px !important;
}

.admin-card {
  min-width: 0;
  overflow: hidden;
}

.game-hero,
.game-panel {
  box-shadow: 0 18px 38px rgba(0,0,0,.22);
}

.game-team strong {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}

.game-team-rank {
  min-width: 32px;
  min-height: 30px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.075);
  color: #fff;
  font-size: .52em;
  line-height: 1;
}

.game-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.game-meta-row span,
.game-meta-row a {
  min-height: 34px;
  padding: 0 11px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: #d8dee8;
  font-weight: 900;
}

.game-meta-row a {
  color: #fff;
  border-color: rgba(215,25,42,.42);
  background: rgba(215,25,42,.16);
}

.game-hub-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 16px;
}

.game-hub-card {
  display: grid;
  align-content: start;
}

.game-detail-grid,
.game-line-grid {
  display: grid;
  gap: 10px;
}

.game-detail-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.game-line-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.game-detail-grid div,
.game-line-grid div {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.04);
}

.game-detail-grid span,
.game-line-grid span {
  display: block;
  margin-bottom: 5px;
  color: rgba(216,222,232,.68);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.game-detail-grid strong,
.game-detail-grid a,
.game-line-grid strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.08rem;
  line-height: 1.1;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.game-line-result {
  margin-top: 12px !important;
  padding: 10px 12px;
  border-left: 3px solid var(--rfcl-red, #d7192a);
  border-radius: 9px;
  background: rgba(215,25,42,.10);
  font-weight: 900;
}

.game-action-row {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.game-action-row a {
  min-height: 34px;
  padding: 0 11px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.game-action-row a:hover,
.game-action-row a:focus-visible {
  border-color: rgba(215,25,42,.48);
  background: rgba(215,25,42,.14);
}

.game-empty-text {
  margin-top: 12px !important;
  color: rgba(216,222,232,.72) !important;
  font-weight: 800;
}

@media (max-width: 980px) {
  .admin-console-overview,
  .game-hub-grid {
    grid-template-columns: 1fr 1fr;
  }

  .game-hub-grid {
    grid-template-columns: 1fr;
  }

  .game-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .admin-console-overview,
  .game-detail-grid,
  .game-line-grid {
    grid-template-columns: 1fr;
  }

  .admin-console-shortcuts a {
    flex: 1 1 130px;
  }
}

/* === 20260526h mobile QA + shared visual system === */
:root {
  --rfcl-surface: rgba(3,13,25,.78);
  --rfcl-surface-soft: rgba(255,255,255,.045);
  --rfcl-surface-strong: rgba(6,24,44,.9);
  --rfcl-border: rgba(255,255,255,.14);
  --rfcl-radius: 10px;
  --rfcl-radius-sm: 8px;
  --rfcl-control-height: 42px;
}

.panel,
.week-card,
.league-panel,
.auth-form,
.admin-card,
.admin-section-heading,
.game-panel,
.schedule-game-card,
.draft-current,
.draft-prospects-panel,
.draft-pick-card,
.team-page .team-detail-grid article,
.team-page .team-schedule-section,
.public-stat-card,
.game-team-stat-card,
.team-profile-stat-group {
  border-radius: var(--rfcl-radius) !important;
  border-color: var(--rfcl-border) !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.20) !important;
}

.btn,
.coach-login,
.portal-action,
.danger-admin-button,
.account-control-form > button,
.account-control-actions button,
.admin-inline-form button,
.admin-week-actions button,
.admin-ballot-actions button,
.score-submit-form button,
.score-issue-form button,
.schedule-create-form button,
.sportsbook-bet-form button,
.sportsbook-ratings-form button,
.team-manager-row button,
.team-transfer-action-card button,
#schedule-admin .admin-score-actions button,
#schedule-admin .admin-live-score-controls button,
#schedule-admin .admin-live-score-buttons button,
#schedule-admin .admin-live-score-possession button,
#schedule-admin .admin-live-score-meta button,
.draft-submit-form button {
  min-height: var(--rfcl-control-height);
  border-radius: var(--rfcl-radius-sm) !important;
  line-height: 1;
}

.auth-form input,
.auth-form select,
.auth-form textarea,
.account-control-form input[type="text"],
.account-control-form input[type="password"],
.account-control-form input[type="url"],
.account-control-form select,
.account-control-form textarea,
.admin-inline-form select,
.admin-week-actions input,
.admin-week-actions select,
.score-submit-form input,
.score-issue-form input,
#schedule-admin .admin-score-fields input,
#schedule-admin .admin-score-fields textarea,
#schedule-admin .multi-game-create-form input,
#schedule-admin .multi-game-create-form select,
.draft-prospect-edit-fields input,
.sportsbook-bet-form input,
.sportsbook-bet-form select,
.sportsbook-ratings-form input,
.sportsbook-ratings-form select,
.stat-form input,
.stat-form select {
  min-width: 0;
  min-height: var(--rfcl-control-height);
  border-radius: var(--rfcl-radius-sm) !important;
  border-color: rgba(255,255,255,.16) !important;
  background-color: rgba(2,7,18,.66) !important;
}

.section-heading,
.admin-section-heading,
.standings-admin-card-head {
  min-width: 0;
}

.section-heading h2,
.admin-section-heading h2,
.game-panel h2,
.draft-prospects-panel h2,
.admin-card h2 {
  letter-spacing: 0;
}

.schedule-game-card,
.draft-pick-card,
.draft-prospect,
.team-page .team-schedule-game,
.admin-card {
  min-width: 0;
}

.schedule-team-name,
.schedule-team-row span,
.team-page .team-schedule-opponent strong,
.team-page .team-schedule-result strong,
.team-page .team-schedule-extra strong,
.draft-pick-card strong,
.draft-prospect strong,
.admin-card h2 {
  overflow-wrap: anywhere;
}

@media (max-width: 1180px) {
  .site-header {
    min-height: 76px !important;
    padding-inline: clamp(10px, 2vw, 18px) !important;
    gap: 12px !important;
  }

  .brand {
    min-width: 0;
    gap: 10px;
  }

  .brand img,
  .brand-logo {
    width: 56px !important;
    height: 56px !important;
  }

  .brand strong {
    font-size: clamp(.95rem, 2vw, 1.25rem) !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
  }

  .brand em {
    margin-top: 3px;
    font-size: .72rem !important;
    letter-spacing: .08em !important;
  }
}

@media (max-width: 900px) {
  .site-nav {
    left: auto !important;
    right: 10px !important;
    top: calc(100% + 8px) !important;
    width: min(330px, calc(100vw - 20px)) !important;
    max-height: min(74vh, 620px);
    overflow-y: auto;
    align-items: stretch;
    box-shadow: 0 18px 36px rgba(0,0,0,.42);
  }

  .site-nav a {
    min-height: 42px;
    display: flex;
    align-items: center;
    font-size: .98rem !important;
  }

  .rfcl-scoreboard-inner {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    padding: 7px 9px 9px !important;
  }

  .rfcl-scoreboard-title {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 230px);
    gap: 8px;
    align-items: center;
  }

  .rfcl-scoreboard-title strong {
    white-space: normal !important;
    line-height: 1.05;
  }

  .rfcl-scoreboard-selects {
    max-width: none !important;
  }

  .rfcl-scoreboard-track {
    padding-bottom: 4px;
    scroll-snap-type: x proximity;
  }

  .rfcl-scoreboard-card {
    flex-basis: min(82vw, 214px) !important;
    max-width: min(82vw, 214px) !important;
    scroll-snap-align: start;
  }

  .schedule-shell,
  .team-page,
  .draft-page,
  .admin-page,
  .game-page {
    padding-inline: clamp(10px, 3vw, 18px) !important;
  }

  .schedule-game-top {
    min-height: 42px;
    padding-inline: 12px;
  }

  .schedule-team-row {
    min-height: 54px;
    padding: 9px 12px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .schedule-records {
    grid-column: 1 / -1;
    justify-items: start;
  }

  .team-page .team-detail-grid,
  .team-page .stat-grid,
  .admin-grid,
  .admin-console-grid,
  .account-admin-grid,
  .draft-layout {
    grid-template-columns: 1fr !important;
  }

  .team-page .team-schedule-section {
    padding: 14px !important;
  }

  .team-page .team-schedule-section .section-heading {
    align-items: start !important;
  }

  .team-page .team-schedule-game {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    padding: 12px !important;
  }

  .team-page .team-schedule-result,
  .team-page .team-schedule-extra {
    justify-items: start !important;
    text-align: left !important;
  }

  .admin-shell,
  .admin-hero {
    padding: 16px !important;
  }

  .admin-console-tabs {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: 7px !important;
  }

  .admin-console-tabs a {
    min-height: 36px;
    padding-inline: 11px;
    font-size: .88rem;
  }

  .admin-card,
  .admin-section-heading {
    padding: 14px !important;
  }

  .account-control-form,
  .admin-inline-form,
  .admin-week-actions,
  .score-submit-form,
  .score-issue-form,
  #schedule-admin .admin-score-fields,
  #schedule-admin .admin-score-actions,
  #schedule-admin .admin-live-score-controls,
  #schedule-admin .admin-live-score-buttons,
  #schedule-admin .admin-live-score-possession,
  #schedule-admin .admin-live-score-meta,
  .draft-submit-form,
  .draft-prospect-edit-fields {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .draft-hero {
    min-height: 0 !important;
    padding: 18px 12px !important;
  }

  .draft-clock {
    width: 100%;
    justify-content: space-between;
  }

  .draft-current,
  .draft-prospects-panel {
    position: static !important;
  }

  .draft-board-grid {
    grid-template-columns: repeat(auto-fit, minmax(148px, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .site-header {
    min-height: 64px !important;
    grid-template-columns: auto minmax(0, 1fr) auto auto !important;
  }

  .brand img,
  .brand-logo {
    width: 44px !important;
    height: 44px !important;
  }

  .brand span {
    display: none !important;
  }

  .site-header .coach-login:not(.coach-account-button) {
    max-width: 104px !important;
    min-height: 32px !important;
    padding-inline: 8px !important;
    font-size: .64rem !important;
    border-radius: 8px !important;
  }

  .site-header .coach-login.coach-account-button {
    min-width: 94px !important;
    max-width: 112px !important;
    min-height: 34px !important;
  }

  .menu-button {
    width: 39px !important;
    height: 36px !important;
    padding: 8px !important;
  }

  .rfcl-scoreboard-title {
    grid-template-columns: 1fr !important;
  }

  .rfcl-scoreboard-selects {
    grid-template-columns: 1fr 1fr !important;
  }

  .rfcl-scoreboard-selects select {
    height: 32px;
    font-size: .65rem;
  }

  .rfcl-scoreboard-card {
    flex-basis: min(88vw, 224px) !important;
    max-width: min(88vw, 224px) !important;
  }

  .schedule-game-top {
    display: grid;
    justify-items: start;
    gap: 4px;
    padding-block: 8px;
  }

  .schedule-team-row span {
    font-size: 1.08rem !important;
  }

  .schedule-team-row strong {
    font-size: 1.5rem !important;
  }

  .team-page .team-schedule-section .section-heading {
    display: grid !important;
    gap: 4px;
  }

  .team-page .team-schedule-section .section-heading p {
    font-size: clamp(1.65rem, 11vw, 2.7rem) !important;
  }

  .team-page .team-schedule-section .section-heading h2 {
    text-align: left !important;
    font-size: 1rem !important;
  }

  .admin-page {
    padding-block: 18px 36px !important;
  }

  .admin-hero h1 {
    font-size: clamp(2.1rem, 13vw, 3.4rem) !important;
  }

  .admin-console-overview {
    gap: 8px;
  }

  .admin-console-shortcuts {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .draft-board-grid {
    grid-template-columns: 1fr !important;
  }

  .draft-pick-card {
    min-height: 88px !important;
  }

  .draft-prospects-panel > div,
  .coach-draft-prospects {
    grid-template-columns: 1fr !important;
  }

  .draft-prospect {
    grid-template-columns: 92px minmax(0, 1fr) !important;
  }

  .draft-prospect span {
    grid-column: 2 !important;
  }
}

/* === 20260526j dynamic homepage cards === */
.featured-player {
  min-width: 0;
}

.featured-player img {
  border-radius: 8px;
  background: rgba(255,255,255,.035);
}

.featured-player strong,
.featured-player em,
.league-panel b,
.league-panel em {
  overflow-wrap: anywhere;
}

.featured-player-empty {
  border-style: dashed;
  border-color: rgba(245,181,27,.35);
}

.featured-player-empty img {
  opacity: .7;
}

.league-panel em {
  line-height: 1.35;
}


/* === Live down, distance, ball location, and clock details === */
.game-live-situation,
.schedule-live-situation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  padding: 11px 15px;
  border-top: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(90deg, rgba(215,25,42,.14), rgba(245,181,27,.08));
  color: #fff;
  font-weight: 900;
}

.game-live-situation[hidden] {
  display: none !important;
}

.game-live-situation-kicker,
.schedule-live-situation::before {
  color: var(--gold, #f5b51b);
  font: 900 .68rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.schedule-live-situation::before {
  content: "Game Situation";
}

.game-live-situation strong,
.schedule-live-situation span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(2,7,18,.34);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: .86rem;
  line-height: 1;
  text-transform: uppercase;
}

#schedule-admin .admin-live-score-situation,
#schedule-admin .admin-live-score-downs,
#schedule-admin .admin-live-score-clock-buttons,
#schedule-admin .admin-live-score-yard-buttons {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

#schedule-admin .admin-live-score-situation {
  padding: 10px;
  border: 1px solid rgba(245,181,27,.16);
  border-radius: 8px;
  background: rgba(245,181,27,.055);
}

#schedule-admin .admin-live-score-toggle {
  flex: 1 1 100%;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  color: rgba(216,222,232,.86);
  font-weight: 900;
  text-align: left;
}

#schedule-admin .admin-live-score-toggle input {
  width: 17px;
  height: 17px;
  accent-color: var(--rfcl-red, #d7192a);
}

#schedule-admin .admin-live-score-downs span,
#schedule-admin .admin-live-score-clock-buttons span,
#schedule-admin .admin-live-score-yard-buttons span {
  flex: 0 0 74px;
  color: rgba(216,222,232,.78);
  font: 900 .72rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#schedule-admin .admin-live-score-downs button,
#schedule-admin .admin-live-score-clock-buttons button,
#schedule-admin .admin-live-score-yard-buttons button {
  min-height: 34px;
  width: auto;
  min-width: 72px;
}

#schedule-admin .admin-live-score-downs button.is-active {
  border-color: rgba(245,181,27,.72) !important;
  background: rgba(245,181,27,.16) !important;
  color: #fff !important;
}

#schedule-admin .admin-live-score-meta label {
  flex-basis: 130px;
}

@media (max-width: 820px) {
  #schedule-admin .admin-live-score-situation,
  #schedule-admin .admin-live-score-downs,
  #schedule-admin .admin-live-score-clock-buttons,
  #schedule-admin .admin-live-score-yard-buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  #schedule-admin .admin-live-score-downs span,
  #schedule-admin .admin-live-score-clock-buttons span,
  #schedule-admin .admin-live-score-yard-buttons span {
    flex-basis: auto;
  }
}


/* === 20260528 scoreboard/header seam + live scoring event polish === */
.rfcl-scoreboard-shell {
  margin-bottom: -1px !important;
}

.site-header {
  top: max(0px, calc(var(--rfcl-scoreboard-offset, 0px) - 1px)) !important;
}

.admin-score-event-button,
.admin-timeout-event-button {
  min-width: 112px;
  font-weight: 900 !important;
  letter-spacing: .04em;
  background: linear-gradient(135deg, rgba(215,25,42,.95), rgba(105,12,22,.95)) !important;
  border-color: rgba(255,255,255,.24) !important;
  box-shadow: 0 10px 20px rgba(215,25,42,.18) !important;
}

.admin-score-event-button:hover,
.admin-score-event-button:focus,
.admin-timeout-event-button:hover,
.admin-timeout-event-button:focus {
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(215,25,42,.28) !important;
}

.rfcl-scoreboard-card,
.schedule-game-card {
  position: relative;
  overflow: hidden;
}

.rfcl-score-event-toast,
.schedule-score-event-toast {
  --score-event-primary: #D7192A;
  --score-event-secondary: #061529;
  position: absolute;
  inset: 8px;
  z-index: 12;
  display: grid;
  place-items: center;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 18px;
  pointer-events: none;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  background:
    radial-gradient(circle at 18% 20%, color-mix(in srgb, var(--score-event-primary) 72%, white 10%), transparent 42%),
    linear-gradient(135deg, color-mix(in srgb, var(--score-event-primary) 86%, black 14%), color-mix(in srgb, var(--score-event-secondary) 90%, black 10%));
  box-shadow: 0 18px 40px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.2);
  animation: rfclScoreEventPop .38s ease-out both, rfclScoreEventPulse 1.1s ease-in-out .38s 2;
}

.rfcl-score-event-toast strong,
.schedule-score-event-toast strong {
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.05rem, 2.8vw, 1.8rem);
  line-height: 1;
  letter-spacing: .08em;
  text-shadow: 0 3px 12px rgba(0,0,0,.45);
}

.rfcl-score-event-toast span,
.schedule-score-event-toast span {
  display: inline-grid;
  place-items: center;
  min-width: 44px;
  min-height: 30px;
  padding: 4px 10px;
  border-radius: 999px;
  font-family: Oswald, Impact, sans-serif;
  font-size: .95rem;
  font-weight: 900;
  letter-spacing: .08em;
  color: #07111f;
  background: rgba(255,255,255,.92);
  box-shadow: 0 8px 18px rgba(0,0,0,.22);
}

.rfcl-score-event-toast.is-leaving,
.schedule-score-event-toast.is-leaving {
  animation: rfclScoreEventOut .3s ease-in forwards;
}

@keyframes rfclScoreEventPop {
  0% { opacity: 0; transform: scale(.86) translateY(8px); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes rfclScoreEventPulse {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.18); }
}

@keyframes rfclScoreEventOut {
  0% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(.96) translateY(-6px); }
}

@supports not (background: color-mix(in srgb, red 50%, black)) {
  .rfcl-score-event-toast,
  .schedule-score-event-toast {
    background: linear-gradient(135deg, var(--score-event-primary), var(--score-event-secondary));
  }
}

/* === 20260528 final scoring event polish: header banner + game page overlay === */
.rfcl-scoreboard-shell {
  overflow: visible !important;
}

.rfcl-scoreboard-event-banner {
  --score-event-primary: #D7192A;
  --score-event-secondary: #061529;
  position: absolute;
  left: 50%;
  bottom: 8px;
  z-index: 30;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  max-width: min(460px, calc(100vw - 28px));
  padding: 8px 11px 8px 14px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  color: #fff;
  pointer-events: none;
  text-transform: uppercase;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--score-event-primary) 82%, black 18%), color-mix(in srgb, var(--score-event-secondary) 90%, black 10%));
  box-shadow: 0 13px 30px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.16);
  transform: translate(-50%, 10px) scale(.96);
  opacity: 0;
  animation: rfclScoreboardEventIn .28s ease-out forwards, rfclScoreboardEventHold 1.4s ease-in-out .32s 1;
}

.rfcl-scoreboard-event-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(.78rem, 1.6vw, .98rem);
  font-weight: 900;
  letter-spacing: .075em;
  line-height: 1;
  text-shadow: 0 2px 8px rgba(0,0,0,.38);
}

.rfcl-scoreboard-event-points {
  display: inline-grid;
  place-items: center;
  min-width: 34px;
  height: 23px;
  padding: 0 8px;
  border-radius: 999px;
  font-family: Oswald, Impact, sans-serif;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .055em;
  color: #07111f;
  background: rgba(255,255,255,.94);
  box-shadow: 0 6px 15px rgba(0,0,0,.24);
}

.rfcl-scoreboard-event-banner.is-leaving {
  animation: rfclScoreboardEventOut .28s ease-in forwards;
}

.rfcl-scoreboard-card.has-score-event-pulse,
.game-matchup.has-score-event-pulse {
  animation: rfclScoreEventCardPulse 1.6s ease-out both;
}

.game-hero {
  position: relative;
  overflow: hidden;
}

.game-score-event-toast {
  --score-event-primary: #D7192A;
  --score-event-secondary: #061529;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 16;
  width: min(500px, calc(100% - 32px));
  display: grid;
  place-items: center;
  gap: 7px;
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid rgba(255,255,255,.30);
  border-radius: 24px;
  color: #fff;
  text-align: center;
  pointer-events: none;
  text-transform: uppercase;
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--score-event-primary) 74%, white 9%), transparent 40%),
    linear-gradient(135deg, color-mix(in srgb, var(--score-event-primary) 88%, black 12%), color-mix(in srgb, var(--score-event-secondary) 91%, black 9%));
  box-shadow: 0 24px 56px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.20);
  transform: translate(-50%, -46%) scale(.88);
  opacity: 0;
  animation: rfclGameScoreEventIn .32s ease-out forwards, rfclScoreEventPulse 1.05s ease-in-out .38s 2;
}

.game-score-event-toast span {
  color: rgba(255,255,255,.76);
  font-family: Inter, system-ui, sans-serif;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .22em;
}

.game-score-event-toast strong {
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.8rem, 5.8vw, 4.2rem);
  line-height: .95;
  letter-spacing: .075em;
  text-shadow: 0 4px 18px rgba(0,0,0,.48);
}

.game-score-event-toast em {
  display: inline-grid;
  place-items: center;
  min-width: 64px;
  min-height: 42px;
  padding: 6px 18px;
  border-radius: 999px;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.05rem, 2.4vw, 1.5rem);
  font-style: normal;
  font-weight: 900;
  letter-spacing: .08em;
  color: #07111f;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 26px rgba(0,0,0,.26);
}

.game-score-event-toast.is-leaving {
  animation: rfclGameScoreEventOut .28s ease-in forwards;
}

@keyframes rfclScoreboardEventIn {
  0% { opacity: 0; transform: translate(-50%, 13px) scale(.94); }
  100% { opacity: 1; transform: translate(-50%, 0) scale(1); }
}

@keyframes rfclScoreboardEventHold {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.16); }
}

@keyframes rfclScoreboardEventOut {
  0% { opacity: 1; transform: translate(-50%, 0) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -8px) scale(.98); }
}

@keyframes rfclGameScoreEventIn {
  0% { opacity: 0; transform: translate(-50%, -42%) scale(.86); }
  100% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@keyframes rfclGameScoreEventOut {
  0% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -54%) scale(.96); }
}

@keyframes rfclScoreEventCardPulse {
  0% { box-shadow: 0 0 0 rgba(215,25,42,0), inset 0 0 0 1px rgba(255,255,255,.06); }
  28% { box-shadow: 0 0 0 2px color-mix(in srgb, var(--score-event-primary, #D7192A) 70%, white 10%), 0 0 26px color-mix(in srgb, var(--score-event-primary, #D7192A) 36%, transparent), inset 0 0 0 1px rgba(255,255,255,.18); }
  100% { box-shadow: 0 0 0 rgba(215,25,42,0), inset 0 0 0 1px rgba(255,255,255,.06); }
}

@supports not (background: color-mix(in srgb, red 50%, black)) {
  .rfcl-scoreboard-event-banner,
  .game-score-event-toast {
    background: linear-gradient(135deg, var(--score-event-primary), var(--score-event-secondary));
  }
}

@media (max-width: 620px) {
  .rfcl-scoreboard-event-banner {
    bottom: 6px;
    max-width: calc(100vw - 18px);
    padding: 7px 9px 7px 11px;
    gap: 7px;
  }

  .rfcl-scoreboard-event-label {
    font-size: .74rem;
    letter-spacing: .055em;
  }

  .rfcl-scoreboard-event-points {
    min-width: 30px;
    height: 21px;
    padding: 0 7px;
    font-size: .72rem;
  }

  .game-score-event-toast {
    width: calc(100% - 22px);
    border-radius: 20px;
    padding: 18px 14px;
  }
}


/* Score events now live in the same situation bars as down/distance. Disable the old toast overlays. */
.rfcl-score-event-toast,
.schedule-score-event-toast,
.rfcl-scoreboard-event-banner,
.game-score-event-toast {
  display: none !important;
}

.rfcl-scoreboard-live-situation {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  margin: .45rem .35rem .15rem;
  padding: .34rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.94);
  font-size: .68rem;
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.rfcl-scoreboard-live-situation span + span::before {
  content: '•';
  margin: 0 .35rem 0 0;
  color: rgba(255,255,255,.55);
}


.rfcl-scoreboard-team strong {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.rfcl-scoreboard-team strong > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rfcl-scoreboard-team-rank {
  flex: 0 0 auto;
  min-width: 21px;
  padding: 1px 4px;
  border: 1px solid rgba(245,181,27,.45);
  border-radius: 5px;
  background: rgba(245,181,27,.10);
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  font-size: .68em;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.team-schedule-opponent-name {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.team-schedule-opponent-name strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Admin live scoring team-colored controls. */
#schedule-admin .admin-live-score-team-actions {
  position: relative;
  overflow: hidden;
  padding: 9px;
  border-radius: var(--rfcl-radius-sm);
  border: 1px solid color-mix(in srgb, var(--live-team-primary, #D7192A) 52%, rgba(255,255,255,.12));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--live-team-primary, #D7192A) 18%, transparent), color-mix(in srgb, var(--live-team-panel, #061529) 58%, transparent)),
    rgba(255,255,255,.035);
}

#schedule-admin .admin-live-score-team-actions span {
  color: #fff;
  text-shadow: 0 1px 8px rgba(0,0,0,.5);
}

#schedule-admin .admin-live-score-team-actions button,
#schedule-admin .admin-live-score-team-button {
  border-color: color-mix(in srgb, var(--live-team-primary, #D7192A) 68%, rgba(255,255,255,.18)) !important;
  background:
    linear-gradient(135deg, var(--live-team-primary, #D7192A) 0%, var(--live-team-accent, #061529) 100%) !important;
  color: var(--live-team-text, #fff) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.26), inset 0 0 0 1px rgba(255,255,255,.10) !important;
  font-weight: 900 !important;
  text-shadow: 0 1px 10px rgba(0,0,0,.38);
}

#schedule-admin .admin-live-score-team-actions button:hover,
#schedule-admin .admin-live-score-team-button:hover {
  filter: brightness(1.08) saturate(1.08);
}

#schedule-admin .admin-live-score-team-actions button:disabled,
#schedule-admin .admin-live-score-team-button:disabled {
  filter: grayscale(.25) brightness(.78);
  opacity: .72;
}

#schedule-admin .admin-rules-section-list {
  display: grid;
  gap: 12px;
}

#schedule-admin .admin-rules-section-row {
  display: grid;
  gap: 12px;
}

#schedule-admin .admin-rules-section-heading,
#schedule-admin .admin-rules-editor-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

#schedule-admin .admin-rules-section-heading strong {
  color: #fff;
  font: 900 .82rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#schedule-admin .admin-rules-editor-actions {
  justify-content: flex-start;
}


/* === RFCL wide desktop layout + admin form readability polish (2026-05-30) ===
   Keeps mobile/tablet layouts unchanged, but lets the main content breathe on
   1080p displays with reduced scaling and on monitors above 1080p. */
@media (min-width: 1180px) {
  :root {
    --rfcl-wide-content-max: 1560px;
    --rfcl-wide-content-max-large: 1680px;
    --rfcl-wide-page-gutter: clamp(24px, 3vw, 72px);
  }

  .schedule-page,
  .standings-page,
  .rankings-page,
  .team-page,
  .admin-page,
  .game-page,
  .draft-page {
    padding-left: var(--rfcl-wide-page-gutter) !important;
    padding-right: var(--rfcl-wide-page-gutter) !important;
  }

  .schedule-hero,
  .schedule-shell,
  .standings-hero,
  .standings-shell,
  .rankings-hero,
  .rankings-shell,
  .admin-hero,
  .admin-shell,
  .team-hero,
  .team-detail-grid,
  .all-teams-page,
  .game-hero,
  .game-content,
  .draft-hero,
  .draft-layout,
  .auth-shell,
  .live-heading,
  .live-grid,
  .broadcast-inner {
    width: 100% !important;
    max-width: min(var(--rfcl-wide-content-max), calc(100vw - clamp(48px, 6vw, 144px))) !important;
  }

  .poll-hero,
  .poll-shell {
    width: 100% !important;
    max-width: min(1360px, calc(100vw - clamp(48px, 6vw, 144px))) !important;
  }

  .page-grid,
  .hero {
    max-width: min(var(--rfcl-wide-content-max-large), calc(100vw - clamp(48px, 6vw, 144px))) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .schedule-grid,
  .standings-conference-grid,
  .rankings-grid,
  .history-feature-grid,
  .coach-profile-grid,
  .sportsbook-board,
  .admin-grid,
  .admin-console-grid {
    gap: clamp(16px, 1.25vw, 24px) !important;
  }

  .schedule-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .all-teams-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1600px) {
  :root {
    --rfcl-wide-content-max: 1680px;
    --rfcl-wide-page-gutter: clamp(36px, 3.5vw, 96px);
  }

  .schedule-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-console-grid {
    grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr);
  }

  .team-detail-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  }

  .game-matchup {
    gap: clamp(22px, 2vw, 40px);
  }
}

@media (min-width: 1180px) and (max-width: 1399px) {
  .schedule-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Admin dark form controls: keep typed text, placeholders, autofill, and disabled
   values readable across all admin tabs. */
.admin-page input:not([type="checkbox"]):not([type="radio"]),
.admin-page textarea,
.admin-page select,
.admin-page .admin-card input:not([type="checkbox"]):not([type="radio"]),
.admin-page .admin-card textarea,
.admin-page .admin-card select,
#schedule-admin input:not([type="checkbox"]):not([type="radio"]),
#schedule-admin textarea,
#schedule-admin select {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
  background-color: rgba(2, 7, 18, .72) !important;
  color-scheme: dark;
}

.admin-page input::placeholder,
.admin-page textarea::placeholder,
#schedule-admin input::placeholder,
#schedule-admin textarea::placeholder {
  color: rgba(255,255,255,.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,.68) !important;
  opacity: 1 !important;
}

.admin-page input:disabled,
.admin-page textarea:disabled,
.admin-page select:disabled,
#schedule-admin input:disabled,
#schedule-admin textarea:disabled,
#schedule-admin select:disabled {
  color: rgba(255,255,255,.74) !important;
  -webkit-text-fill-color: rgba(255,255,255,.74) !important;
  opacity: 1 !important;
}

.admin-page input:-webkit-autofill,
.admin-page textarea:-webkit-autofill,
.admin-page select:-webkit-autofill,
#schedule-admin input:-webkit-autofill,
#schedule-admin textarea:-webkit-autofill,
#schedule-admin select:-webkit-autofill {
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 0 0 1000px rgba(2,7,18,.92) inset !important;
  caret-color: #ffffff !important;
}

.admin-page input::-webkit-calendar-picker-indicator,
#schedule-admin input::-webkit-calendar-picker-indicator {
  filter: invert(1) opacity(.88);
}

.admin-page select option,
#schedule-admin select option {
  color: #07111f;
  background: #ffffff;
}



/* === RFCL homepage final polish (2026-05-30) ===
   Keeps the hero full-bleed, removes the floating-logo layout problem, and
   makes the broadcast/social CTA row stable across desktop and mobile widths. */
.home-page main {
  overflow-x: clip;
}

.home-page .home-hero,
.home-page .hero {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-height: clamp(520px, 46vw, 720px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(315px, 430px) !important;
  align-items: center !important;
  gap: clamp(26px, 4vw, 58px) !important;
  padding: clamp(46px, 7vw, 90px) clamp(22px, 6vw, 96px) !important;
  border-bottom: 3px solid rgba(245,181,27,.9) !important;
  background:
    linear-gradient(90deg, rgba(2,7,18,.98) 0%, rgba(4,18,36,.93) 41%, rgba(2,7,18,.86) 70%, rgba(2,7,18,.98) 100%),
    radial-gradient(circle at 18% 18%, rgba(245,181,27,.18), transparent 24rem),
    radial-gradient(circle at 82% 28%, rgba(92,139,178,.18), transparent 26rem),
    linear-gradient(135deg, #030814 0%, #071a32 48%, #020712 100%) !important;
}

.home-page .home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .34;
  background:
    linear-gradient(90deg, transparent 0 8%, rgba(255,255,255,.055) 8.1% 8.3%, transparent 8.4% 22%, rgba(255,255,255,.04) 22.1% 22.25%, transparent 22.4% 36%, rgba(255,255,255,.045) 36.1% 36.25%, transparent 36.4% 50%, rgba(245,181,27,.18) 50.05% 50.25%, transparent 50.4% 64%, rgba(255,255,255,.045) 64.1% 64.25%, transparent 64.4% 78%, rgba(255,255,255,.04) 78.1% 78.25%, transparent 78.4% 92%, rgba(255,255,255,.055) 92.1% 92.3%, transparent 92.4% 100%),
    radial-gradient(ellipse at 50% 112%, rgba(255,255,255,.16), transparent 34%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 88%, transparent 100%);
}

.home-page .home-hero .field-lines {
  opacity: .38 !important;
}

.home-page .hero-content {
  max-width: 930px;
  z-index: 3;
}

.home-page .hero-content .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px !important;
  padding: 8px 12px;
  border: 1px solid rgba(245,181,27,.36);
  border-radius: 999px;
  background: rgba(2,7,18,.48);
  color: var(--gold);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.home-page .hero-title {
  max-width: 910px !important;
  font-size: clamp(3.45rem, 7.1vw, 7.8rem) !important;
  line-height: .86 !important;
  letter-spacing: -.035em !important;
  text-shadow: 0 18px 42px rgba(0,0,0,.42);
}

.home-page .hero-title::after {
  width: clamp(72px, 8vw, 132px) !important;
  height: 5px !important;
  margin: 22px 0 20px !important;
  background: linear-gradient(90deg, var(--gold), rgba(245,181,27,0)) !important;
}

.home-page .hero-text {
  max-width: 760px !important;
  color: rgba(247,251,255,.91) !important;
  font-size: clamp(1.05rem, 1.15vw, 1.24rem) !important;
  line-height: 1.72 !important;
}

.home-page .home-hero-highlights {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.home-page .home-hero-highlights span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  color: rgba(247,251,255,.88);
  font: 900 .78rem/1 Inter, system-ui, sans-serif;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.home-page .hero-actions {
  width: min(100%, 780px);
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px !important;
  margin-top: 28px !important;
}

.home-page .hero-actions .btn {
  min-width: 0 !important;
  width: 100%;
  min-height: 54px;
  padding: 0 14px;
  gap: 9px;
  border-radius: 12px;
  white-space: nowrap;
  box-shadow: 0 16px 30px rgba(0,0,0,.22);
}

.home-page .hero-actions .btn-red,
.home-page .hero-actions .btn-youtube {
  border: 1px solid rgba(245,181,27,.4);
  background: linear-gradient(180deg, #d7192a, #8f0e1a) !important;
  color: #fff !important;
}

.home-page .hero-actions .btn-outline {
  background: rgba(3,13,25,.72) !important;
  border-color: rgba(245,181,27,.68) !important;
  color: #ffe6a0 !important;
}

.home-page .hero-actions .icon {
  width: 18px !important;
  height: 18px !important;
  filter: invert(1) brightness(1.25) !important;
  flex: 0 0 auto;
}

.home-page .hero-logo-panel {
  position: absolute !important;
  right: clamp(28px, 8vw, 140px);
  top: 50%;
  transform: translateY(-50%);
  width: min(44vw, 620px);
  min-height: 0 !important;
  opacity: .105;
  z-index: 1;
  pointer-events: none;
  filter: saturate(.95) drop-shadow(0 30px 55px rgba(0,0,0,.45));
}

.home-page .hero-logo-wide {
  width: 100% !important;
  max-height: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.home-page .week-card {
  z-index: 4;
  align-self: center !important;
  min-height: 365px;
  border-radius: 18px !important;
  border-color: rgba(245,181,27,.7) !important;
  background:
    linear-gradient(180deg, rgba(7,25,47,.94), rgba(2,7,18,.97)),
    radial-gradient(circle at top right, rgba(245,181,27,.18), transparent 18rem) !important;
  box-shadow: 0 28px 60px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.07) !important;
}

.home-page .broadcast-section {
  margin-top: 0 !important;
  padding: clamp(34px, 4vw, 58px) clamp(18px, 4vw, 56px) !important;
  background:
    linear-gradient(180deg, rgba(2,7,18,.96), rgba(6,21,40,.9)),
    radial-gradient(circle at 50% 0%, rgba(245,181,27,.1), transparent 26rem);
}

.home-page .broadcast-inner,
.home-page .page-grid {
  width: 100% !important;
  max-width: min(1680px, calc(100vw - clamp(36px, 6vw, 128px))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.home-page .broadcast-grid {
  gap: clamp(18px, 2vw, 28px) !important;
}

.home-page .page-grid {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: clamp(20px, 3vw, 34px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
}

@media (min-width: 1500px) {
  .home-page .teams-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .home-page .home-hero,
  .home-page .hero {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding: clamp(34px, 7vw, 68px) clamp(18px, 5vw, 42px) !important;
  }

  .home-page .hero-logo-panel {
    width: min(62vw, 420px);
    right: 4vw;
    top: 28%;
    opacity: .08;
  }

  .home-page .week-card {
    width: min(100%, 760px);
    min-height: 0;
    align-self: stretch !important;
  }

  .home-page .page-grid {
    grid-template-columns: 1fr !important;
    max-width: min(100%, calc(100vw - 36px)) !important;
  }
}

@media (max-width: 820px) {
  .home-page .hero-actions {
    grid-template-columns: 1fr !important;
    width: min(100%, 420px);
  }

  .home-page .hero-actions .btn {
    justify-content: center;
  }

  .home-page .hero-title {
    font-size: clamp(2.85rem, 14vw, 4.75rem) !important;
  }

  .home-page .home-hero-highlights span {
    font-size: .72rem;
  }
}

@media (max-width: 560px) {
  .home-page .home-hero,
  .home-page .hero {
    padding-top: 28px !important;
    padding-bottom: 36px !important;
  }

  .home-page .hero-logo-panel {
    display: none !important;
  }

  .home-page .hero-text {
    font-size: 1rem !important;
  }

  .home-page .broadcast-inner,
  .home-page .page-grid {
    max-width: calc(100vw - 28px) !important;
  }
}


/* === RFCL homepage requested refinements (2026-05-30) ===
   Keeps the full-bleed hero and background watermark, but makes the hero shorter,
   converts the highlight pills into red action links, and restores clean broadcast CTA buttons. */
.home-page .home-hero,
.home-page .hero {
  min-height: clamp(420px, 34vw, 560px) !important;
  padding: clamp(32px, 4.5vw, 62px) clamp(22px, 6vw, 96px) !important;
  gap: clamp(20px, 3vw, 42px) !important;
  border-bottom-color: rgba(215,25,42,.9) !important;
  background:
    linear-gradient(90deg, rgba(2,7,18,.98) 0%, rgba(4,18,36,.93) 41%, rgba(2,7,18,.86) 70%, rgba(2,7,18,.98) 100%),
    radial-gradient(circle at 18% 18%, rgba(215,25,42,.18), transparent 24rem),
    radial-gradient(circle at 82% 28%, rgba(215,25,42,.10), transparent 26rem),
    linear-gradient(135deg, #030814 0%, #071a32 48%, #020712 100%) !important;
}

.home-page .home-hero::before {
  background:
    linear-gradient(90deg, transparent 0 8%, rgba(255,255,255,.05) 8.1% 8.3%, transparent 8.4% 22%, rgba(255,255,255,.035) 22.1% 22.25%, transparent 22.4% 36%, rgba(255,255,255,.04) 36.1% 36.25%, transparent 36.4% 50%, rgba(215,25,42,.22) 50.05% 50.25%, transparent 50.4% 64%, rgba(255,255,255,.04) 64.1% 64.25%, transparent 64.4% 78%, rgba(255,255,255,.035) 78.1% 78.25%, transparent 78.4% 92%, rgba(255,255,255,.05) 92.1% 92.3%, transparent 92.4% 100%),
    radial-gradient(ellipse at 50% 112%, rgba(255,255,255,.14), transparent 34%) !important;
}

.home-page .hero-content .eyebrow {
  margin-bottom: 12px !important;
  border-color: rgba(215,25,42,.46) !important;
  color: var(--rfcl-red, #d7192a) !important;
}

.home-page .hero-title {
  font-size: clamp(3rem, 5.9vw, 6.35rem) !important;
  line-height: .88 !important;
}

.home-page .hero-title strong,
.home-page .hero-title span {
  color: #f7fbff !important;
}

.home-page .hero-title strong {
  color: var(--rfcl-red, #d7192a) !important;
}

.home-page .hero-title::after {
  margin: 16px 0 16px !important;
  background: linear-gradient(90deg, var(--rfcl-red), rgba(215,25,42,0)) !important;
}

.home-page .hero-text {
  max-width: 720px !important;
  font-size: clamp(1rem, 1.05vw, 1.15rem) !important;
  line-height: 1.58 !important;
}

.home-page .home-hero-highlights {
  margin-top: 16px !important;
}

.home-page .home-hero-highlights a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 13px;
  border: 1px solid rgba(215,25,42,.56);
  border-radius: 999px;
  background: rgba(215,25,42,.12);
  color: #fff;
  font: 900 .78rem/1 Inter, system-ui, sans-serif;
  letter-spacing: .09em;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.home-page .home-hero-highlights a:hover {
  transform: translateY(-1px);
  background: rgba(215,25,42,.28);
  border-color: var(--rfcl-red, #d7192a);
  box-shadow: 0 10px 20px rgba(215,25,42,.16), inset 0 1px 0 rgba(255,255,255,.12);
}

.home-page .hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  width: auto !important;
  gap: 14px !important;
  margin-top: 22px !important;
}

.home-page .hero-actions .btn,
.home-page .hero-actions .btn-outline,
.home-page .hero-actions .btn-youtube,
.home-page .hero-actions .btn-twitch,
.home-page .hero-actions .btn-discord {
  width: auto !important;
  min-width: 0 !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 6px !important;
  color: #f7fbff !important;
  background: rgba(2,7,18,.58) !important;
  border: 2px solid rgba(215,25,42,.85) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.24) !important;
}

.home-page .hero-actions .btn:hover {
  transform: translateY(-2px);
  filter: none !important;
  color: #fff !important;
}

.home-page .hero-actions .btn-youtube:hover {
  background: rgba(255,0,0,.25) !important;
  border-color: #ff0000 !important;
  box-shadow: 0 16px 30px rgba(255,0,0,.22) !important;
}

.home-page .hero-actions .btn-twitch:hover {
  background: rgba(145,70,255,.24) !important;
  border-color: #9146ff !important;
  box-shadow: 0 16px 30px rgba(145,70,255,.22) !important;
}

.home-page .hero-actions .btn-discord:hover {
  background: rgba(88,101,242,.24) !important;
  border-color: #5865f2 !important;
  box-shadow: 0 16px 30px rgba(88,101,242,.22) !important;
}

.home-page .hero-actions .icon {
  width: 21px !important;
  height: 21px !important;
  filter: invert(1) brightness(1.15) !important;
}

.home-page .week-card {
  min-height: 300px !important;
  border-color: rgba(215,25,42,.72) !important;
  background:
    linear-gradient(180deg, rgba(7,25,47,.94), rgba(2,7,18,.97)),
    radial-gradient(circle at top right, rgba(215,25,42,.20), transparent 18rem) !important;
}

.home-page .card-label,
.home-page .week-card .card-label {
  color: var(--rfcl-red, #d7192a) !important;
}

.home-page .broadcast-section {
  background:
    linear-gradient(180deg, rgba(2,7,18,.96), rgba(6,21,40,.9)),
    radial-gradient(circle at 50% 0%, rgba(215,25,42,.10), transparent 26rem) !important;
}

.home-page .broadcast-heading span {
  color: var(--rfcl-red, #d7192a) !important;
}

.home-page .broadcast-heading h2::after {
  background: linear-gradient(90deg, var(--rfcl-red), transparent) !important;
}

@media (max-width: 1180px) {
  .home-page .home-hero,
  .home-page .hero {
    padding-top: clamp(30px, 6vw, 54px) !important;
    padding-bottom: clamp(30px, 6vw, 54px) !important;
  }
}

@media (max-width: 820px) {
  .home-page .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100%, 420px) !important;
  }

  .home-page .hero-actions .btn {
    width: 100% !important;
  }

  .home-page .hero-title {
    font-size: clamp(2.65rem, 12vw, 4.4rem) !important;
  }
}


/* === RFCL homepage color correction (standard site red, not bright red) === */
.home-page .hero-content .eyebrow,
.home-page .hero-title strong,
.home-page .home-hero-highlights a:hover,
.home-page .card-label,
.home-page .week-card .card-label,
.home-page .broadcast-heading span {
  color: var(--rfcl-red, #d7192a) !important;
}

.home-page .home-hero-highlights a {
  border-color: rgba(215,25,42,.56) !important;
  background: rgba(215,25,42,.12) !important;
}

.home-page .home-hero-highlights a:hover {
  border-color: var(--rfcl-red, #d7192a) !important;
  background: rgba(215,25,42,.24) !important;
}

.home-page .hero-title::after,
.home-page .broadcast-heading h2::after {
  background: linear-gradient(90deg, var(--rfcl-red, #d7192a), rgba(215,25,42,0)) !important;
}

.home-page .home-hero,
.home-page .hero {
  border-bottom-color: rgba(215,25,42,.9) !important;
}

/* === RFCL homepage broadcast live embed fix ===
   Keep Twitch and YouTube cards the same size and make the YouTube card explain
   exactly what is missing until a permanent YouTube Channel ID is configured. */
.home-page .broadcast-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}

.home-page .broadcast-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

.home-page .broadcast-frame {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9 !important;
}

.home-page .youtube-live-fallback {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: none;
  place-items: center;
  align-content: center;
  gap: 10px;
  padding: clamp(18px, 3vw, 34px);
  color: #fff;
  text-align: center;
  text-decoration: none;
  background:
    radial-gradient(circle at center, rgba(215,25,42,.20), transparent 18rem),
    linear-gradient(180deg, rgba(7,25,47,.88), rgba(2,7,18,.96));
}

.home-page .youtube-live-fallback strong {
  display: block;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.35rem, 2.8vw, 2.35rem);
  line-height: .95;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.home-page .youtube-live-fallback span {
  display: block;
  max-width: 34rem;
  color: rgba(255,255,255,.76);
  font-weight: 800;
  line-height: 1.45;
}

.home-page .needs-youtube-channel-id .broadcast-frame::before,
.home-page .needs-youtube-channel-id .broadcast-frame::after {
  content: none !important;
  display: none !important;
}

.home-page .needs-youtube-channel-id iframe {
  display: none !important;
}

.home-page .needs-youtube-channel-id .youtube-live-fallback {
  display: grid !important;
}

@media (max-width: 1050px) {
  .home-page .broadcast-grid {
    grid-template-columns: 1fr !important;
  }
}

/* === Rules page selector layout (2026-05-30) === */
.rules-shell {
  display: grid;
  gap: 18px;
}

.rules-selector-panel {
  display: grid;
  grid-template-columns: minmax(260px, 420px) minmax(220px, 1fr);
  gap: 16px;
  align-items: end;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
}

.rules-selector-panel label {
  display: grid;
  gap: 8px;
}

.rules-selector-panel label span,
.rules-section-kicker {
  color: var(--rfcl-red, #d7192a);
  font: 900 .78rem/1 Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.rules-section-select {
  width: 100%;
  min-height: 48px;
  padding: 0 42px 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(2,7,18,.72);
  color: #fff;
  font: 900 1rem/1 Inter, system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: .02em;
}

.rules-section-select:focus {
  outline: 2px solid rgba(215,25,42,.42);
  outline-offset: 2px;
  border-color: rgba(215,25,42,.58);
}

.rules-selector-panel p {
  margin: 0;
  color: var(--muted);
  font-weight: 750;
  line-height: 1.45;
}

.rules-page-stack {
  min-height: 420px;
}

.rules-section-page {
  display: none;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 100% 0%, rgba(215,25,42,.12), transparent 22rem),
    linear-gradient(180deg, rgba(6,24,44,.96), rgba(2,7,18,.9));
  box-shadow: 0 20px 42px rgba(0,0,0,.28);
  padding: clamp(20px, 3vw, 34px);
}

.rules-section-page.is-active {
  display: block;
}

.rules-section-page h2 {
  margin: 8px 0 18px;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: .92;
}

.rules-section-page h2::after {
  display: none;
}

.rules-section-body {
  max-width: 1040px;
  display: grid;
  gap: 14px;
}

.rules-section-paragraph {
  margin: 0;
  color: rgba(255,255,255,.86);
  font-size: clamp(.98rem, 1.05vw, 1.08rem);
  font-weight: 650;
  line-height: 1.72;
  white-space: normal;
}

.rules-section-paragraph + .rules-section-paragraph {
  padding-top: 2px;
}

@media (max-width: 760px) {
  .rules-selector-panel {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .rules-page-stack {
    min-height: 0;
  }

  .rules-section-page {
    padding: 18px;
  }
}


/* === RFCL public schedule layout guard (2026-05-30) ===
   The public schedule must stay two game cards per row on desktop/wide screens.
   Keep mobile as one card per row. */
.schedule-page .schedule-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

@media (max-width: 840px) {
  .schedule-page .schedule-grid {
    grid-template-columns: 1fr !important;
  }
}

/* === 20260530 Stats Hub rework: team/player selector + season/team filters === */
.stats-hub-page {
  --stats-card-bg: rgba(3, 13, 27, .82);
  --stats-panel-bg: rgba(2, 7, 18, .44);
}

.stats-hub-hero {
  grid-template-columns: 140px 1fr;
  overflow: hidden;
  position: relative;
  border-color: rgba(215,25,42,.42);
}

.stats-hub-hero::before {
  content: "";
  position: absolute;
  inset: -1px;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 18%, rgba(215,25,42,.26), transparent 16rem),
    linear-gradient(120deg, rgba(245,181,27,.08), transparent 42%);
}

.stats-hub-hero > * {
  position: relative;
  z-index: 1;
}

.stats-hub-mark {
  width: 116px;
  height: 116px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(245,181,27,.32);
  background: radial-gradient(circle, rgba(255,255,255,.08), rgba(2,7,18,.56));
  box-shadow: inset 0 0 28px rgba(245,181,27,.08), 0 18px 35px rgba(0,0,0,.32);
}

.stats-hub-mark img {
  width: 92px;
  height: 92px;
  object-fit: contain;
  margin: 0;
  float: none;
}

.stats-hub-shell {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(18px, 3vw, 28px);
  display: grid;
  gap: 18px;
  border-color: rgba(255,255,255,.13);
  background:
    linear-gradient(180deg, rgba(6,21,41,.94), rgba(2,7,18,.72)),
    radial-gradient(circle at top right, rgba(215,25,42,.16), transparent 28rem);
}

.stats-page-selector {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 14px;
  background: rgba(0,0,0,.22);
}

.stats-page-selector a {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 11px;
  color: rgba(247,251,255,.72);
  background: rgba(255,255,255,.035);
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.04rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.stats-page-selector a:hover,
.stats-page-selector a.active {
  color: #fff;
  border-color: rgba(215,25,42,.78);
  background: linear-gradient(180deg, rgba(215,25,42,.78), rgba(143,13,27,.88));
  box-shadow: 0 12px 24px rgba(215,25,42,.18);
}

.stats-filter-bar {
  display: grid;
  grid-template-columns: minmax(180px, .7fr) minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: end;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
}

.stats-filter-bar label {
  display: grid;
  gap: 7px;
}

.stats-filter-bar span {
  color: rgba(216,222,232,.7);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .11em;
}

.stats-filter-bar select,
.stats-filter-bar button {
  min-height: 46px;
  border-radius: 10px;
  font-weight: 900;
}

.stats-filter-bar select {
  width: 100%;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(2,7,18,.78);
  color: #fff;
  padding: 0 12px;
  outline: none;
}

.stats-filter-bar select:focus {
  border-color: rgba(245,181,27,.55);
  box-shadow: 0 0 0 3px rgba(245,181,27,.10);
}

.stats-filter-bar button {
  padding: 0 22px;
  border: 1px solid rgba(215,25,42,.75);
  background: linear-gradient(180deg, #d7192a, #8f0d1b);
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
  letter-spacing: .08em;
  cursor: pointer;
}

.stats-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.stats-overview-grid article {
  min-height: 120px;
  display: grid;
  align-content: center;
  gap: 7px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(2,7,18,.45);
  box-shadow: 0 16px 30px rgba(0,0,0,.18);
}

.stats-overview-grid span,
.stats-overview-grid em {
  color: rgba(216,222,232,.7);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-style: normal;
}

.stats-overview-grid strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1;
  text-transform: uppercase;
}

.stats-section-heading,
.stats-table-title {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
}

.stats-section-heading p {
  margin: 0 0 3px;
  color: var(--rfcl-red, #d7192a);
  font-family: Oswald, Impact, sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.stats-section-heading h2,
.stats-table-title h3,
.stats-player-placeholder h2 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.stats-section-heading h2 {
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: .95;
}

.stats-section-heading span,
.stats-table-title span,
.stats-panel-note,
.stats-player-placeholder span,
.stats-player-coming-grid span {
  color: var(--muted, #b9c7d8);
  font-weight: 700;
  line-height: 1.55;
}

.stats-team-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
}

.stats-team-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--team-primary, #d7192a) 24%, transparent), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(2,7,18,.64);
  box-shadow: 0 18px 32px rgba(0,0,0,.22);
}

.stats-team-card::after {
  content: "";
  position: absolute;
  inset: auto -30px -70px auto;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--team-secondary, #061529) 58%, transparent);
  opacity: .6;
}

.stats-team-card > * {
  position: relative;
  z-index: 1;
}

.stats-team-card-head {
  display: flex;
  align-items: center;
  gap: 13px;
}

.stats-team-card-head img {
  width: 58px;
  height: 58px;
  object-fit: contain;
  border-radius: 14px;
  padding: 7px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
}

.stats-team-card-head span {
  display: inline-flex;
  margin-bottom: 4px;
  color: var(--gold, #f5b51b);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.stats-team-card-head h3 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.38rem;
  line-height: .98;
  text-transform: uppercase;
}

.stats-team-card dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.stats-team-card dl div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 11px;
  background: rgba(0,0,0,.20);
}

.stats-team-card dt {
  margin-bottom: 5px;
  color: rgba(216,222,232,.64);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.stats-team-card dd {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.25rem;
  font-weight: 800;
}

.stats-table-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 16px;
  background: rgba(2,7,18,.38);
}

.stats-table-title h3 {
  color: var(--gold, #f5b51b);
  font-size: 1.45rem;
}

.stats-table-scroll {
  width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
}

.public-stats-table.stats-hub-table {
  min-width: 980px;
  margin: 0;
  border-radius: 0;
}

.stats-hub-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(3,13,27,.98);
  color: var(--gold, #f5b51b);
  white-space: nowrap;
}

.stats-hub-table td {
  color: rgba(247,251,255,.86);
  white-space: nowrap;
}

.stats-hub-table tbody tr:hover td {
  background: rgba(255,255,255,.035);
}

.stats-table-team {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 190px;
}

.stats-table-team img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  border-radius: 9px;
  padding: 4px;
  background: rgba(255,255,255,.08);
}

.stats-table-team strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.stats-submission-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.stats-submission-list article {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.stats-submission-list strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.stats-submission-list span {
  color: var(--gold, #f5b51b);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.stats-submission-list em {
  color: var(--muted, #b9c7d8);
  font-style: normal;
  font-size: .86rem;
}

.stats-empty-state,
.stats-player-placeholder {
  display: grid;
  gap: 18px;
  padding: clamp(22px, 4vw, 36px);
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  background:
    radial-gradient(circle at top left, rgba(215,25,42,.16), transparent 24rem),
    rgba(2,7,18,.40);
}

.stats-empty-state h2,
.stats-player-placeholder p {
  margin: 0;
  color: var(--gold, #f5b51b);
  font-family: Oswald, Impact, sans-serif;
  text-transform: uppercase;
}

.stats-empty-state p,
.stats-player-placeholder span {
  margin: 0;
}

.stats-player-placeholder p {
  color: var(--rfcl-red, #d7192a);
  font-weight: 900;
  letter-spacing: .11em;
}

.stats-player-placeholder h2 {
  max-width: 720px;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: .95;
}

.stats-player-coming-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.stats-player-coming-grid article {
  padding: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
}

.stats-player-coming-grid strong {
  display: block;
  margin-bottom: 6px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.24rem;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .stats-hub-hero {
    grid-template-columns: 1fr;
  }

  .stats-hub-mark {
    display: none;
  }

  .stats-filter-bar,
  .stats-overview-grid,
  .stats-player-coming-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .stats-filter-bar button {
    grid-column: 1 / -1;
  }

  .stats-section-heading,
  .stats-table-title {
    display: grid;
  }
}

@media (max-width: 640px) {
  .stats-page-selector,
  .stats-filter-bar,
  .stats-overview-grid,
  .stats-player-coming-grid {
    grid-template-columns: 1fr;
  }

  .stats-team-card dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .stats-hub-shell {
    padding: 14px;
  }
}

/* Player Stats buildout */
.stats-player-board{display:grid;gap:22px}.player-overview article{position:relative;overflow:hidden}.player-overview article::after{content:"";position:absolute;inset:auto -28px -46px auto;width:108px;height:108px;border-radius:999px;background:rgba(215,25,42,.16)}.stats-player-leader-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stats-player-leader-strip article{border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border-radius:20px;padding:18px;box-shadow:0 16px 36px rgba(0,0,0,.2)}.stats-player-leader-strip span{display:block;color:rgba(255,255,255,.58);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.stats-player-leader-strip strong{display:block;color:#fff;font-family:Oswald,Inter,sans-serif;font-size:2rem;line-height:1;margin-top:8px}.stats-player-leader-strip em{display:block;color:rgba(255,255,255,.72);font-style:normal;margin-top:6px}.player-category-panel .stats-table-title{align-items:flex-start}.player-category-panel .stats-table-title p{margin:4px 0 0;color:rgba(255,255,255,.6);font-size:.86rem}.player-stats-table th,.player-stats-table td{text-align:center}.player-stats-table th:first-child,.player-stats-table td:first-child,.player-stats-table th:nth-child(2),.player-stats-table td:nth-child(2){text-align:left}.stats-player-name{display:flex;flex-direction:column;gap:2px}.stats-player-name strong{color:#fff}.stats-player-name em{color:rgba(255,255,255,.55);font-style:normal;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.player-stats-entry-card{margin-top:28px}.player-stat-form{display:grid;gap:18px}.player-stat-meta-grid{display:grid;grid-template-columns:2fr .7fr 1fr 2fr;gap:14px}.player-stat-meta-grid label,.player-stat-fieldset label{display:grid;gap:7px;color:rgba(255,255,255,.72);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.player-stat-meta-grid input,.player-stat-meta-grid select,.player-stat-fieldset input,.player-stat-fieldset select{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(3,10,22,.76);color:#fff;padding:12px 13px;font:inherit;text-transform:none;letter-spacing:0}.player-stat-meta-grid input:disabled,.player-stat-fieldset input:disabled{opacity:.65;background:rgba(255,255,255,.055)}.player-stat-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.player-stat-fieldset{border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border-radius:20px;padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.player-stat-fieldset legend{padding:0 8px;color:#fff;font-family:Oswald,Inter,sans-serif;font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em}.player-stat-fieldset .auto-stat-field input{border-style:dashed;color:rgba(255,255,255,.58)}.player-stat-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.player-stat-entry-list{display:grid;gap:10px;margin-top:20px}.player-stat-line-item{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:18px;padding:14px}.player-stat-line-item strong{display:block;color:#fff}.player-stat-line-item span{display:block;color:rgba(255,255,255,.68);font-size:.88rem;margin-top:2px}.player-stat-line-item em{display:block;color:rgba(255,255,255,.45);font-size:.78rem;font-style:normal;margin-top:3px}.player-stat-line-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.player-stat-line-actions form{margin:0}.player-stat-line-actions button{border:1px solid rgba(215,25,42,.45);background:rgba(215,25,42,.12);color:#fff;border-radius:999px;padding:8px 13px;font-weight:900;cursor:pointer}.player-stats-admin-section{display:grid;gap:20px}.player-stats-filter-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.player-stats-admin-card{display:grid;gap:16px}.admin-player-stat-list{display:grid;gap:10px}@media (max-width:980px){.stats-player-leader-strip,.player-stat-section-grid{grid-template-columns:1fr}.player-stat-meta-grid,.player-stats-filter-form{grid-template-columns:1fr 1fr}.player-stat-fieldset{grid-template-columns:1fr}}@media (max-width:640px){.player-stat-meta-grid,.player-stats-filter-form{grid-template-columns:1fr}.player-stat-line-item{align-items:flex-start;flex-direction:column}.player-stat-line-actions{width:100%;justify-content:flex-start}.stats-player-leader-strip article{padding:15px}.stats-player-leader-strip strong{font-size:1.6rem}}


/* === 20260530 Player Stats polish: branded cards, team logos, no player numbers === */
.stats-player-board.team-selected {
  padding: 1px;
  border-radius: 22px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--team-primary, #d7192a) 34%, transparent), transparent 38%);
}

.stats-player-board.team-selected > * {
  margin-left: 0;
  margin-right: 0;
}

.stats-player-team-focus {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 20px;
  background:
    radial-gradient(circle at 7% 25%, color-mix(in srgb, var(--team-primary, #d7192a) 34%, transparent), transparent 18rem),
    linear-gradient(135deg, color-mix(in srgb, var(--team-secondary, #061529) 34%, transparent), rgba(2,7,18,.76));
  box-shadow: 0 20px 40px rgba(0,0,0,.24);
}

.stats-player-team-focus::after {
  content: "";
  position: absolute;
  inset: auto -80px -120px auto;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--team-primary, #d7192a) 22%, transparent);
}

.stats-player-team-focus > * {
  position: relative;
  z-index: 1;
}

.stats-player-team-focus img {
  width: 86px;
  height: 86px;
  object-fit: contain;
  border-radius: 20px;
  padding: 10px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: inset 0 0 24px rgba(255,255,255,.04);
}

.stats-player-team-focus span {
  display: block;
  margin-bottom: 4px;
  color: var(--gold, #f5b51b);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.stats-player-team-focus h2 {
  margin: 0;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(2rem, 4vw, 3.45rem);
  line-height: .92;
  text-transform: uppercase;
}

.stats-player-team-focus p {
  margin: 8px 0 0;
  color: rgba(247,251,255,.72);
  font-weight: 800;
}

.player-overview article,
.stats-player-leader-strip article {
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 28%, rgba(255,255,255,.10));
}

.player-overview article::after {
  background: color-mix(in srgb, var(--team-primary, #d7192a) 22%, transparent);
}

.stats-player-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
}

.stats-player-card {
  min-height: 100%;
}

.stats-player-card-head {
  align-items: flex-start;
}

.stats-player-card-head em {
  display: block;
  margin-top: 5px;
  color: rgba(247,251,255,.62);
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.stats-player-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: -4px;
}

.stats-player-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 44%, rgba(255,255,255,.12));
  background: color-mix(in srgb, var(--team-primary, #d7192a) 16%, rgba(255,255,255,.04));
  color: #fff;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.player-table-team img {
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 35%, rgba(255,255,255,.14));
}

.player-category-panel {
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 16%, rgba(255,255,255,.11));
}

@media (max-width: 640px) {
  .stats-player-team-focus {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
  }
}

/* Player stat entry meta adapts after removing player numbers. */
.player-stat-meta-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.secondary-action {
  justify-self: start;
}

.roster-bulk-list {
  display: grid;
  gap: 8px;
}

.roster-bulk-header,
.roster-bulk-row {
  display: grid;
  grid-template-columns: 72px minmax(220px, 1fr) 120px 100px auto;
  gap: 8px;
  align-items: center;
}

.roster-bulk-header {
  color: rgba(255,255,255,.56);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 0 4px;
}

.roster-bulk-row {
  padding: 8px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.roster-bulk-row input {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  background: rgba(3,10,22,.76);
  color: #fff;
  padding: 9px 10px;
  font: inherit;
}

@media (max-width: 760px) {
  .roster-bulk-header {
    display: none;
  }

  .roster-bulk-row {
    grid-template-columns: 72px 1fr;
  }

  .roster-bulk-row input[aria-label="Player name"],
  .roster-bulk-row button {
    grid-column: 1 / -1;
  }
}

.roster-edit-all-form {
  margin-bottom: 18px;
}

/* === 20260530 stats tables: schedule-style permanent row branding === */
.stats-player-table-note {
  margin: -4px 0 2px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
  color: rgba(247,251,255,.72);
}

/*
  These stat rows intentionally reuse the schedule page's team-highlight logic.
  The prior version painted individual cells, which made the gradient restart in
  every column. This paints the row once, then leaves every cell transparent so
  the color flows smoothly across the full table width.
*/
.stats-hub-table tbody tr.stats-branded-row {
  position: relative;
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--row-primary, #f5b51b) 24%, transparent),
      color-mix(in srgb, var(--row-secondary, #061529) 14%, transparent)) !important;
  box-shadow:
    inset 3px 0 0 color-mix(in srgb, var(--row-primary, #f5b51b) 78%, white 22%),
    inset 0 1px 0 rgba(255,255,255,.035),
    inset 0 -1px 0 rgba(0,0,0,.22);
}

.stats-hub-table tbody tr.stats-branded-row td {
  background: transparent !important;
  border-bottom-color: color-mix(in srgb, var(--row-primary, #f5b51b) 22%, rgba(255,255,255,.10));
  color: rgba(247,251,255,.9);
  transition: color .16s ease, border-color .16s ease;
}

.stats-hub-table tbody tr.stats-branded-row:hover,
.stats-hub-table tbody tr.stats-branded-row:focus-within {
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--row-primary, #f5b51b) 28%, transparent),
      color-mix(in srgb, var(--row-secondary, #061529) 17%, transparent)) !important;
  box-shadow:
    inset 3px 0 0 color-mix(in srgb, var(--row-primary, #f5b51b) 88%, white 12%),
    inset 0 0 0 1px color-mix(in srgb, var(--row-primary, #f5b51b) 30%, rgba(255,255,255,.12));
}

.stats-hub-table tbody tr.stats-branded-row:hover td,
.stats-hub-table tbody tr.stats-branded-row:focus-within td {
  background: transparent !important;
}

.stats-hub-table tbody tr.stats-branded-row td:first-child {
  border-left: 1px solid color-mix(in srgb, var(--row-primary, #f5b51b) 42%, rgba(255,255,255,.12));
}

.stats-hub-table tbody tr.stats-branded-row td:last-child {
  border-right: 1px solid color-mix(in srgb, var(--row-secondary, #061529) 38%, rgba(255,255,255,.10));
}

.stats-hub-table tbody tr.stats-branded-row .stats-table-team img,
.stats-hub-table tbody tr.stats-branded-row .player-table-team img {
  border: 1px solid color-mix(in srgb, var(--row-primary, #f5b51b) 46%, rgba(255,255,255,.16));
  background: color-mix(in srgb, var(--row-secondary, #061529) 36%, rgba(255,255,255,.08));
  box-shadow: 0 6px 14px rgba(0,0,0,.22);
}

.stats-hub-table tbody tr.stats-branded-row .stats-table-team strong,
.stats-hub-table tbody tr.stats-branded-row .stats-player-name strong {
  color: #fff;
  text-shadow: 0 1px 3px rgba(0,0,0,.42);
}

.stats-hub-table tbody tr.player-stats-row .stats-player-name em {
  color: color-mix(in srgb, var(--row-primary, #f5b51b) 36%, rgba(247,251,255,.66));
}


/* === 20260530 stats logo cleanup: remove boxed logo containers ===
   Keep the permanent schedule-style row branding, but let team logos sit
   directly on the row/card background like schedule logos do. */
.stats-team-card-head img,
.stats-table-team img,
.player-table-team img,
.stats-player-team-focus img,
.stats-hub-table tbody tr.stats-branded-row .stats-table-team img,
.stats-hub-table tbody tr.stats-branded-row .player-table-team img {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  filter: drop-shadow(0 5px 10px rgba(0,0,0,.28));
}

.stats-table-team img,
.player-table-team img,
.stats-hub-table tbody tr.stats-branded-row .stats-table-team img,
.stats-hub-table tbody tr.stats-branded-row .player-table-team img {
  width: 34px;
  height: 34px;
}

.stats-team-card-head img {
  width: 58px;
  height: 58px;
}

.stats-player-team-focus img {
  width: 92px;
  height: 92px;
}

/* === 20260530 stats sorting + top-10 pagination === */
.stats-sort-button {
  appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 900;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  white-space: nowrap;
}

.stats-sort-button::after {
  content: "↕";
  color: rgba(245,181,27,.48);
  font-size: .72em;
  transform: translateY(-1px);
}

.stats-sort-button.active::after {
  color: var(--gold, #f5b51b);
}

.stats-sort-button.active.desc::after {
  content: "↓";
}

.stats-sort-button.active.asc::after {
  content: "↑";
}

.stats-sort-button:hover,
.stats-sort-button:focus-visible {
  color: #fff;
  outline: none;
}

.stats-table-pager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  padding-top: 4px;
}

.stats-table-pager[hidden] {
  display: none !important;
}

.stats-table-page-label {
  margin-right: 4px;
  color: rgba(247,251,255,.62);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.stats-table-pager button {
  min-width: 34px;
  min-height: 34px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  color: rgba(247,251,255,.82);
  font-weight: 900;
  cursor: pointer;
}

.stats-table-pager button:hover:not(:disabled),
.stats-table-pager button:focus-visible,
.stats-table-pager button.active {
  border-color: rgba(245,181,27,.55);
  background: rgba(245,181,27,.16);
  color: #fff;
  outline: none;
}

.stats-table-pager button:disabled {
  opacity: .42;
  cursor: not-allowed;
}

@media (max-width: 640px) {
  .stats-table-pager {
    justify-content: flex-start;
  }
}


/* === 20260530 player leaderboard rank numbers === */
.player-stats-table .stats-player-name {
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.stats-player-name-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.stats-row-rank {
  flex: 0 0 auto;
  min-width: 2.15em;
  color: color-mix(in srgb, var(--row-primary, #f5b51b) 74%, #ffffff 26%);
  font-family: Oswald, Inter, sans-serif;
  font-size: .95rem;
  font-weight: 900;
  line-height: 1;
  text-align: right;
  letter-spacing: .02em;
  text-shadow: 0 1px 3px rgba(0,0,0,.45);
}

.stats-row-rank::before {
  content: '#';
  color: rgba(247,251,255,.48);
  font-size: .74em;
  margin-right: 1px;
}

@media (max-width: 640px) {
  .stats-row-rank {
    min-width: 1.8em;
  }
}


/* === 20260531 season roster system === */
.team-roster-section {
  margin: 28px auto 0;
  width: min(1180px, calc(100% - 32px));
}

.team-roster-card {
  display: grid;
  grid-template-columns: minmax(220px, .34fr) minmax(0, 1fr);
  gap: 18px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 28%, rgba(255,255,255,.11));
  border-radius: 26px;
  background:
    radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--team-primary, #d7192a) 23%, transparent), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  box-shadow: 0 24px 60px rgba(0,0,0,.26);
  overflow: hidden;
}

.team-roster-summary {
  padding: 22px;
  border-right: 1px solid rgba(255,255,255,.09);
  background: linear-gradient(160deg, color-mix(in srgb, var(--team-secondary, #061529) 34%, rgba(3,10,22,.82)), rgba(3,10,22,.54));
}

.team-roster-summary > strong {
  display: block;
  color: #fff;
  font-family: Oswald, Inter, sans-serif;
  font-size: clamp(2.4rem, 6vw, 4.6rem);
  line-height: .9;
  text-shadow: 0 10px 28px rgba(0,0,0,.34);
}

.team-roster-summary > span {
  display: block;
  margin-top: 7px;
  color: rgba(247,251,255,.68);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.team-roster-position-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 18px;
}

.team-roster-position-chips span {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  color: rgba(247,251,255,.78);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .07em;
}

.team-roster-position-chips strong {
  color: color-mix(in srgb, var(--team-primary, #f5b51b) 58%, #fff 42%);
}

.team-roster-table-wrap {
  max-height: 520px;
  overflow: auto;
}

.team-roster-table {
  width: 100%;
  border-collapse: collapse;
}

.team-roster-table th,
.team-roster-table td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: rgba(247,251,255,.78);
  text-align: left;
}

.team-roster-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: rgba(3,10,22,.94);
  color: rgba(247,251,255,.58);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.team-roster-table td strong {
  color: #fff;
}

.team-roster-table .roster-num {
  width: 58px;
  color: color-mix(in srgb, var(--team-primary, #f5b51b) 64%, #fff 36%);
  font-family: Oswald, Inter, sans-serif;
  font-weight: 900;
  font-size: 1.05rem;
}

.roster-admin-card {
  display: grid;
  gap: 16px;
}

.roster-filter-form {
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
}

.roster-admin-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.roster-admin-grid {
  display: grid;
  grid-template-columns: .45fr minmax(220px, 1.7fr) .65fr .65fr;
  gap: 12px;
}

.roster-admin-grid label {
  display: grid;
  gap: 7px;
  color: rgba(255,255,255,.72);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.roster-admin-grid input {
  width: 100%;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: rgba(3,10,22,.76);
  color: #fff;
  padding: 12px 13px;
  font: inherit;
}

.roster-admin-list {
  display: grid;
  gap: 9px;
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}

.roster-admin-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: rgba(255,255,255,.04);
  padding: 12px 14px;
}

.roster-admin-row strong {
  display: block;
  color: #fff;
}

.roster-admin-row span {
  display: block;
  margin-top: 2px;
  color: rgba(247,251,255,.58);
  font-size: .82rem;
}

.roster-player-select {
  min-width: 0;
}

@media (max-width: 900px) {
  .team-roster-card,
  .roster-filter-form,
  .roster-admin-grid {
    grid-template-columns: 1fr;
  }

  .team-roster-summary {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .roster-admin-row {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* === RFCL temporary home stadium hero + coach profile upload cleanup (2026-05-31) === */
.home-page .home-hero,
.home-page .hero.home-hero {
  background:
    linear-gradient(90deg, rgba(2,7,18,.96) 0%, rgba(2,7,18,.78) 38%, rgba(2,7,18,.56) 63%, rgba(2,7,18,.92) 100%),
    linear-gradient(180deg, rgba(2,7,18,.46) 0%, rgba(2,7,18,.18) 40%, rgba(2,7,18,.82) 100%),
    url('/assets/images/home/home-hero-placeholder.jpg?v=20260531') center center / cover no-repeat !important;
  border-bottom-color: rgba(215,25,42,.9) !important;
}

.home-page .home-hero::before {
  opacity: .42 !important;
  background:
    radial-gradient(circle at 50% 36%, rgba(255,255,255,.18), transparent 18rem),
    radial-gradient(circle at 18% 42%, rgba(215,25,42,.26), transparent 20rem),
    linear-gradient(90deg, rgba(255,255,255,.04), transparent 18%, transparent 82%, rgba(255,255,255,.04)) !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%) !important;
}

.home-page .home-hero .field-lines {
  opacity: .12 !important;
}

.home-page .home-hero .hero-content,
.home-page .home-hero .week-card,
.home-page .home-hero .hero-logo-panel {
  position: relative;
  z-index: 3;
}

.coach-profile-upload-preview {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
}

.coach-profile-upload-preview img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 12px 24px rgba(0,0,0,.28);
}

.admin-checkbox-row {
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 8px !important;
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.admin-checkbox-row input[type="checkbox"] {
  width: auto !important;
  min-height: 0 !important;
}


.admin-live-score-penalties {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.admin-live-score-penalty-team {
  min-width: 0;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--team-primary, #d7192a) 40%, rgba(255,255,255,.14));
  border-radius: 14px;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--team-primary, #d7192a) 18%, transparent), transparent 14rem),
    rgba(255,255,255,.035);
}

.admin-live-score-penalty-team > strong {
  display: block;
  margin-bottom: 8px;
  color: #fff;
  font: 900 .74rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.admin-penalty-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.admin-penalty-buttons button {
  min-height: 34px;
  padding: 7px 9px;
  font-size: .72rem;
}

.admin-penalty-buttons button[data-loss-of-down="1"] {
  border-color: rgba(245,181,27,.6) !important;
}

@media (max-width: 780px) {
  .admin-live-score-penalties {
    grid-template-columns: 1fr;
  }
}

/* === RFCL Live Gamecast Field === */
.gamecast-card {
  overflow: hidden;
  --gamecast-primary: #d7192a;
  --gamecast-secondary: #061529;
  --gamecast-away-primary: #d7192a;
  --gamecast-away-secondary: #061529;
  --gamecast-home-primary: #d7192a;
  --gamecast-home-secondary: #061529;
  --ball-pct: 50;
  --ball-display-pct: 50;
  --los-pct: 50;
  --first-pct: 60;
  --redzone-left: 80;
  --redzone-width: 20;
}

.gamecast-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
  margin-bottom: 16px;
}

.gamecast-head h2 {
  margin: 4px 0 0;
}

.gamecast-head p {
  max-width: 430px;
  color: rgba(216,222,232,.82);
  text-align: right;
  font-size: .9rem;
}

.gamecast-situation {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px 14px 0 0;
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  overflow: hidden;
}

.gamecast-situation div {
  min-width: 0;
  padding: 13px 16px;
  text-align: center;
  border-left: 1px solid rgba(255,255,255,.12);
}

.gamecast-situation div:first-child {
  border-left: 0;
}

.gamecast-situation span {
  display: block;
  color: rgba(216,222,232,.62);
  font: 900 .72rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.gamecast-situation strong {
  display: block;
  margin-top: 6px;
  overflow: hidden;
  color: #fff;
  font: 900 clamp(1.1rem, 2vw, 1.55rem)/1 Oswald, Impact, sans-serif;
  letter-spacing: .04em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.gamecast-field-shell {
  padding: clamp(16px, 2.5vw, 24px) clamp(12px, 2vw, 20px) 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background:
    radial-gradient(circle at 20% 0, color-mix(in srgb, var(--gamecast-primary) 18%, transparent), transparent 24rem),
    linear-gradient(180deg, rgba(2,7,18,.46), rgba(2,7,18,.72));
}

.gamecast-field {
  display: grid;
  grid-template-columns: minmax(44px, 7%) minmax(0, 1fr) minmax(44px, 7%);
  min-height: 150px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 16px;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35), 0 18px 40px rgba(0,0,0,.28);
}

.gamecast-endzone {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--endzone-primary, var(--gamecast-secondary)) 78%, #020712), color-mix(in srgb, var(--endzone-secondary, #020712) 74%, #020712));
  color: rgba(255,255,255,.9);
  font: 900 clamp(.82rem, 1.6vw, 1.05rem)/1 Oswald, Impact, sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.gamecast-endzone span {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.gamecast-endzone-home span {
  transform: none;
}

.gamecast-endzone-away {
  --endzone-primary: var(--gamecast-away-primary);
  --endzone-secondary: var(--gamecast-away-secondary);
}

.gamecast-endzone-home {
  --endzone-primary: var(--gamecast-home-primary);
  --endzone-secondary: var(--gamecast-home-secondary);
}

.gamecast-turf {
  position: relative;
  z-index: 3;
  min-height: 150px;
  overflow: visible;
  background:
    linear-gradient(90deg, rgba(255,255,255,.07) 0 1px, transparent 1px 10%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.15) 0 1px, transparent 1px 5%),
    repeating-linear-gradient(90deg, #136c37 0 10%, #0f5e32 10% 20%);
}

.gamecast-turf::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), transparent 28%, transparent 72%, rgba(0,0,0,.22)),
    radial-gradient(circle at 50% 55%, rgba(255,255,255,.10), transparent 22rem);
  pointer-events: none;
}

.gamecast-yard-labels {
  position: absolute;
  z-index: 2;
  inset: auto 0 8px;
  height: 18px;
  color: rgba(255,255,255,.72);
  font: 900 .82rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .08em;
  text-shadow: 0 2px 8px rgba(0,0,0,.6);
}

.gamecast-yard-labels span {
  position: absolute;
  transform: translateX(-50%);
}

.gamecast-yard-labels .yard-10-left { left: 10%; }
.gamecast-yard-labels .yard-20-left { left: 20%; }
.gamecast-yard-labels .yard-30-left { left: 30%; }
.gamecast-yard-labels .yard-40-left { left: 40%; }
.gamecast-yard-labels .yard-50 { left: 50%; }
.gamecast-yard-labels .yard-40-right { left: 60%; }
.gamecast-yard-labels .yard-30-right { left: 70%; }
.gamecast-yard-labels .yard-20-right { left: 80%; }
.gamecast-yard-labels .yard-10-right { left: 90%; }

.gamecast-redzone {
  display: none !important;
}

.gamecast-card.is-redzone .gamecast-line-of-scrimmage {
  z-index: 6;
  width: 4px;
  background: linear-gradient(180deg, var(--rfcl-red, #d7192a), var(--accent-dark, #8f0d1b));
  box-shadow: 0 0 20px rgba(143,13,27,.62), 0 0 0 1px rgba(255,255,255,.28);
}

.gamecast-card.is-redzone .gamecast-ball-marker::after {
  background: linear-gradient(180deg, var(--rfcl-red, #d7192a), var(--accent-dark, #8f0d1b));
  box-shadow: 0 0 14px rgba(143,13,27,.48);
}

.gamecast-card.is-redzone .gamecast-situation div:nth-child(-n+3) {
  border-color: rgba(143,13,27,.82);
  background:
    linear-gradient(180deg, rgba(143,13,27,.24), rgba(143,13,27,.10)),
    rgba(255,255,255,.055);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 0 18px rgba(143,13,27,.18);
}

.gamecast-card.is-redzone .gamecast-situation div:nth-child(-n+3) span,
.gamecast-card.is-redzone .gamecast-situation div:nth-child(-n+3) strong {
  color: var(--rfcl-red, #d7192a);
  text-shadow: 0 0 10px rgba(143,13,27,.20);
}

.gamecast-play-line {
  position: absolute;
  z-index: 2;
  top: 58%;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(245,181,27,.25), rgba(245,181,27,.95));
  box-shadow: 0 0 18px rgba(245,181,27,.38), 0 2px 8px rgba(0,0,0,.32);
  transform: translateY(-50%);
  transition: left .35s ease, width .35s ease;
}

.gamecast-play-line::after {
  content: "";
  position: absolute;
  right: -5px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-top: 3px solid rgba(245,181,27,.95);
  border-right: 3px solid rgba(245,181,27,.95);
  transform: translateY(-50%) rotate(45deg);
  filter: drop-shadow(0 1px 4px rgba(0,0,0,.35));
}

.gamecast-play-line.is-loss {
  background: linear-gradient(90deg, rgba(255,255,255,.25), rgba(255,87,87,.92));
  box-shadow: 0 0 16px rgba(255,87,87,.35), 0 2px 8px rgba(0,0,0,.32);
}

.gamecast-play-line.is-loss::after {
  border-color: rgba(255,87,87,.94);
}

.gamecast-play-line.is-reverse::after {
  right: auto;
  left: -5px;
  transform: translateY(-50%) rotate(225deg);
}

.gamecast-first-down-line,
.gamecast-line-of-scrimmage {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  width: 3px;
  transform: translateX(-50%);
  box-shadow: 0 0 16px rgba(0,0,0,.34);
}

.gamecast-first-down-line {
  left: calc(var(--first-pct) * 1%);
  background: #f5d84e;
  box-shadow: 0 0 18px rgba(245,216,78,.42);
}

.gamecast-line-of-scrimmage {
  left: calc(var(--los-pct) * 1%);
  background: rgba(255,255,255,.92);
}

.gamecast-ball-marker {
  position: absolute;
  z-index: 12;
  top: 22px;
  left: calc(var(--ball-display-pct) * 1%);
  display: grid;
  justify-items: center;
  gap: 6px;
  transform: translateX(-50%);
  transition: left .35s ease;
}

.gamecast-ball-marker::after {
  content: "";
  width: 2px;
  height: 42px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--gamecast-primary) 70%, #fff), rgba(255,255,255,.75));
  box-shadow: 0 0 14px color-mix(in srgb, var(--gamecast-primary) 45%, transparent);
}

.gamecast-ball-marker img {
  width: clamp(42px, 6vw, 58px);
  height: clamp(42px, 6vw, 58px);
  object-fit: contain;
  filter: drop-shadow(0 10px 12px rgba(0,0,0,.45));
}

.gamecast-ball-marker span {
  max-width: 100px;
  padding: 4px 8px;
  border: 1px solid color-mix(in srgb, var(--gamecast-primary) 45%, rgba(255,255,255,.25));
  border-radius: 999px;
  background: color-mix(in srgb, var(--gamecast-secondary) 70%, rgba(2,7,18,.72));
  color: #fff;
  font: 900 .65rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

.gamecast-field-empty {
  position: absolute;
  z-index: 4;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(2,7,18,.68);
  color: rgba(255,255,255,.82);
  font: 900 .78rem/1 Oswald, Impact, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

.gamecast-card.is-empty .gamecast-turf {
  filter: saturate(.7);
}

@media (max-width: 720px) {
  .gamecast-head {
    display: grid;
    align-items: start;
  }
  .gamecast-head p {
    text-align: left;
  }
  .gamecast-situation {
    grid-template-columns: 1fr;
  }
  .gamecast-situation div {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.12);
  }
  .gamecast-situation div:first-child {
    border-top: 0;
  }
  .gamecast-field {
    grid-template-columns: 38px minmax(0, 1fr) 38px;
    min-height: 122px;
  }
  .gamecast-turf {
    min-height: 122px;
  }
  .gamecast-ball-marker {
    top: 16px;
  }
  .gamecast-ball-marker::after {
    height: 32px;
  }
}


/* Live scoring turnover controls */
.admin-turnover-event-button {
  border-color: color-mix(in srgb, var(--team-primary, #d7192a) 55%, rgba(255,255,255,.18)) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--team-secondary, #061529) 72%, rgba(255,255,255,.08)), rgba(2,7,18,.86)) !important;
}

/* === RFCL Live Gamecast penalty/punt polish 20260531 === */
.admin-live-score-penalty-team .admin-penalty-buttons button {
  border-color: color-mix(in srgb, var(--live-team-primary, #d7192a) 72%, #ffffff 16%) !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--live-team-primary, #d7192a) 88%, #07111f), color-mix(in srgb, var(--live-team-accent, #061529) 88%, #07111f)) !important;
  color: var(--live-team-text, #fff) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14), 0 8px 18px rgba(0,0,0,.22);
}

.admin-live-score-penalty-team .admin-penalty-buttons button:hover,
.admin-live-score-penalty-team .admin-penalty-buttons button:focus-visible {
  filter: brightness(1.12);
  transform: translateY(-1px);
}

.admin-punt-event-button {
  border-color: rgba(245,181,27,.58) !important;
  background: linear-gradient(135deg, rgba(245,181,27,.22), color-mix(in srgb, var(--live-team-primary, #d7192a) 62%, #07111f)) !important;
}


.admin-live-ocr-panel {
  margin: 1rem 0 1.25rem;
  padding: 1rem;
  border: 1px dashed rgba(255,255,255,.18);
  border-radius: 8px;
  background: rgba(5,13,28,.46);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.admin-live-ocr-panel h3 { margin: 0 0 .35rem; color: rgba(255,255,255,.88); }
.admin-live-ocr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: .85rem 0; }
.admin-live-ocr-grid label { display: grid; gap: .35rem; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.72); }
.admin-live-ocr-grid input { width: 100%; }
.admin-live-ocr-panel pre { white-space: pre-wrap; overflow: auto; max-height: 260px; margin: .75rem 0 0; padding: .9rem; border-radius: 14px; background: rgba(0,0,0,.4); color: rgba(255,255,255,.86); }
@media (max-width: 760px) { .admin-live-ocr-grid { grid-template-columns: 1fr; } }


.admin-live-ocr-selected {
  margin: .85rem 0 1rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(255,255,255,.045);
  display: grid;
  gap: .25rem;
}
.admin-live-ocr-selected span {
  color: rgba(255,255,255,.62);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .72rem;
  font-weight: 800;
}
.admin-live-ocr-selected strong { color: #fff; }
.admin-live-ocr-selected code { color: rgba(255,255,255,.72); font-size: .78rem; }
.admin-live-ocr-form {
  display: grid;
  gap: .85rem;
  margin: .75rem 0 1rem;
}
.admin-live-ocr-wide { grid-column: 1 / -1; }
.admin-live-ocr-grid select { width: 100%; }

/* === 20260610 player stat category bulk entry === */
.player-stat-category-select {
  display: grid;
  gap: 7px;
  color: rgba(255,255,255,.72);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.player-stat-category-select select {
  width: 100%;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: rgba(3,10,22,.76);
  color: #fff;
  padding: 12px 13px;
  font: inherit;
  text-transform: none;
  letter-spacing: 0;
}

.player-stat-category-panel[hidden] {
  display: none !important;
}

.player-stat-bulk-panel {
  display: grid;
  gap: 12px;
}

.player-stat-bulk-list {
  display: grid;
  gap: 10px;
}

.player-stat-bulk-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
  align-items: end;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.player-stat-bulk-row select,
.player-stat-bulk-row > input,
.player-stat-bulk-row label input {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  background: rgba(3,10,22,.76);
  color: #fff;
  padding: 9px 10px;
  font: inherit;
}

.player-stat-bulk-row label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: rgba(255,255,255,.62);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.player-stat-bulk-row .roster-manual-player-name[hidden] {
  display: none !important;
}

.player-stat-bulk-row .mini-danger-button {
  align-self: center;
}

@media (max-width: 900px) {
  .player-stat-bulk-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .player-stat-bulk-row .mini-danger-button {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

@media (max-width: 560px) {
  .player-stat-bulk-row {
    grid-template-columns: 1fr;
  }
}

/* === 20260610 final draft room overrides === */
.draft-page .draft-live-strip {
  width: min(1280px, 100%);
  margin: 0 auto 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.draft-page .draft-live-strip article,
.draft-page .draft-clock,
.draft-page .draft-current,
.draft-page .draft-pick-card,
.draft-page .draft-prospects-panel {
  border-radius: 8px !important;
}

.draft-page .draft-live-strip article {
  min-height: 82px;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.055);
}

.draft-page .draft-live-strip span,
.draft-page .draft-current-clock span,
.draft-page .draft-progress-text,
.draft-page .draft-pick-card footer span,
.draft-page .draft-clock em {
  display: block;
  color: rgba(216,222,232,.72);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.draft-page .draft-live-strip strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.75rem);
  line-height: 1;
  text-transform: uppercase;
}

.draft-page .draft-clock em {
  margin-top: 5px;
  font-style: normal;
  color: rgba(122,218,161,.92);
}

.draft-page .draft-clock em.is-error {
  color: #ff8a96;
}

.draft-page .draft-board-column {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.draft-page .draft-board-toolbar {
  display: grid;
  grid-template-columns: auto minmax(180px, 280px);
  gap: 10px;
  align-items: center;
}

.draft-page .draft-board-tabs {
  display: inline-grid;
  grid-template-columns: repeat(3, minmax(72px, 1fr));
  gap: 5px;
  padding: 5px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 8px;
  background: rgba(2,7,18,.52);
}

.draft-page .draft-board-tabs button,
.draft-page .draft-board-toolbar input,
.draft-page .draft-prospects-head input {
  min-height: 38px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(2,7,18,.68);
  color: #fff;
  font: inherit;
  font-weight: 900;
}

.draft-page .draft-board-tabs button {
  padding: 0 12px;
  cursor: pointer;
  color: rgba(216,222,232,.72);
  text-transform: uppercase;
}

.draft-page .draft-board-tabs button.active {
  background: #fff;
  color: #061529;
}

.draft-page .draft-board-toolbar input,
.draft-page .draft-prospects-head input {
  width: 100%;
  min-width: 0;
  padding: 0 12px;
}

.draft-page .draft-current {
  overflow: hidden;
  border-color: color-mix(in srgb, var(--draft-primary, #d7192a) 55%, rgba(255,255,255,.14)) !important;
  background: linear-gradient(135deg, color-mix(in srgb, var(--draft-primary, #d7192a) 24%, transparent), rgba(255,255,255,.045)), rgba(2,7,18,.66) !important;
}

.draft-page .draft-current-team,
.draft-page .draft-pick-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.draft-page .draft-current-logo,
.draft-page .draft-pick-logo {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14);
}

.draft-page .draft-current-logo {
  width: 68px;
  height: 68px;
}

.draft-page .draft-pick-logo {
  width: 38px;
  height: 38px;
}

.draft-page .draft-current-logo::before,
.draft-page .draft-pick-logo::before {
  content: attr(data-initials);
  color: rgba(255,255,255,.9);
  font-family: Oswald, Impact, sans-serif;
  font-weight: 900;
}

.draft-page .draft-current-logo img,
.draft-page .draft-pick-logo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}

.draft-page .draft-current-clock {
  margin-top: 18px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
}

.draft-page .draft-current-clock strong,
.draft-page .draft-pick-card footer strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  line-height: 1;
}

.draft-page .draft-current-clock strong {
  font-size: 2.6rem;
}

.draft-page .draft-progress-bar {
  height: 8px;
  margin-top: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
}

.draft-page .draft-progress-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--draft-primary, #d7192a), #f5b51b);
}

.draft-page .draft-progress-text {
  margin: 8px 0 0;
}

.draft-page .draft-pick-card {
  min-height: 132px !important;
  border-color: color-mix(in srgb, var(--draft-primary, #d7192a) 28%, rgba(255,255,255,.14)) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--draft-primary, #d7192a) 9%, transparent), rgba(255,255,255,.035)), rgba(2,7,18,.58) !important;
}

.draft-page .draft-pick-card.is-active {
  border-color: var(--draft-primary, #d7192a) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--draft-primary, #d7192a) 28%, transparent), 0 18px 34px rgba(0,0,0,.28) !important;
}

.draft-page .draft-pick-card.is-pick-in {
  background: linear-gradient(180deg, color-mix(in srgb, #f5b51b 18%, transparent), color-mix(in srgb, var(--draft-primary, #d7192a) 20%, transparent)), rgba(2,7,18,.62) !important;
}

.draft-page .draft-pick-card footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
}

.draft-page .draft-pick-card footer strong {
  font-size: 1.2rem;
}

.draft-page .draft-empty-state {
  margin: 0;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  color: rgba(216,222,232,.78);
  font-weight: 900;
}

.draft-page .draft-prospects-head {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.draft-page .draft-prospects-head h2 {
  margin-bottom: 0 !important;
}

@media (max-width: 1180px) {
  .draft-page .draft-live-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .draft-page .draft-board-toolbar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .draft-page .draft-live-strip {
    grid-template-columns: 1fr;
  }

  .draft-page .draft-board-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .draft-page .draft-current-clock {
    display: grid;
  }

  .draft-page .draft-current-clock strong {
    font-size: 2.25rem;
  }
}

/* === 20260614 public mobile release polish === */
@media (max-width: 900px) {
  html {
    scroll-padding-top: calc(var(--rfcl-scoreboard-offset, 0px) + 78px);
  }

  body {
    overflow-x: hidden;
  }

  .site-header {
    position: sticky;
    top: var(--rfcl-scoreboard-offset, 0px);
    z-index: 1100;
    min-height: 64px;
    gap: 10px;
    padding: 10px 14px;
    backdrop-filter: blur(18px);
  }

  .site-header .brand {
    min-width: 0;
  }

  .site-header .brand-logo {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
  }

  .site-header .brand span {
    min-width: 0;
  }

  .site-header .brand strong {
    display: block;
    max-width: 56vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .site-header .brand em {
    display: none;
  }

  .site-nav.open {
    position: absolute;
    top: calc(100% + 8px);
    left: 12px;
    right: 12px;
    max-height: min(72vh, 560px);
    overflow: auto;
    padding: 8px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    background: rgba(4,11,25,.98);
    box-shadow: 0 24px 60px rgba(0,0,0,.48);
  }

  .site-nav.open a {
    min-height: 44px;
    border: 0;
    border-radius: 6px;
  }

  .coach-login:not(.coach-account-button) {
    min-height: 40px;
    padding: 0 12px;
    white-space: nowrap;
  }

  .schedule-page,
  .standings-page,
  .rankings-page,
  .team-page,
  .draft-page,
  .game-page,
  .sportsbook-page,
  .stats-hub-page {
    width: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }

  .schedule-hero,
  .standings-hero,
  .rankings-hero,
  .team-hero,
  .draft-hero,
  .stats-hub-hero,
  .schedule-shell,
  .standings-shell,
  .rankings-shell,
  .portal-card,
  .stats-hub-shell {
    width: 100%;
    max-width: 100%;
    border-radius: 8px;
  }

  .schedule-hero,
  .standings-hero,
  .rankings-hero,
  .team-hero,
  .draft-hero,
  .stats-hub-hero {
    min-height: 0;
    padding: 22px;
    align-items: start;
  }

  .schedule-hero h1,
  .standings-hero h1,
  .rankings-hero h1,
  .team-hero h1,
  .draft-hero h1,
  .stats-hub-hero h1 {
    font-size: clamp(2rem, 9vw, 3.25rem);
    line-height: .95;
    overflow-wrap: anywhere;
  }

  .schedule-hero span,
  .standings-hero span,
  .rankings-hero span,
  .team-hero span,
  .draft-hero span,
  .stats-hub-hero span {
    max-width: 100%;
    font-size: .95rem;
  }

  .schedule-controls,
  .standings-controls,
  .rankings-filter,
  .stats-filter-bar {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px;
    border-radius: 8px;
  }

  .schedule-controls label,
  .standings-controls label,
  .rankings-filter label,
  .stats-filter-bar label {
    width: 100%;
    min-width: 0;
  }

  .schedule-controls select,
  .standings-controls select,
  .rankings-filter select,
  .stats-filter-bar select,
  .stats-filter-bar button,
  .rankings-filter button {
    width: 100%;
    min-height: 44px;
  }

  .schedule-grid,
  .standings-conference-grid,
  .rankings-grid,
  .history-feature-grid,
  .coach-profile-grid,
  .sportsbook-board,
  .stats-team-card-grid,
  .game-hub-grid,
  .game-team-stat-grid,
  .draft-live-strip,
  .draft-layout {
    grid-template-columns: 1fr !important;
  }

  .schedule-game-card,
  .standings-card,
  .ranking-card,
  .sportsbook-game-card,
  .stats-team-card,
  .game-panel,
  .history-champion-card,
  .history-awards-card,
  .history-notes-card,
  .coach-profile-card,
  .team-profile-tab-panel .team-detail-grid > article,
  .team-page .team-schedule-section,
  .team-roster-section,
  .team-timeline-section {
    border-radius: 8px !important;
  }

  .schedule-game-top,
  .sportsbook-game-head,
  .stats-table-title,
  .standings-card-head,
  .section-heading,
  .team-page .team-schedule-section .section-heading {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    align-items: start;
  }

  .schedule-team-row,
  .standings-row,
  .ranking-row,
  .sportsbook-matchup,
  .sportsbook-line-strip,
  .history-season-row,
  .team-page .team-schedule-game {
    min-width: 0;
  }

  .ranking-row {
    grid-template-columns: 44px 42px minmax(0, 1fr);
    gap: 10px;
  }

  .ranking-row span,
  .standings-team-link strong,
  .schedule-team-name,
  .team-schedule-opponent-name strong,
  .stats-table-team strong,
  .stats-player-name strong,
  .sportsbook-matchup b {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .team-profile-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 6px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .team-profile-tabs button {
    flex: 0 0 auto;
    min-width: 108px;
    min-height: 42px;
    scroll-snap-align: start;
  }

  .team-stats-mode-toggle,
  .stats-page-selector {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .team-stats-mode-toggle button,
  .stats-page-selector a {
    min-width: 0;
    min-height: 42px;
    text-align: center;
  }

  .stats-table-scroll,
  .standings-table-wrap,
  .public-stats-table-wrap {
    margin-left: -12px;
    margin-right: -12px;
    padding: 0 12px 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  .public-stats-table,
  .stats-hub-table,
  .standings-table {
    min-width: 720px;
  }

  .stats-hub-table th,
  .stats-hub-table td,
  .public-stats-table th,
  .public-stats-table td,
  .standings-table th,
  .standings-table td {
    padding: 10px 9px;
    font-size: .78rem;
  }

  .stats-player-name {
    display: block;
  }

  .stats-player-name em {
    white-space: nowrap;
  }

  .game-detail-grid,
  .game-line-grid,
  .gamecast-situation,
  .draft-page .draft-live-strip {
    grid-template-columns: 1fr !important;
  }

  .game-scoreboard {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .game-score {
    font-size: clamp(2.4rem, 18vw, 4rem);
  }

  .game-action-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .draft-page .draft-board-toolbar,
  .draft-page .draft-prospects-head,
  .draft-page .draft-current-clock {
    grid-template-columns: 1fr !important;
  }

  .draft-page .draft-board-tabs {
    width: 100%;
  }

  .draft-page .draft-pick-card {
    min-height: 0 !important;
  }

  .coach-record-strip {
    grid-template-columns: 1fr;
  }
}

/* === 20260614 selection show === */
.selection-show-page {
  min-height: calc(100vh - var(--rfcl-scoreboard-offset, 0px));
  background:
    radial-gradient(circle at 50% 12%, rgba(255,255,255,.12), transparent 24%),
    linear-gradient(180deg, rgba(3,5,8,.94), rgba(8,10,10,.98));
  color: #fff;
  padding: clamp(12px, 2vw, 26px);
}

.selection-stage {
  width: min(100%, 1560px);
  aspect-ratio: 16 / 9;
  min-height: 620px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  border: 2px solid rgba(255,255,255,.85);
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 42% 35%, rgba(255,255,255,.08), transparent 22%),
    linear-gradient(135deg, #11120f, #050606 48%, #11130f);
  background-size: 110px 110px, auto, auto;
  box-shadow: 0 28px 80px rgba(0,0,0,.55);
}

.selection-titlebar {
  height: 13.6%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2.5vw, 34px);
  border-top: 3px solid #fff;
  border-bottom: 3px solid #fff;
  background: #082242;
  box-shadow: 0 10px 24px rgba(0,0,0,.38);
}

.selection-titlebar h1 {
  margin: 0;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(2rem, 5.2vw, 5rem);
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #ffc91f;
  text-shadow: 0 4px 0 rgba(0,0,0,.72), 0 0 16px rgba(255,201,31,.18);
  white-space: nowrap;
}

.selection-ball-mark {
  width: clamp(38px, 5vw, 78px);
  aspect-ratio: 1 / 1.35;
  border: 3px solid rgba(255,201,31,.45);
  border-left-color: transparent;
  border-right-color: transparent;
  border-radius: 50%;
  position: relative;
}

.selection-ball-mark::before {
  content: "";
  position: absolute;
  inset: 22% 42%;
  border-left: 3px solid #ffc91f;
  border-right: 3px solid #ffc91f;
  opacity: .85;
}

.selection-board {
  position: absolute;
  inset: 13.6% 0 0;
}

.selection-lines {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .92;
}

.selection-lines::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(#e9e9e9, #e9e9e9) 22% 34% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 22% 58% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 29.9% 34% / 4px 24.5% no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 29.9% 46% / 4.5% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 40% 17% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 40% 42% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 47.8% 17% / 4px 25% no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 47.8% 29.5% / 3% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 52.8% 17% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 52.8% 42% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 52.8% 29.5% / 3% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 52.8% 17% / 4px 25% no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 72% 34% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 72% 58% / 8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 72% 34% / 4px 24.5% no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 67.5% 46% / 4.8% 4px no-repeat,
    linear-gradient(#e9e9e9, #e9e9e9) 45% 80% / 10% 4px no-repeat;
  filter: drop-shadow(0 2px 2px rgba(0,0,0,.65));
}

.selection-region-label {
  position: absolute;
  z-index: 2;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(1rem, 2vw, 2rem);
  font-style: italic;
  text-transform: uppercase;
  color: #f6f6f6;
  text-shadow: 0 3px 0 rgba(0,0,0,.85);
  white-space: nowrap;
}

.label-frisco { left: 48.5%; top: 10%; transform: translateX(-50%); }
.label-birmingham { left: 33%; top: 31%; }
.label-santa { right: 28%; top: 31%; }
.label-east { left: 9.5%; top: 42%; }
.label-maryville { right: 6.5%; top: 42%; }

.selection-first-out {
  position: absolute;
  left: 50%;
  bottom: 17%;
  transform: translateX(-50%);
  z-index: 2;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(1.7rem, 4vw, 4rem);
  line-height: 1;
  text-transform: uppercase;
  color: #f7f7f7;
  text-shadow: 0 4px 0 #000;
  white-space: nowrap;
}

.selection-slot {
  position: absolute;
  z-index: 3;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: clamp(7px, 1vw, 14px);
}

.selection-slot.seed-1 { left: 28.5%; top: 10%; }
.selection-slot.seed-2 { right: 27.5%; top: 10%; }
.selection-slot.seed-3 { right: 6.8%; top: 32%; }
.selection-slot.seed-4 { left: 5.8%; top: 32%; }
.selection-slot.seed-5 { left: 5.8%; top: 56%; }
.selection-slot.seed-6 { right: 6.8%; top: 56%; }
.selection-slot.seed-7 { left: 38%; bottom: 5.5%; }
.selection-slot.seed-8 { right: 32.5%; bottom: 5.5%; }

.selection-slot.seed-2,
.selection-slot.seed-3,
.selection-slot.seed-6,
.selection-slot.seed-8 {
  grid-template-columns: 1fr auto;
}

.selection-slot.seed-2 .selection-seed,
.selection-slot.seed-3 .selection-seed,
.selection-slot.seed-6 .selection-seed,
.selection-slot.seed-8 .selection-seed {
  order: 2;
}

.selection-seed {
  min-width: clamp(38px, 4vw, 70px);
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(3rem, 6vw, 6.2rem);
  line-height: .86;
  color: #e7e8ec;
  -webkit-text-stroke: 2px rgba(7,10,18,.7);
  text-shadow: 0 3px 0 #000, 0 0 10px rgba(255,255,255,.45);
  text-align: center;
}

.selection-team-plate {
  width: clamp(150px, 12.5vw, 230px);
  height: clamp(72px, 6.4vw, 102px);
  border: 2px solid rgba(255,255,255,.86);
  background:
    linear-gradient(100deg, transparent 0 13%, rgba(255,255,255,.96) 13% 100%),
    linear-gradient(180deg, #fff 0 66%, #050505 66% 100%);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35), 0 8px 16px rgba(0,0,0,.42);
  position: relative;
  overflow: hidden;
}

.selection-team-plate::before,
.selection-team-plate::after {
  content: "";
  position: absolute;
  top: 8px;
  width: 8px;
  height: 22px;
  border-radius: 999px;
  background: #202327;
  transform: rotate(-28deg);
  opacity: .85;
}

.selection-team-plate::before { left: 10px; }
.selection-team-plate::after { right: 10px; }

.selection-team-face {
  height: 66%;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--selection-primary, #D7192A), var(--selection-secondary, #061529));
  opacity: 0;
  transition: opacity .3s ease;
}

.selection-team-face img {
  width: 86%;
  height: 92%;
  object-fit: contain;
  filter: drop-shadow(0 5px 5px rgba(0,0,0,.5));
}

.selection-team-name {
  height: 34%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(.68rem, .9vw, 1rem);
  font-style: italic;
  text-transform: uppercase;
  color: #fff;
  background: #050505;
  text-shadow: 0 2px 0 #000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.selection-slot.is-revealed .selection-team-face {
  opacity: 1;
}

.selection-slot.is-revealed .selection-team-plate {
  animation: selectionPlateIn .65s cubic-bezier(.2,.9,.2,1);
}

.selection-live-footer {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 12px;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-live-footer strong {
  color: #ffc91f;
}

.selection-spotlight {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: grid;
  place-items: center;
  background: rgba(0,0,0,.72);
  opacity: 0;
  transition: opacity .5s ease;
}

.selection-spotlight.is-showing {
  opacity: 1;
}

.selection-spotlight-card {
  width: min(72vw, 920px);
  aspect-ratio: 1.62 / 1;
  display: grid;
  grid-template-rows: 1fr auto;
  border: 5px solid rgba(255,255,255,.75);
  background: linear-gradient(135deg, var(--selection-primary, #D7192A), var(--selection-secondary, #061529));
  box-shadow: 0 30px 100px rgba(0,0,0,.7), inset 0 0 0 2px rgba(0,0,0,.4);
  transform: scale(.82);
  transition: transform .55s cubic-bezier(.2,.9,.2,1);
  overflow: hidden;
}

.selection-spotlight.is-showing .selection-spotlight-card {
  transform: scale(1);
}

.selection-spotlight-card img {
  width: 92%;
  height: 100%;
  object-fit: contain;
  justify-self: center;
  align-self: center;
  filter: drop-shadow(0 12px 10px rgba(0,0,0,.48));
}

.selection-spotlight-card strong {
  padding: clamp(14px, 2vw, 26px);
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(2.2rem, 5.4vw, 5.8rem);
  line-height: .92;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  background: #050505;
  text-shadow: 0 4px 0 #000;
}

.selection-spotlight-card span {
  position: absolute;
  right: 18px;
  bottom: 12px;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(1.6rem, 3vw, 3.8rem);
  color: #fff;
}

.selection-empty-state {
  min-height: 72vh;
  display: grid;
  place-items: center;
  align-content: center;
  text-align: center;
  gap: 14px;
}

.selection-empty-state img {
  width: 96px;
  height: 96px;
  object-fit: contain;
}

.selection-empty-state h1 {
  margin: 0;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(2.4rem, 6vw, 5rem);
  text-transform: uppercase;
}

.selection-empty-state p {
  margin: 0;
  color: rgba(255,255,255,.72);
}

.selection-slot-admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
}

.selection-slot-edit-card {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.045);
}

.selection-slot-edit-card > strong {
  font-family: "Oswald", Impact, sans-serif;
  font-size: 1.8rem;
  color: #ffc91f;
}

.selection-admin-actions {
  margin: 16px 0;
}

@keyframes selectionPlateIn {
  0% { transform: scale(.72); filter: brightness(1.8); }
  60% { transform: scale(1.08); filter: brightness(1.15); }
  100% { transform: scale(1); filter: brightness(1); }
}

@media (max-width: 900px) {
  .selection-show-page {
    padding: 10px;
    overflow-x: auto;
  }

  .selection-stage {
    width: 1180px;
    min-height: 664px;
  }

  .selection-titlebar h1 {
    font-size: 3.6rem;
  }
}

@media (max-width: 640px) {
  .selection-spotlight-card {
    width: 92vw;
  }
}

/* === 20260614 selection show layout rebuild === */
.selection-stage {
  aspect-ratio: 16 / 9;
  min-height: 0;
  max-height: calc(100vh - var(--rfcl-scoreboard-offset, 0px) - 28px);
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.selection-titlebar {
  height: auto;
  min-height: clamp(72px, 11vh, 118px);
  padding: 10px clamp(16px, 3vw, 42px);
}

.selection-titlebar h1 {
  font-size: clamp(1.8rem, 4.6vw, 4.7rem);
  white-space: normal;
  text-align: center;
}

.selection-board {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-columns:
    minmax(160px, 1fr)
    minmax(210px, 1.16fr)
    minmax(170px, .86fr)
    minmax(210px, 1.16fr)
    minmax(160px, 1fr);
  grid-template-rows: repeat(5, minmax(82px, 1fr));
  grid-template-areas:
    "seed4 seed1 center seed2 seed3"
    "seed4 seed1 center seed2 seed3"
    "seed5 leftfinal champion rightfinal seed6"
    "seed5 leftfinal champion rightfinal seed6"
    "empty seed7 bottom seed8 empty2";
  gap: clamp(12px, 1.6vw, 24px);
  align-items: center;
  padding: clamp(22px, 3vw, 48px) clamp(24px, 4vw, 66px) clamp(52px, 5vw, 78px);
}

.selection-lines {
  display: none;
}

.selection-region-label {
  display: none;
}

.selection-first-out {
  position: static;
  transform: none;
  grid-area: bottom;
  align-self: end;
  justify-self: center;
  z-index: 4;
  margin-bottom: 10px;
  padding: 8px 16px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 6px;
  background: rgba(0,0,0,.34);
  font-size: clamp(1rem, 2.2vw, 2.4rem);
  line-height: 1;
  text-align: center;
}

.selection-board::before,
.selection-board::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 18%;
  bottom: 22%;
  width: 28%;
  pointer-events: none;
  opacity: .48;
  filter: drop-shadow(0 2px 2px rgba(0,0,0,.8));
}

.selection-board::before {
  left: 18%;
  border-top: 4px solid rgba(255,255,255,.75);
  border-bottom: 4px solid rgba(255,255,255,.75);
  border-right: 4px solid rgba(255,255,255,.75);
}

.selection-board::after {
  right: 18%;
  border-top: 4px solid rgba(255,255,255,.75);
  border-bottom: 4px solid rgba(255,255,255,.75);
  border-left: 4px solid rgba(255,255,255,.75);
}

.selection-slot {
  position: static;
  display: block;
  width: 100%;
  min-width: 0;
  z-index: 3;
}

.selection-slot.seed-1 { grid-area: seed1; }
.selection-slot.seed-2 { grid-area: seed2; }
.selection-slot.seed-3 { grid-area: seed3; }
.selection-slot.seed-4 { grid-area: seed4; }
.selection-slot.seed-5 { grid-area: seed5; }
.selection-slot.seed-6 { grid-area: seed6; }
.selection-slot.seed-7 { grid-area: seed7; }
.selection-slot.seed-8 { grid-area: seed8; }

.selection-slot.seed-1,
.selection-slot.seed-2,
.selection-slot.seed-7,
.selection-slot.seed-8 {
  align-self: center;
}

.selection-team-plate {
  width: 100%;
  max-width: none;
  height: clamp(82px, 7vw, 112px);
  display: grid;
  grid-template-columns: clamp(42px, 4.4vw, 66px) clamp(62px, 5.4vw, 86px) minmax(0, 1fr);
  align-items: stretch;
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,.97), rgba(220,225,231,.92));
  box-shadow: 0 14px 30px rgba(0,0,0,.42), inset 0 0 0 1px rgba(0,0,0,.38);
}

.selection-team-plate::before,
.selection-team-plate::after {
  display: none;
}

.selection-seed {
  min-width: 0;
  order: 0;
  display: grid;
  place-items: center;
  height: 100%;
  padding-bottom: 2px;
  color: #f2f4f8;
  background: linear-gradient(180deg, #1d2632, #07090d);
  border-right: 1px solid rgba(255,255,255,.16);
  font-size: clamp(2rem, 3.6vw, 4.2rem);
  -webkit-text-stroke: 1px rgba(0,0,0,.55);
}

.selection-team-face {
  height: 100%;
  opacity: .16;
  background:
    linear-gradient(135deg, var(--selection-primary, #D7192A), var(--selection-secondary, #061529));
  border-right: 1px solid rgba(0,0,0,.28);
}

.selection-team-face img {
  width: 92%;
  height: 92%;
  max-width: 78px;
  max-height: 78px;
  object-fit: contain;
}

.selection-team-copy {
  min-width: 0;
  display: grid;
  grid-template-rows: 1fr auto;
  align-items: center;
  height: 100%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98) 0 58%, rgba(4,5,7,.98) 58% 100%);
}

.selection-team-name {
  height: auto;
  display: flex;
  justify-content: flex-start;
  min-width: 0;
  padding: 8px 12px 2px;
  background: transparent;
  color: #10151d;
  font-size: clamp(.9rem, 1.16vw, 1.25rem);
  font-style: normal;
  font-weight: 900;
  text-shadow: none;
}

.selection-team-meta {
  min-width: 0;
  padding: 5px 12px 8px;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(.68rem, .88vw, .92rem);
  font-style: italic;
  line-height: 1.05;
  color: #fff;
  background: #050505;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.selection-slot.is-revealed .selection-team-face {
  opacity: 1;
}

.selection-slot.is-revealed .selection-team-plate {
  border-color: color-mix(in srgb, var(--selection-primary, #D7192A) 65%, #ffffff);
}

.selection-slot:not(.is-revealed) .selection-team-copy {
  background:
    linear-gradient(180deg, rgba(255,255,255,.98) 0 58%, rgba(7,8,10,.9) 58% 100%);
}

.selection-slot:not(.is-revealed) .selection-team-name::before {
  content: "Awaiting Reveal";
  color: rgba(10,15,24,.42);
}

.selection-live-footer {
  position: static;
  padding: 10px 24px 14px;
}

.selection-spotlight-card img {
  max-width: 88%;
  max-height: 70%;
}

@media (max-width: 1100px) {
  .selection-show-page {
    overflow-x: auto;
  }

  .selection-stage {
    width: 1100px;
    max-height: none;
  }
}

@media (max-width: 760px) {
  .selection-stage {
    width: 980px;
  }

  .selection-board {
    padding-left: 32px;
    padding-right: 32px;
  }
}

@media (max-width: 560px) {
  .site-header {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .site-header .brand strong {
    max-width: 62vw;
    font-size: .78rem;
  }

  .site-header .coach-login:not(.coach-account-button),
  .site-header .coach-menu {
    grid-column: 1 / -1;
    width: 100%;
    justify-self: stretch;
  }

  .site-header .coach-login:not(.coach-account-button) {
    justify-content: center;
  }

  .schedule-page,
  .standings-page,
  .rankings-page,
  .team-page,
  .draft-page,
  .game-page,
  .sportsbook-page,
  .stats-hub-page {
    padding-left: 8px;
    padding-right: 8px;
  }

  .schedule-hero,
  .standings-hero,
  .rankings-hero,
  .team-hero,
  .draft-hero,
  .stats-hub-hero,
  .schedule-shell,
  .standings-shell,
  .rankings-shell,
  .portal-card,
  .stats-hub-shell {
    padding-left: 14px;
    padding-right: 14px;
  }

  .schedule-team-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
  }

  .schedule-team-logo,
  .ranking-team-logo,
  .standings-list .standings-team-link img {
    width: 34px;
    height: 34px;
  }

  .schedule-records,
  .schedule-betting-strip {
    grid-column: 1 / -1;
  }

  .sportsbook-matchup {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    text-align: left;
  }

  .sportsbook-matchup > span {
    display: none;
  }

  .sportsbook-matchup div:last-child {
    text-align: left;
  }

  .history-season-row,
  .standings-row {
    grid-template-columns: 1fr auto;
    gap: 8px;
  }

  .history-season-row em,
  .standings-optional-stat {
    display: none;
  }

  .team-page .team-schedule-game {
    grid-template-columns: 1fr;
  }

  .team-page .team-schedule-result,
  .team-page .team-schedule-extra {
    text-align: left;
  }

  .draft-page .draft-live-strip article {
    min-height: 0;
  }
}

/* === 20260614 final selection show rebuild: authoritative bottom override === */
.selection-show-page {
  min-height: calc(100vh - var(--rfcl-scoreboard-offset, 0px));
  padding: clamp(14px, 2vw, 28px);
  overflow-x: auto;
  background:
    radial-gradient(circle at 50% 0%, rgba(215, 25, 42, .16), transparent 34%),
    linear-gradient(180deg, #070b10, #020407 68%, #000);
}

.selection-stage {
  width: min(1480px, 100%);
  min-width: 1060px;
  min-height: 690px;
  height: auto;
  max-height: none;
  margin: 0 auto;
  aspect-ratio: auto;
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: 10px;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.09), transparent 35%),
    linear-gradient(180deg, #10140f, #070907);
  background-size: 96px 96px, 96px 96px, auto, auto;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .55);
}

.selection-titlebar {
  min-height: 92px;
  height: auto;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 64px;
  align-items: center;
  gap: 18px;
  padding: 16px 36px;
  border-bottom: 2px solid rgba(255, 255, 255, .8);
  background: linear-gradient(180deg, #0d2d54, #061f3d);
}

.selection-titlebar h1 {
  margin: 0;
  min-width: 0;
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: clamp(2.6rem, 5vw, 4.9rem);
  font-weight: 900;
  line-height: .92;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
  white-space: normal;
  text-shadow: 0 4px 0 rgba(0,0,0,.42);
}

.selection-ball-mark {
  width: 54px;
  height: 74px;
  border: 2px solid rgba(255, 207, 34, .72);
  border-left-color: transparent;
  border-right-color: transparent;
  border-radius: 50%;
  opacity: .9;
}

.selection-ball-mark::before,
.selection-ball-mark::after {
  display: none;
}

.selection-board.selection-bracket-board,
.selection-board {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-columns: minmax(250px, 1fr) minmax(185px, .72fr) minmax(230px, .82fr) minmax(185px, .72fr) minmax(250px, 1fr);
  grid-template-rows: auto;
  grid-template-areas: none;
  gap: 22px;
  align-items: center;
  min-height: 500px;
  padding: 34px 38px;
}

.selection-lines,
.selection-region-label,
.selection-first-out,
.selection-board::before,
.selection-board::after {
  display: none !important;
  content: none !important;
}

.selection-round {
  position: relative;
  display: grid;
  gap: 18px;
  min-width: 0;
}

.selection-round-title {
  align-self: end;
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: .84rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-round-right .selection-round-title {
  text-align: right;
}

.selection-matchup {
  position: relative;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  background: rgba(0, 0, 0, .26);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35);
}

.selection-round-left .selection-matchup::after,
.selection-round-right .selection-matchup::before,
.selection-round-mid:first-of-type .selection-advance-card::after,
.selection-round-mid:nth-of-type(4) .selection-advance-card::before {
  content: "";
  position: absolute;
  top: 50%;
  width: 22px;
  height: 2px;
  background: rgba(255,255,255,.56);
}

.selection-round-left .selection-matchup::after,
.selection-round-mid:first-of-type .selection-advance-card::after {
  right: -22px;
}

.selection-round-right .selection-matchup::before,
.selection-round-mid:nth-of-type(4) .selection-advance-card::before {
  left: -22px;
}

.selection-advance-card,
.selection-championship-panel {
  display: grid;
  place-items: center;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(0,0,0,.24));
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.35);
}

.selection-advance-card {
  min-height: 86px;
  color: rgba(255,255,255,.58);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.selection-championship-panel {
  min-height: 230px;
  padding: 22px 14px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 50% 18%, rgba(255, 207, 34, .16), transparent 42%),
    linear-gradient(180deg, rgba(9, 39, 75, .82), rgba(4, 10, 18, .9));
}

.selection-championship-panel span,
.selection-championship-panel em {
  color: rgba(255,255,255,.74);
  font-family: "Inter", Arial, sans-serif;
  font-size: .8rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-championship-panel strong {
  color: #ffcf22;
  font-family: "Oswald", Impact, sans-serif;
  font-size: 2.1rem;
  font-weight: 900;
  line-height: .96;
  text-transform: uppercase;
  text-shadow: 0 3px 0 rgba(0,0,0,.38);
}

.selection-slot,
.selection-slot.seed-1,
.selection-slot.seed-2,
.selection-slot.seed-3,
.selection-slot.seed-4,
.selection-slot.seed-5,
.selection-slot.seed-6,
.selection-slot.seed-7,
.selection-slot.seed-8 {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  grid-area: auto !important;
  display: block;
  width: 100%;
  min-width: 0;
  transform: none !important;
  z-index: 2;
}

.selection-team-plate {
  width: 100%;
  max-width: none;
  height: 86px;
  display: grid;
  grid-template-columns: 42px 66px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 7px;
  background: linear-gradient(180deg, #fff 0 56%, #08090c 56% 100%);
  box-shadow: 0 12px 26px rgba(0,0,0,.38);
}

.selection-team-plate::before,
.selection-team-plate::after {
  display: none !important;
}

.selection-seed,
.selection-slot.seed-2 .selection-seed,
.selection-slot.seed-3 .selection-seed,
.selection-slot.seed-6 .selection-seed,
.selection-slot.seed-8 .selection-seed {
  order: 0 !important;
  display: grid;
  place-items: center;
  width: auto;
  min-width: 0;
  height: 100%;
  padding: 0;
  color: #eef2f7;
  background: linear-gradient(180deg, #2d3642, #050608);
  border-right: 1px solid rgba(255,255,255,.18);
  font-family: "Oswald", Impact, sans-serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-shadow: 0 2px 0 rgba(0,0,0,.55);
  -webkit-text-stroke: 0;
}

.selection-team-face {
  display: grid;
  place-items: center;
  min-width: 0;
  height: 100%;
  padding: 6px;
  opacity: .12;
  border-right: 1px solid rgba(0,0,0,.22);
  background: linear-gradient(135deg, var(--selection-primary, #c8192e), var(--selection-secondary, #0b2240));
}

.selection-team-face img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 54px;
  max-height: 54px;
  object-fit: contain;
}

.selection-team-copy {
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: minmax(0, 1fr) 30px;
  background: transparent;
}

.selection-team-name {
  min-width: 0;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 9px 12px 6px;
  overflow: hidden;
  color: #101620;
  background: transparent;
  font-family: "Inter", Arial, sans-serif;
  font-size: .92rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1.05;
  text-align: left;
  text-shadow: none;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.selection-team-meta {
  min-width: 0;
  display: block;
  padding: 7px 12px 8px;
  overflow: hidden;
  color: #fff;
  background: #050506;
  font-family: "Oswald", Impact, sans-serif;
  font-size: .78rem;
  font-style: italic;
  font-weight: 800;
  line-height: 1;
  text-align: left;
  text-overflow: ellipsis;
  text-shadow: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.selection-slot.is-revealed .selection-team-face {
  opacity: 1;
}

.selection-slot.is-revealed .selection-team-plate {
  border-color: color-mix(in srgb, var(--selection-primary, #d7192a) 42%, #ffffff);
}

.selection-slot:not(.is-revealed) .selection-team-name::before {
  content: "Awaiting Reveal";
  color: rgba(16, 22, 32, .44);
}

.selection-live-footer {
  position: static;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  padding: 12px 22px 16px;
  color: rgba(255,255,255,.78);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.selection-live-footer strong {
  color: #ffcf22;
}

.selection-live-footer em {
  justify-self: end;
  font-style: italic;
}

.selection-spotlight-card {
  max-width: min(720px, 88vw);
  overflow: hidden;
}

.selection-spotlight-card img {
  max-width: 72%;
  max-height: 54vh;
  object-fit: contain;
}

@media (max-width: 1180px) {
  .selection-show-page {
    padding: 12px;
  }

  .selection-stage {
    width: 1060px;
  }
}

@media (min-width: 1500px) {
  .selection-stage {
    min-height: 760px;
  }

  .selection-team-plate {
    height: 94px;
    grid-template-columns: 48px 74px minmax(0, 1fr);
  }

  .selection-team-face img {
    max-width: 62px;
    max-height: 62px;
  }
}

/* === 20260620 admin console information architecture rebuild === */
.admin-page {
  min-height: 100vh;
  background:
    linear-gradient(180deg, rgba(9, 32, 57, .34), transparent 340px),
    #030812;
}

.admin-page .admin-hero {
  min-height: 0;
  padding: 24px clamp(18px, 3vw, 44px) 20px;
  border-bottom: 1px solid rgba(255,255,255,.1);
  background: #061529;
}

.admin-page .admin-hero > div {
  width: min(1540px, 100%);
  margin: 0 auto;
}

.admin-page .admin-hero p {
  margin: 0 0 4px;
  color: var(--gold);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-page .admin-hero h1 {
  margin: 0;
  font-size: clamp(1.9rem, 3.5vw, 3.25rem);
  line-height: 1;
}

.admin-page .admin-hero span {
  display: block;
  max-width: 850px;
  margin-top: 7px;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.45;
}

.admin-page .admin-shell {
  width: min(1600px, 100%);
  max-width: none;
  margin: 0 auto;
  padding: 18px clamp(12px, 2vw, 28px) 50px;
}

.admin-workspace {
  display: grid;
  grid-template-columns: 246px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.admin-sidebar {
  position: sticky;
  top: calc(var(--rfcl-scoreboard-offset, 0px) + 104px);
  z-index: 18;
  max-height: calc(100vh - var(--rfcl-scoreboard-offset, 0px) - 122px);
  overflow-y: auto;
  scrollbar-width: thin;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(4, 14, 28, .96);
  box-shadow: 0 16px 34px rgba(0,0,0,.24);
}

.admin-sidebar-brand {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 2px 2px 14px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.admin-sidebar-brand img {
  width: 38px;
  height: 38px;
  object-fit: contain;
}

.admin-sidebar-brand strong,
.admin-sidebar-brand span {
  display: block;
}

.admin-sidebar-brand strong {
  color: #fff;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
}

.admin-sidebar-brand span {
  margin-top: 2px;
  color: var(--muted);
  font-size: .7rem;
}

.admin-command-search {
  position: relative;
  margin: 14px 0;
}

.admin-command-search > label {
  display: block;
  margin-bottom: 6px;
  color: var(--muted);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-command-search > input {
  width: 100%;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 6px;
  outline: none;
  background: #020912;
  color: #fff;
  font: inherit;
}

.admin-command-search > input:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 2px rgba(245,181,27,.13);
}

.admin-command-results {
  position: absolute;
  z-index: 50;
  top: calc(100% + 6px);
  left: 0;
  width: min(440px, calc(100vw - 32px));
  max-height: 420px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  background: #07111f;
  box-shadow: 0 18px 46px rgba(0,0,0,.48);
}

.admin-command-results a {
  display: block;
  padding: 9px 10px;
  border-radius: 5px;
}

.admin-command-results a:hover,
.admin-command-results a:focus-visible {
  background: rgba(255,255,255,.08);
}

.admin-command-results strong,
.admin-command-results span {
  display: block;
}

.admin-command-results strong {
  color: #fff;
  font-size: .82rem;
}

.admin-command-results span {
  margin-top: 2px;
  color: var(--muted);
  font-size: .68rem;
  line-height: 1.35;
}

.admin-command-results p {
  margin: 0;
  padding: 12px;
  color: var(--muted);
  font-size: .76rem;
}

.admin-sidebar-nav {
  display: grid;
  gap: 17px;
}

.admin-sidebar-nav section {
  display: grid;
  gap: 3px;
}

.admin-sidebar-nav h2 {
  margin: 0 0 4px;
  padding: 0 8px;
  color: rgba(255,255,255,.46);
  font-family: Inter, Arial, sans-serif;
  font-size: .65rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-sidebar-nav a {
  min-width: 0;
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px;
  border-left: 3px solid transparent;
  border-radius: 4px;
  color: rgba(255,255,255,.78);
  font-size: .8rem;
  font-weight: 800;
}

.admin-sidebar-nav a:hover {
  background: rgba(255,255,255,.055);
  color: #fff;
}

.admin-sidebar-nav a.active {
  border-left-color: var(--gold);
  background: rgba(245,181,27,.1);
  color: #fff;
}

.admin-sidebar-nav a span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-sidebar-nav a em {
  color: var(--gold);
  font-size: .58rem;
  font-style: normal;
  text-transform: uppercase;
}

.admin-sidebar-public {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-top: 17px;
  padding: 13px 8px 2px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.admin-sidebar-public span {
  width: 100%;
  color: rgba(255,255,255,.44);
  font-size: .64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-sidebar-public a {
  color: var(--muted);
  font-size: .72rem;
  font-weight: 800;
}

.admin-sidebar-public a:hover {
  color: #fff;
}

.admin-workspace-main {
  min-width: 0;
  display: grid;
  gap: 14px;
}

.admin-context-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 4px 2px 16px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.admin-context-bar p {
  margin: 0 0 4px;
  color: var(--gold);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-context-bar h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.55rem, 2.8vw, 2.35rem);
}

.admin-context-bar > div > span {
  display: block;
  max-width: 780px;
  margin-top: 5px;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.45;
}

.admin-context-bar dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(78px, auto));
  gap: 1px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: rgba(255,255,255,.1);
}

.admin-context-bar dl div {
  padding: 8px 10px;
  background: #06111f;
}

.admin-context-bar dt,
.admin-context-bar dd {
  margin: 0;
}

.admin-context-bar dt {
  color: rgba(255,255,255,.48);
  font-size: .58rem;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-context-bar dd {
  max-width: 150px;
  margin-top: 2px;
  overflow: hidden;
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-local-nav {
  position: sticky;
  top: calc(var(--rfcl-scoreboard-offset, 0px) + 92px);
  z-index: 16;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: rgba(3, 10, 20, .94);
  backdrop-filter: blur(12px);
}

.admin-local-nav > span {
  color: rgba(255,255,255,.5);
  font-size: .64rem;
  font-weight: 900;
  text-transform: uppercase;
  white-space: nowrap;
}

.admin-local-nav > div {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 12px;
}

.admin-local-nav a {
  padding: 5px 0 4px;
  border-bottom: 2px solid transparent;
  color: var(--muted);
  font-size: .7rem;
  font-weight: 800;
}

.admin-local-nav a:hover,
.admin-local-nav a.active {
  border-bottom-color: var(--gold);
  color: #fff;
}

.admin-workspace-main > .admin-section-panel > .admin-section-heading {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.admin-workspace-main .admin-section-panel {
  min-width: 0;
  display: grid;
  gap: 16px;
  padding: 0;
  border: 0;
  background: transparent;
}

.admin-workspace-main .admin-grid {
  gap: 14px;
}

.admin-workspace-main .admin-card {
  min-width: 0;
  padding: 17px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 8px;
  background: rgba(7, 20, 37, .72);
  box-shadow: 0 12px 26px rgba(0,0,0,.16);
  scroll-margin-top: calc(var(--rfcl-scoreboard-offset, 0px) + 162px);
}

.admin-workspace-main .admin-card h2,
.admin-workspace-main .admin-card h3 {
  letter-spacing: 0;
  scroll-margin-top: calc(var(--rfcl-scoreboard-offset, 0px) + 162px);
}

.admin-workspace-main .admin-card h2 {
  font-size: 1.15rem;
}

.admin-workspace-main .admin-card h2::after,
.admin-workspace-main .admin-card h3::after {
  display: none;
}

.admin-workspace-main .admin-card-note {
  max-width: 880px;
  margin-top: 5px;
  color: rgba(210, 222, 235, .68);
  font-size: .78rem;
  line-height: 1.45;
}

.admin-workspace-main input:not([type="checkbox"]):not([type="radio"]),
.admin-workspace-main select,
.admin-workspace-main textarea {
  border-radius: 6px !important;
}

.admin-workspace-main button,
.admin-workspace-main .admin-link-button,
.admin-workspace-main .secondary-admin-button {
  border-radius: 6px !important;
}

.admin-workspace-main form:focus-within {
  border-color: rgba(245,181,27,.22);
}

.admin-workspace-main [hidden] {
  display: none !important;
}

@media (max-width: 1220px) {
  .admin-workspace {
    grid-template-columns: 218px minmax(0, 1fr);
    gap: 16px;
  }

  .admin-context-bar {
    grid-template-columns: 1fr;
  }

  .admin-context-bar dl {
    width: fit-content;
  }
}

@media (max-width: 940px) {
  .admin-page .admin-shell {
    padding-left: 10px;
    padding-right: 10px;
  }

  .admin-workspace {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    position: static;
    max-height: none;
    overflow: visible;
  }

  .admin-sidebar-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .admin-command-results {
    width: 100%;
  }

  .admin-local-nav {
    top: calc(var(--rfcl-scoreboard-offset, 0px) + 82px);
  }
}

@media (max-width: 620px) {
  .admin-page .admin-hero {
    padding: 18px 12px 15px;
  }

  .admin-sidebar-nav {
    grid-template-columns: 1fr;
  }

  .admin-context-bar dl {
    width: 100%;
    grid-template-columns: 1fr;
  }

  .admin-context-bar dd {
    max-width: none;
  }

  .admin-local-nav {
    position: static;
    grid-template-columns: 1fr;
  }

  .admin-local-nav > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 12px;
  }

  .admin-local-nav a {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-workspace-main .admin-card {
    padding: 14px;
  }
}

/* === 20260620 conference championship scenario simulator === */
.standings-scenario-link-row {
  display: flex;
  justify-content: flex-end;
  margin: -4px 0 16px;
}

.standings-scenario-link {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border: 1px solid rgba(245,181,27,.34);
  border-radius: 6px;
  background: rgba(245,181,27,.08);
  color: #fff;
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.standings-scenario-link:hover {
  border-color: var(--gold, #f5b51b);
  color: var(--gold, #f5b51b);
}

.conference-scenario-page {
  min-height: 100vh;
  background: #030812;
  color: #fff;
}

.conference-scenario-head {
  padding: 30px clamp(16px, 4vw, 58px) 26px;
  border-bottom: 1px solid rgba(255,255,255,.1);
  background: #07172b;
}

.conference-scenario-head > div,
.conference-scenario-shell {
  width: min(1480px, 100%);
  margin: 0 auto;
}

.conference-scenario-head p,
.conference-scenario-head h1,
.conference-scenario-head span {
  margin: 0;
}

.conference-scenario-head p {
  color: var(--gold, #f5b51b);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-scenario-head h1 {
  margin-top: 4px;
  font-family: Oswald, Impact, sans-serif;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
  text-transform: uppercase;
}

.conference-scenario-head span {
  display: block;
  margin-top: 7px;
  color: rgba(214,226,239,.68);
  font-size: .86rem;
}

.conference-scenario-shell {
  padding: 18px clamp(12px, 2.5vw, 34px) 52px;
}

.conference-scenario-controls {
  display: grid;
  grid-template-columns: minmax(190px, 280px) minmax(240px, 380px) auto;
  gap: 12px;
  align-items: end;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: #071426;
}

.conference-scenario-controls label,
.conference-scenario-controls label span {
  display: block;
}

.conference-scenario-controls label span {
  margin-bottom: 6px;
  color: rgba(255,255,255,.52);
  font-size: .65rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-scenario-controls select {
  width: 100%;
  min-height: 42px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 5px;
  background: #020a14;
  color: #fff;
  padding: 0 11px;
  font: 800 .82rem Inter, Arial, sans-serif;
}

.conference-scenario-controls button,
.conference-scenario-games > header button {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 5px;
  background: rgba(255,255,255,.045);
  color: #fff;
  font: 900 .72rem Inter, Arial, sans-serif;
  text-transform: uppercase;
  cursor: pointer;
}

.conference-scenario-controls button {
  justify-self: end;
}

.conference-scenario-summary {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(330px, auto) minmax(180px, 280px);
  gap: 18px;
  align-items: center;
  margin: 16px 0;
  padding: 15px 17px;
  border: 1px solid rgba(255,255,255,.1);
  border-left: 4px solid var(--gold, #f5b51b);
  border-radius: 7px;
  background: #071426;
}

.conference-scenario-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

.conference-scenario-title img {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

.conference-scenario-title p,
.conference-scenario-title h2 {
  margin: 0;
}

.conference-scenario-title p {
  color: var(--gold, #f5b51b);
  font-size: .65rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-scenario-title h2 {
  margin-top: 2px;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.4rem;
  line-height: 1.1;
  text-transform: uppercase;
}

.conference-berth-card > span {
  display: block;
  margin-bottom: 6px;
  color: rgba(255,255,255,.48);
  font-size: .62rem;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.conference-berth-card > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.conference-berth-card > div > div {
  display: flex;
  align-items: center;
  gap: 6px;
}

.conference-berth-card img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.conference-berth-card div span {
  color: var(--gold, #f5b51b);
  font: 900 .72rem Oswald, Impact, sans-serif;
}

.conference-berth-card div strong {
  font-size: .76rem;
}

.conference-berth-card div b {
  color: rgba(255,255,255,.38);
  font-size: .62rem;
  text-transform: uppercase;
}

.conference-pick-progress span {
  display: block;
  margin-bottom: 7px;
  color: rgba(255,255,255,.62);
  font-size: .7rem;
  font-weight: 900;
  text-align: right;
  text-transform: uppercase;
}

.conference-pick-progress i {
  height: 6px;
  display: block;
  overflow: hidden;
  border-radius: 4px;
  background: rgba(255,255,255,.1);
}

.conference-pick-progress b {
  width: 0;
  height: 100%;
  display: block;
  background: var(--gold, #f5b51b);
  transition: width .2s ease;
}

.conference-scenario-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(390px, .85fr);
  gap: 16px;
  align-items: start;
}

.conference-scenario-games,
.conference-projection-card,
.conference-path-card {
  min-width: 0;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: #071426;
}

.conference-scenario-games > header,
.conference-projection-card > header,
.conference-path-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 16px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.conference-scenario-games header p,
.conference-scenario-games header h2,
.conference-projection-card header p,
.conference-projection-card header h2,
.conference-path-card header p,
.conference-path-card header h2 {
  margin: 0;
}

.conference-scenario-games header p,
.conference-projection-card header p,
.conference-path-card header p {
  color: #54b9d6;
  font-size: .62rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-scenario-games header h2,
.conference-projection-card header h2,
.conference-path-card header h2 {
  margin-top: 2px;
  font-family: Oswald, Impact, sans-serif;
  font-size: 1.12rem;
  text-transform: uppercase;
}

.conference-scenario-games > div {
  padding: 0 14px 14px;
}

.conference-week-divider {
  margin: 14px 0 7px;
  color: rgba(255,255,255,.47);
  font: 900 .66rem Inter, Arial, sans-serif;
  text-transform: uppercase;
}

.conference-game-pick {
  padding: 11px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 6px;
  background: #040d19;
}

.conference-game-pick + .conference-game-pick {
  margin-top: 8px;
}

.conference-game-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.48);
  font-size: .62rem;
  text-transform: uppercase;
}

.conference-game-meta strong {
  color: var(--gold, #f5b51b);
}

.conference-game-matchup {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.conference-team-pick {
  min-width: 0;
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 7px 9px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 5px;
  background: rgba(255,255,255,.035);
  color: #fff;
  text-align: left;
  cursor: pointer;
}

.conference-team-pick.is-home {
  justify-content: flex-end;
  text-align: right;
}

.conference-team-pick:hover,
.conference-team-pick.is-selected {
  border-color: var(--gold, #f5b51b);
  background: rgba(245,181,27,.1);
}

.conference-team-pick img {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  object-fit: contain;
}

.conference-team-pick span {
  min-width: 0;
}

.conference-team-pick small,
.conference-team-pick strong {
  display: block;
}

.conference-team-pick small {
  margin-bottom: 2px;
  color: rgba(255,255,255,.42);
  font-size: .56rem;
  text-transform: uppercase;
}

.conference-team-pick strong {
  overflow: hidden;
  font-size: .72rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.conference-score-pick {
  display: flex;
  align-items: center;
  gap: 4px;
}

.conference-score-pick input {
  width: 44px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 5px;
  background: #020812;
  color: #fff;
  font: 900 .9rem Inter, Arial, sans-serif;
  text-align: center;
}

.conference-score-pick b {
  color: rgba(255,255,255,.4);
}

.conference-game-pick > p {
  margin: 7px 0 0;
  color: #ff7180;
  font-size: .66rem;
  font-weight: 800;
  text-align: center;
}

.conference-scenario-results {
  min-width: 0;
  display: grid;
  gap: 16px;
}

.conference-projection-table,
.conference-path-card > div {
  padding: 10px 14px 14px;
}

.conference-projection-head,
.conference-projection-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 58px 48px;
  gap: 8px;
  align-items: center;
}

.conference-projection-head {
  padding: 0 8px 7px;
  color: rgba(255,255,255,.4);
  font-size: .58rem;
  font-weight: 900;
  text-align: right;
  text-transform: uppercase;
}

.conference-projection-head span:nth-child(2) {
  text-align: left;
}

.conference-projection-row {
  position: relative;
  min-height: 48px;
  padding: 6px 8px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.conference-projection-row::before {
  content: "";
  position: absolute;
  inset: 5px auto 5px 0;
  width: 3px;
  background: var(--scenario-primary);
}

.conference-projection-row.is-qualifier {
  background: rgba(245,181,27,.055);
}

.conference-projection-row img {
  display: none;
}

.conference-projection-rank {
  color: var(--gold, #f5b51b);
  font: 900 .78rem Oswald, Impact, sans-serif;
  text-align: center;
}

.conference-projection-row strong {
  min-width: 0;
  overflow: hidden;
  font-size: .74rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.conference-projection-row > span:not(.conference-projection-rank),
.conference-projection-row em {
  font-size: .72rem;
  font-style: normal;
  font-weight: 900;
  text-align: right;
}

.conference-path-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  min-height: 54px;
  padding: 7px 5px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.conference-path-row img {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.conference-path-row strong,
.conference-path-row span {
  display: block;
}

.conference-path-row strong {
  font-size: .72rem;
}

.conference-path-row span {
  margin-top: 2px;
  color: #54b9d6;
  font-size: .58rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-path-row.clinched span { color: #56d792; }
.conference-path-row.eliminated { opacity: .48; }
.conference-path-row.eliminated span { color: #ff7180; }

.conference-path-row dl {
  display: flex;
  gap: 11px;
  margin: 0;
}

.conference-path-row dl div {
  min-width: 54px;
  text-align: right;
}

.conference-path-row dt,
.conference-path-row dd {
  margin: 0;
}

.conference-path-row dt {
  color: rgba(255,255,255,.4);
  font-size: .53rem;
  font-weight: 900;
  text-transform: uppercase;
}

.conference-path-row dd {
  margin-top: 2px;
  font: 900 .8rem Oswald, Impact, sans-serif;
}

.conference-path-note {
  margin: 10px 2px 0;
  color: rgba(255,255,255,.44);
  font-size: .62rem;
  line-height: 1.45;
}

.conference-scenario-empty {
  padding: 28px 18px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 7px;
  background: #071426;
  color: rgba(255,255,255,.58);
  text-align: center;
}

@media (max-width: 1050px) {
  .conference-scenario-summary {
    grid-template-columns: 1fr 1fr;
  }

  .conference-pick-progress {
    grid-column: 1 / -1;
  }

  .conference-pick-progress span {
    text-align: left;
  }

  .conference-scenario-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .conference-scenario-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .standings-scenario-link-row {
    justify-content: stretch;
  }

  .standings-scenario-link {
    width: 100%;
    justify-content: center;
  }

  .conference-scenario-controls,
  .conference-scenario-summary,
  .conference-scenario-results {
    grid-template-columns: minmax(0, 1fr);
  }

  .conference-scenario-controls button {
    width: 100%;
    justify-self: stretch;
  }

  .conference-berth-card {
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.08);
  }

  .conference-pick-progress {
    grid-column: auto;
  }

  .conference-game-matchup {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .conference-team-pick {
    min-height: 50px;
  }

  .conference-team-pick.is-home {
    grid-column: 1;
    grid-row: 2;
    justify-content: flex-start;
    text-align: left;
  }

  .conference-team-pick.is-home span {
    order: 2;
  }

  .conference-score-pick {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  .conference-path-row {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .conference-path-row dl {
    grid-column: 2;
    justify-content: flex-start;
  }

  .conference-path-row dl div {
    text-align: left;
  }
}

/* === 20260620 pregame matchup predictor === */
.game-predictor-panel {
  overflow: hidden;
  padding: 0 !important;
  border-radius: 8px !important;
  background: #071426 !important;
}

.game-predictor-head {
  padding: 17px 20px 14px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.game-predictor-head span,
.game-predictor-head h2 {
  margin: 0;
}

.game-predictor-head span {
  display: block;
  margin-bottom: 3px;
  color: var(--gold, #f5b51b);
  font-size: .64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.game-predictor-head h2 {
  font-size: 1.22rem;
}

.game-predictor-layout {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(220px, 300px) minmax(150px, 1fr);
  gap: clamp(18px, 4vw, 48px);
  align-items: center;
  padding: clamp(24px, 4vw, 42px) clamp(20px, 5vw, 68px) 24px;
}

.game-predictor-team {
  min-width: 0;
}

.game-predictor-team-home {
  text-align: right;
}

.game-predictor-team strong {
  display: block;
  color: #fff;
  font: 700 clamp(2rem, 5vw, 3.35rem)/1 Oswald, Impact, sans-serif;
}

.game-predictor-team span {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 7px;
  color: rgba(222,231,241,.68);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.game-predictor-team-home span {
  justify-content: flex-end;
}

.game-predictor-team i {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: var(--predict-away);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}

.game-predictor-team-home i {
  background: var(--predict-home);
}

.game-predictor-ring {
  position: relative;
  width: min(100%, 280px);
  aspect-ratio: 1;
  justify-self: center;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(
    var(--predict-home) 0 var(--predict-home-pct),
    var(--predict-away) var(--predict-home-pct) 100%
  );
  box-shadow: 0 16px 36px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.12);
}

.game-predictor-ring::before {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  background: #071426;
  box-shadow: 0 0 0 2px rgba(255,255,255,.08);
}

.game-predictor-ring > div {
  position: relative;
  z-index: 1;
  width: 55%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  align-items: center;
}

.game-predictor-ring img {
  width: 100%;
  height: 58px;
  object-fit: contain;
}

.game-predictor-source {
  margin: 0 !important;
  padding: 0 20px 20px;
  color: rgba(220,229,239,.48) !important;
  font-size: .72rem;
  font-weight: 800;
  text-align: center;
}

@media (max-width: 720px) {
  .game-predictor-layout {
    grid-template-columns: minmax(0, 1fr) minmax(140px, 190px) minmax(0, 1fr);
    gap: 10px;
    padding: 24px 12px 18px;
  }

  .game-predictor-team strong {
    font-size: clamp(1.55rem, 8vw, 2.3rem);
  }

  .game-predictor-team span {
    gap: 4px;
    font-size: .66rem;
  }

  .game-predictor-team i {
    width: 9px;
    height: 9px;
  }

  .game-predictor-ring img {
    height: 40px;
  }
}

@media (max-width: 430px) {
  .game-predictor-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 16px;
  }

  .game-predictor-ring {
    grid-column: 1 / -1;
    grid-row: 1;
    width: min(68vw, 220px);
  }

  .game-predictor-team-away {
    grid-column: 1;
    grid-row: 2;
  }

  .game-predictor-team-home {
    grid-column: 2;
    grid-row: 2;
  }
}

/* === 20260621 unified public footer === */
.site-footer {
  display: block !important;
  width: 100%;
  padding: 0 !important;
  border-top: 3px solid #d7192a;
  background: #020812 !important;
  color: #fff;
  text-align: left !important;
}

.site-footer-inner {
  width: min(1480px, 100%);
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(130px, .65fr));
  gap: clamp(28px, 4vw, 64px);
  align-items: start;
  margin: 0 auto;
  padding: 34px clamp(18px, 4vw, 56px) 30px;
  justify-items: stretch !important;
}

.site-footer-brand {
  min-width: 0;
}

.site-footer-logo-link {
  width: fit-content;
  display: block;
}

.site-footer .site-footer-brand img.footer-logo-wide {
  width: min(230px, 100%) !important;
  height: auto !important;
  max-height: 92px !important;
  display: block;
  float: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: contain;
  object-position: left center;
}

.site-footer-brand p {
  max-width: 370px;
  margin: 14px 0 0 !important;
  color: rgba(220,229,239,.58) !important;
  font-size: .78rem !important;
  line-height: 1.55;
}

.site-footer .site-footer-nav {
  display: grid !important;
  gap: 8px !important;
  align-content: start;
  justify-items: start !important;
}

.site-footer .site-footer-nav strong {
  margin: 0 0 5px !important;
  color: var(--gold, #f5b51b) !important;
  font-family: Oswald, Impact, sans-serif;
  font-size: .78rem !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
}

.site-footer .site-footer-nav a {
  min-height: 24px !important;
  display: inline-flex !important;
  align-items: center;
  color: rgba(220,229,239,.68) !important;
  font-size: .76rem;
  font-weight: 750;
  line-height: 1.25;
}

.site-footer .site-footer-nav a:hover,
.site-footer .site-footer-nav a:focus-visible {
  color: #fff !important;
}

.site-footer-bottom {
  width: min(1480px, 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 auto;
  padding: 13px clamp(18px, 4vw, 56px) 15px;
  border-top: 1px solid rgba(255,255,255,.08);
  color: rgba(220,229,239,.38);
  font-size: .63rem;
  font-weight: 800;
  text-transform: uppercase;
}

.site-footer > .site-footer-bottom {
  display: flex !important;
  justify-items: initial !important;
}

.site-footer-bottom span:last-child {
  color: rgba(245,181,27,.62);
}

@media (max-width: 900px) {
  .site-footer-inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 20px;
  }

  .site-footer-brand {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 18px;
    align-items: center;
  }

  .site-footer .site-footer-brand img.footer-logo-wide {
    width: 190px !important;
  }

  .site-footer-brand p {
    margin: 0 !important;
  }
}

@media (max-width: 560px) {
  .site-footer-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px 20px;
    padding: 28px 18px 24px;
  }

  .site-footer-brand {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .site-footer .site-footer-brand img.footer-logo-wide {
    width: min(190px, 70vw) !important;
  }

  .site-footer-brand p {
    max-width: 320px;
  }

  .site-footer .site-footer-nav:last-child {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer .site-footer-nav:last-child strong {
    grid-column: 1 / -1;
  }

  .site-footer-bottom {
    padding: 13px 18px 15px;
  }

  .site-footer-bottom span:last-child {
    display: none;
  }
}

/* Field of Eight selection show */
.field-eight-body { background:#05080c; }
.field-eight { min-height:calc(100vh - var(--rfcl-scoreboard-offset, 0px) - 74px); padding:clamp(24px,4vw,56px); color:#f5f7fa; background:linear-gradient(180deg,#07101b 0,#05080c 52%,#080b10 100%); }
.field-eight-hero { max-width:1500px; margin:0 auto 24px; display:flex; align-items:flex-end; justify-content:space-between; gap:30px; padding-bottom:22px; border-bottom:1px solid rgba(255,255,255,.14); }
.field-eight-hero p { display:flex; align-items:center; gap:12px; margin:0 0 8px; color:#aab4c1; font:700 .72rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-hero p span { padding:6px 9px; border-left:3px solid #f5b51b; background:#17202c; color:#fff; }
.field-eight-hero p b { color:#f5b51b; }
.field-eight-hero h1 { margin:0; max-width:850px; color:#fff; font:700 clamp(2rem,4.4vw,4.7rem)/.94 Oswald,sans-serif; text-transform:uppercase; letter-spacing:0; }
.field-eight-hero small { display:block; margin-top:12px; color:#9aa6b5; font:600 .9rem/1.4 Inter,sans-serif; }
.field-eight-progress { flex:0 0 210px; }
.field-eight-progress strong { display:block; color:#fff; font:700 2rem/1 Oswald,sans-serif; }
.field-eight-progress strong i { color:#6f7a87; font-style:normal; }
.field-eight-progress small { margin:5px 0 10px; color:#9aa6b5; font-size:.68rem; text-transform:uppercase; }
.field-eight-progress > div { height:5px; overflow:hidden; background:#26303c; }
.field-eight-progress > div span { display:block; height:100%; background:#f5b51b; transition:width .45s ease; }
.field-eight-layout { max-width:1500px; margin:0 auto; display:grid; grid-template-columns:minmax(250px,320px) minmax(0,1fr); gap:24px; align-items:start; }
.field-eight-section-title { display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding-bottom:11px; border-bottom:1px solid rgba(255,255,255,.12); }
.field-eight-section-title span { color:#fff; font:700 1rem/1 Oswald,sans-serif; text-transform:uppercase; }
.field-eight-section-title small { color:#717d8c; font:700 .62rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-board { padding:18px; border:1px solid rgba(255,255,255,.12); background:#0c121a; }
.field-eight-board ol { display:grid; gap:7px; margin:14px 0 0; padding:0; list-style:none; }
.field-eight-board li { position:relative; display:grid; grid-template-columns:28px 34px minmax(0,1fr) auto; gap:9px; align-items:center; min-height:47px; padding:7px 9px; overflow:hidden; background:#121922; color:#616d7b; }
.field-eight-board li::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:#283341; }
.field-eight-board li.is-revealed { color:#fff; background:#18212c; }
.field-eight-board li.is-revealed::before { background:var(--team-primary,#d7192a); }
.field-eight-board li b { font:700 1rem/1 Oswald,sans-serif; text-align:center; }
.field-eight-board li img { width:32px; height:32px; object-fit:contain; }
.field-eight-board li span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:700 .72rem/1.2 Inter,sans-serif; text-transform:uppercase; }
.field-eight-board li em { color:#b8c1cc; font:700 .65rem/1 Inter,sans-serif; font-style:normal; }
.field-eight-main { min-width:0; display:grid; gap:24px; }
.field-eight-reveal { position:relative; min-height:310px; display:grid; place-items:center; overflow:hidden; isolation:isolate; border:1px solid rgba(255,255,255,.14); background:#0b1118; }
.field-eight-reveal::before { content:""; position:absolute; inset:0; z-index:-1; border-top:4px solid var(--team-primary,#f5b51b); background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 48%); }
.field-eight-reveal-empty { text-align:center; }
.field-eight-reveal-empty img { width:74px; height:74px; object-fit:contain; opacity:.55; filter:grayscale(1); }
.field-eight-reveal-empty p { margin:14px 0 5px; color:#f5b51b; font:700 .7rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-reveal-empty strong { color:#d9dfe7; font:600 1.1rem/1.3 Inter,sans-serif; }
.field-eight-reveal-team { width:100%; min-height:310px; display:grid; grid-template-columns:auto minmax(130px,210px) minmax(0,1fr); grid-template-rows:auto auto auto; column-gap:clamp(20px,4vw,52px); align-items:center; padding:28px clamp(24px,5vw,68px); }
.field-eight-reveal-team > span { grid-column:1/-1; align-self:start; color:#f5b51b; font:800 .7rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-reveal-seed { grid-row:2/4; color:rgba(255,255,255,.16); font:700 clamp(5rem,10vw,9.5rem)/.8 Oswald,sans-serif; }
.field-eight-reveal-seed i { font-style:normal; }
.field-eight-reveal-logo { grid-row:2/4; display:grid; place-items:center; width:100%; aspect-ratio:1; max-height:190px; padding:18px; border-bottom:4px solid var(--team-primary,#d7192a); background:rgba(255,255,255,.045); }
.field-eight-reveal-logo img { width:100%; height:100%; max-height:150px; object-fit:contain; }
.field-eight-reveal-team h2 { align-self:end; min-width:0; margin:0; color:#fff; font:700 clamp(1.9rem,4vw,4.2rem)/.95 Oswald,sans-serif; text-transform:uppercase; overflow-wrap:anywhere; }
.field-eight-reveal-team p { align-self:start; display:flex; flex-wrap:wrap; gap:8px 16px; margin:11px 0 0; color:#b8c1cc; font:700 .75rem/1.3 Inter,sans-serif; text-transform:uppercase; }
.field-eight-reveal-team p i { color:#f5b51b; font-style:normal; }
.field-eight-reveal-team.is-entering { animation:fieldEightReveal .85s cubic-bezier(.2,.75,.2,1); }
@keyframes fieldEightReveal { 0% { opacity:0; transform:translateY(24px); } 55% { opacity:1; } 100% { transform:none; } }
.field-eight-bracket { padding:18px; border:1px solid rgba(255,255,255,.12); background:#0c121a; }
.field-eight-matchups { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:14px; }
.field-eight-matchup { min-width:0; padding:10px; border-top:2px solid #313c49; background:#111821; }
.field-eight-matchup > small { display:block; margin-bottom:8px; color:#6e7a89; font:700 .58rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-matchup > div { display:grid; grid-template-columns:20px 28px minmax(0,1fr); grid-template-rows:auto auto; gap:1px 7px; align-items:center; min-height:45px; padding:6px 4px; border-top:1px solid rgba(255,255,255,.08); color:#5f6a77; }
.field-eight-matchup > div.is-revealed { color:#fff; }
.field-eight-matchup b { grid-row:1/3; color:inherit; font:700 .85rem/1 Oswald,sans-serif; text-align:center; }
.field-eight-matchup img { grid-row:1/3; width:27px; height:27px; object-fit:contain; }
.field-eight-matchup span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:700 .66rem/1.15 Inter,sans-serif; text-transform:uppercase; }
.field-eight-matchup em { color:#8f9aa7; font:600 .58rem/1 Inter,sans-serif; font-style:normal; }
.field-eight-ticker { max-width:1500px; margin:24px auto 0; display:grid; grid-template-columns:1fr auto 1fr; gap:20px; padding-top:13px; border-top:1px solid rgba(255,255,255,.14); color:#8b96a3; font:700 .64rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-ticker span { color:#f5b51b; }
.field-eight-ticker strong { color:#fff; }
.field-eight-ticker time { text-align:right; }
.field-eight-unavailable { min-height:calc(100vh - 130px); display:grid; place-content:center; justify-items:center; padding:30px; color:#fff; text-align:center; background:#05080c; }
.field-eight-unavailable img { width:90px; height:90px; object-fit:contain; }
.field-eight-unavailable p { margin:20px 0 6px; color:#f5b51b; font:800 .7rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-unavailable h1 { margin:0; font:700 clamp(2rem,5vw,4rem)/1 Oswald,sans-serif; text-transform:uppercase; }
.field-eight-unavailable span { margin-top:12px; color:#929dab; }

/* Selection show admin */
.selection-control-center { display:grid; gap:22px; }
.selection-control-heading p:last-child { max-width:680px; margin:5px 0 0; color:var(--admin-muted,#677383); font-size:.78rem; }
.selection-control-status { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.selection-control-status > div { padding:13px 14px; border:1px solid #dce2e9; border-left:3px solid #98a3af; background:#f7f9fb; }
.selection-control-status span { display:block; color:#6a7480; font-size:.62rem; font-weight:800; text-transform:uppercase; }
.selection-control-status strong { display:block; margin-top:5px; color:#172333; font-size:.9rem; }
.selection-control-status strong.is-on { color:#147647; }
.selection-control-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); gap:16px; align-items:stretch; }
.selection-control-panel,.selection-field-editor { min-width:0; padding:17px; border:1px solid #dce2e9; background:#f8fafc; }
.selection-control-panel-title { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:15px; padding-bottom:10px; border-bottom:1px solid #dce2e9; }
.selection-control-panel-title span { color:#152132; font-size:.8rem; font-weight:900; text-transform:uppercase; }
.selection-control-panel-title small { color:#7b8693; font-size:.62rem; font-weight:700; text-transform:uppercase; }
.selection-settings-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.selection-settings-form label { min-width:0; }
.selection-settings-form input,.selection-settings-form select { width:100%; }
.selection-settings-wide { grid-column:1/-1; }
.selection-public-switch { align-self:end; min-height:42px; }
.selection-next-seed { min-height:142px; display:grid; place-content:center; justify-items:center; text-align:center; background:#101927; color:#fff; }
.selection-next-seed > span { color:#f5b51b; font-size:.62rem; font-weight:900; text-transform:uppercase; }
.selection-next-seed strong { margin:3px 0; font:700 3.5rem/1 Oswald,sans-serif; }
.selection-next-seed small { color:#8f9aaa; font-size:.62rem; }
.selection-admin-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }
.selection-admin-actions button:first-child { grid-column:1/-1; }
.selection-admin-actions button:disabled { opacity:.45; cursor:not-allowed; }
.selection-field-editor { display:grid; }
.selection-slot-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.selection-slot-edit-card { display:grid; grid-template-columns:58px minmax(150px,1.5fr) minmax(130px,1fr) 82px minmax(130px,1fr); gap:9px; align-items:end; min-width:0; padding:11px; border:1px solid #dce2e9; background:#fff; }
.selection-slot-edit-card > strong { align-self:stretch; display:grid; place-content:center; color:#132136; font:800 1.5rem/1 Oswald,sans-serif; text-align:center; background:#edf1f5; }
.selection-slot-edit-card > strong span { display:block; margin-bottom:3px; color:#7c8794; font:800 .5rem/1 Inter,sans-serif; text-transform:uppercase; }
.selection-slot-edit-card label { min-width:0; margin:0; color:#677280; font-size:.58rem; font-weight:800; text-transform:uppercase; }
.selection-slot-edit-card input,.selection-slot-edit-card select { width:100%; min-width:0; margin-top:4px; }
.selection-field-editor > button { justify-self:start; margin-top:14px; }

@media (max-width:1100px) {
  .field-eight-layout { grid-template-columns:1fr; }
  .field-eight-board ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .field-eight-matchups { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .selection-slot-admin-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .field-eight { padding:22px 14px 26px; }
  .field-eight-hero { align-items:flex-start; }
  .field-eight-progress { flex-basis:110px; }
  .field-eight-reveal-team { grid-template-columns:70px 100px minmax(0,1fr); column-gap:14px; padding:22px 16px; }
  .field-eight-reveal-seed { font-size:4rem; }
  .field-eight-matchups { grid-template-columns:1fr; }
  .selection-control-status { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .selection-control-grid { grid-template-columns:1fr; }
  .selection-slot-edit-card { grid-template-columns:52px minmax(0,1fr) 78px; }
  .selection-slot-edit-card > strong { grid-row:1/3; }
  .selection-slot-team { grid-column:2/4; }
}
@media (max-width:520px) {
  .field-eight-hero { display:grid; }
  .field-eight-progress { width:100%; }
  .field-eight-board ol { grid-template-columns:1fr; }
  .field-eight-reveal { min-height:360px; }
  .field-eight-reveal-team { min-height:360px; grid-template-columns:70px minmax(0,1fr); grid-template-rows:auto 130px auto auto; align-content:center; }
  .field-eight-reveal-team > span { grid-column:1/-1; }
  .field-eight-reveal-seed { grid-row:2; }
  .field-eight-reveal-logo { grid-row:2; max-height:130px; }
  .field-eight-reveal-team h2,.field-eight-reveal-team p { grid-column:1/-1; }
  .field-eight-reveal-team h2 { margin-top:17px; font-size:2rem; }
  .field-eight-ticker { grid-template-columns:1fr auto; }
  .field-eight-ticker strong { display:none; }
  .selection-settings-form { grid-template-columns:1fr; }
  .selection-settings-wide { grid-column:auto; }
  .selection-slot-edit-card { grid-template-columns:48px minmax(0,1fr); }
  .selection-slot-edit-card > strong { grid-row:1/4; }
  .selection-slot-team { grid-column:2; }
  .selection-admin-actions { grid-template-columns:1fr; }
  .selection-admin-actions button:first-child { grid-column:auto; }
}

/* Standalone selection show admin */
.selection-show-admin-page { width:100%; max-width:100%; min-width:0; }
.selection-show-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.selection-show-summary > div { min-width:0; padding:12px 14px; border:1px solid rgba(255,255,255,.1); border-left:3px solid rgba(255,255,255,.22); border-radius:6px; background:rgba(7,20,37,.72); }
.selection-show-summary span { display:block; color:rgba(255,255,255,.48); font-size:.58rem; font-weight:900; text-transform:uppercase; }
.selection-show-summary strong { display:block; margin-top:4px; overflow:hidden; color:#fff; font-size:.86rem; text-overflow:ellipsis; white-space:nowrap; }
.selection-show-summary strong.is-live { color:#61d79b; }
.selection-admin-title { display:flex; align-items:center; justify-content:space-between; gap:16px; min-width:0; margin-bottom:15px; padding-bottom:11px; border-bottom:1px solid rgba(255,255,255,.1); }
.selection-admin-title > div:first-child { min-width:0; }
.selection-admin-title span { display:block; color:#fff; font-size:.82rem; font-weight:900; text-transform:uppercase; }
.selection-admin-title small { display:block; margin-top:3px; color:rgba(255,255,255,.46); font-size:.62rem; font-weight:700; }
.selection-show-settings-form { display:grid; grid-template-columns:minmax(180px,1.6fr) minmax(130px,.7fr) minmax(130px,.7fr); gap:12px; align-items:end; min-width:0; }
.selection-show-settings-form label { min-width:0; margin:0; }
.selection-show-settings-form input,.selection-show-settings-form select { width:100%; min-width:0; }
.selection-show-subtitle-field { grid-column:1/3; }
.selection-show-visibility { align-self:stretch; min-height:42px; }
.selection-show-settings-form > button { grid-column:3; }
.selection-reveal-actions { display:flex; flex-wrap:wrap; gap:8px; }
.selection-reveal-actions form { margin:0; }
.selection-reveal-actions button { min-height:34px; }
.selection-reveal-actions button:disabled { opacity:.38; cursor:not-allowed; }
.selection-seed-console { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; min-width:0; }
.selection-seed-console button { position:relative; min-width:0; min-height:84px; display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-rows:1fr auto; gap:5px 10px; align-items:center; padding:12px; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-left:4px solid var(--gold); border-radius:6px; background:#0b192a; color:#fff; text-align:left; }
.selection-seed-console button:hover:not(:disabled) { border-color:rgba(245,181,27,.65); background:#10233a; transform:translateY(-1px); }
.selection-seed-console button b { grid-row:1/3; color:var(--gold); font:700 1.8rem/1 Oswald,sans-serif; }
.selection-seed-console button span { min-width:0; overflow:hidden; color:#fff; font-size:.72rem; font-weight:800; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.selection-seed-console button em { color:rgba(255,255,255,.45); font-size:.56rem; font-style:normal; font-weight:900; text-transform:uppercase; }
.selection-seed-console button.is-revealed { border-left-color:#27a56b; background:rgba(22,84,61,.24); opacity:.72; }
.selection-seed-console button.is-revealed b,.selection-seed-console button.is-revealed em { color:#61d79b; }
.selection-field-form { min-width:0; }
.selection-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.selection-field-row { min-width:0; display:grid; grid-template-columns:54px minmax(0,1.2fr) minmax(130px,.8fr); gap:9px; align-items:end; padding:11px; border:1px solid rgba(255,255,255,.1); border-radius:6px; background:rgba(3,12,23,.48); }
.selection-field-row > strong { align-self:stretch; display:grid; place-content:center; border-radius:4px; background:rgba(255,255,255,.07); color:#fff; font:700 1.35rem/1 Oswald,sans-serif; text-align:center; }
.selection-field-row > strong span { display:block; margin-bottom:3px; color:rgba(255,255,255,.4); font:800 .48rem/1 Inter,sans-serif; text-transform:uppercase; }
.selection-field-row label { min-width:0; margin:0; color:rgba(255,255,255,.54); font-size:.56rem; font-weight:900; text-transform:uppercase; }
.selection-field-row input,.selection-field-row select { width:100%; min-width:0; margin-top:4px; }
.selection-field-team,.selection-field-row label:last-child { grid-column:auto; }
.selection-field-form > button { margin-top:14px; }

@media (max-width:1250px) {
  .selection-field-grid { grid-template-columns:1fr; }
}
@media (max-width:900px) {
  .selection-seed-console { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .selection-show-settings-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .selection-show-subtitle-field { grid-column:1/-1; }
  .selection-show-settings-form > button { grid-column:auto; }
}
@media (max-width:680px) {
  .selection-show-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .selection-admin-title { align-items:flex-start; }
  .selection-field-row { grid-template-columns:48px minmax(0,1fr) 76px; }
  .selection-field-row > strong { grid-row:1/4; }
  .selection-field-team { grid-column:2/4; }
  .selection-field-row label:last-child { grid-column:2/4; }
}
@media (max-width:480px) {
  .selection-show-settings-form,.selection-seed-console { grid-template-columns:1fr; }
  .selection-show-subtitle-field,.selection-show-settings-form > button { grid-column:auto; }
  .selection-admin-title { display:grid; }
  .selection-reveal-actions { width:100%; }
  .selection-field-row { grid-template-columns:44px minmax(0,1fr); }
  .selection-field-row > strong { grid-row:1/5; }
  .selection-field-team,.selection-field-row label:last-child { grid-column:2; }
}

/* Complete public selection bracket */
.field-eight-board li { overflow:visible; }
.field-eight-board li span {
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:break-word;
  line-height:1.25;
}
.field-eight-bracket-tree { display:grid; grid-template-columns:minmax(280px,1.35fr) minmax(190px,.9fr) minmax(180px,.8fr); gap:20px; min-width:0; margin-top:16px; }
.field-eight-bracket-round { min-width:0; display:grid; grid-template-rows:auto minmax(0,1fr); }
.field-eight-bracket-round h3 { display:flex; align-items:baseline; justify-content:space-between; gap:10px; min-width:0; margin:0 0 9px; padding:0 2px; }
.field-eight-bracket-round h3 span { color:#dfe5ec; font:700 .72rem/1 Oswald,sans-serif; text-transform:uppercase; }
.field-eight-bracket-round h3 small { color:#657180; font:700 .52rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-bracket-round > div { min-width:0; display:grid; gap:10px; }
.field-eight-bracket-quarterfinals > div { grid-template-rows:repeat(4,minmax(94px,auto)); }
.field-eight-bracket-semifinals > div { grid-template-rows:repeat(2,minmax(100px,auto)); align-content:space-around; gap:34px; padding-block:48px; border-inline:1px solid rgba(255,255,255,.07); }
.field-eight-bracket-championship > div { align-content:center; gap:16px; padding-block:120px; }
.field-eight-matchup { position:relative; min-width:0; padding:9px 10px; border:1px solid rgba(255,255,255,.08); border-top:2px solid #313c49; background:#111821; transition:border-color .25s ease,background .25s ease; }
.field-eight-matchup.is-complete { border-color:rgba(245,181,27,.28); border-top-color:#f5b51b; background:#151d27; }
.field-eight-matchup > div { grid-template-columns:20px 28px minmax(0,1fr); min-height:42px; padding:6px 3px; }
.field-eight-matchup span {
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:break-word;
  font-size:.64rem;
  line-height:1.25;
}
.field-eight-future-matchup { min-width:0; align-self:center; padding:10px; border:1px solid rgba(255,255,255,.08); border-top:2px solid #3a4654; background:#0f161f; }
.field-eight-future-matchup > small { display:block; margin-bottom:7px; color:#6e7a89; font:700 .55rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-future-matchup > span { display:flex; align-items:center; min-height:38px; padding:7px 8px; border-top:1px solid rgba(255,255,255,.08); color:#8b96a4; font:700 .62rem/1.25 Inter,sans-serif; text-transform:uppercase; overflow-wrap:anywhere; }
.field-eight-title-matchup { border-top-color:#f5b51b; background:#151b23; }
.field-eight-trophy-mark { display:grid; justify-items:center; gap:6px; padding-top:8px; color:#f5b51b; font:700 .58rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-trophy-mark img { width:38px; height:38px; object-fit:contain; opacity:.8; }

@media (max-width:760px) {
  .field-eight-bracket-tree { grid-template-columns:minmax(240px,1.25fr) minmax(170px,.9fr) minmax(160px,.8fr); gap:12px; }
  .field-eight-bracket-semifinals > div { padding-block:44px; }
  .field-eight-bracket-championship > div { padding-block:112px; }
}
@media (max-width:640px) {
  .field-eight-bracket-tree { grid-template-columns:1fr; gap:24px; }
  .field-eight-bracket-round { padding-bottom:20px; border-bottom:1px solid rgba(255,255,255,.1); }
  .field-eight-bracket-round:last-child { padding-bottom:0; border-bottom:0; }
  .field-eight-bracket-quarterfinals > div,.field-eight-bracket-semifinals > div { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; align-content:initial; gap:9px; padding:0; border:0; }
  .field-eight-bracket-championship > div { padding:0; }
}
@media (max-width:420px) {
  .field-eight-bracket-quarterfinals > div,.field-eight-bracket-semifinals > div { grid-template-columns:1fr; }
}

.field-eight-board li:not(.is-revealed) span {
  grid-column:2/-1;
  white-space:nowrap;
  overflow-wrap:normal;
  font-size:.66rem;
}
.field-eight-matchup > div:not(.is-revealed) {
  grid-template-columns:20px minmax(0,1fr);
}
.field-eight-matchup > div:not(.is-revealed) span {
  grid-column:2;
  white-space:nowrap;
  overflow-wrap:normal;
  font-size:.6rem;
}
.field-eight-matchup > div:not(.is-revealed) img { display:none; }

.field-eight-reveal-suspense { width:100%; padding:42px 24px; text-align:center; }
.field-eight-reveal-suspense > span { display:block; color:#f5b51b; font:800 .68rem/1 Inter,sans-serif; text-transform:uppercase; }
.field-eight-reveal-suspense > strong { display:block; margin-top:18px; color:#fff; font:700 clamp(2rem,5vw,4.8rem)/1 Oswald,sans-serif; text-transform:uppercase; }
.field-eight-reveal-suspense > strong b { color:#f5b51b; font:inherit; }
.field-eight-reveal-suspense > strong i { font-style:normal; }
.field-eight-reveal-suspense > div { display:flex; justify-content:center; gap:7px; margin-top:28px; }
.field-eight-reveal-suspense > div i { width:34px; height:4px; background:#3b4653; animation:fieldEightSuspense 1s ease-in-out infinite; }
.field-eight-reveal-suspense > div i:nth-child(2) { animation-delay:.16s; }
.field-eight-reveal-suspense > div i:nth-child(3) { animation-delay:.32s; }
.field-eight-reveal.is-building-suspense::before { border-top-color:#f5b51b; }
@keyframes fieldEightSuspense { 0%,100% { opacity:.28; transform:scaleX(.72); } 50% { opacity:1; transform:scaleX(1); background:#f5b51b; } }

.selection-field-row { grid-template-columns:54px minmax(0,1fr); }
.selection-field-row > strong { grid-row:auto; }
.selection-field-team { grid-column:2; }
@media (max-width:680px) {
  .selection-field-row { grid-template-columns:48px minmax(0,1fr); }
  .selection-field-row > strong { grid-row:auto; }
  .selection-field-team { grid-column:2; }
}
@media (max-width:480px) {
  .selection-field-row { grid-template-columns:44px minmax(0,1fr); }
  .selection-field-row > strong { grid-row:auto; }
}

/* Homepage hero after weekly story removal */
.home-page .home-hero,
.home-page .hero.home-hero { grid-template-columns:minmax(0,1fr) !important; }
