.glf-gm {
  --navy: #071a2f;
  --navy-light: #0d2948;
  --blue: #1264a3;
  --blue-light: #1d8fe1;
  --gold: #f5b942;
  --white: #ffffff;
  --muted: #9fb2c7;
  --border: rgba(255,255,255,.12);

  background:
    radial-gradient(circle at top right, rgba(18,100,163,.25), transparent 35%),
    linear-gradient(180deg, #071a2f 0%, #04111f 100%);

  color: var(--white);
  padding: 50px 20px;
  min-height: 900px;
}

.glf-gm * {
  box-sizing: border-box;
}

.glf-gm .glf-gm-container {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-gm-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  margin-bottom: 30px;
}

.glf-gm .glf-gm-kicker {
  color: var(--gold);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2px;
}

.glf-gm h1 {
  font-size: clamp(38px, 6vw, 68px);
  margin: 3px 0;
  line-height: 1;
}

.glf-gm .glf-gm-header p {
  color: var(--muted);
  margin: 10px 0 0;
}

.glf-gm .glf-season-badge {
  background: var(--gold);
  color: var(--navy);
  font-weight: 900;
  padding: 10px 18px;
  border-radius: 999px;
  white-space: nowrap;
}

.glf-gm .glf-team-header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 20px;
  background: rgba(255,255,255,.06);
  border: 1px solid var(--border);
  padding: 24px;
  border-radius: 18px;
  margin-bottom: 20px;
}

.glf-gm .glf-team-logo,
.glf-gm .glf-mini-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--blue-light), var(--blue));
  color: white;
  font-weight: 900;
}

.glf-gm .glf-team-logo {
  width: 76px;
  height: 76px;
  border-radius: 16px;
  font-size: 26px;
}

.glf-gm .glf-team-info span,
.glf-gm .glf-record span,
.glf-gm .glf-stat-card span,
.glf-gm .glf-objective span,
.glf-gm .glf-gm-status > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
}

.glf-gm .glf-team-info h2 {
  margin: 3px 0;
  font-size: 28px;
}

.glf-gm .glf-team-info p {
  margin: 0;
  color: var(--muted);
}

.glf-gm .glf-record {
  text-align: center;
}

.glf-gm .glf-record strong {
  display: block;
  font-size: 34px;
}

.glf-gm .glf-gm-stats {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 15px;
  margin-bottom: 20px;
}

.glf-gm .glf-stat-card {
  background: var(--navy-light);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 20px;
}

.glf-gm .glf-stat-card strong {
  display: block;
  font-size: 30px;
  margin: 4px 0;
}

.glf-gm .glf-stat-card small {
  color: var(--muted);
}

.glf-gm .glf-gm-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}

.glf-gm .glf-main-panel,
.glf-gm .glf-side-panel,
.glf-gm .glf-news {
  background: rgba(255,255,255,.05);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 22px;
}

.glf-gm .glf-panel-title {
  color: var(--gold);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 20px;
}

.glf-gm .glf-matchup {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  text-align: center;
  gap: 20px;
}

.glf-gm .glf-matchup-team {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.glf-gm .glf-mini-logo {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  margin-bottom: 5px;
}

.glf-gm .glf-matchup-team span,
.glf-gm .glf-vs span,
.glf-gm .glf-vs small {
  color: var(--muted);
}

.glf-gm .glf-vs strong {
  display: block;
  font-size: 26px;
  margin: 4px 0;
}

.glf-gm .glf-sim-button {
  width: 100%;
  border: 0;
  border-radius: 12px;
  background: var(--gold);
  color: var(--navy);
  font-weight: 900;
  font-size: 15px;
  padding: 15px;
  margin-top: 22px;
  cursor: pointer;
}

.glf-gm .glf-progress {
  height: 10px;
  background: rgba(255,255,255,.1);
  border-radius: 999px;
  overflow: hidden;
  margin: 10px 0;
}

.glf-gm .glf-progress-fill {
  width: 75%;
  height: 100%;
  background: var(--gold);
}

.glf-gm .glf-gm-status strong {
  font-size: 24px;
}

.glf-gm .glf-objective {
  border-top: 1px solid var(--border);
  margin-top: 20px;
  padding-top: 20px;
}

.glf-gm .glf-objective strong {
  display: block;
  margin-top: 5px;
}

.glf-gm .glf-menu {
  display: grid;
  grid-template-columns: repeat(6,1fr);
  gap: 12px;
  margin-bottom: 20px;
}

.glf-gm .glf-menu button {
  background: var(--navy-light);
  border: 1px solid var(--border);
  border-radius: 14px;
  color: white;
  padding: 18px 10px;
  cursor: pointer;
}

.glf-gm .glf-menu button:hover {
  border-color: var(--gold);
  transform: translateY(-2px);
}

.glf-gm .glf-menu button span {
  display: block;
  font-size: 24px;
  margin-bottom: 8px;
}

.glf-gm .glf-menu button strong {
  display: block;
}

.glf-gm .glf-menu button small {
  display: block;
  color: var(--muted);
  margin-top: 4px;
}

.glf-gm .glf-news-item {
  display: grid;
  grid-template-columns: 85px 1fr;
  gap: 15px;
  align-items: center;
  border-top: 1px solid var(--border);
  padding: 13px 0;
}

.glf-gm .glf-news-item span {
  color: var(--gold);
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-news-item p {
  margin: 0;
}

@media (max-width: 900px) {

  .glf-gm .glf-gm-stats {
    grid-template-columns: repeat(2,1fr);
  }

  .glf-gm .glf-gm-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-menu {
    grid-template-columns: repeat(3,1fr);
  }

}

@media (max-width: 600px) {

  .glf-gm {
    padding: 30px 14px;
  }

  .glf-gm .glf-gm-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .glf-gm .glf-team-header {
    grid-template-columns: auto 1fr;
  }

  .glf-gm .glf-record {
    grid-column: 1 / -1;
    text-align: left;
  }

  .glf-gm .glf-gm-stats {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-menu {
    grid-template-columns: repeat(2,1fr);
  }

}

.glf-gm .glf-new-game-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: rgba(2, 10, 20, .96);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

.glf-gm .glf-new-game-card {
  width: min(620px, 100%);
  background: linear-gradient(180deg, #102b49 0%, #071a2f 100%);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 22px;
  padding: 32px;
  box-shadow: 0 30px 80px rgba(0,0,0,.45);
}

.glf-gm .glf-new-game-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-new-game-card h2 {
  font-size: 38px;
  margin: 6px 0 8px;
}

.glf-gm .glf-new-game-card > p {
  color: #9fb2c7;
  margin: 0 0 28px;
}

.glf-gm .glf-game-field {
  margin-bottom: 20px;
}

.glf-gm .glf-game-field label {
  display: block;
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 7px;
}

.glf-gm .glf-game-field input,
.glf-gm .glf-game-field select {
  width: 100%;
  background: #061728;
  border: 1px solid rgba(255,255,255,.18);
  color: white;
  border-radius: 10px;
  padding: 14px;
  font-size: 16px;
}

.glf-gm .glf-game-field option {
  color: #111;
}

.glf-gm .glf-start-franchise {
  width: 100%;
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 12px;
  padding: 16px;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
  margin-top: 5px;
}

.glf-gm .glf-new-game-note {
  text-align: center;
  color: #9fb2c7;
  font-size: 12px;
  margin-top: 16px;
}

.glf-gm .glf-game-error {
  display: none;
  background: rgba(220, 50, 50, .15);
  border: 1px solid rgba(255, 90, 90, .4);
  color: #ffb0b0;
  border-radius: 8px;
  padding: 10px;
  margin-bottom: 15px;
}

.glf-gm .glf-roster-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: #fff;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-roster-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-roster-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-roster-top h2 {
  margin: 0;
  font-size: 36px;
}

.glf-gm .glf-roster-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-roster-back {
  border: 1px solid rgba(255,255,255,.2);
  background: #102b49;
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 800;
}

.glf-gm .glf-roster-summary {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 15px;
  margin-bottom: 20px;
}

.glf-gm .glf-roster-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  padding: 18px;
}

.glf-gm .glf-roster-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-roster-summary-card strong {
  display: block;
  font-size: 26px;
  margin-top: 4px;
}

.glf-gm .glf-roster-controls {
  display: flex;
  gap: 12px;
  margin-bottom: 15px;
  flex-wrap: wrap;
}

.glf-gm .glf-roster-controls select,
.glf-gm .glf-roster-controls input {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 10px;
  padding: 11px 13px;
}

.glf-gm .glf-roster-controls input {
  flex: 1;
  min-width: 220px;
}

.glf-gm .glf-roster-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
}

.glf-gm .glf-roster-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 850px;
  background: #0b2037;
}

.glf-gm .glf-roster-table th {
  text-align: left;
  padding: 13px 14px;
  color: #f5b942;
  background: #071a2f;
  font-size: 11px;
  letter-spacing: 1px;
}

.glf-gm .glf-roster-table td {
  padding: 13px 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-roster-table tr:hover {
  background: rgba(255,255,255,.04);
}

.glf-gm .glf-player-name {
  font-weight: 800;
}

.glf-gm .glf-player-pos {
  color: #9fb2c7;
  font-weight: 800;
}

.glf-gm .glf-player-ovr {
  display: inline-flex;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: #1264a3;
  font-weight: 900;
}

.glf-gm .glf-starter-badge {
  display: inline-block;
  background: rgba(245,185,66,.15);
  color: #f5b942;
  border: 1px solid rgba(245,185,66,.35);
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-backup-badge {
  color: #9fb2c7;
  font-size: 11px;
}

.glf-gm .glf-potential {
  font-weight: 900;
}

@media (max-width: 700px) {

  .glf-gm .glf-roster-overlay {
    padding: 15px;
  }

  .glf-gm .glf-roster-top {
    align-items: flex-start;
    flex-direction: column;
  }

  .glf-gm .glf-roster-summary {
    grid-template-columns: 1fr;
  }

}

.glf-gm .glf-player-row {
  cursor: pointer;
}

.glf-gm .glf-player-row:hover {
  background: rgba(245,185,66,.08);
}

.glf-gm .glf-player-profile {
  position: fixed;
  inset: 0;
  z-index: 100001;
  background: rgba(2,10,20,.92);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  overflow-y: auto;
}

.glf-gm .glf-player-profile-card {
  width: min(780px,100%);
  background: linear-gradient(
    180deg,
    #102b49 0%,
    #071a2f 100%
  );
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 22px;
  padding: 28px;
  box-shadow: 0 30px 80px rgba(0,0,0,.5);
}

.glf-gm .glf-profile-header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 20px;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,.1);
  padding-bottom: 22px;
  margin-bottom: 22px;
}

.glf-gm .glf-profile-position {
  width: 76px;
  height: 76px;
  border-radius: 16px;
  background: linear-gradient(
    135deg,
    #1d8fe1,
    #1264a3
  );
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 22px;
}

.glf-gm .glf-profile-name span {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-profile-name h2 {
  margin: 3px 0;
  font-size: 32px;
}

.glf-gm .glf-profile-name p {
  color: #9fb2c7;
  margin: 0;
}

.glf-gm .glf-profile-overall {
  text-align: center;
}

.glf-gm .glf-profile-overall span {
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-profile-overall strong {
  display: block;
  font-size: 42px;
  color: #f5b942;
}

.glf-gm .glf-profile-info {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px;
  margin-bottom: 25px;
}

.glf-gm .glf-profile-info-card {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 14px;
}

.glf-gm .glf-profile-info-card span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-profile-info-card strong {
  display: block;
  margin-top: 5px;
  font-size: 18px;
}

.glf-gm .glf-profile-section-title {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
}

.glf-gm .glf-rating-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px 20px;
}

.glf-gm .glf-rating {
  display: grid;
  grid-template-columns: 120px 1fr 35px;
  gap: 10px;
  align-items: center;
}

.glf-gm .glf-rating-name {
  font-size: 12px;
  color: #c9d5e2;
}

.glf-gm .glf-rating-bar {
  height: 8px;
  background: rgba(255,255,255,.1);
  border-radius: 999px;
  overflow: hidden;
}

.glf-gm .glf-rating-fill {
  height: 100%;
  background: #f5b942;
}

.glf-gm .glf-rating-value {
  font-weight: 900;
  text-align: right;
}

.glf-gm .glf-profile-footer {
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 24px;
  padding-top: 20px;
  display: flex;
  justify-content: space-between;
  gap: 15px;
  align-items: center;
}

.glf-gm .glf-trade-value {
  color: #9fb2c7;
}

.glf-gm .glf-trade-value strong {
  color: #f5b942;
}

.glf-gm .glf-close-profile {
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 10px;
  padding: 12px 18px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 650px) {

  .glf-gm .glf-profile-header {
    grid-template-columns: auto 1fr;
  }

  .glf-gm .glf-profile-overall {
    grid-column: 1 / -1;
    text-align: left;
  }

  .glf-gm .glf-profile-info {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-rating-grid {
    grid-template-columns: 1fr;
  }

}

.glf-gm .glf-depth-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-depth-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-depth-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-depth-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-depth-header h2 {
  margin: 3px 0 0;
  font-size: 36px;
}

.glf-gm .glf-depth-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}

.glf-gm .glf-depth-ratings {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 15px;
  margin-bottom: 25px;
}

.glf-gm .glf-depth-rating {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  padding: 18px;
}

.glf-gm .glf-depth-rating span {
  display: block;
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-depth-rating strong {
  display: block;
  font-size: 30px;
  margin-top: 4px;
}

.glf-gm .glf-depth-section {
  margin-bottom: 30px;
}

.glf-gm .glf-depth-section-title {
  color: #f5b942;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
}

.glf-gm .glf-position-group {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  margin-bottom: 12px;
  overflow: hidden;
}

.glf-gm .glf-position-title {
  background: #071a2f;
  padding: 12px 15px;
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-depth-player {
  display: grid;
  grid-template-columns: 80px 1fr 80px 80px 120px 150px;
  align-items: center;
  gap: 10px;
  padding: 13px 15px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-depth-player:first-child {
  border-top: none;
}

.glf-gm .glf-depth-role {
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-depth-role.starter {
  color: #f5b942;
}

.glf-gm .glf-depth-role.backup {
  color: #9fb2c7;
}

.glf-gm .glf-depth-name {
  font-weight: 800;
}

.glf-gm .glf-depth-ovr {
  width: 40px;
  height: 40px;
  background: #1264a3;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-promote-button {
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 8px;
  padding: 9px 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-current-starter {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
}

@media (max-width: 750px) {

  .glf-gm .glf-depth-overlay {
    padding: 15px;
  }

  .glf-gm .glf-depth-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .glf-gm .glf-depth-ratings {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-depth-player {
    grid-template-columns: 65px 1fr 55px;
  }

  .glf-gm .glf-depth-player-age,
  .glf-gm .glf-depth-player-potential {
    display: none;
  }

}

.glf-gm .glf-trade-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-trade-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-trade-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-trade-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-trade-header h2 {
  margin: 3px 0;
  font-size: 36px;
}

.glf-gm .glf-trade-header p {
  color: #9fb2c7;
  margin: 5px 0 0;
}

.glf-gm .glf-trade-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}

.glf-gm .glf-trade-team-picker {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 20px;
}

.glf-gm .glf-trade-team-picker label {
  display: block;
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.glf-gm .glf-trade-team-picker select {
  width: 100%;
  background: #071a2f;
  color: white;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  padding: 13px;
  font-size: 15px;
}

.glf-gm .glf-trade-team-picker option {
  color: #111;
}

.glf-gm .glf-trade-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.glf-gm .glf-trade-column {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  overflow: hidden;
}

.glf-gm .glf-trade-column-header {
  background: #071a2f;
  padding: 17px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.glf-gm .glf-trade-column-header span {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-trade-column-header strong {
  display: block;
  font-size: 20px;
  margin-top: 3px;
}

.glf-gm .glf-trade-filter {
  display: flex;
  gap: 10px;
  padding: 12px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-trade-filter select,
.glf-gm .glf-trade-filter input {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  padding: 9px 10px;
}

.glf-gm .glf-trade-filter input {
  flex: 1;
  min-width: 0;
}

.glf-gm .glf-trade-player-list {
  max-height: 420px;
  overflow-y: auto;
}

.glf-gm .glf-trade-player {
  display: grid;
  grid-template-columns: 48px 1fr 48px 65px;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,.07);
  cursor: pointer;
}

.glf-gm .glf-trade-player:hover {
  background: rgba(255,255,255,.04);
}

.glf-gm .glf-trade-player.selected {
  background: rgba(245,185,66,.12);
  outline: 1px solid rgba(245,185,66,.45);
}

.glf-gm .glf-trade-pos {
  color: #9fb2c7;
  font-weight: 900;
  font-size: 12px;
}

.glf-gm .glf-trade-player-name {
  font-weight: 800;
}

.glf-gm .glf-trade-player-name small {
  display: block;
  color: #9fb2c7;
  margin-top: 3px;
}

.glf-gm .glf-trade-ovr {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #1264a3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-trade-value-mini {
  text-align: right;
}

.glf-gm .glf-trade-value-mini span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
}

.glf-gm .glf-trade-value-mini strong {
  color: #f5b942;
}

.glf-gm .glf-offer-box {
  margin-top: 20px;
  background: #102b49;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  padding: 20px;
}

.glf-gm .glf-offer-title {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 15px;
}

.glf-gm .glf-offer-summary {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 15px;
  align-items: center;
}

.glf-gm .glf-offer-side {
  background: #071a2f;
  border-radius: 12px;
  padding: 16px;
}

.glf-gm .glf-offer-side span {
  color: #9fb2c7;
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offer-side strong {
  display: block;
  margin-top: 5px;
}

.glf-gm .glf-offer-side small {
  display: block;
  color: #f5b942;
  margin-top: 5px;
}

.glf-gm .glf-offer-arrow {
  font-size: 28px;
  color: #f5b942;
}

.glf-gm .glf-submit-trade {
  width: 100%;
  border: 0;
  border-radius: 10px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  padding: 14px;
  margin-top: 16px;
  cursor: pointer;
}

.glf-gm .glf-submit-trade:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.glf-gm .glf-trade-response {
  display: none;
  margin-top: 15px;
  border-radius: 10px;
  padding: 14px;
  font-weight: 800;
}

.glf-gm .glf-trade-response.accepted {
  display: block;
  background: rgba(60,190,110,.14);
  border: 1px solid rgba(60,190,110,.4);
  color: #8df0b3;
}

.glf-gm .glf-trade-response.counter {
  display: block;
  background: rgba(245,185,66,.12);
  border: 1px solid rgba(245,185,66,.4);
  color: #f5d387;
}

.glf-gm .glf-trade-response.rejected {
  display: block;
  background: rgba(220,60,60,.13);
  border: 1px solid rgba(255,90,90,.4);
  color: #ffabab;
}

@media (max-width: 800px) {

  .glf-gm .glf-trade-columns {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-trade-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-offer-summary {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-offer-arrow {
    transform: rotate(90deg);
    text-align: center;
  }

}

.glf-gm .glf-season-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-season-shell {
  max-width: 1100px;
  margin: 0 auto;
}

.glf-gm .glf-season-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-season-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-season-header h2 {
  margin: 4px 0 0;
  font-size: 36px;
}

.glf-gm .glf-season-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}

.glf-gm .glf-schedule-row {
  display: grid;
  grid-template-columns: 75px 90px 1fr 120px;
  gap: 15px;
  align-items: center;
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
}

.glf-gm .glf-schedule-row.current {
  border-color: #f5b942;
}

.glf-gm .glf-schedule-row.complete {
  opacity: .8;
}

.glf-gm .glf-week-number {
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-home-away {
  color: #9fb2c7;
  font-size: 12px;
  font-weight: 800;
}

.glf-gm .glf-schedule-opponent {
  font-weight: 800;
}

.glf-gm .glf-schedule-result {
  text-align: right;
  font-weight: 900;
}

.glf-gm .glf-result-win {
  color: #7ce3a1;
}

.glf-gm .glf-result-loss {
  color: #ff9d9d;
}

.glf-gm .glf-standings-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
}

.glf-gm .glf-standings-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 700px;
  background: #0b2037;
}

.glf-gm .glf-standings-table th {
  text-align: left;
  background: #071a2f;
  color: #f5b942;
  padding: 13px;
  font-size: 11px;
  letter-spacing: 1px;
}

.glf-gm .glf-standings-table td {
  padding: 13px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-user-standing {
  background: rgba(245,185,66,.09);
}

.glf-gm .glf-game-result-modal {
  position: fixed;
  inset: 0;
  z-index: 100002;
  background: rgba(1,8,16,.92);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.glf-gm .glf-game-result-card {
  width: min(600px,100%);
  background: linear-gradient(
    180deg,
    #102b49,
    #071a2f
  );
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  padding: 28px;
  text-align: center;
}

.glf-gm .glf-game-result-card h2 {
  margin: 8px 0 24px;
  font-size: 34px;
}

.glf-gm .glf-final-score {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-score-team strong {
  display: block;
  font-size: 42px;
  color: #f5b942;
}

.glf-gm .glf-score-team span {
  font-weight: 800;
}

.glf-gm .glf-final-label {
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-result-record {
  color: #9fb2c7;
  margin-bottom: 20px;
}

.glf-gm .glf-result-close {
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 10px;
  padding: 13px 22px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 650px) {

  .glf-gm .glf-season-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-schedule-row {
    grid-template-columns: 60px 65px 1fr;
  }

  .glf-gm .glf-schedule-result {
    grid-column: 1 / -1;
    text-align: left;
  }

}

/* =========================
   GAME BOX SCORE
========================= */

.glf-gm .glf-boxscore-details {
  border-top: 1px solid rgba(255,255,255,.12);
  margin-top: 22px;
  padding-top: 20px;
  text-align: left;
}

.glf-gm .glf-boxscore-title {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 14px;
}

.glf-gm .glf-boxscore-team-stats {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 10px;
  margin-bottom: 20px;
}

.glf-gm .glf-boxscore-stat {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  padding: 12px;
  text-align: center;
}

.glf-gm .glf-boxscore-stat span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-boxscore-stat strong {
  display: block;
  font-size: 20px;
  margin-top: 4px;
}

.glf-gm .glf-boxscore-section {
  margin-top: 16px;
}

.glf-gm .glf-boxscore-section h4 {
  color: #f5b942;
  margin: 0 0 8px;
  font-size: 11px;
  letter-spacing: 1px;
}

.glf-gm .glf-boxscore-player {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 10px;
  border-top: 1px solid rgba(255,255,255,.07);
  padding: 9px 0;
  font-size: 13px;
}

.glf-gm .glf-boxscore-player strong {
  color: white;
}

.glf-gm .glf-boxscore-player span {
  color: #b9c7d5;
  text-align: right;
}

@media (max-width: 600px) {

  .glf-gm .glf-boxscore-team-stats {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-boxscore-player {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-boxscore-player span {
    text-align: left;
  }

}

/* =========================
   PLAYER SEASON STATS
========================= */

.glf-gm .glf-season-stats {
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 24px;
  padding-top: 20px;
}

.glf-gm .glf-season-stats-title {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 14px;
}

.glf-gm .glf-season-stat-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
}

.glf-gm .glf-season-stat-card {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  padding: 12px;
  text-align: center;
}

.glf-gm .glf-season-stat-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-season-stat-card strong {
  display: block;
  color: white;
  font-size: 20px;
  margin-top: 4px;
}

.glf-gm .glf-season-stats-empty {
  color: #9fb2c7;
  font-size: 13px;
}

@media (max-width: 600px) {

  .glf-gm .glf-season-stat-grid {
    grid-template-columns: repeat(2,1fr);
  }

}

/* =========================
   LEAGUE LEADERS
========================= */

.glf-gm .glf-league-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-league-shell {
  max-width: 1150px;
  margin: 0 auto;
}

.glf-gm .glf-league-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-league-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-league-header h2 {
  margin: 3px 0;
  font-size: 36px;
}

.glf-gm .glf-league-header p {
  color: #9fb2c7;
  margin: 5px 0 0;
}

.glf-gm .glf-league-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}

.glf-gm .glf-league-tabs {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 20px;
}

.glf-gm .glf-league-tab {
  border: 1px solid rgba(255,255,255,.12);
  background: #102b49;
  color: white;
  border-radius: 10px;
  padding: 12px;
  cursor: pointer;
  font-weight: 900;
}

.glf-gm .glf-league-tab.active {
  background: #f5b942;
  color: #071a2f;
  border-color: #f5b942;
}

.glf-gm .glf-leader-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
}

.glf-gm .glf-leader-table {
  width: 100%;
  min-width: 800px;
  border-collapse: collapse;
  background: #0b2037;
}

.glf-gm .glf-leader-table th {
  text-align: left;
  background: #071a2f;
  color: #f5b942;
  padding: 13px;
  font-size: 10px;
  letter-spacing: 1px;
}

.glf-gm .glf-leader-table td {
  padding: 13px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-leader-rank {
  color: #f5b942;
  font-weight: 900;
  font-size: 18px;
}

.glf-gm .glf-leader-player {
  font-weight: 900;
}

.glf-gm .glf-leader-player small {
  display: block;
  color: #9fb2c7;
  font-weight: 500;
  margin-top: 3px;
}

.glf-gm .glf-leader-main-stat {
  color: #f5b942;
  font-size: 20px;
  font-weight: 900;
}

.glf-gm .glf-user-leader {
  background: rgba(245,185,66,.08);
}

.glf-gm .glf-leader-note {
  margin-top: 12px;
  color: #9fb2c7;
  font-size: 12px;
}

@media (max-width: 650px) {

  .glf-gm .glf-league-overlay {
    padding: 15px;
  }

  .glf-gm .glf-league-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-league-tabs {
    grid-template-columns: 1fr 1fr;
  }

}

/* =========================
   INJURY SYSTEM
========================= */

.glf-gm .glf-injury-dashboard-button {
  width: 100%;
  margin: 0 0 20px;
  padding: 15px 18px;
  border: 1px solid rgba(255,110,110,.32);
  background: rgba(180,45,45,.13);
  color: white;
  border-radius: 14px;
  cursor: pointer;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.glf-gm .glf-injury-dashboard-button strong {
  display: block;
  font-size: 15px;
}

.glf-gm .glf-injury-dashboard-button small {
  color: #ffb0b0;
}

.glf-gm .glf-injury-count {
  min-width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #b63838;
  font-weight: 900;
}

.glf-gm .glf-injury-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-injury-shell {
  max-width: 1050px;
  margin: 0 auto;
}

.glf-gm .glf-injury-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-injury-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-injury-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-injury-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-injury-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}

.glf-gm .glf-injury-card {
  display: grid;
  grid-template-columns: 70px 1fr 150px 140px;
  gap: 15px;
  align-items: center;
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 13px;
  padding: 15px;
  margin-bottom: 10px;
}

.glf-gm .glf-injury-position {
  font-weight: 900;
  color: #f5b942;
}

.glf-gm .glf-injury-player {
  font-weight: 900;
}

.glf-gm .glf-injury-player small {
  display: block;
  color: #9fb2c7;
  margin-top: 4px;
  font-weight: 500;
}

.glf-gm .glf-injury-name {
  color: #ffabab;
  font-weight: 800;
}

.glf-gm .glf-injury-status {
  text-align: right;
}

.glf-gm .glf-injury-status span {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(200,55,55,.15);
  border: 1px solid rgba(255,100,100,.35);
  color: #ffb0b0;
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-no-injuries {
  padding: 40px;
  border: 1px solid rgba(255,255,255,.1);
  background: #0b2037;
  border-radius: 14px;
  text-align: center;
  color: #9fb2c7;
}

.glf-gm .glf-roster-injured {
  opacity: .72;
}

.glf-gm .glf-roster-injury-badge {
  display: inline-block;
  margin-left: 8px;
  padding: 3px 6px;
  border-radius: 999px;
  background: rgba(200,55,55,.17);
  color: #ffabab;
  font-size: 9px;
  font-weight: 900;
}

.glf-gm .glf-profile-injury {
  margin-top: 18px;
  padding: 13px;
  border-radius: 10px;
  background: rgba(200,55,55,.13);
  border: 1px solid rgba(255,100,100,.3);
}

.glf-gm .glf-profile-injury span {
  color: #ffabab;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-profile-injury strong {
  display: block;
  margin-top: 4px;
}

@media (max-width: 650px) {

  .glf-gm .glf-injury-card {
    grid-template-columns: 55px 1fr;
  }

  .glf-gm .glf-injury-name,
  .glf-gm .glf-injury-status {
    grid-column: 2;
    text-align: left;
  }

  .glf-gm .glf-injury-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   ADVANCED STANDINGS
========================= */

.glf-gm .glf-advanced-standings-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-advanced-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-advanced-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
}

.glf-gm .glf-advanced-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-advanced-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-advanced-header p {
  color: #9fb2c7;
  margin: 0;
}

.glf-gm .glf-advanced-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  border-radius: 10px;
  padding: 12px 18px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-advanced-tabs {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 20px;
}

.glf-gm .glf-advanced-tab {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  padding: 12px;
  cursor: pointer;
  font-weight: 900;
}

.glf-gm .glf-advanced-tab.active {
  background: #f5b942;
  color: #071a2f;
  border-color: #f5b942;
}

.glf-gm .glf-division-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.glf-gm .glf-division-card {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-division-title {
  background: #071a2f;
  color: #f5b942;
  padding: 13px 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-advanced-table-wrap {
  overflow-x: auto;
}

.glf-gm .glf-advanced-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 650px;
}

.glf-gm .glf-advanced-table th {
  background: #071a2f;
  color: #f5b942;
  padding: 11px 12px;
  text-align: left;
  font-size: 10px;
  letter-spacing: 1px;
}

.glf-gm .glf-advanced-table td {
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-advanced-user-team {
  background: rgba(245,185,66,.09);
}

.glf-gm .glf-seed {
  width: 34px;
  height: 34px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background: #1264a3;
  font-weight: 900;
}

.glf-gm .glf-seed-one {
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-playoff-conferences {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.glf-gm .glf-playoff-card {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-playoff-title {
  background: #071a2f;
  padding: 15px;
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-playoff-team {
  display: grid;
  grid-template-columns: 50px 1fr 80px;
  gap: 12px;
  align-items: center;
  padding: 12px 15px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-playoff-team.user {
  background: rgba(245,185,66,.09);
}

.glf-gm .glf-playoff-record {
  text-align: right;
  font-weight: 900;
}

.glf-gm .glf-playoff-label {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  margin-top: 3px;
}

.glf-gm .glf-playoff-cutline {
  border-top: 2px solid #f5b942;
}

.glf-gm .glf-in-hunt-title {
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
  padding: 16px 15px 7px;
}

.glf-gm .glf-playoff-status {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 20px;
}

.glf-gm .glf-playoff-status span {
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-playoff-status strong {
  display: block;
  margin-top: 5px;
  font-size: 22px;
}

@media (max-width: 800px) {

  .glf-gm .glf-division-grid,
  .glf-gm .glf-playoff-conferences {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-advanced-tabs {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-advanced-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   POSTSEASON
========================= */

.glf-gm .glf-postseason-dashboard-button {
  width: 100%;
  margin: 0 0 20px;
  padding: 16px 18px;
  border: 1px solid rgba(245,185,66,.42);
  background: rgba(245,185,66,.10);
  color: white;
  border-radius: 14px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  text-align: left;
}

.glf-gm .glf-postseason-dashboard-button strong {
  display: block;
  font-size: 15px;
}

.glf-gm .glf-postseason-dashboard-button small {
  color: #f5d387;
}

.glf-gm .glf-postseason-badge {
  background: #f5b942;
  color: #071a2f;
  border-radius: 999px;
  padding: 7px 11px;
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-postseason-overlay {
  position: fixed;
  inset: 0;
  z-index: 100010;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-postseason-shell {
  max-width: 1100px;
  margin: 0 auto;
}

.glf-gm .glf-postseason-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 25px;
}

.glf-gm .glf-postseason-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-postseason-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-postseason-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-postseason-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.2);
  color: white;
  border-radius: 10px;
  padding: 12px 18px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-postseason-status {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 20px;
}

.glf-gm .glf-postseason-status span {
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-postseason-status strong {
  display: block;
  color: #f5b942;
  font-size: 22px;
  margin-top: 5px;
}

.glf-gm .glf-postseason-conferences {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.glf-gm .glf-postseason-conference {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-postseason-conference-title {
  background: #071a2f;
  color: #f5b942;
  padding: 14px;
  font-weight: 900;
}

.glf-gm .glf-postseason-team {
  display: grid;
  grid-template-columns: 45px 1fr 70px;
  gap: 12px;
  align-items: center;
  padding: 13px 15px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-postseason-team.user {
  background: rgba(245,185,66,.09);
}

.glf-gm .glf-postseason-seed {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #1264a3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-postseason-team-record {
  text-align: right;
  font-weight: 900;
}

.glf-gm .glf-postseason-history {
  margin-top: 22px;
}

.glf-gm .glf-postseason-history-title {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 10px;
}

.glf-gm .glf-postseason-game {
  display: grid;
  grid-template-columns: 140px 1fr 90px;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border-top: 1px solid rgba(255,255,255,.07);
  background: #0b2037;
}

.glf-gm .glf-postseason-game:first-of-type {
  border-radius: 12px 12px 0 0;
}

.glf-gm .glf-postseason-round-name {
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-postseason-score {
  text-align: right;
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-playoff-round-modal {
  position: fixed;
  inset: 0;
  z-index: 100020;
  background: rgba(1,8,16,.94);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

.glf-gm .glf-playoff-round-card {
  width: min(680px,100%);
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  padding: 26px;
}

.glf-gm .glf-playoff-round-card h2 {
  margin: 5px 0 20px;
  text-align: center;
}

.glf-gm .glf-playoff-round-results {
  margin-bottom: 20px;
}

.glf-gm .glf-playoff-result-row {
  display: grid;
  grid-template-columns: 1fr 70px 1fr;
  gap: 10px;
  align-items: center;
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 11px 0;
}

.glf-gm .glf-playoff-result-row strong:last-child {
  text-align: right;
}

.glf-gm .glf-playoff-result-score {
  text-align: center;
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-playoff-round-close {
  width: 100%;
  border: 0;
  border-radius: 10px;
  background: #f5b942;
  color: #071a2f;
  padding: 13px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 750px) {

  .glf-gm .glf-postseason-conferences {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-postseason-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-postseason-game {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-postseason-score {
    text-align: left;
  }

}

/* =========================
   TRADE CENTER V2
========================= */

.glf-gm .glf-tradev2-overlay {
  position: fixed;
  inset: 0;
  z-index: 100050;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-tradev2-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-tradev2-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 22px;
}

.glf-gm .glf-tradev2-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-tradev2-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-tradev2-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-tradev2-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.18);
  color: white;
  border-radius: 10px;
  padding: 12px 18px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-tradev2-partner {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 16px;
  margin-bottom: 18px;
}

.glf-gm .glf-tradev2-partner label {
  display: block;
  color: #f5b942;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 7px;
}

.glf-gm .glf-tradev2-partner select {
  width: 100%;
  padding: 12px;
  background: #071a2f;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  color: white;
}

.glf-gm .glf-tradev2-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.glf-gm .glf-tradev2-team {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-tradev2-team-header {
  background: #071a2f;
  padding: 15px;
}

.glf-gm .glf-tradev2-team-header span {
  color: #f5b942;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-tradev2-team-header strong {
  display: block;
  margin-top: 3px;
  font-size: 19px;
}

.glf-gm .glf-tradev2-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.glf-gm .glf-tradev2-tab {
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: #102b49;
  color: white;
  padding: 11px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-tradev2-tab.active {
  background: rgba(245,185,66,.13);
  color: #f5b942;
}

.glf-gm .glf-tradev2-list {
  max-height: 390px;
  overflow-y: auto;
}

.glf-gm .glf-tradev2-item {
  display: grid;
  grid-template-columns: 34px 55px 1fr 48px 65px;
  gap: 9px;
  align-items: center;
  padding: 11px 12px;
  border-top: 1px solid rgba(255,255,255,.07);
  cursor: pointer;
}

.glf-gm .glf-tradev2-item:hover {
  background: rgba(255,255,255,.04);
}

.glf-gm .glf-tradev2-item.selected {
  background: rgba(245,185,66,.12);
}

.glf-gm .glf-tradev2-check {
  width: 20px;
  height: 20px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.glf-gm .glf-tradev2-item.selected .glf-tradev2-check {
  background: #f5b942;
  color: #071a2f;
  border-color: #f5b942;
}

.glf-gm .glf-tradev2-pos {
  color: #9fb2c7;
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-tradev2-name {
  font-weight: 900;
}

.glf-gm .glf-tradev2-name small {
  display: block;
  color: #9fb2c7;
  font-weight: 500;
  margin-top: 3px;
}

.glf-gm .glf-tradev2-ovr {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #1264a3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-tradev2-value {
  text-align: right;
  color: #f5b942;
  font-weight: 900;
}

.glf-gm .glf-tradev2-pick {
  grid-template-columns: 34px 1fr 75px;
}

.glf-gm .glf-tradev2-summary {
  margin-top: 20px;
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 18px;
}

.glf-gm .glf-tradev2-summary-title {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 12px;
}

.glf-gm .glf-tradev2-summary-grid {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 14px;
}

.glf-gm .glf-tradev2-summary-side {
  background: #071a2f;
  border-radius: 10px;
  padding: 14px;
}

.glf-gm .glf-tradev2-summary-side span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-tradev2-summary-side strong {
  display: block;
  margin-top: 5px;
}

.glf-gm .glf-tradev2-arrow {
  font-size: 26px;
  color: #f5b942;
}

.glf-gm .glf-tradev2-submit {
  width: 100%;
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 10px;
  padding: 14px;
  margin-top: 14px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-tradev2-submit:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.glf-gm .glf-tradev2-response {
  display: none;
  margin-top: 13px;
  padding: 13px;
  border-radius: 9px;
  font-weight: 800;
}

.glf-gm .glf-tradev2-response.accept {
  display: block;
  background: rgba(70,190,110,.13);
  border: 1px solid rgba(70,190,110,.4);
  color: #9cf0b9;
}

.glf-gm .glf-tradev2-response.counter {
  display: block;
  background: rgba(245,185,66,.12);
  border: 1px solid rgba(245,185,66,.38);
  color: #f5d387;
}

.glf-gm .glf-tradev2-response.reject {
  display: block;
  background: rgba(210,55,55,.12);
  border: 1px solid rgba(255,90,90,.35);
  color: #ffabab;
}

@media (max-width: 800px) {

  .glf-gm .glf-tradev2-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-tradev2-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-tradev2-summary-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-tradev2-arrow {
    text-align: center;
  }

}

/* =========================
   FREE AGENCY / ROSTER RULES
========================= */

.glf-gm .glf-fa-dashboard-button {
  width: 100%;
  margin: 0 0 20px;
  padding: 16px 18px;
  border: 1px solid rgba(70,160,230,.35);
  background: rgba(30,110,180,.12);
  color: white;
  border-radius: 14px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  text-align: left;
}

.glf-gm .glf-fa-dashboard-button strong {
  display: block;
  font-size: 15px;
}

.glf-gm .glf-fa-dashboard-button small {
  color: #a9ccec;
}

.glf-gm .glf-fa-badge {
  background: #1264a3;
  color: white;
  border-radius: 999px;
  padding: 7px 11px;
  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-roster-warning {
  width: 100%;
  margin: 0 0 20px;
  padding: 15px 18px;
  background: rgba(200,55,55,.13);
  border: 1px solid rgba(255,90,90,.35);
  border-radius: 14px;
  color: #ffb0b0;
}

.glf-gm .glf-roster-warning strong {
  display: block;
  color: white;
  margin-bottom: 4px;
}

.glf-gm .glf-fa-overlay {
  position: fixed;
  inset: 0;
  z-index: 100060;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-fa-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-fa-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 22px;
}

.glf-gm .glf-fa-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-fa-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-fa-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-fa-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.18);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-fa-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px;
  margin-bottom: 18px;
}

.glf-gm .glf-fa-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 15px;
}

.glf-gm .glf-fa-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-fa-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 23px;
}

.glf-gm .glf-fa-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 14px;
}

.glf-gm .glf-fa-tab {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 9px;
  padding: 12px;
  cursor: pointer;
  font-weight: 900;
}

.glf-gm .glf-fa-tab.active {
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-fa-controls {
  display: flex;
  gap: 10px;
  margin-bottom: 14px;
}

.glf-gm .glf-fa-controls select,
.glf-gm .glf-fa-controls input {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  padding: 10px 12px;
}

.glf-gm .glf-fa-controls input {
  flex: 1;
}

.glf-gm .glf-fa-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
}

.glf-gm .glf-fa-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 900px;
  background: #0b2037;
}

.glf-gm .glf-fa-table th {
  text-align: left;
  background: #071a2f;
  color: #f5b942;
  padding: 12px;
  font-size: 10px;
  letter-spacing: 1px;
}

.glf-gm .glf-fa-table td {
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-fa-ovr {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #1264a3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-fa-name {
  font-weight: 900;
}

.glf-gm .glf-fa-name small {
  display: block;
  color: #9fb2c7;
  margin-top: 3px;
  font-weight: 500;
}

.glf-gm .glf-fa-sign,
.glf-gm .glf-fa-release {
  border: 0;
  border-radius: 8px;
  padding: 9px 12px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-fa-sign {
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-fa-release {
  background: rgba(200,55,55,.17);
  border: 1px solid rgba(255,90,90,.35);
  color: #ffb0b0;
}

.glf-gm .glf-fa-message {
  display: none;
  margin-top: 14px;
  border-radius: 10px;
  padding: 13px;
  font-weight: 800;
}

.glf-gm .glf-fa-message.success {
  display: block;
  color: #95efb7;
  background: rgba(60,190,110,.13);
  border: 1px solid rgba(60,190,110,.35);
}

.glf-gm .glf-fa-message.error {
  display: block;
  color: #ffabab;
  background: rgba(210,55,55,.12);
  border: 1px solid rgba(255,90,90,.35);
}

@media (max-width: 750px) {

  .glf-gm .glf-fa-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-fa-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   CPU GM TRADE FEEDBACK
========================= */

.glf-gm .glf-gm-feedback {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.glf-gm .glf-gm-feedback-title {
  color: #f5b942;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-bottom: 7px;
}

.glf-gm .glf-gm-feedback-line {
  color: #d1dce7;
  font-size: 13px;
  margin-top: 5px;
}

.glf-gm .glf-gm-feedback-line::before {
  content: "• ";
  color: #f5b942;
}

/* =========================
   COACHING STAFF
========================= */

.glf-gm .glf-menu {
  grid-template-columns: repeat(7,minmax(0,1fr));
}

.glf-gm .glf-coaching-menu-button {
  cursor: pointer;
}

.glf-gm .glf-coach-overlay {
  position: fixed;
  inset: 0;
  z-index: 100070;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-coach-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-coach-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 22px;
}

.glf-gm .glf-coach-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-coach-header h2 {
  margin: 4px 0;
  font-size: 36px;
}

.glf-gm .glf-coach-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-coach-back {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.18);
  color: white;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-coach-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px;
  margin-bottom: 18px;
}

.glf-gm .glf-coach-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 15px;
}

.glf-gm .glf-coach-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-coach-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 22px;
}

.glf-gm .glf-coach-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 16px;
}

.glf-gm .glf-coach-tab {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 9px;
  padding: 12px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-coach-tab.active {
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-coach-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 14px;
}

.glf-gm .glf-coach-card {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 17px;
}

.glf-gm .glf-coach-card-top {
  display: grid;
  grid-template-columns: 62px 1fr 60px;
  gap: 14px;
  align-items: center;
}

.glf-gm .glf-coach-role {
  width: 58px;
  height: 58px;
  border-radius: 13px;
  background: #1264a3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-coach-name {
  font-size: 19px;
  font-weight: 900;
}

.glf-gm .glf-coach-name small {
  display: block;
  color: #9fb2c7;
  margin-top: 4px;
  font-weight: 500;
}

.glf-gm .glf-coach-ovr {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #f5b942;
  color: #071a2f;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 18px;
}

.glf-gm .glf-coach-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 16px;
}

.glf-gm .glf-coach-detail {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 9px;
  padding: 10px;
}

.glf-gm .glf-coach-detail span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-coach-detail strong {
  display: block;
  margin-top: 4px;
}

.glf-gm .glf-coach-actions {
  display: flex;
  gap: 8px;
  margin-top: 14px;
}

.glf-gm .glf-coach-profile-btn,
.glf-gm .glf-coach-fire,
.glf-gm .glf-coach-hire {
  flex: 1;
  border-radius: 8px;
  padding: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-coach-profile-btn {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
}

.glf-gm .glf-coach-fire {
  background: rgba(200,55,55,.15);
  border: 1px solid rgba(255,90,90,.35);
  color: #ffb0b0;
}

.glf-gm .glf-coach-hire {
  background: #f5b942;
  border: 1px solid #f5b942;
  color: #071a2f;
}

.glf-gm .glf-coach-vacancy {
  border: 1px dashed rgba(245,185,66,.5);
  background: rgba(245,185,66,.06);
}

.glf-gm .glf-coach-market-controls {
  display: flex;
  gap: 10px;
  margin-bottom: 14px;
}

.glf-gm .glf-coach-market-controls select,
.glf-gm .glf-coach-market-controls input {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  padding: 10px 12px;
}

.glf-gm .glf-coach-market-controls input {
  flex: 1;
}

.glf-gm .glf-coach-profile-overlay {
  position: fixed;
  inset: 0;
  z-index: 100080;
  background: rgba(1,8,16,.94);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

.glf-gm .glf-coach-profile-card {
  width: min(700px,100%);
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  padding: 25px;
}

.glf-gm .glf-coach-profile-heading {
  display: grid;
  grid-template-columns: 70px 1fr 70px;
  gap: 14px;
  align-items: center;
  margin-bottom: 20px;
}

.glf-gm .glf-coach-profile-ratings {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
}

.glf-gm .glf-coach-rating {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 9px;
  padding: 11px;
}

.glf-gm .glf-coach-rating span {
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-coach-rating strong {
  float: right;
  color: #f5b942;
}

.glf-gm .glf-coach-profile-close {
  width: 100%;
  margin-top: 18px;
  border: 0;
  border-radius: 9px;
  background: #f5b942;
  color: #071a2f;
  padding: 12px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 1000px) {

  .glf-gm .glf-menu {
    grid-template-columns: repeat(4,1fr);
  }

}

@media (max-width: 750px) {

  .glf-gm .glf-coach-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-coach-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-coach-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .glf-gm .glf-menu {
    grid-template-columns: repeat(2,1fr);
  }

}

/* =========================
   PLAYER DEVELOPMENT
========================= */

.glf-gm .glf-menu {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.glf-gm .glf-development-menu-button {
  cursor: pointer;
}

.glf-gm .glf-development-overlay {
  position: fixed;
  inset: 0;
  z-index: 100090;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 25px;
}

.glf-gm .glf-development-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-development-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}

.glf-gm .glf-development-header h2 {
  margin: 3px 0;
  font-size: 34px;
}

.glf-gm .glf-development-kicker {
  color: #f5b942;
  font-weight: 900;
  font-size: 11px;
  letter-spacing: 2px;
}

.glf-gm .glf-development-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-development-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px;
  margin-bottom: 18px;
}

.glf-gm .glf-development-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 15px;
}

.glf-gm .glf-development-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-development-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 22px;
}

.glf-gm .glf-development-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-development-row {
  display: grid;
  grid-template-columns: 2fr .7fr .7fr .8fr .8fr 1.3fr;
  align-items: center;
  gap: 8px;
  padding: 13px 15px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-development-row:last-child {
  border-bottom: 0;
}

.glf-gm .glf-development-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-development-player {
  font-weight: 900;
}

.glf-gm .glf-development-player small {
  display: block;
  color: #9fb2c7;
  margin-top: 2px;
  font-weight: 500;
}

.glf-gm .glf-development-positive {
  color: #7ee29c;
  font-weight: 900;
}

.glf-gm .glf-development-negative {
  color: #ff9d9d;
  font-weight: 900;
}

.glf-gm .glf-development-xp {
  height: 8px;
  background: rgba(255,255,255,.08);
  border-radius: 999px;
  overflow: hidden;
  margin-top: 5px;
}

.glf-gm .glf-development-xp-fill {
  height: 100%;
  background: #f5b942;
}

@media (max-width: 750px) {

  .glf-gm .glf-development-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-development-row {
    grid-template-columns: 1.7fr .7fr .7fr 1fr;
  }

  .glf-gm .glf-development-hide-mobile {
    display: none;
  }

}

/* =========================
   START NEW FRANCHISE
========================= */

.glf-gm .glf-reset-franchise-button {
  cursor: pointer;
  background: rgba(170,45,45,.12);
  border: 1px solid rgba(255,90,90,.35);
  color: white;
}

.glf-gm .glf-reset-franchise-button:hover {
  background: rgba(190,50,50,.22);
  border-color: rgba(255,110,110,.65);
}

.glf-gm .glf-reset-franchise-button strong {
  color: #ffb0b0;
}

.glf-gm .glf-reset-franchise-button span {
  display: block;
  margin-top: 3px;
  color: #cfa9a9;
  font-size: 12px;
}

/* =========================
   FRANCHISE SAVE MANAGER
========================= */

.glf-gm .glf-save-manager-button {
  cursor: pointer;
}

.glf-gm .glf-save-overlay {
  position: fixed;
  inset: 0;
  z-index: 100100;
  background: rgba(3,12,22,.97);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.glf-gm .glf-save-card {
  width: min(650px,100%);
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  padding: 24px;
  color: white;
}

.glf-gm .glf-save-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-save-card h2 {
  margin: 5px 0 7px;
  font-size: 30px;
}

.glf-gm .glf-save-description {
  color: #9fb2c7;
  margin-bottom: 20px;
}

.glf-gm .glf-save-info {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 9px;
  margin-bottom: 20px;
}

.glf-gm .glf-save-info-card {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  padding: 12px;
}

.glf-gm .glf-save-info-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-save-info-card strong {
  display: block;
  margin-top: 5px;
}

.glf-gm .glf-save-option {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  padding: 16px;
  margin-top: 12px;
  background: rgba(255,255,255,.03);
}

.glf-gm .glf-save-option h3 {
  margin: 0 0 5px;
}

.glf-gm .glf-save-option p {
  margin: 0 0 13px;
  color: #9fb2c7;
  font-size: 13px;
}

.glf-gm .glf-save-download,
.glf-gm .glf-save-restore,
.glf-gm .glf-save-close {
  width: 100%;
  padding: 12px;
  border-radius: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-save-download {
  background: #f5b942;
  color: #071a2f;
  border: 0;
}

.glf-gm .glf-save-restore {
  background: #1264a3;
  color: white;
  border: 0;
}

.glf-gm .glf-save-close {
  margin-top: 15px;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
}

.glf-gm .glf-save-file {
  display: none;
}

.glf-gm .glf-save-message {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  display: none;
}

.glf-gm .glf-save-message.success {
  display: block;
  background: rgba(45,160,85,.15);
  border: 1px solid rgba(80,210,120,.3);
  color: #9cf0b4;
}

.glf-gm .glf-save-message.error {
  display: block;
  background: rgba(190,50,50,.14);
  border: 1px solid rgba(255,90,90,.3);
  color: #ffb0b0;
}

@media (max-width: 600px) {

  .glf-gm .glf-save-info {
    grid-template-columns: 1fr;
  }

}

/* =========================
   FRANCHISE BACKUP
========================= */

.glf-gm .glf-backup-menu-button {
  cursor: pointer;
}

.glf-gm .glf-backup-overlay {
  position: fixed;
  inset: 0;
  z-index: 100100;
  background: rgba(3,12,22,.97);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.glf-gm .glf-backup-card {
  width: min(720px,100%);
  max-height: 90vh;
  overflow-y: auto;
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  padding: 24px;
  color: white;
}

.glf-gm .glf-backup-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-backup-card h2 {
  margin: 5px 0 7px;
  font-size: 30px;
}

.glf-gm .glf-backup-description {
  color: #9fb2c7;
  margin-bottom: 18px;
  line-height: 1.5;
}

.glf-gm .glf-backup-info {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 9px;
  margin-bottom: 18px;
}

.glf-gm .glf-backup-info-card {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  padding: 12px;
}

.glf-gm .glf-backup-info-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-backup-info-card strong {
  display: block;
  margin-top: 5px;
}

.glf-gm .glf-backup-code {
  width: 100%;
  min-height: 180px;
  resize: vertical;
  box-sizing: border-box;
  background: #04111f;
  color: #d9e5f0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  padding: 12px;
  font-family: monospace;
  font-size: 11px;
  line-height: 1.4;
}

.glf-gm .glf-backup-copy,
.glf-gm .glf-backup-close {
  width: 100%;
  padding: 12px;
  border-radius: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-backup-copy {
  margin-top: 12px;
  border: 0;
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-backup-close {
  margin-top: 9px;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
}

.glf-gm .glf-backup-message {
  display: none;
  margin-top: 10px;
  border-radius: 8px;
  padding: 10px 12px;
}

.glf-gm .glf-backup-message.success {
  display: block;
  background: rgba(45,160,85,.15);
  border: 1px solid rgba(80,210,120,.3);
  color: #9cf0b4;
}

.glf-gm .glf-backup-message.warning {
  display: block;
  background: rgba(245,185,66,.12);
  border: 1px solid rgba(245,185,66,.3);
  color: #f5d387;
}

@media (max-width:600px) {

  .glf-gm .glf-backup-info {
    grid-template-columns: 1fr;
  }

}

/* =========================
   RESTORE FRANCHISE
========================= */

.glf-gm .glf-restore-menu-button {
  cursor: pointer;
}

.glf-gm .glf-restore-overlay {
  position: fixed;
  inset: 0;
  z-index: 100110;
  background: rgba(3,12,22,.97);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.glf-gm .glf-restore-card {
  width: min(720px,100%);
  max-height: 90vh;
  overflow-y: auto;
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  padding: 24px;
  color: white;
}

.glf-gm .glf-restore-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-restore-card h2 {
  margin: 5px 0 7px;
  font-size: 30px;
}

.glf-gm .glf-restore-description {
  color: #9fb2c7;
  margin-bottom: 18px;
  line-height: 1.5;
}

.glf-gm .glf-restore-code {
  width: 100%;
  min-height: 200px;
  resize: vertical;
  box-sizing: border-box;
  background: #04111f;
  color: #d9e5f0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  padding: 12px;
  font-family: monospace;
  font-size: 11px;
}

.glf-gm .glf-restore-button,
.glf-gm .glf-restore-close {
  width: 100%;
  padding: 12px;
  border-radius: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-restore-button {
  margin-top: 12px;
  border: 0;
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-restore-close {
  margin-top: 9px;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
}

.glf-gm .glf-restore-message {
  display: none;
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 8px;
}

.glf-gm .glf-restore-message.error {
  display: block;
  color: #ffb0b0;
  background: rgba(190,50,50,.14);
  border: 1px solid rgba(255,90,90,.3);
}

.glf-gm .glf-restore-message.success {
  display: block;
  color: #9cf0b4;
  background: rgba(45,160,85,.15);
  border: 1px solid rgba(80,210,120,.3);
}

/* =========================
   DRAFT SCOUTING
========================= */

.glf-gm .glf-scouting-menu-button {
  cursor: pointer;
}

.glf-gm .glf-scouting-overlay {
  position: fixed;
  inset: 0;
  z-index: 100120;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-scouting-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-scouting-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-scouting-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-scouting-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-scouting-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-scouting-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-scouting-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 15px;
}

.glf-gm .glf-scouting-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-scouting-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-scouting-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-scouting-controls {
  display: grid;
  grid-template-columns: 180px 1fr 180px;
  gap: 10px;
  margin-bottom: 14px;
}

.glf-gm .glf-scouting-controls select,
.glf-gm .glf-scouting-controls input {
  width: 100%;
  box-sizing: border-box;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  padding: 11px;
}

.glf-gm .glf-prospect-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-prospect-row {
  display: grid;
  grid-template-columns:
    55px
    1.8fr
    70px
    90px
    100px
    100px
    110px
    100px;
  gap: 8px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-prospect-row:last-child {
  border-bottom: 0;
}

.glf-gm .glf-prospect-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-prospect-name {
  font-weight: 900;
}

.glf-gm .glf-prospect-name small {
  display: block;
  color: #9fb2c7;
  font-weight: 500;
  margin-top: 2px;
}

.glf-gm .glf-prospect-position {
  font-weight: 900;
  color: #f5b942;
}

.glf-gm .glf-prospect-grade {
  font-weight: 900;
}

.glf-gm .glf-scout-level {
  color: #9fb2c7;
  font-size: 11px;
}

.glf-gm .glf-scout-button,
.glf-gm .glf-board-button {
  width: 100%;
  border-radius: 7px;
  padding: 8px 6px;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-scout-button {
  background: #f5b942;
  color: #071a2f;
  border: 0;
}

.glf-gm .glf-scout-button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.glf-gm .glf-board-button {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.14);
}

.glf-gm .glf-board-button.active {
  background: #1264a3;
  border-color: #1d82ce;
}

.glf-gm .glf-prospect-board {
  background: rgba(18,100,163,.08);
}

@media (max-width: 900px) {

  .glf-gm .glf-scouting-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-scouting-controls {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-prospect-row {
    grid-template-columns:
      45px
      1.7fr
      55px
      80px
      80px
      85px;
  }

  .glf-gm .glf-prospect-hide-mobile {
    display: none;
  }

}

/* =========================
   PROSPECT PROFILE
========================= */

.glf-gm .glf-prospect-profile-trigger {
  display: inline-block;
  margin-top: 6px;
  padding: 5px 8px;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: #9fc9ee;
  font-size: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-prospect-profile-overlay {
  position: fixed;
  inset: 0;
  z-index: 100130;
  background: rgba(2,10,19,.97);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

.glf-gm .glf-prospect-profile-card {
  width: min(900px,100%);
  max-height: 92vh;
  overflow-y: auto;
  background: linear-gradient(180deg,#102b49,#071a2f);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 20px;
  padding: 24px;
  color: white;
}

.glf-gm .glf-prospect-profile-top {
  display: grid;
  grid-template-columns: 75px 1fr 90px;
  gap: 16px;
  align-items: center;
  margin-bottom: 18px;
}

.glf-gm .glf-prospect-profile-pos {
  width: 68px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: #1264a3;
  color: white;
  font-size: 21px;
  font-weight: 900;
}

.glf-gm .glf-prospect-profile-name {
  font-size: 28px;
  font-weight: 900;
}

.glf-gm .glf-prospect-profile-name small {
  display: block;
  color: #9fb2c7;
  font-size: 13px;
  font-weight: 500;
  margin-top: 4px;
}

.glf-gm .glf-prospect-profile-grade {
  text-align: center;
  background: #f5b942;
  color: #071a2f;
  border-radius: 12px;
  padding: 12px 8px;
  font-weight: 900;
}

.glf-gm .glf-prospect-profile-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 18px;
}

.glf-gm .glf-prospect-profile-stat {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  padding: 11px;
}

.glf-gm .glf-prospect-profile-stat span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-prospect-profile-stat strong {
  display: block;
  margin-top: 4px;
}

.glf-gm .glf-prospect-section {
  margin-top: 18px;
}

.glf-gm .glf-prospect-section-title {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 9px;
}

.glf-gm .glf-prospect-attributes {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 9px;
}

.glf-gm .glf-prospect-attribute {
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 9px;
  padding: 10px;
}

.glf-gm .glf-prospect-attribute span {
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-prospect-attribute strong {
  float: right;
  color: #f5b942;
}

.glf-gm .glf-prospect-report {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.glf-gm .glf-prospect-report-box {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  padding: 12px;
}

.glf-gm .glf-prospect-report-box h4 {
  margin: 0 0 8px;
}

.glf-gm .glf-prospect-report-box ul {
  margin: 0;
  padding-left: 18px;
  color: #c7d4e1;
}

.glf-gm .glf-prospect-profile-close {
  width: 100%;
  margin-top: 20px;
  padding: 12px;
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 9px;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width:700px) {

  .glf-gm .glf-prospect-profile-grid {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-prospect-report,
  .glf-gm .glf-prospect-attributes {
    grid-template-columns: 1fr;
  }

}

/* =========================
   DRAFT CENTER
========================= */

.glf-gm .glf-draft-center-menu-button {
  cursor: pointer;
}

.glf-gm .glf-draft-center-overlay {
  position: fixed;
  inset: 0;
  z-index: 100140;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-draft-center-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-draft-center-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-draft-center-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-draft-center-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-draft-center-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-draft-center-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-draft-center-status {
  padding: 14px 16px;
  border-radius: 11px;
  margin-bottom: 15px;
}

.glf-gm .glf-draft-center-status strong {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  letter-spacing: 1px;
}

.glf-gm .glf-draft-center-status span {
  font-size: 13px;
}

.glf-gm .glf-draft-center-status.preview {
  background: rgba(245,185,66,.10);
  border: 1px solid rgba(245,185,66,.28);
  color: #f5d387;
}

.glf-gm .glf-draft-center-status.ready {
  background: rgba(50,175,90,.11);
  border: 1px solid rgba(80,210,120,.28);
  color: #9cf0b4;
}

.glf-gm .glf-draft-center-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 15px;
}

.glf-gm .glf-draft-center-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-draft-center-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-draft-center-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 22px;
}

.glf-gm .glf-draft-center-tabs {
  display: grid;
  grid-template-columns: repeat(7,1fr);
  gap: 6px;
  margin-bottom: 12px;
}

.glf-gm .glf-draft-round-tab {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  padding: 10px 5px;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-draft-round-tab.active {
  background: #f5b942;
  color: #071a2f;
  border-color: #f5b942;
}

.glf-gm .glf-draft-order-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-draft-order-row {
  display: grid;
  grid-template-columns:
    65px
    70px
    1.5fr
    1.5fr
    85px
    90px;
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-draft-order-row:last-child {
  border-bottom: 0;
}

.glf-gm .glf-draft-order-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-draft-order-row.user-pick {
  background: rgba(245,185,66,.08);
  box-shadow:
    inset 4px 0 0 #f5b942;
}

.glf-gm .glf-draft-your-pick {
  display: inline-block;
  margin-left: 6px;
  padding: 3px 6px;
  border-radius: 5px;
  background: #f5b942;
  color: #071a2f;
  font-size: 8px;
  font-weight: 900;
}

.glf-gm .glf-draft-traded {
  display: inline-block;
  padding: 4px 7px;
  border-radius: 5px;
  background: rgba(30,130,205,.16);
  border: 1px solid rgba(50,150,225,.28);
  color: #9fc9ee;
  font-size: 9px;
  font-weight: 900;
}

.glf-gm .glf-draft-original {
  color: #8da1b5;
  font-size: 9px;
  font-weight: 900;
}

@media (max-width: 850px) {

  .glf-gm .glf-draft-center-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-draft-center-tabs {
    grid-template-columns: repeat(4,1fr);
  }

  .glf-gm .glf-draft-order-row {
    grid-template-columns:
      50px
      55px
      1fr
      1fr;
  }

  .glf-gm .glf-draft-order-row > :nth-child(5),
  .glf-gm .glf-draft-order-row > :nth-child(6) {
    display: none;
  }

}

@media (max-width: 600px) {

  .glf-gm .glf-draft-center-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   LIVE DRAFT ROOM
========================= */

.glf-gm .glf-live-draft-button {
  margin-top: 12px;
  width: 100%;
  padding: 13px;
  border: 0;
  border-radius: 9px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-live-draft-button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.glf-gm .glf-live-draft-overlay {
  position: fixed;
  inset: 0;
  z-index: 100150;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-live-draft-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-live-draft-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-live-draft-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-live-draft-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-live-draft-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-live-draft-clock {
  background: linear-gradient(135deg,#102b49,#0b2037);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 15px;
}

.glf-gm .glf-live-draft-clock.user {
  border-color: rgba(245,185,66,.55);
  box-shadow: inset 4px 0 0 #f5b942;
}

.glf-gm .glf-live-draft-clock span {
  display: block;
  color: #9fb2c7;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-live-draft-clock strong {
  display: block;
  margin-top: 4px;
  font-size: 25px;
}

.glf-gm .glf-live-draft-layout {
  display: grid;
  grid-template-columns: 1.65fr .85fr;
  gap: 14px;
}

.glf-gm .glf-live-draft-panel {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-live-draft-panel-title {
  background: #102b49;
  padding: 13px 15px;
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.glf-gm .glf-live-draft-controls {
  display: grid;
  grid-template-columns: 150px 1fr;
  gap: 8px;
  padding: 12px;
}

.glf-gm .glf-live-draft-controls select,
.glf-gm .glf-live-draft-controls input {
  width: 100%;
  box-sizing: border-box;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  padding: 10px;
}

.glf-gm .glf-live-prospect-row {
  display: grid;
  grid-template-columns: 55px 1.6fr 65px 90px 105px 105px;
  gap: 8px;
  align-items: center;
  padding: 11px 13px;
  border-top: 1px solid rgba(255,255,255,.06);
}

.glf-gm .glf-live-prospect-name {
  font-weight: 900;
}

.glf-gm .glf-live-prospect-name small {
  display: block;
  color: #9fb2c7;
  font-weight: 500;
  margin-top: 2px;
}

.glf-gm .glf-live-draft-pick-button {
  border: 0;
  border-radius: 7px;
  padding: 8px;
  background: #f5b942;
  color: #071a2f;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-live-draft-history {
  max-height: 650px;
  overflow-y: auto;
}

.glf-gm .glf-live-draft-history-row {
  padding: 11px 13px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.glf-gm .glf-live-draft-history-row strong {
  display: block;
}

.glf-gm .glf-live-draft-history-row small {
  display: block;
  color: #9fb2c7;
  margin-top: 3px;
}

.glf-gm .glf-live-draft-history-row.user {
  background: rgba(245,185,66,.08);
  box-shadow: inset 3px 0 0 #f5b942;
}

.glf-gm .glf-live-draft-advance {
  width: 100%;
  padding: 12px;
  margin: 12px 0 0;
  border: 0;
  border-radius: 9px;
  background: #1264a3;
  color: white;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-live-draft-complete {
  padding: 20px;
  text-align: center;
  color: #9cf0b4;
  font-weight: 900;
}

@media (max-width:850px) {

  .glf-gm .glf-live-draft-layout {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-live-prospect-row {
    grid-template-columns: 45px 1.5fr 55px 80px;
  }

  .glf-gm .glf-live-prospect-row > :nth-child(5),
  .glf-gm .glf-live-prospect-row > :nth-child(6) {
    display: none;
  }

}

/* =========================
   ROOKIE CONTRACTS
========================= */

.glf-gm .glf-rookie-integrate-button {
  margin-top: 16px;
  width: 100%;
  border: 0;
  border-radius: 9px;
  padding: 12px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-rookie-overlay {
  position: fixed;
  inset: 0;
  z-index: 100160;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-rookie-shell {
  max-width: 1050px;
  margin: 0 auto;
}

.glf-gm .glf-rookie-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-rookie-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-rookie-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-rookie-close {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-rookie-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 16px;
}

.glf-gm .glf-rookie-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-rookie-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-rookie-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-rookie-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-rookie-row {
  display: grid;
  grid-template-columns:
    75px
    1.7fr
    65px
    70px
    70px
    95px
    95px;
  gap: 9px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-rookie-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-rookie-name {
  font-weight: 900;
}

.glf-gm .glf-rookie-name small {
  display: block;
  color: #9fb2c7;
  margin-top: 2px;
  font-weight: 500;
}

@media (max-width:750px) {

  .glf-gm .glf-rookie-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-rookie-row {
    grid-template-columns:
      60px
      1.5fr
      55px
      60px;
  }

  .glf-gm .glf-rookie-row > :nth-child(5),
  .glf-gm .glf-rookie-row > :nth-child(6),
  .glf-gm .glf-rookie-row > :nth-child(7) {
    display: none;
  }

}

/* =========================
   OFFSEASON HUB
========================= */

.glf-gm .glf-offseason-menu-button {
  cursor: pointer;
}

.glf-gm .glf-offseason-menu-button.locked {
  opacity: .7;
}

.glf-gm .glf-offseason-overlay {
  position: fixed;
  inset: 0;
  z-index: 100170;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-offseason-shell {
  max-width: 1100px;
  margin: 0 auto;
}

.glf-gm .glf-offseason-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}

.glf-gm .glf-offseason-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-offseason-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-offseason-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-offseason-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-offseason-status {
  margin-bottom: 16px;
  padding: 15px;
  border-radius: 11px;
  background: rgba(245,185,66,.08);
  border: 1px solid rgba(245,185,66,.25);
  color: #f5d387;
}

.glf-gm .glf-offseason-status.ready {
  background: rgba(50,175,90,.10);
  border-color: rgba(80,210,120,.25);
  color: #9cf0b4;
}

.glf-gm .glf-offseason-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 17px;
}

.glf-gm .glf-offseason-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-offseason-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offseason-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-offseason-stages {
  display: grid;
  gap: 10px;
}

.glf-gm .glf-offseason-stage {
  display: grid;
  grid-template-columns: 55px 1fr 130px;
  align-items: center;
  gap: 14px;
  padding: 15px;
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 12px;
}

.glf-gm .glf-offseason-stage.current {
  border-color: rgba(245,185,66,.55);
  box-shadow: inset 4px 0 0 #f5b942;
}

.glf-gm .glf-offseason-stage.complete {
  background: rgba(50,175,90,.07);
}

.glf-gm .glf-offseason-stage.locked {
  opacity: .55;
}

.glf-gm .glf-offseason-stage-number {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: #102b49;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.glf-gm .glf-offseason-stage.complete
.glf-offseason-stage-number {
  background: rgba(50,175,90,.2);
  color: #9cf0b4;
}

.glf-gm .glf-offseason-stage-title {
  font-weight: 900;
  font-size: 17px;
}

.glf-gm .glf-offseason-stage-desc {
  color: #9fb2c7;
  font-size: 12px;
  margin-top: 3px;
}

.glf-gm .glf-offseason-stage-status {
  text-align: right;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offseason-stage.current
.glf-offseason-stage-status {
  color: #f5b942;
}

.glf-gm .glf-offseason-stage.complete
.glf-offseason-stage-status {
  color: #9cf0b4;
}

@media (max-width:700px) {

  .glf-gm .glf-offseason-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-offseason-stage {
    grid-template-columns: 45px 1fr;
  }

  .glf-gm .glf-offseason-stage-status {
    grid-column: 2;
    text-align: left;
  }

  .glf-gm .glf-offseason-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   CONTRACTS + RETIREMENTS
========================= */

.glf-gm .glf-offseason-action {
  width: 100%;
  margin-top: 12px;
  padding: 12px;
  border: 0;
  border-radius: 9px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-contract-overlay {
  position: fixed;
  inset: 0;
  z-index: 100180;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-contract-shell {
  max-width: 1150px;
  margin: 0 auto;
}

.glf-gm .glf-contract-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-contract-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-contract-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-contract-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-contract-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-contract-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 17px;
}

.glf-gm .glf-contract-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-contract-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-contract-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-contract-section {
  margin-top: 17px;
}

.glf-gm .glf-contract-section-title {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
  margin-bottom: 9px;
}

.glf-gm .glf-contract-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-contract-row {
  display: grid;
  grid-template-columns:
    1.7fr
    65px
    65px
    85px
    100px
    105px
    190px;
  gap: 8px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-contract-row:last-child {
  border-bottom: 0;
}

.glf-gm .glf-contract-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-contract-player {
  font-weight: 900;
}

.glf-gm .glf-contract-player small {
  display: block;
  margin-top: 2px;
  color: #9fb2c7;
  font-weight: 500;
}

.glf-gm .glf-contract-actions {
  display: flex;
  gap: 6px;
}

.glf-gm .glf-contract-resign,
.glf-gm .glf-contract-walk {
  flex: 1;
  border-radius: 7px;
  padding: 8px 6px;
  font-size: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-contract-resign {
  border: 0;
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-contract-walk {
  background: rgba(190,50,50,.14);
  border: 1px solid rgba(255,90,90,.3);
  color: #ffb0b0;
}

.glf-gm .glf-retirement-row {
  display: grid;
  grid-template-columns: 1.7fr 75px 75px 1fr;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-contract-complete {
  width: 100%;
  margin-top: 18px;
  border: 0;
  border-radius: 9px;
  padding: 13px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-contract-empty {
  padding: 18px;
  color: #9fb2c7;
}

@media (max-width:800px) {

  .glf-gm .glf-contract-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-contract-row {
    grid-template-columns:
      1.5fr
      55px
      55px
      1fr;
  }

  .glf-gm .glf-contract-row > :nth-child(4),
  .glf-gm .glf-contract-row > :nth-child(5),
  .glf-gm .glf-contract-row > :nth-child(6) {
    display: none;
  }

  .glf-gm .glf-contract-header {
    flex-direction: column;
    align-items: flex-start;
  }

}

/* =========================
   OFFSEASON FREE AGENCY
========================= */

.glf-gm .glf-offseason-fa-overlay {
  position: fixed;
  inset: 0;
  z-index: 100190;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-offseason-fa-shell {
  max-width: 1250px;
  margin: 0 auto;
}

.glf-gm .glf-offseason-fa-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-offseason-fa-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-offseason-fa-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-offseason-fa-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-offseason-fa-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-offseason-fa-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 15px;
}

.glf-gm .glf-offseason-fa-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-offseason-fa-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offseason-fa-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-offseason-fa-controls {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 9px;
  margin-bottom: 12px;
}

.glf-gm .glf-offseason-fa-controls select,
.glf-gm .glf-offseason-fa-controls input {
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
}

.glf-gm .glf-offseason-fa-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-offseason-fa-row {
  display: grid;
  grid-template-columns:
    1.55fr
    55px
    55px
    80px
    90px
    90px
    115px
    160px;
  gap: 8px;
  align-items: center;
  padding: 11px 13px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-offseason-fa-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offseason-fa-name {
  font-weight: 900;
}

.glf-gm .glf-offseason-fa-name small {
  display: block;
  margin-top: 2px;
  color: #9fb2c7;
  font-weight: 500;
}

.glf-gm .glf-offseason-fa-salary,
.glf-gm .glf-offseason-fa-years {
  width: 100%;
  box-sizing: border-box;
  background: #061727;
  color: white;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 6px;
  padding: 7px;
}

.glf-gm .glf-offseason-fa-offer {
  width: 100%;
  background: #f5b942;
  color: #071a2f;
  border: 0;
  border-radius: 7px;
  padding: 8px 5px;
  font-size: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-offseason-fa-withdraw {
  width: 100%;
  margin-top: 4px;
  background: rgba(190,50,50,.12);
  color: #ffb0b0;
  border: 1px solid rgba(255,90,90,.25);
  border-radius: 7px;
  padding: 6px 4px;
  font-size: 8px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-offseason-fa-leading {
  color: #9cf0b4;
  font-size: 10px;
  font-weight: 900;
}

.glf-gm .glf-offseason-fa-interest {
  color: #9fb2c7;
  font-size: 10px;
}

.glf-gm .glf-offseason-fa-advance,
.glf-gm .glf-offseason-fa-complete {
  width: 100%;
  margin-top: 15px;
  border: 0;
  border-radius: 9px;
  padding: 13px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-offseason-fa-advance {
  background: #1264a3;
  color: white;
}

.glf-gm .glf-offseason-fa-complete {
  background: #f5b942;
  color: #071a2f;
}

.glf-gm .glf-offseason-fa-news {
  margin-top: 16px;
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  overflow: hidden;
}

.glf-gm .glf-offseason-fa-news-title {
  background: #102b49;
  padding: 11px 13px;
  color: #f5b942;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-offseason-fa-news-item {
  padding: 10px 13px;
  border-top: 1px solid rgba(255,255,255,.06);
  font-size: 12px;
}

@media (max-width:900px) {

  .glf-gm .glf-offseason-fa-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-offseason-fa-row {
    grid-template-columns:
      1.5fr
      55px
      55px
      85px
      1fr;
  }

  .glf-gm .glf-offseason-fa-row > :nth-child(4),
  .glf-gm .glf-offseason-fa-row > :nth-child(5),
  .glf-gm .glf-offseason-fa-row > :nth-child(6) {
    display: none;
  }

}

/* =========================
   OFFSEASON ROSTER CUTS
========================= */

.glf-gm .glf-cuts-overlay {
  position: fixed;
  inset: 0;
  z-index: 100200;
  background: #061321;
  color: white;
  overflow-y: auto;
  padding: 24px;
}

.glf-gm .glf-cuts-shell {
  max-width: 1200px;
  margin: 0 auto;
}

.glf-gm .glf-cuts-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-gm .glf-cuts-kicker {
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-cuts-header h2 {
  margin: 4px 0;
  font-size: 34px;
}

.glf-gm .glf-cuts-header p {
  margin: 0;
  color: #9fb2c7;
}

.glf-gm .glf-cuts-back {
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-cuts-summary {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 15px;
}

.glf-gm .glf-cuts-summary-card {
  background: #102b49;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 11px;
  padding: 14px;
}

.glf-gm .glf-cuts-summary-card span {
  display: block;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-cuts-summary-card strong {
  display: block;
  margin-top: 5px;
  font-size: 21px;
}

.glf-gm .glf-cuts-warning {
  padding: 13px 15px;
  margin-bottom: 14px;
  border-radius: 10px;
  background: rgba(190,50,50,.12);
  border: 1px solid rgba(255,90,90,.28);
  color: #ffb0b0;
}

.glf-gm .glf-cuts-ready {
  padding: 13px 15px;
  margin-bottom: 14px;
  border-radius: 10px;
  background: rgba(50,175,90,.10);
  border: 1px solid rgba(80,210,120,.28);
  color: #9cf0b4;
}

.glf-gm .glf-cuts-controls {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 9px;
  margin-bottom: 12px;
}

.glf-gm .glf-cuts-controls select,
.glf-gm .glf-cuts-controls input {
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  background: #102b49;
  color: white;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
}

.glf-gm .glf-cuts-table {
  background: #0b2037;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  overflow: hidden;
}

.glf-gm .glf-cuts-row {
  display: grid;
  grid-template-columns:
    1.7fr
    60px
    60px
    70px
    85px
    85px
    100px
    110px;
  gap: 8px;
  align-items: center;
  padding: 11px 13px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.glf-gm .glf-cuts-row.header {
  background: #102b49;
  color: #9fb2c7;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-cuts-name {
  font-weight: 900;
}

.glf-gm .glf-cuts-name small {
  display: block;
  margin-top: 2px;
  color: #9fb2c7;
  font-weight: 500;
}

.glf-gm .glf-cuts-rookie {
  color: #9cf0b4;
  font-size: 9px;
  font-weight: 900;
}

.glf-gm .glf-cuts-release {
  width: 100%;
  border-radius: 7px;
  padding: 8px 5px;
  background: rgba(190,50,50,.14);
  border: 1px solid rgba(255,90,90,.3);
  color: #ffb0b0;
  font-size: 9px;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-cuts-release:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.glf-gm .glf-cuts-complete {
  width: 100%;
  margin-top: 15px;
  border: 0;
  border-radius: 9px;
  padding: 13px;
  background: #f5b942;
  color: #071a2f;
  font-weight: 900;
  cursor: pointer;
}

.glf-gm .glf-cuts-complete:disabled {
  opacity: .45;
  cursor: not-allowed;
}

@media (max-width:600px) {

  .glf-gm .glf-cuts-summary {
    grid-template-columns: 1fr 1fr;
  }

  .glf-gm .glf-cuts-row {
    grid-template-columns:
      1.5fr
      55px
      55px
      1fr;
  }

  .glf-gm .glf-cuts-row > :nth-child(4),
  .glf-gm .glf-cuts-row > :nth-child(5),
  .glf-gm .glf-cuts-row > :nth-child(6),
  .glf-gm .glf-cuts-row > :nth-child(7) {
    display: none;
  }

}

/* =========================
   FINAL MOBILE POLISH
========================= */

@media (max-width: 749px) {

  .glf-gm,
  .glf-gm * {
    box-sizing: border-box;
  }

  .glf-gm {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  /* Management dashboard */
  .glf-gm .glf-menu {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
  }

  .glf-gm .glf-menu > button {
    width: 100%;
    min-width: 0;
    min-height: 105px;
    padding: 14px 10px;
  }

  .glf-gm .glf-menu > button strong {
    display: block;
    font-size: 13px;
    line-height: 1.15;
    overflow-wrap: anywhere;
  }

  .glf-gm .glf-menu > button span {
    font-size: 10px !important;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

  /* Keep destructive action visually compact */
  .glf-gm .glf-reset-franchise-button span {
    font-size: 10px !important;
  }

  /* General game panels */
  .glf-gm .glf-stat-card,
  .glf-gm .glf-news,
  .glf-gm .glf-injury-panel,
  .glf-gm .glf-free-agency-panel {
    max-width: 100%;
  }

  /* Full-screen management screens */
  .glf-gm .glf-coach-overlay,
  .glf-gm .glf-development-overlay,
  .glf-gm .glf-scouting-overlay,
  .glf-gm .glf-draft-center-overlay,
  .glf-gm .glf-live-draft-overlay,
  .glf-gm .glf-offseason-overlay,
  .glf-gm .glf-contract-overlay,
  .glf-gm .glf-offseason-fa-overlay,
  .glf-gm .glf-cuts-overlay {
    width: 100%;
    max-width: 100vw;
    padding: 14px;
    overflow-x: hidden;
  }

}

/* =========================
   MOBILE MENU ICON POLISH
========================= */

@media (max-width: 749px) {

  .glf-gm .glf-menu > button > div:first-child {
    font-size: 23px !important;
    line-height: 1 !important;
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 7px !important;
  }

  .glf-gm .glf-menu > button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

}

/* =========================
   TRADE CENTER V2 - MOBILE
========================= */

@media (max-width: 749px) {

  /* Entire Trade Center */
  .glf-gm .glf-tradev2-overlay {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
    padding: 14px;
  }

  .glf-gm .glf-tradev2-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
  }


  /* Header */
  .glf-gm .glf-tradev2-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .glf-gm .glf-tradev2-header h2 {
    font-size: 34px;
    line-height: 1;
  }

  .glf-gm .glf-tradev2-back {
    width: 100%;
    text-align: center;
  }


  /* Trade partner selector */
  .glf-gm .glf-tradev2-partner {
    width: 100%;
    max-width: 100%;
    margin-top: 18px;
  }

  .glf-gm .glf-tradev2-partner-select {
    width: 100%;
    max-width: 100%;
  }


  /*
    Desktop = two teams side by side.
    Mobile = your team first,
    trade partner underneath.
  */
  .glf-gm .glf-tradev2-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }


  .glf-gm .glf-tradev2-team {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }


  .glf-gm .glf-tradev2-team-header {
    padding: 16px;
  }


  .glf-gm .glf-tradev2-team-header strong {
    display: block;
    font-size: 20px;
    line-height: 1.15;
  }


  /* Players / Draft Picks tabs */
  .glf-gm .glf-tradev2-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }


  .glf-gm .glf-tradev2-tab {
    min-width: 0;
    width: 100%;
    min-height: 46px;
    padding: 10px 5px;
  }


  /*
    Remove the little horizontal
    scrollbar from each roster list.
  */
  .glf-gm .glf-tradev2-list {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden !important;
    overflow-y: auto;
  }


  .glf-gm .glf-tradev2-list > * {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }


  /*
    Prevent long player names/data
    from forcing the row wider.
  */
  .glf-gm .glf-tradev2-list strong,
  .glf-gm .glf-tradev2-list span,
  .glf-gm .glf-tradev2-list div {
    min-width: 0;
    overflow-wrap: anywhere;
  }


  /* Trade proposal area */
  .glf-gm .glf-tradev2-proposal {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }


  .glf-gm .glf-tradev2-proposal-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }


  /*
    If the proposal uses an arrow
    between Send and Receive,
    center it vertically.
  */
  .glf-gm .glf-tradev2-proposal-arrow {
    transform: rotate(90deg);
    margin: 2px auto;
  }


  .glf-gm .glf-tradev2-submit,
  .glf-gm .glf-tradev2-submit-button {
    width: 100%;
  }

}

/* =========================
   TRADE CENTER MOBILE
   PLAYER ROW POLISH
========================= */

@media (max-width: 749px) {

  /* Stop names from breaking letter-by-letter */
  .glf-gm .glf-tradev2-list strong,
  .glf-gm .glf-tradev2-list span {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none;
  }

  /*
    Player rows:
    checkbox | pos | player | OVR | value
  */
  .glf-gm
  .glf-tradev2-list
  > div:has(input[type="checkbox"]) {
    grid-template-columns:
      28px
      42px
      minmax(105px, 1fr)
      48px
      52px !important;

    gap: 7px !important;
    align-items: center;
  }

  .glf-gm
  .glf-tradev2-list
  > div:has(input[type="checkbox"])
  > * {
    min-width: 0;
  }

  /* Player information column */
  .glf-gm
  .glf-tradev2-list
  > div:has(input[type="checkbox"])
  > :nth-child(3) {
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  /* Slightly compact secondary player info */
  .glf-gm
  .glf-tradev2-list
  > div:has(input[type="checkbox"])
  > :nth-child(3) small {
    font-size: 10px;
    line-height: 1.3;
  }

}

/* =========================
   DRAFT SCOUTING - MOBILE
========================= */

@media (max-width: 749px) {

  .glf-gm .glf-scouting-overlay {
    padding: 14px;
    overflow-x: hidden;
  }

  .glf-gm .glf-scouting-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  /* Header */
  .glf-gm .glf-scouting-header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .glf-gm .glf-scouting-header h2 {
    font-size: 34px;
    line-height: 1;
  }

  .glf-gm .glf-scouting-back {
    width: 100%;
    text-align: center;
  }

  /* Summary cards */
  .glf-gm .glf-scouting-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Filters */
  .glf-gm .glf-scouting-controls {
    grid-template-columns: 1fr;
  }

  /* Turn table into cards */
  .glf-gm .glf-prospect-table {
    background: transparent;
    border: 0;
    overflow: visible;
  }

  .glf-gm .glf-prospect-row.header {
    display: none;
  }

  .glf-gm .glf-prospect-row:not(.header) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    margin-bottom: 12px;
    padding: 14px;
    background: #0b2037;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 12px;
  }

  /* Ranking */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(1) {
    grid-column: 1 / -1;
    color: #9fb2c7;
    font-size: 10px;
    font-weight: 900;
  }

  .glf-gm .glf-prospect-row:not(.header) > :nth-child(1)::before {
    content: "PROSPECT #";
  }

  /* Name */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(2) {
    grid-column: 1 / -1;
    font-size: 18px;
    line-height: 1.15;
  }

  .glf-gm .glf-prospect-name small {
    margin-top: 5px;
    font-size: 11px;
    line-height: 1.35;
  }

  .glf-gm .glf-prospect-profile-trigger {
    margin-top: 9px;
    padding: 8px 10px;
    font-size: 9px;
  }

  /* Position */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(3)::before {
    content: "POS";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    letter-spacing: 1px;
  }

  /* Projection */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(4)::before {
    content: "PROJECTED";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }

  /* Grade */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(5) {
    grid-column: 1 / -1;
  }

  .glf-gm .glf-prospect-row:not(.header) > :nth-child(5)::before {
    content: "SCOUTING GRADE";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }

  /* Potential */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(6)::before {
    content: "POTENTIAL";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }

  /*
    Re-enable Scouting + Draft Board
    controls that older mobile CSS hid.
  */
  .glf-gm .glf-prospect-hide-mobile {
    display: block !important;
  }

  /* Scout controls */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(7) {
    grid-column: 1;
  }

  /* Draft-board controls */
  .glf-gm .glf-prospect-row:not(.header) > :nth-child(8) {
    grid-column: 2;
    align-self: end;
  }

  .glf-gm .glf-scout-button,
  .glf-gm .glf-board-button {
    min-height: 40px;
    font-size: 9px;
  }

  .glf-gm .glf-scout-level {
    min-height: 18px;
    margin-bottom: 4px;
  }

}

/* =========================
   TRADE CENTER MOBILE
   FINAL PLAYER ROW FIX
========================= */

@media (max-width: 749px) {

  .glf-gm .glf-tradev2-item {
    display: grid !important;

    grid-template-columns:
      28px
      38px
      minmax(0, 1fr)
      48px
      48px !important;

    gap: 7px !important;
    align-items: center;
    width: 100%;
    min-width: 0;
    padding: 13px 10px;
  }

  /* Checkbox */
  .glf-gm .glf-tradev2-check {
    width: 22px;
    min-width: 22px;
  }

  /* Position */
  .glf-gm .glf-tradev2-pos {
    min-width: 0;
    font-size: 10px;
    white-space: nowrap;
  }

  /* Player name area */
  .glf-gm .glf-tradev2-name {
    min-width: 0;
    width: 100%;

    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal;
    hyphens: none;

    font-size: 14px;
    line-height: 1.25;
  }

  .glf-gm .glf-tradev2-name small {
    display: block;
    margin-top: 4px;

    font-size: 10px;
    line-height: 1.3;

    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  /* Overall bubble */
  .glf-gm .glf-tradev2-ovr {
    min-width: 42px;
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 13px;
    white-space: nowrap;
  }

  /* Trade value */
  .glf-gm .glf-tradev2-value {
    min-width: 0;
    text-align: right;
    font-size: 12px;
    white-space: nowrap;
  }

}

/* =========================
   FREE AGENCY - MOBILE
========================= */

@media (max-width: 749px) {

  /* Entire screen */
  .glf-gm .glf-fa-overlay {
    width: 100%;
    max-width: 100vw;
    padding: 14px;
    overflow-x: hidden !important;
  }

  .glf-gm .glf-fa-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }


  /* Header */
  .glf-gm .glf-fa-header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .glf-gm .glf-fa-header h2 {
    font-size: 34px;
    line-height: 1;
  }

  .glf-gm .glf-fa-back {
    width: 100%;
    text-align: center;
  }


  /* Summary */
  .glf-gm .glf-fa-summary {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
    gap: 10px;
  }


  /* Free Agents / My Roster tabs */
  .glf-gm .glf-fa-tabs {
    display: grid;
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
  }

  .glf-gm .glf-fa-tab {
    width: 100%;
    min-width: 0;
    min-height: 50px;
    padding: 10px 6px;
  }


  /* Filters */
  .glf-gm .glf-fa-controls {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px;
    width: 100%;
  }

  .glf-gm .glf-fa-position,
  .glf-gm .glf-fa-search {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }


  /*
    Remove desktop-table scrolling.
  */
  .glf-gm .glf-fa-table-wrap {
    width: 100%;
    max-width: 100%;
    overflow: visible !important;
  }

  .glf-gm .glf-fa-table {
    display: block;
    width: 100%;
    min-width: 0 !important;
  }

  .glf-gm .glf-fa-table thead {
    display: none;
  }

  .glf-gm .glf-fa-table tbody {
    display: grid;
    gap: 12px;
    width: 100%;
  }


  /*
    Each free agent becomes a card.
  */
  .glf-gm .glf-fa-table tbody tr {
    display: grid;
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 10px 14px;

    width: 100%;
    min-width: 0;

    padding: 14px;

    background: #0b2037;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 12px;
  }


  .glf-gm .glf-fa-table tbody td {
    display: block;
    width: auto;
    min-width: 0;

    padding: 0 !important;
    border: 0 !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }


  /* POSITION */
  .glf-gm .glf-fa-table tbody td:nth-child(1)::before {
    content: "POSITION";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* PLAYER */
  .glf-gm .glf-fa-table tbody td:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 1;
    font-size: 17px;
    font-weight: 900;
  }

  .glf-gm .glf-fa-table tbody td:nth-child(2)::before {
    content: "PLAYER";
    display: block;
    margin-bottom: 4px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* AGE */
  .glf-gm .glf-fa-table tbody td:nth-child(3)::before {
    content: "AGE";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* OVR */
  .glf-gm .glf-fa-table tbody td:nth-child(4)::before {
    content: "OVR";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }

  .glf-gm .glf-fa-ovr {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 42px;
    height: 42px;

    border-radius: 50%;

    font-weight: 900;
  }


/* FREE AGENT / ROSTER COLUMN 5 LABEL */
.glf-gm .glf-fa-table tbody td:nth-child(5)::before {
  content: "POTENTIAL";
  display: block;
  margin-bottom: 3px;
  color: #9fb2c7;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 1px;
}

/* When My Roster / Cuts is active, column 5 is ROLE */
.glf-gm
.glf-fa-overlay:has(.glf-fa-tab[data-view="roster"].active)
.glf-fa-table tbody td:nth-child(5)::before {
  content: "ROLE";
}


  /* SALARY */
  .glf-gm .glf-fa-table tbody td:nth-child(6)::before {
    content: "SALARY";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* CONTRACT */
  .glf-gm .glf-fa-table tbody td:nth-child(7)::before {
    content: "CONTRACT";
    display: block;
    margin-bottom: 3px;
    color: #9fb2c7;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* ACTION */
  .glf-gm .glf-fa-table tbody td:nth-child(8) {
    grid-column: 1 / -1;
    margin-top: 3px;
  }


  .glf-gm .glf-fa-sign {
    width: 100%;
    min-height: 42px;

    border-radius: 8px;

    font-weight: 900;
  }


  /* Message area */
  .glf-gm .glf-fa-message {
    width: 100%;
    max-width: 100%;
  }

}

/* =========================================================
   GREAT LAKES FRANCHISE GM
   VISUAL THEME V1
========================================================= */

.glf-gm {
  --glf-bg-1: #03111f;
  --glf-bg-2: #061b2f;
  --glf-panel: rgba(11, 38, 66, .88);
  --glf-panel-strong: rgba(9, 31, 54, .96);
  --glf-border: rgba(62, 159, 238, .24);
  --glf-blue: #178ee8;
  --glf-blue-bright: #25a9ff;
  --glf-gold: #f5b942;
  --glf-text: #ffffff;
  --glf-muted: #9eb9d3;

  position: relative;
  isolation: auto;

  background:
    radial-gradient(
      circle at 15% 5%,
      rgba(31, 135, 216, .22),
      transparent 28%
    ),
    radial-gradient(
      circle at 85% 2%,
      rgba(24, 111, 190, .16),
      transparent 24%
    ),
    linear-gradient(
      180deg,
      #061b30 0%,
      #041526 34%,
      #020e1a 100%
    );

  color: var(--glf-text);
  overflow-x: hidden;
}


/* ---------------------------------------------------------
   SUBTLE STADIUM / FIELD TEXTURE
--------------------------------------------------------- */

.glf-gm::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      transparent 49.8%,
      rgba(255,255,255,.045) 50%,
      transparent 50.2%
    ),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.018) 0,
      rgba(255,255,255,.018) 1px,
      transparent 1px,
      transparent 42px
    ),
    radial-gradient(
      ellipse at 50% 100%,
      rgba(27, 111, 169, .16),
      transparent 55%
    );

  opacity: .75;
}


.glf-gm::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 420px;
  z-index: -1;
  pointer-events: none;

  background:
    radial-gradient(
      circle at 8% 0%,
      rgba(110, 200, 255, .18),
      transparent 11%
    ),
    radial-gradient(
      circle at 92% 0%,
      rgba(110, 200, 255, .18),
      transparent 11%
    ),
    linear-gradient(
      180deg,
      rgba(10, 44, 74, .18),
      transparent
    );

  filter: blur(2px);
}


/* ---------------------------------------------------------
   GENERAL PANELS / CARDS
--------------------------------------------------------- */

.glf-gm .glf-stat-card,
.glf-gm .glf-menu > button,
.glf-gm .glf-news,
.glf-gm .glf-injury-panel,
.glf-gm .glf-free-agency-panel {
  background:
    linear-gradient(
      145deg,
      rgba(18, 54, 88, .94),
      rgba(7, 31, 54, .92)
    );

  border: 1px solid var(--glf-border);
  box-shadow:
    0 12px 28px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.035);

  backdrop-filter: blur(8px);
}


/* ---------------------------------------------------------
   MENU BUTTONS
--------------------------------------------------------- */

.glf-gm .glf-menu > button {
  position: relative;
  overflow: hidden;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}


.glf-gm .glf-menu > button::after {
  content: "";
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      135deg,
      rgba(37,169,255,.10),
      transparent 45%
    );

  opacity: 0;
  transition: opacity .18s ease;
  pointer-events: none;
}


.glf-gm .glf-menu > button:hover {
  transform: translateY(-3px);

  border-color:
    rgba(37,169,255,.48);

  box-shadow:
    0 16px 35px rgba(0,0,0,.24),
    0 0 20px rgba(37,169,255,.06);
}


.glf-gm .glf-menu > button:hover::after {
  opacity: 1;
}


.glf-gm .glf-menu > button strong {
  letter-spacing: -.15px;
}


/* ---------------------------------------------------------
   SIMULATE BUTTON
--------------------------------------------------------- */

.glf-gm .glf-sim-button {
  position: relative;

  background:
    linear-gradient(
      135deg,
      #f7c54f,
      #f2ad2f
    );

  border: 1px solid rgba(255,223,135,.55);

  box-shadow:
    0 10px 24px rgba(245,185,66,.18),
    inset 0 1px 0 rgba(255,255,255,.35);

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}


.glf-gm .glf-sim-button:hover {
  transform: translateY(-2px);

  box-shadow:
    0 14px 30px rgba(245,185,66,.28),
    0 0 24px rgba(245,185,66,.12);
}


/* ---------------------------------------------------------
   HEADINGS / LABELS
--------------------------------------------------------- */

.glf-gm h1,
.glf-gm h2 {
  letter-spacing: -.7px;
}


.glf-gm h1 {
  text-shadow:
    0 4px 18px rgba(0,0,0,.35);
}


.glf-gm [class*="kicker"],
.glf-gm [class*="section-title"] {
  color: var(--glf-gold);
}


/* ---------------------------------------------------------
   GAME DATA
--------------------------------------------------------- */

.glf-gm .glf-stat-card strong {
  text-shadow:
    0 3px 10px rgba(0,0,0,.25);
}


.glf-gm .glf-stat-card span,
.glf-gm .glf-stat-card small {
  color: var(--glf-muted);
}


/* ---------------------------------------------------------
   FREE AGENCY + INJURY STRIPS
--------------------------------------------------------- */

.glf-gm .glf-free-agency-panel {
  border-color:
    rgba(37,169,255,.30);
}


.glf-gm .glf-injury-panel {
  border-color:
    rgba(215,72,72,.32);

  background:
    linear-gradient(
      145deg,
      rgba(52,26,40,.90),
      rgba(20,24,39,.94)
    );
}


/* ---------------------------------------------------------
   LEAGUE NEWS
--------------------------------------------------------- */

.glf-gm .glf-news {
  overflow: hidden;
}


.glf-gm .glf-news > * {
  position: relative;
}


.glf-gm .glf-news strong {
  color: white;
}


/* ---------------------------------------------------------
   SCROLLBARS INSIDE GAME
--------------------------------------------------------- */

.glf-gm * {
  scrollbar-width: thin;
  scrollbar-color:
    rgba(62,159,238,.45)
    rgba(5,21,38,.75);
}


.glf-gm *::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}


.glf-gm *::-webkit-scrollbar-track {
  background:
    rgba(5,21,38,.75);
}


.glf-gm *::-webkit-scrollbar-thumb {
  background:
    linear-gradient(
      #197fc5,
      #115b91
    );

  border-radius: 20px;
}


/* ---------------------------------------------------------
   MOBILE POLISH
--------------------------------------------------------- */

@media (max-width: 749px) {

  .glf-gm::after {
    height: 300px;
  }


  .glf-gm .glf-menu > button {
    min-height: 112px;
  }


  .glf-gm .glf-menu > button:hover {
    transform: none;
  }


  .glf-gm .glf-stat-card,
  .glf-gm .glf-menu > button {
    box-shadow:
      0 8px 20px rgba(0,0,0,.16);
  }

}

/* =========================================================
   FRANCHISE GM - DASHBOARD HERO V2
========================================================= */


/* ---------------------------------------------------------
   MAIN FRANCHISE GM HERO
--------------------------------------------------------- */

.glf-gm .glf-gm-header {
  position: relative;
  overflow: hidden;

  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;

  padding: 30px 32px;
  margin-bottom: 18px;

  border: 1px solid rgba(52, 160, 235, .28);
  border-radius: 18px;

  background:
    radial-gradient(
      circle at 88% 15%,
      rgba(31, 159, 239, .24),
      transparent 30%
    ),
    radial-gradient(
      circle at 8% 0%,
      rgba(64, 177, 255, .12),
      transparent 24%
    ),
    linear-gradient(
      120deg,
      rgba(5, 33, 57, .98),
      rgba(5, 23, 42, .96)
    );

  box-shadow:
    0 20px 45px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.05);
}


/* Stadium-light glow */
.glf-gm .glf-gm-header::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:
    radial-gradient(
      ellipse at 5% 0%,
      rgba(163, 222, 255, .18),
      transparent 20%
    ),
    radial-gradient(
      ellipse at 95% 0%,
      rgba(163, 222, 255, .18),
      transparent 20%
    );

  opacity: .9;
}


/* Subtle field / broadcast lines */
.glf-gm .glf-gm-header::after {
  content: "";
  position: absolute;
  left: 40%;
  right: -10%;
  bottom: -70px;
  height: 180px;

  border-radius: 50% 50% 0 0;

  background:
    repeating-linear-gradient(
      90deg,
      rgba(82, 177, 235, .04) 0,
      rgba(82, 177, 235, .04) 1px,
      transparent 1px,
      transparent 46px
    );

  transform: perspective(250px) rotateX(62deg);
  pointer-events: none;
}


.glf-gm .glf-gm-header > * {
  position: relative;
  z-index: 1;
}


/* ---------------------------------------------------------
   HERO TEXT
--------------------------------------------------------- */

.glf-gm .glf-gm-kicker {
  margin-bottom: 7px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2.2px;
  text-transform: uppercase;
}


.glf-gm .glf-gm-header h1 {
  margin: 0;

  font-size: clamp(38px, 5vw, 62px);
  line-height: .98;
  letter-spacing: -1.6px;

  color: #fff;

  text-shadow:
    0 5px 20px rgba(0,0,0,.35);
}


.glf-gm .glf-gm-header p {
  margin: 12px 0 0;

  max-width: 570px;

  color: #a9c7e2;

  font-size: 15px;
  line-height: 1.55;
}


/* ---------------------------------------------------------
   SEASON BADGE
--------------------------------------------------------- */

.glf-gm .glf-season-badge {
  flex: 0 0 auto;

  padding: 12px 20px;

  border: 1px solid rgba(255, 223, 139, .58);
  border-radius: 999px;

  background:
    linear-gradient(
      135deg,
      #ffd061,
      #efa72b
    );

  color: #06182a;

  font-size: 12px;
  font-weight: 950;
  letter-spacing: .5px;

  box-shadow:
    0 10px 24px rgba(245, 185, 66, .20),
    inset 0 1px 0 rgba(255,255,255,.42);
}


/* =========================================================
   YOUR FRANCHISE HERO CARD
========================================================= */

.glf-gm .glf-team-header {
  position: relative;
  overflow: hidden;

  display: grid;
  grid-template-columns:
    100px
    minmax(0, 1fr)
    145px;

  gap: 22px;
  align-items: center;

  padding: 25px 28px;
  margin-bottom: 18px;

  border: 1px solid rgba(54, 155, 225, .30);
  border-radius: 18px;

  background:
    radial-gradient(
      circle at 82% 20%,
      rgba(19, 132, 214, .20),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(16, 55, 88, .96),
      rgba(6, 29, 51, .98)
    );

  box-shadow:
    0 18px 40px rgba(0,0,0,.23),
    inset 0 1px 0 rgba(255,255,255,.045);
}


/* Decorative speed / comet trails */
.glf-gm .glf-team-header::before {
  content: "";
  position: absolute;

  width: 520px;
  height: 160px;

  right: -170px;
  top: -60px;

  background:
    repeating-linear-gradient(
      -20deg,
      transparent 0,
      transparent 22px,
      rgba(63, 174, 244, .055) 23px,
      rgba(63, 174, 244, .055) 26px
    );

  transform: rotate(-8deg);

  pointer-events: none;
}


.glf-gm .glf-team-header > * {
  position: relative;
  z-index: 1;
}


/* ---------------------------------------------------------
   TEAM BADGE
--------------------------------------------------------- */

.glf-gm .glf-team-logo {
  width: 92px;
  height: 92px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 24px;

  border:
    1px solid rgba(75, 190, 255, .48);

  background:
    linear-gradient(
      145deg,
      #1ca1ef,
      #1267b3
    );

  color: white;

  font-size: 30px;
  font-weight: 950;
  letter-spacing: -1px;

  box-shadow:
    0 13px 28px rgba(0, 113, 190, .28),
    inset 0 1px 0 rgba(255,255,255,.20);
}


/* ---------------------------------------------------------
   TEAM INFO
--------------------------------------------------------- */

.glf-gm .glf-team-info {
  min-width: 0;
}


.glf-gm .glf-team-info > span {
  display: block;

  margin-bottom: 6px;

  color: #8ebce0;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 1.5px;
  text-transform: uppercase;
}


.glf-gm .glf-team-info h2 {
  margin: 0;

  color: white;

  font-size: clamp(27px, 4vw, 38px);
  line-height: 1.05;

  letter-spacing: -.8px;
}


.glf-gm .glf-team-info p {
  margin: 8px 0 0;

  color: #a9c7e2;

  font-size: 14px;
}


/* ---------------------------------------------------------
   RECORD PANEL
--------------------------------------------------------- */

.glf-gm .glf-record {
  min-width: 125px;

  padding: 16px 18px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 14px;

  background:
    rgba(3, 22, 39, .58);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03);
}


.glf-gm .glf-record span {
  display: block;

  margin-bottom: 5px;

  color: #87afd1;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1.4px;
  text-transform: uppercase;
}


.glf-gm .glf-record strong {
  display: block;

  color: white;

  font-size: 34px;
  line-height: 1;

  letter-spacing: -1px;
}


/* =========================================================
   MOBILE HERO
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-gm-header {
    flex-direction: column;
    align-items: flex-start;

    padding: 24px 20px;
  }


  .glf-gm .glf-gm-header h1 {
    font-size: 42px;
  }


  .glf-gm .glf-season-badge {
    margin-top: 5px;
  }


  .glf-gm .glf-team-header {
    grid-template-columns:
      78px
      minmax(0, 1fr);

    gap: 15px;

    padding: 20px;
  }


  .glf-gm .glf-team-logo {
    width: 72px;
    height: 72px;

    border-radius: 19px;

    font-size: 25px;
  }


  .glf-gm .glf-team-info h2 {
    font-size: 26px;
  }


  .glf-gm .glf-record {
    grid-column: 1 / -1;

    width: 100%;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 14px 16px;
  }


  .glf-gm .glf-record span {
    margin: 0;
  }


  .glf-gm .glf-record strong {
    font-size: 30px;
  }

}

/* =========================================================
   GREAT LAKES FRANCHISE GM
   VISUAL UPGRADE V3
   ========================================================= */


/* =========================================================
   MAIN GAME CONTAINER
========================================================= */

.glf-gm .glf-gm-container {
  position: relative;
  max-width: 1450px;
  margin: 0 auto;

  background:
    linear-gradient(
      180deg,
      rgba(2, 16, 29, .96),
      rgba(1, 12, 23, .99)
    );
}


/* =========================================================
   CINEMATIC STADIUM HERO
========================================================= */

.glf-gm .glf-gm-header {
  position: relative;
  overflow: hidden;

  min-height: 270px;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  padding: 38px 44px;
  margin-bottom: 20px;

  border:
    1px solid rgba(47, 177, 255, .48);

  border-radius: 20px;

  background-image:
    linear-gradient(
      90deg,
      rgba(2, 18, 34, .94) 0%,
      rgba(2, 18, 34, .80) 38%,
      rgba(2, 18, 34, .33) 68%,
      rgba(2, 18, 34, .58) 100%
    ),
    linear-gradient(
      0deg,
      rgba(1, 15, 27, .80),
      transparent 55%
    ),
    url('franchise-gm-stadium.png');

  background-size:
    cover;

  background-position:
    center 47%;

  background-repeat:
    no-repeat;

  box-shadow:
    0 22px 50px rgba(0,0,0,.38),
    0 0 35px rgba(27,153,232,.08),
    inset 0 1px 0 rgba(255,255,255,.08);
}


/* Blue broadcast glow */
.glf-gm .glf-gm-header::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at 8% 5%,
      rgba(103, 205, 255, .24),
      transparent 18%
    ),
    radial-gradient(
      circle at 87% 5%,
      rgba(103, 205, 255, .18),
      transparent 20%
    );

  mix-blend-mode: screen;
}


/* Bottom broadcast line */
.glf-gm .glf-gm-header::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 3px;

  background:
    linear-gradient(
      90deg,
      transparent,
      #149bef 20%,
      #55c6ff 50%,
      #149bef 80%,
      transparent
    );

  box-shadow:
    0 0 18px rgba(39,174,255,.7);
}


.glf-gm .glf-gm-header > * {
  position: relative;
  z-index: 2;
}


/* =========================================================
   HERO TYPOGRAPHY
========================================================= */

.glf-gm .glf-gm-kicker {
  margin-bottom: 8px;

  color: #f7bd3d;

  font-size: 13px;
  font-weight: 950;

  letter-spacing: 3px;
}


.glf-gm .glf-gm-header h1 {
  margin: 0;

  color: white;

  font-size:
    clamp(52px, 6vw, 84px);

  line-height: .92;

  letter-spacing: -3px;

  text-shadow:
    0 7px 24px rgba(0,0,0,.60),
    0 0 25px rgba(42,162,235,.18);
}


.glf-gm .glf-gm-header p {
  margin-top: 14px;

  color: #c0d7eb;

  font-size: 17px;
  font-weight: 600;

  text-shadow:
    0 2px 8px rgba(0,0,0,.8);
}


/* =========================================================
   SEASON BADGE
========================================================= */

.glf-gm .glf-season-badge {
  padding: 15px 26px;

  border:
    1px solid rgba(255,227,145,.72);

  border-radius: 999px;

  background:
    linear-gradient(
      135deg,
      #ffd660,
      #f0a725
    );

  color: #07192b;

  font-size: 13px;
  font-weight: 950;

  letter-spacing: .5px;

  box-shadow:
    0 12px 28px rgba(245,185,66,.32),
    0 0 30px rgba(245,185,66,.10),
    inset 0 1px 0 rgba(255,255,255,.5);
}


/* =========================================================
   FRANCHISE TEAM BANNER
========================================================= */

.glf-gm .glf-team-header {
  position: relative;
  overflow: hidden;

  display: grid;

  grid-template-columns:
    118px
    minmax(0,1fr)
    170px;

  align-items: center;

  gap: 26px;

  min-height: 175px;

  padding: 25px 30px;
  margin-bottom: 20px;

  border:
    1px solid rgba(31,170,248,.48);

  border-radius: 20px;

  background:
    radial-gradient(
      circle at 85% 45%,
      rgba(24,139,213,.22),
      transparent 25%
    ),
    linear-gradient(
      105deg,
      rgba(13,52,85,.98),
      rgba(5,29,52,.97)
    );

  box-shadow:
    0 16px 38px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.055);
}


/* Comet/speed-line watermark */
.glf-gm .glf-team-header::before {
  content: "";

  position: absolute;

  width: 600px;
  height: 240px;

  right: -80px;
  top: -30px;

  opacity: .32;

  background:
    repeating-linear-gradient(
      -22deg,
      transparent 0,
      transparent 24px,
      rgba(36,166,236,.18) 25px,
      rgba(36,166,236,.18) 29px
    );

  transform:
    skewX(-15deg);

  pointer-events: none;
}


/* Lower glow */
.glf-gm .glf-team-header::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 2px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(37,174,255,.95),
      transparent
    );
}


.glf-gm .glf-team-header > * {
  position: relative;
  z-index: 2;
}


/* =========================================================
   TEAM BADGE
========================================================= */

.glf-gm .glf-team-logo {
  position: relative;

  width: 108px;
  height: 108px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 28px;

  background:
    radial-gradient(
      circle at 35% 25%,
      #31b9ff,
      #0878c8 58%,
      #07528f
    );

  border:
    1px solid rgba(125,216,255,.72);

  color: white;

  font-size: 38px;
  font-weight: 950;

  letter-spacing: -2px;

  box-shadow:
    0 16px 34px rgba(0,126,209,.32),
    0 0 22px rgba(47,174,255,.13),
    inset 0 1px 0 rgba(255,255,255,.3);
}


/* Tiny comet streak */
.glf-gm .glf-team-logo::after {
  content: "";

  position: absolute;

  width: 54px;
  height: 3px;

  left: 48px;
  bottom: 21px;

  border-radius: 10px;

  background:
    linear-gradient(
      90deg,
      #f7bd3d,
      rgba(247,189,61,0)
    );

  transform:
    rotate(-24deg);

  box-shadow:
    0 0 9px rgba(247,189,61,.5);
}


/* =========================================================
   TEAM INFO
========================================================= */

.glf-gm .glf-team-info > span {
  color: #91bad8;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 2.4px;
}


.glf-gm .glf-team-info h2 {
  margin-top: 6px;

  color: white;

  font-size:
    clamp(34px, 4vw, 52px);

  line-height: 1;

  letter-spacing: -1.8px;

  text-shadow:
    0 5px 18px rgba(0,0,0,.35);
}


.glf-gm .glf-team-info p {
  color: #add0e9;

  font-size: 16px;
}


/* =========================================================
   RECORD BLOCK
========================================================= */

.glf-gm .glf-record {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  min-height: 108px;

  padding: 18px;

  border-radius: 16px;

  background:
    rgba(2,18,34,.68);

  border:
    1px solid rgba(83,176,233,.17);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 12px 28px rgba(0,0,0,.22);
}


.glf-gm .glf-record span {
  color: #9fc4df;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-gm .glf-record strong {
  margin-top: 8px;

  font-size: 42px;

  text-shadow:
    0 5px 14px rgba(0,0,0,.35);
}


/* =========================================================
   DASHBOARD STAT CARDS
========================================================= */

.glf-gm .glf-stat-card {
  position: relative;
  overflow: hidden;

  min-height: 142px;

  border:
    1px solid rgba(29,147,218,.35);

  border-radius: 17px;

  background:
    radial-gradient(
      circle at 90% 15%,
      rgba(39,158,227,.12),
      transparent 28%
    ),
    linear-gradient(
      145deg,
      rgba(14,50,81,.96),
      rgba(5,28,49,.97)
    );

  box-shadow:
    0 13px 28px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.04);

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}


.glf-gm .glf-stat-card::after {
  content: "";

  position: absolute;

  width: 70px;
  height: 70px;

  right: -22px;
  top: -22px;

  border-radius: 50%;

  background:
    rgba(40,164,235,.07);

  box-shadow:
    0 0 40px rgba(40,164,235,.09);
}


.glf-gm .glf-stat-card:hover {
  transform: translateY(-3px);

  border-color:
    rgba(41,171,247,.58);

  box-shadow:
    0 18px 35px rgba(0,0,0,.26);
}


.glf-gm .glf-stat-card > span:first-child {
  color: #9bbbd6;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 1.3px;
}


.glf-gm .glf-stat-card strong {
  display: block;

  margin-top: 12px;

  color: white;

  font-size: 34px;
}


/* =========================================================
   NEXT GAME + STATUS PANELS
   These selectors safely catch the existing dashboard
   panels if their class names contain these phrases.
========================================================= */

.glf-gm [class*="next-game"],
.glf-gm [class*="gm-status"] {
  border:
    1px solid rgba(31,151,225,.32);

  border-radius: 18px;

  background:
    radial-gradient(
      circle at 50% 100%,
      rgba(25,121,184,.12),
      transparent 45%
    ),
    linear-gradient(
      145deg,
      rgba(11,43,71,.96),
      rgba(4,25,44,.97)
    );

  box-shadow:
    0 15px 32px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.04);
}


/* =========================================================
   MANAGEMENT MENU TITLE
========================================================= */

.glf-gm .glf-menu {
  position: relative;

  padding-top: 52px;
}


.glf-gm .glf-menu::before {
  content: "FRANCHISE MANAGEMENT";

  position: absolute;

  top: 14px;
  left: 4px;

  color: #b8d4e9;

  font-size: 15px;
  font-weight: 950;

  letter-spacing: 2px;
}


/* Blue divider next to heading */
.glf-gm .glf-menu::after {
  content: "";

  position: absolute;

  top: 24px;
  left: 225px;
  right: 4px;

  height: 1px;

  background:
    linear-gradient(
      90deg,
      rgba(37,168,239,.55),
      transparent
    );
}


/* =========================================================
   MANAGEMENT CARDS
========================================================= */

.glf-gm .glf-menu > button {
  min-height: 125px;

  border:
    1px solid rgba(33,150,222,.29);

  border-radius: 16px;

  background:
    linear-gradient(
      145deg,
      rgba(14,50,82,.95),
      rgba(5,28,49,.96)
    );

  box-shadow:
    0 11px 24px rgba(0,0,0,.17),
    inset 0 1px 0 rgba(255,255,255,.035);
}


.glf-gm .glf-menu > button:hover {
  border-color:
    rgba(42,176,253,.68);

  box-shadow:
    0 17px 34px rgba(0,0,0,.25),
    0 0 18px rgba(35,160,235,.08);
}


/* =========================================================
   DANGEROUS RESET ACTION
========================================================= */

.glf-gm .glf-reset-franchise-button {
  border-color:
    rgba(230,76,91,.42) !important;

  background:
    linear-gradient(
      145deg,
      rgba(79,23,38,.92),
      rgba(45,17,30,.96)
    ) !important;
}


.glf-gm .glf-reset-franchise-button strong {
  color: #ff9ca8;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-gm-header {
    min-height: 290px;

    padding: 26px 20px;

    align-items: flex-start;

    background-position:
      62% center;
  }


  .glf-gm .glf-gm-header h1 {
    font-size: 46px;
    letter-spacing: -2px;
  }


  .glf-gm .glf-gm-header p {
    max-width: 280px;

    font-size: 14px;
  }


  .glf-gm .glf-season-badge {
    margin-top: 15px;

    padding: 12px 20px;
  }


  .glf-gm .glf-team-header {
    grid-template-columns:
      82px
      minmax(0, 1fr);

    min-height: 0;

    padding: 18px;
  }


  .glf-gm .glf-team-logo {
    width: 76px;
    height: 76px;

    border-radius: 20px;

    font-size: 27px;
  }


  .glf-gm .glf-team-info h2 {
    font-size: 27px;
  }


  .glf-gm .glf-team-info p {
    font-size: 13px;
  }


  .glf-gm .glf-record {
    grid-column: 1 / -1;

    min-height: 0;

    flex-direction: row;
    justify-content: space-between;

    padding: 14px 16px;
  }


  .glf-gm .glf-record strong {
    margin-top: 0;

    font-size: 30px;
  }


  .glf-gm .glf-menu {
    padding-top: 48px;
  }


  .glf-gm .glf-menu::before {
    top: 11px;

    font-size: 12px;

    letter-spacing: 1.5px;
  }


  .glf-gm .glf-menu::after {
    top: 20px;

    left: 180px;
  }


  .glf-gm .glf-stat-card {
    min-height: 120px;
  }

}

/* =========================================================
   FRANCHISE VALIDATION MODAL
========================================================= */

.glf-gm .glf-validation-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 20px;

  background:
    rgba(1, 10, 19, .84);

  backdrop-filter:
    blur(8px);

  overflow-y: auto;
}


.glf-gm .glf-validation-modal {
  width: min(
    520px,
    100%
  );

  padding: 28px;

  border:
    1px solid rgba(238, 88, 95, .42);

  border-radius: 20px;

  background:
    linear-gradient(
      145deg,
      #113557,
      #071c31
    );

  color: white;

  box-shadow:
    0 28px 70px rgba(0,0,0,.50),
    0 0 40px rgba(220,61,70,.08);
}


.glf-gm .glf-validation-icon {
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 16px;

  border-radius: 50%;

  background:
    #d83c45;

  color: white;

  font-size: 28px;
  font-weight: 950;
}


.glf-gm .glf-validation-kicker {
  color: #f5b942;

  font-size: 10px;
  font-weight: 950;

  letter-spacing: 2px;
}


.glf-gm .glf-validation-modal h2 {
  margin:
    6px 0 10px;

  font-size: 32px;
  line-height: 1;
}


.glf-gm .glf-validation-text {
  margin: 0;

  color: #bfd2e4;

  font-size: 15px;
  line-height: 1.5;
}


.glf-gm .glf-validation-stats {
  display: grid;

  grid-template-columns:
    repeat(
      auto-fit,
      minmax(120px,1fr)
    );

  gap: 10px;

  margin-top: 22px;
}


.glf-gm .glf-validation-stat {
  padding: 15px;

  border:
    1px solid rgba(255,255,255,.09);

  border-radius: 12px;

  background:
    rgba(4,24,42,.68);
}


.glf-gm .glf-validation-stat span {
  display: block;

  margin-bottom: 5px;

  color: #8faec9;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1.2px;
}


.glf-gm .glf-validation-stat strong {
  font-size: 23px;
}


.glf-gm .glf-validation-danger strong {
  color: #ff848a;
}


.glf-gm .glf-validation-actions {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 10px;

  margin-top: 22px;
}


.glf-gm .glf-validation-actions button {
  min-height: 48px;

  border-radius: 10px;

  font-weight: 900;
}


.glf-gm .glf-validation-fa {
  border: 0;

  background:
    linear-gradient(
      135deg,
      #f7c54f,
      #efa82d
    );

  color: #07182a;
}


.glf-gm .glf-validation-close {
  border:
    1px solid rgba(83,169,226,.35);

  background:
    #12395f;

  color: white;
}


@media (max-width: 749px) {

  .glf-gm .glf-validation-overlay {
    align-items: flex-start;

    padding:
      max(18px, env(safe-area-inset-top))
      14px
      max(18px, env(safe-area-inset-bottom));

    overflow-y: auto;
  }


  .glf-gm .glf-validation-modal {
    margin: auto 0;

    padding: 22px 18px;

    max-height:
      calc(
        100dvh -
        36px
      );

    overflow-y: auto;
  }


  .glf-gm .glf-validation-modal h2 {
    font-size: 27px;
  }


  .glf-gm .glf-validation-actions {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   TRADE CENTER - TRADE IMPACT PREVIEW
========================================================= */

.glf-gm .glf-tradev2-impact {
  margin:
    16px 0;

  padding:
    16px;

  border:
    1px solid rgba(42,160,228,.28);

  border-radius:
    14px;

  background:
    rgba(5,28,49,.72);
}


.glf-gm .glf-tradev2-impact-title {
  margin-bottom:
    12px;

  color:
    #f5b942;

  font-size:
    10px;

  font-weight:
    950;

  letter-spacing:
    1.5px;
}


.glf-gm .glf-tradev2-impact-grid {
  display:
    grid;

  grid-template-columns:
    1fr auto 1fr;

  gap:
    12px;

  align-items:
    center;
}


.glf-gm .glf-tradev2-impact-card {
  padding:
    12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius:
    10px;

  background:
    rgba(3,20,36,.75);
}


.glf-gm .glf-tradev2-impact-card span {
  display:
    block;

  margin-bottom:
    5px;

  color:
    #8eb1cd;

  font-size:
    8px;

  font-weight:
    900;

  letter-spacing:
    1px;
}


.glf-gm .glf-tradev2-impact-card strong {
  display:
    block;

  color:
    white;

  font-size:
    17px;
}


.glf-gm .glf-tradev2-impact-card small {
  display:
    block;

  margin-top:
    4px;

  color:
    #a9c5dc;

  font-size:
    11px;
}


.glf-gm .glf-tradev2-impact-arrow {
  color:
    #f5b942;

  font-size:
    22px;

  font-weight:
    900;
}


.glf-gm .glf-tradev2-impact-message {
  margin-top:
    12px;

  padding-top:
    12px;

  border-top:
    1px solid rgba(255,255,255,.08);

  color:
    #9fe0b4;

  font-size:
    12px;

  font-weight:
    800;
  line-height:
    1.4;
}


/* Warning - roster issue */

.glf-gm
.glf-tradev2-impact.warning {
  border-color:
    rgba(245,185,66,.48);

  background:
    rgba(65,48,18,.32);
}


.glf-gm
.glf-tradev2-impact.warning
.glf-tradev2-impact-message {
  color:
    #ffd36b;
}


/* Danger - salary cap issue */

.glf-gm
.glf-tradev2-impact.danger {
  border-color:
    rgba(224,73,83,.52);

  background:
    rgba(70,21,31,.38);
}


.glf-gm
.glf-tradev2-impact.danger
.glf-tradev2-impact-message {
  color:
    #ff9ca4;
}


/* Mobile */

@media (max-width: 749px) {

  .glf-gm
  .glf-tradev2-impact-grid {
    grid-template-columns:
      1fr;
  }


  .glf-gm
  .glf-tradev2-impact-arrow {
    text-align:
      center;

    transform:
      rotate(90deg);

    line-height:
      1;
  }


  .glf-gm
  .glf-tradev2-impact-card {
    padding:
      14px;
  }

}

/* =========================================================
   TRADE CENTER - TRADE IMPACT PREVIEW
========================================================= */

.glf-gm .glf-tradev2-impact {
  margin:
    16px 0;

  padding:
    16px;

  border:
    1px solid rgba(42,160,228,.28);

  border-radius:
    14px;

  background:
    rgba(5,28,49,.72);
}


.glf-gm .glf-tradev2-impact-title {
  margin-bottom:
    12px;

  color:
    #f5b942;

  font-size:
    10px;

  font-weight:
    950;

  letter-spacing:
    1.5px;
}


.glf-gm .glf-tradev2-impact-grid {
  display:
    grid;

  grid-template-columns:
    1fr auto 1fr;

  gap:
    12px;

  align-items:
    center;
}


.glf-gm .glf-tradev2-impact-card {
  padding:
    12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius:
    10px;

  background:
    rgba(3,20,36,.75);
}


.glf-gm .glf-tradev2-impact-card span {
  display:
    block;

  margin-bottom:
    5px;

  color:
    #8eb1cd;

  font-size:
    8px;

  font-weight:
    900;

  letter-spacing:
    1px;
}


.glf-gm .glf-tradev2-impact-card strong {
  display:
    block;

  color:
    white;

  font-size:
    17px;
}


.glf-gm .glf-tradev2-impact-card small {
  display:
    block;

  margin-top:
    4px;

  color:
    #a9c5dc;

  font-size:
    11px;
}


.glf-gm .glf-tradev2-impact-arrow {
  color:
    #f5b942;

  font-size:
    22px;

  font-weight:
    900;
}


.glf-gm .glf-tradev2-impact-message {
  margin-top:
    12px;

  padding-top:
    12px;

  border-top:
    1px solid rgba(255,255,255,.08);

  color:
    #9fe0b4;

  font-size:
    12px;

  font-weight:
    800;
  line-height:
    1.4;
}


/* Warning - roster issue */

.glf-gm
.glf-tradev2-impact.warning {
  border-color:
    rgba(245,185,66,.48);

  background:
    rgba(65,48,18,.32);
}


.glf-gm
.glf-tradev2-impact.warning
.glf-tradev2-impact-message {
  color:
    #ffd36b;
}


/* Danger - salary cap issue */

.glf-gm
.glf-tradev2-impact.danger {
  border-color:
    rgba(224,73,83,.52);

  background:
    rgba(70,21,31,.38);
}


.glf-gm
.glf-tradev2-impact.danger
.glf-tradev2-impact-message {
  color:
    #ff9ca4;
}


/* Mobile */

@media (max-width: 749px) {

  .glf-gm
  .glf-tradev2-impact-grid {
    grid-template-columns:
      1fr;
  }


  .glf-gm
  .glf-tradev2-impact-arrow {
    text-align:
      center;

    transform:
      rotate(90deg);

    line-height:
      1;
  }


  .glf-gm
  .glf-tradev2-impact-card {
    padding:
      14px;
  }

}

/* =========================================================
   LIVE DRAFT - DRAFT PLAYER BUTTON FIX
   Desktop + Mobile
========================================================= */

/* Make sure prospect rows can actually contain the action */
.glf-gm .glf-live-prospect-row {
  width: 100%;
  min-width: 0;
}


/* Draft button */
.glf-gm .glf-live-draft-pick-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-width: 100px;
  min-height: 42px;

  padding: 10px 16px;

  border: 0;
  border-radius: 8px;

  background:
    linear-gradient(
      135deg,
      #f7c54f,
      #efa82d
    );

  color: #07182a;

  font-size: 12px;
  font-weight: 950;
  letter-spacing: .4px;

  cursor: pointer;

  white-space: nowrap;

  box-shadow:
    0 8px 18px rgba(245,185,66,.18);
}


/* Desktop */
@media (min-width: 750px) {

  .glf-gm .glf-live-prospect-row {
    display: grid !important;

    grid-template-columns:
      45px
      minmax(220px, 1fr)
      75px
      90px
      120px;

    gap: 12px;

    align-items: center;
  }

}


/* Mobile */
@media (max-width: 749px) {

  .glf-gm .glf-live-prospect-row {
    display: grid !important;

    grid-template-columns:
      32px
      minmax(0, 1fr)
      52px
      58px;

    gap: 8px 10px;

    align-items: center;

    padding:
      15px 12px !important;
  }


  .glf-gm .glf-live-prospect-name {
    min-width: 0;

    word-break: normal !important;
    overflow-wrap: normal !important;
  }


  /*
    During YOUR pick, move the DRAFT button
    onto its own full-width row.
  */
  .glf-gm .glf-live-draft-pick-button {
    grid-column: 1 / -1;

    width: 100%;
    min-width: 0;
    min-height: 46px;

    margin-top: 5px;

    font-size: 13px;
  }

}

/* =========================================================
   LIVE DRAFT - RESPONSIVE PROSPECT ROWS
   Safe CSS-only fix
========================================================= */

/* Existing draft button - desktop + mobile */
.glf-gm .glf-live-draft-pick-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-height: 42px;
  padding: 10px 16px;

  border: 0;
  border-radius: 9px;

  background: linear-gradient(
    135deg,
    #f7c54f,
    #efa82d
  );

  color: #07182a;

  font-size: 12px;
  font-weight: 900;
  letter-spacing: .4px;

  white-space: nowrap;
  cursor: pointer;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  /*
    Prospect row becomes a four-column row:
    Rank | Player | Position | Round
    The Draft button goes underneath.
  */
  .glf-gm .glf-live-prospect-row {
    display: grid !important;

    grid-template-columns:
      28px
      minmax(0, 1fr)
      48px
      58px !important;

    gap: 10px;

    width: 100%;
    min-width: 0;

    align-items: center;

    padding: 16px 12px !important;

    box-sizing: border-box;
  }


  /* Player name/details must be allowed to shrink */
  .glf-gm .glf-live-prospect-name {
    min-width: 0;
    overflow: hidden;
  }


  .glf-gm .glf-live-prospect-name small {
    display: block;

    white-space: normal;
    overflow-wrap: anywhere;

    line-height: 1.35;
  }


  /*
    When it is YOUR TURN, the existing DRAFT button
    gets a full row underneath the player.
  */
  .glf-gm .glf-live-draft-pick-button {
    grid-column: 1 / -1 !important;

    width: 100% !important;
    min-width: 0;
    min-height: 48px;

    margin-top: 4px;

    font-size: 13px;
  }

}

/* =========================================================
   LIVE DRAFT - MOBILE ACTION COLUMN FIX
========================================================= */

@media (max-width: 600px) {

  /*
    The final DIV in each prospect row contains either
    the DRAFT button or POT information.

    Force that wrapper onto its own full-width row.
  */
  .glf-gm .glf-live-prospect-row > div:last-child {
    grid-column: 1 / -1 !important;

    width: 100% !important;
    min-width: 0 !important;

    justify-self: stretch !important;

    box-sizing: border-box;
  }


  /*
    Make the existing Draft button fill that row.
  */
  .glf-gm .glf-live-prospect-row
  .glf-live-draft-pick-button {
    display: flex !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 48px;

    align-items: center;
    justify-content: center;

    margin: 8px 0 0 !important;

    padding: 12px 16px;

    border: 0;
    border-radius: 10px;

    background:
      linear-gradient(
        135deg,
        #f7c54f,
        #efa82d
      );

    color: #07182a;

    font-size: 14px;
    font-weight: 950;
    letter-spacing: .5px;

    box-sizing: border-box;
  }

}

/* =========================================================
   LIVE DRAFT - FORCE DRAFT ACTION VISIBLE
========================================================= */

/* The wrapper containing the DRAFT button */
.glf-gm
.glf-live-prospects
.glf-live-prospect-row
> div:last-child {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: auto !important;
  min-width: 110px !important;
  height: auto !important;
  min-height: 44px !important;

  align-items: center !important;
  justify-content: center !important;

  overflow: visible !important;
}


/* The actual DRAFT button */
.glf-gm
.glf-live-prospects
.glf-live-prospect-row
.glf-live-draft-pick-button {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  position: static !important;

  width: auto !important;
  min-width: 100px !important;
  height: 42px !important;
  min-height: 42px !important;

  margin: 0 !important;
  padding: 10px 16px !important;

  align-items: center !important;
  justify-content: center !important;

  border: 0 !important;
  border-radius: 8px !important;

  background: #f5b942 !important;
  color: #07182a !important;

  font-size: 12px !important;
  font-weight: 900 !important;

  overflow: visible !important;
}


@media (min-width: 750px) {

  .glf-gm .glf-live-prospect-row,
  .glf-gm .glf-live-prospect-header {
    grid-template-columns:
      40px
      minmax(0, 1fr)
      44px
      56px
      68px
      96px !important;

    column-gap: 8px !important;
  }

}


/* Mobile: place the action underneath the prospect */
@media (max-width: 600px) {

  .glf-gm
  .glf-live-prospect-row {
    grid-template-columns:
      28px
      minmax(0, 1fr)
      48px
      58px !important;

    height: auto !important;
    min-height: 0 !important;

    overflow: visible !important;
  }


  .glf-gm
  .glf-live-prospects
  .glf-live-prospect-row
  > div:last-child {
    grid-column: 1 / -1 !important;

    width: 100% !important;
    min-width: 0 !important;

    margin-top: 6px !important;
  }


  .glf-gm
  .glf-live-draft-pick-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
  }

}

/* =========================================================
   GAME BOX SCORE - MOBILE SCROLL / SIZE FIX
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-boxscore-details {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    max-height: calc(100dvh - 140px) !important;

    margin: 0 !important;
    padding: 20px 16px 40px !important;

    box-sizing: border-box !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;

    position: relative !important;
    top: auto !important;
    bottom: auto !important;

    transform: none !important;
  }


  /* Box-score heading */
  .glf-gm .glf-boxscore-title {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }


  /* Team-stat cards */
  .glf-gm .glf-boxscore-team-stats {
    display: grid !important;
    grid-template-columns: 1fr !important;

    gap: 12px !important;

    width: 100% !important;
  }


  .glf-gm .glf-boxscore-stat {
    width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box !important;
  }


  /* Keep passing/rushing/receiving text inside phone */
  .glf-gm .glf-boxscore-details * {
    max-width: 100%;
    box-sizing: border-box;
  }

}

/* =========================================================
   GAME RECAP - REMOVE NESTED MOBILE SCROLL
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-boxscore-details {
    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow: visible !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;

    position: static !important;
    inset: auto !important;

    transform: none !important;

    padding: 20px 16px 60px !important;
    margin: 0 !important;

    box-sizing: border-box !important;
  }

  .glf-gm .glf-boxscore-team-stats {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;

    height: auto !important;
    max-height: none !important;

    overflow: visible !important;
  }

  .glf-gm .glf-boxscore-stat {
    height: auto !important;
    min-height: 120px !important;

    overflow: visible !important;
  }

}

/* =========================================================
   GAME RESULT MODAL - MOBILE FULL SCROLL FIX
========================================================= */

@media (max-width: 749px) {

  /*
    Immediate container holding the game-result card.
    Stop vertically centering a card taller than the screen.
  */
  .glf-gm *:has(> .glf-game-result-card) {
    align-items: flex-start !important;
    justify-content: flex-start !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    height: 100dvh !important;
    max-height: 100dvh !important;

    padding-top: 16px !important;
    padding-bottom: 100px !important;

    box-sizing: border-box !important;

    -webkit-overflow-scrolling: touch;
  }


  /* Main final-score / recap card */
  .glf-gm .glf-game-result-card {
    position: relative !important;

    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;

    transform: none !important;

    width: calc(100% - 24px) !important;
    max-width: 560px !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 auto 80px !important;

    overflow: visible !important;

    box-sizing: border-box !important;
  }


  /* Box score itself should remain part of normal card flow */
  .glf-gm .glf-boxscore-details {
    position: static !important;

    width: 100% !important;

    height: auto !important;
    max-height: none !important;

    overflow: visible !important;

    transform: none !important;

    box-sizing: border-box !important;
  }


  /* Give the very bottom plenty of room above Android navigation */
  .glf-gm .glf-game-result-card > *:last-child {
    margin-bottom: 40px !important;
  }

}

/* =========================================================
   ROSTER TABLE - MOBILE RESPONSIVE FIX
========================================================= */

@media (max-width: 749px) {

  /* Allow the roster table area to scroll sideways */
  .glf-gm .glf-roster-table-wrap {
    width: 100% !important;
    max-width: 100% !important;

    overflow-x: auto !important;
    overflow-y: visible !important;

    -webkit-overflow-scrolling: touch;

    border-radius: 14px;
  }

  /* Keep all roster columns readable */
  .glf-gm .glf-roster-table {
    width: 100% !important;
    min-width: 720px !important;

    table-layout: auto !important;
  }

  .glf-gm .glf-roster-table th,
  .glf-gm .glf-roster-table td {
    white-space: nowrap !important;
    padding: 14px 12px !important;
  }

  /* Give player names enough room */
  .glf-gm .glf-roster-table th:nth-child(2),
  .glf-gm .glf-roster-table td:nth-child(2) {
    min-width: 170px !important;
  }

}

/* =========================================================
   PLAYER PROFILE - MOBILE FULL SCROLL FIX
========================================================= */

@media (max-width: 749px) {

  /* Parent containing the player profile */
  .glf-gm *:has(> .glf-player-profile-card) {
    align-items: flex-start !important;
    justify-content: flex-start !important;

    height: 100dvh !important;
    max-height: 100dvh !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    padding-top: 20px !important;
    padding-bottom: 100px !important;

    box-sizing: border-box !important;

    -webkit-overflow-scrolling: touch;
  }


  /* Player profile card itself */
  .glf-gm .glf-player-profile-card {
    position: relative !important;

    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;

    transform: none !important;

    width: calc(100% - 24px) !important;
    max-width: 560px !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 auto 80px !important;

    overflow: visible !important;

    box-sizing: border-box !important;
  }


  /* Keep ratings and stat sections inside phone width */
  .glf-gm .glf-player-profile-card * {
    max-width: 100%;
    box-sizing: border-box;
  }

}

/* =========================================================
   ADVANCED STANDINGS - MOBILE COMPACT TABLE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-advanced-table-wrap {
    width: 100% !important;
    max-width: 100% !important;

    overflow-x: hidden !important;
  }

  .glf-gm .glf-advanced-table {
    width: 100% !important;
    min-width: 0 !important;

    table-layout: fixed !important;
  }

  /* Hide Conference, Division and Point Differential */
  .glf-gm .glf-advanced-table th:nth-child(3),
  .glf-gm .glf-advanced-table td:nth-child(3),

  .glf-gm .glf-advanced-table th:nth-child(4),
  .glf-gm .glf-advanced-table td:nth-child(4),

  .glf-gm .glf-advanced-table th:nth-child(7),
  .glf-gm .glf-advanced-table td:nth-child(7) {
    display: none !important;
  }

  /* Rank */
  .glf-gm .glf-advanced-table th:nth-child(1),
  .glf-gm .glf-advanced-table td:nth-child(1) {
    width: 44px !important;
  }

  /* Team */
  .glf-gm .glf-advanced-table th:nth-child(2),
  .glf-gm .glf-advanced-table td:nth-child(2) {
    width: auto !important;
    white-space: normal !important;
  }

  /* Wins / Losses */
  .glf-gm .glf-advanced-table th:nth-child(5),
  .glf-gm .glf-advanced-table td:nth-child(5),
  .glf-gm .glf-advanced-table th:nth-child(6),
  .glf-gm .glf-advanced-table td:nth-child(6) {
    width: 42px !important;
    text-align: center !important;
  }

  .glf-gm .glf-advanced-table th,
  .glf-gm .glf-advanced-table td {
    padding: 14px 8px !important;
  }

}

/* =========================================================
   CONFERENCE STANDINGS - MOBILE COLUMN FIX
========================================================= */

@media (max-width: 749px) {

  /* Conference columns:
     1 RK
     2 TEAM
     3 DIVISION
     4 W
     5 L
     6 CONF
     7 DIFF
  */

  /* Hide Division, Conference Record and Point Differential */
  .glf-gm .glf-conference-table th:nth-child(3),
  .glf-gm .glf-conference-table td:nth-child(3),

  .glf-gm .glf-conference-table th:nth-child(6),
  .glf-gm .glf-conference-table td:nth-child(6),

  .glf-gm .glf-conference-table th:nth-child(7),
  .glf-gm .glf-conference-table td:nth-child(7) {
    display: none !important;
  }

  /* Re-show W — previous general mobile rule hides column 4 */
  .glf-gm .glf-conference-table th:nth-child(4),
  .glf-gm .glf-conference-table td:nth-child(4) {
    display: table-cell !important;
    width: 42px !important;
    text-align: center !important;
  }

  /* L */
  .glf-gm .glf-conference-table th:nth-child(5),
  .glf-gm .glf-conference-table td:nth-child(5) {
    display: table-cell !important;
    width: 42px !important;
    text-align: center !important;
  }

}

/* =========================================================
   LEAGUE LEADERS - MOBILE STAT COLUMNS
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-leader-table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  /* Start by hiding every stat column */
  .glf-gm .glf-leader-table th:nth-child(n+3),
  .glf-gm .glf-leader-table td:nth-child(n+3) {
    display: none !important;
  }

  /* Rank */
  .glf-gm .glf-leader-table th:nth-child(1),
  .glf-gm .glf-leader-table td:nth-child(1) {
    width: 42px !important;
  }

  /* Player */
  .glf-gm .glf-leader-table th:nth-child(2),
  .glf-gm .glf-leader-table td:nth-child(2) {
    width: auto !important;
    white-space: normal !important;
  }


  /* ---------- PASSING ----------
     Show YDS / TD / INT
  */

  .glf-gm .glf-leader-table-passing th:nth-child(6),
  .glf-gm .glf-leader-table-passing td:nth-child(6),
  .glf-gm .glf-leader-table-passing th:nth-child(7),
  .glf-gm .glf-leader-table-passing td:nth-child(7),
  .glf-gm .glf-leader-table-passing th:nth-child(8),
  .glf-gm .glf-leader-table-passing td:nth-child(8) {
    display: table-cell !important;
    width: 48px !important;
    text-align: center !important;
  }


  /* ---------- RUSHING ----------
     Show YDS / TD
  */

  .glf-gm .glf-leader-table-rushing th:nth-child(5),
  .glf-gm .glf-leader-table-rushing td:nth-child(5),
  .glf-gm .glf-leader-table-rushing th:nth-child(7),
  .glf-gm .glf-leader-table-rushing td:nth-child(7) {
    display: table-cell !important;
    width: 55px !important;
    text-align: center !important;
  }


  /* ---------- RECEIVING ----------
     Show REC / YDS / TD
  */

  .glf-gm .glf-leader-table-receiving th:nth-child(5),
  .glf-gm .glf-leader-table-receiving td:nth-child(5),
  .glf-gm .glf-leader-table-receiving th:nth-child(6),
  .glf-gm .glf-leader-table-receiving td:nth-child(6),
  .glf-gm .glf-leader-table-receiving th:nth-child(8),
  .glf-gm .glf-leader-table-receiving td:nth-child(8) {
    display: table-cell !important;
    width: 48px !important;
    text-align: center !important;
  }


  /* ---------- TOUCHDOWNS ----------
     Show PASS / RUSH / REC / TOTAL
  */

  .glf-gm .glf-leader-table-touchdowns th:nth-child(4),
  .glf-gm .glf-leader-table-touchdowns td:nth-child(4),
  .glf-gm .glf-leader-table-touchdowns th:nth-child(5),
  .glf-gm .glf-leader-table-touchdowns td:nth-child(5),
  .glf-gm .glf-leader-table-touchdowns th:nth-child(6),
  .glf-gm .glf-leader-table-touchdowns td:nth-child(6),
  .glf-gm .glf-leader-table-touchdowns th:nth-child(7),
  .glf-gm .glf-leader-table-touchdowns td:nth-child(7) {
    display: table-cell !important;
    width: 42px !important;
    text-align: center !important;
  }

  .glf-gm .glf-leader-table th,
  .glf-gm .glf-leader-table td {
    padding: 14px 6px !important;
  }

}

/* =========================================================
   MOBILE DASHBOARD - SHOW ALL MANAGEMENT BUTTONS
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-menu {
    display: grid !important;

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow: visible !important;

    gap: 12px !important;
  }


  .glf-gm .glf-menu > button {
    display: flex !important;

    visibility: visible !important;
    opacity: 1 !important;

    position: relative !important;

    width: 100% !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 120px !important;
    max-height: none !important;

    overflow: visible !important;
  }

}

/* =========================================================
   MOBILE DASHBOARD - FORCE ALL FEATURE BUTTONS VISIBLE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-menu {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;

    height: auto !important;
    max-height: none !important;

    overflow: visible !important;
  }


  .glf-gm .glf-menu > button.glf-development-menu-button,
  .glf-gm .glf-menu > button.glf-scouting-menu-button,
  .glf-gm .glf-menu > button.glf-draft-center-menu-button,
  .glf-gm .glf-menu > button.glf-offseason-menu-button,
  .glf-gm .glf-menu > button.glf-backup-menu-button,
  .glf-gm .glf-menu > button[class*="restore"],
  .glf-gm .glf-menu > button[class*="reset"] {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    position: relative !important;

    grid-column: auto !important;
    grid-row: auto !important;

    width: 100% !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 120px !important;
    max-height: none !important;

    margin: 0 !important;

    overflow: visible !important;

    pointer-events: auto !important;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - MOBILE FULL SCREEN SCROLL FIX
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-development-overlay {
    position: fixed !important;
    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    padding:
      20px
      12px
      calc(100px + env(safe-area-inset-bottom))
      12px !important;

    box-sizing: border-box !important;

    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;

    align-items: initial !important;
    justify-content: initial !important;
  }


  .glf-gm .glf-development-shell {
    position: relative !important;

    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;

    transform: none !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 auto 60px !important;

    overflow: visible !important;

    box-sizing: border-box !important;
  }


  .glf-gm .glf-development-header,
  .glf-gm .glf-development-summary {
    width: 100% !important;
    max-width: 100% !important;

    box-sizing: border-box !important;
  }


  /* Make sure the player list itself never becomes
     a second nested scrolling area */
  .glf-gm .glf-development-shell table,
  .glf-gm .glf-development-shell tbody {
    max-height: none !important;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - MOBILE ALL COLUMNS
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-development-shell table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  /* Make sure ALL six columns are visible */
  .glf-gm .glf-development-shell th:nth-child(5),
  .glf-gm .glf-development-shell td:nth-child(5),
  .glf-gm .glf-development-shell th:nth-child(6),
  .glf-gm .glf-development-shell td:nth-child(6) {
    display: table-cell !important;
    visibility: visible !important;
  }

  /* PLAYER */
  .glf-gm .glf-development-shell th:nth-child(1),
  .glf-gm .glf-development-shell td:nth-child(1) {
    width: 34% !important;
  }

  /* OVR */
  .glf-gm .glf-development-shell th:nth-child(2),
  .glf-gm .glf-development-shell td:nth-child(2) {
    width: 10% !important;
    text-align: center !important;
  }

  /* POT */
  .glf-gm .glf-development-shell th:nth-child(3),
  .glf-gm .glf-development-shell td:nth-child(3) {
    width: 9% !important;
    text-align: center !important;
  }

  /* CHANGE */
  .glf-gm .glf-development-shell th:nth-child(4),
  .glf-gm .glf-development-shell td:nth-child(4) {
    width: 12% !important;
    text-align: center !important;
  }

  /* AGE */
  .glf-gm .glf-development-shell th:nth-child(5),
  .glf-gm .glf-development-shell td:nth-child(5) {
    width: 9% !important;
    text-align: center !important;
  }

  /* DEVELOPMENT */
  .glf-gm .glf-development-shell th:nth-child(6),
  .glf-gm .glf-development-shell td:nth-child(6) {
    width: 26% !important;
  }

  .glf-gm .glf-development-shell th {
    padding: 12px 4px !important;
    font-size: 9px !important;
    letter-spacing: .6px !important;
  }

  .glf-gm .glf-development-shell td {
    padding: 14px 4px !important;
    font-size: 13px !important;
  }

  /* Player names can wrap instead of pushing columns offscreen */
  .glf-gm .glf-development-shell td:first-child {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  /* Keep XP text/progress bar contained */
  .glf-gm .glf-development-shell td:nth-child(6) {
    overflow: hidden !important;
  }

  .glf-gm .glf-development-shell td:nth-child(6) * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - SHOW AGE + XP ON MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-development-hide-mobile {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    min-width: 0 !important;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - MOBILE TWO-ROW PLAYER CARDS
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-development-row {
    display: grid !important;

    grid-template-columns:
      minmax(0, 1fr)
      48px
      42px
      54px !important;

    grid-template-areas:
      "player ovr pot change"
      "age development development development";

    gap: 12px 8px !important;

    width: 100% !important;

    padding: 18px 14px !important;

    box-sizing: border-box !important;

    align-items: center !important;
  }


  /* PLAYER */
  .glf-gm .glf-development-row > div:nth-child(1) {
    grid-area: player;
    min-width: 0 !important;
  }


  /* OVR */
  .glf-gm .glf-development-row > div:nth-child(2) {
    grid-area: ovr;
    text-align: center !important;
  }


  /* POT */
  .glf-gm .glf-development-row > div:nth-child(3) {
    grid-area: pot;
    text-align: center !important;
  }


  /* CHANGE */
  .glf-gm .glf-development-row > div:nth-child(4) {
    grid-area: change;
    text-align: center !important;
  }


  /* AGE */
  .glf-gm .glf-development-row > div:nth-child(5) {
    grid-area: age;

    display: flex !important;
    flex-direction: column !important;

    align-items: flex-start !important;

    font-size: 16px !important;
  }

  .glf-gm .glf-development-row > div:nth-child(5)::before {
    content: "AGE";

    display: block;

    margin-bottom: 4px;

    color: #9fb2c7;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* DEVELOPMENT XP */
  .glf-gm .glf-development-row > div:nth-child(6) {
    grid-area: development;

    display: block !important;

    width: 100% !important;
    min-width: 0 !important;

    font-size: 14px !important;

    overflow: visible !important;
  }

  .glf-gm .glf-development-row > div:nth-child(6)::before {
    content: "DEVELOPMENT";

    display: block;

    margin-bottom: 5px;

    color: #9fb2c7;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: 1px;
  }


  /* XP progress bar */
  .glf-gm .glf-development-xp {
    width: 100% !important;
    max-width: 180px !important;

    margin-top: 7px !important;
  }


  /* Keep player names readable */
  .glf-gm .glf-development-player {
    min-width: 0 !important;

    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - REMOVE DUPLICATE MOBILE HEADERS
========================================================= */

@media (max-width: 749px) {

  /* Header row does not contain .glf-development-player.
     Remove the extra labels we generated for player cards. */
  .glf-gm
  .glf-development-row:not(:has(.glf-development-player))
  > div:nth-child(5)::before,

  .glf-gm
  .glf-development-row:not(:has(.glf-development-player))
  > div:nth-child(6)::before {
    content: none !important;
    display: none !important;
  }

}

/* =========================================================
   WEEKLY GAME PLAN
========================================================= */

.glf-gm .glf-gameplan-menu-button {
  min-height: 125px;
}

.glf-gm .glf-gameplan-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;

  background: #061829;

  overflow-y: auto;

  padding: 28px;

  box-sizing: border-box;
}

.glf-gm .glf-gameplan-shell {
  width: min(100%, 1100px);

  margin: 0 auto 80px;
}

.glf-gm .glf-gameplan-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;

  gap: 24px;

  margin-bottom: 28px;
}

.glf-gm .glf-gameplan-kicker,
.glf-gm .glf-gameplan-card-label,
.glf-gm .glf-gameplan-summary-title {
  color: #f5b942;

  font-size: 12px;
  font-weight: 900;

  letter-spacing: 2px;
}

.glf-gm .glf-gameplan-header h2 {
  margin: 7px 0 4px;

  font-size: 42px;
  line-height: 1.05;
}

.glf-gm .glf-gameplan-header p {
  color: #9fb2c7;
}

.glf-gm .glf-gameplan-back {
  padding: 16px 22px;

  border: 1px solid #315575;
  border-radius: 14px;

  background: #123453;
  color: white;

  font-weight: 800;
}

.glf-gm .glf-gameplan-opponent,
.glf-gm .glf-gameplan-card,
.glf-gm .glf-gameplan-summary {
  border: 1px solid #244c6d;
  border-radius: 18px;

  background: #0b2741;
}

.glf-gm .glf-gameplan-opponent {
  padding: 24px;

  margin-bottom: 22px;
}

.glf-gm .glf-gameplan-opponent span,
.glf-gm .glf-gameplan-opponent small {
  display: block;

  color: #9fb2c7;
}

.glf-gm .glf-gameplan-opponent strong {
  display: block;

  margin: 5px 0;

  font-size: 28px;
}

.glf-gm .glf-gameplan-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 16px;
}

.glf-gm .glf-gameplan-card {
  padding: 22px;
}

.glf-gm .glf-gameplan-card select {
  width: 100%;

  margin: 14px 0;

  padding: 14px;

  border: 1px solid #315575;
  border-radius: 10px;

  background: #071d31;
  color: white;

  font-size: 16px;
}

.glf-gm .glf-gameplan-description {
  color: #9fb2c7;

  font-size: 14px;
  line-height: 1.5;
}

.glf-gm .glf-gameplan-summary {
  margin-top: 18px;
  padding: 22px;
}

.glf-gm .glf-gameplan-summary-text {
  margin-top: 10px;

  font-size: 17px;
}

.glf-gm .glf-gameplan-save {
  width: 100%;

  margin-top: 18px;

  padding: 17px 20px;

  border: 0;
  border-radius: 12px;

  background: #f5b942;
  color: #07182a;

  font-size: 15px;
  font-weight: 900;
}

.glf-gm .glf-gameplan-status {
  min-height: 24px;

  margin-top: 12px;

  color: #8ee6a7;

  text-align: center;
  font-weight: 800;
}


/* MOBILE */

@media (max-width: 749px) {

  .glf-gm .glf-gameplan-overlay {
    padding:
      20px
      14px
      100px;
  }

  .glf-gm .glf-gameplan-header {
    display: block;
  }

  .glf-gm .glf-gameplan-header h2 {
    font-size: 38px;
  }

  .glf-gm .glf-gameplan-back {
    width: 100%;

    margin-top: 18px;
  }

  .glf-gm .glf-gameplan-grid {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   OPPONENT SCOUTING REPORT
========================================================= */

.glf-gm .glf-opponent-scout {
  margin-bottom: 22px;
  padding: 24px;

  border: 1px solid #244c6d;
  border-radius: 18px;

  background: #0b2741;
}

.glf-gm .glf-opponent-scout-title {
  margin-bottom: 18px;

  color: #f5b942;

  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-scout-ratings,
.glf-gm .glf-scout-units {
  display: grid;

  gap: 10px;

  margin-bottom: 18px;
}

.glf-gm .glf-scout-ratings {
  grid-template-columns:
    repeat(3, 1fr);
}

.glf-gm .glf-scout-units {
  grid-template-columns:
    repeat(4, 1fr);
}

.glf-gm .glf-scout-ratings > div,
.glf-gm .glf-scout-units > div {
  padding: 15px;

  border-radius: 12px;

  background: #071d31;
}

.glf-gm .glf-scout-ratings span,
.glf-gm .glf-scout-units span {
  display: block;

  color: #9fb2c7;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-scout-ratings strong {
  display: block;

  margin-top: 5px;

  font-size: 27px;
}

.glf-gm .glf-scout-units strong {
  display: block;

  margin-top: 5px;

  font-size: 21px;
}

.glf-gm .glf-scout-detail-grid {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 14px;
}

.glf-gm .glf-scout-detail-grid > div,
.glf-gm .glf-scout-top-players,
.glf-gm .glf-scout-recommendation {
  padding: 17px;

  border-radius: 12px;

  background: #071d31;
}

.glf-gm .glf-scout-detail-grid h4,
.glf-gm .glf-scout-top-players h4 {
  margin: 0 0 10px;

  color: #9fb2c7;

  font-size: 11px;
  letter-spacing: 1px;
}

.glf-gm .glf-scout-detail-grid p {
  display: flex;
  justify-content: space-between;

  margin: 7px 0;
}

.glf-gm .glf-scout-top-players {
  margin-top: 14px;
}

.glf-gm .glf-scout-player {
  display: flex;
  justify-content: space-between;

  gap: 10px;

  padding: 8px 0;

  border-bottom:
    1px solid rgba(255,255,255,.08);
}

.glf-gm .glf-scout-player:last-child {
  border-bottom: 0;
}

.glf-gm .glf-scout-player span {
  color: #9fb2c7;
}

.glf-gm .glf-scout-recommendation {
  margin-top: 14px;
}

.glf-gm .glf-scout-recommendation span {
  display: block;

  margin-bottom: 6px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-scout-recommendation strong {
  font-size: 17px;
}


/* MOBILE */

@media (max-width: 749px) {

  .glf-gm .glf-scout-units {
    grid-template-columns:
      1fr 1fr;
  }

  .glf-gm .glf-scout-detail-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-scout-player {
    display: block;
  }

  .glf-gm .glf-scout-player span {
    display: block;

    margin-top: 3px;
  }

}

/* =========================================================
   GAME RESULT / BOX SCORE - FULL SCROLL FIX
========================================================= */

.glf-gm .glf-game-result-card {
  max-height: calc(100dvh - 32px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;

  -webkit-overflow-scrolling: touch;

  box-sizing: border-box !important;
}


/* Give the bottom of the box score breathing room */
.glf-gm .glf-boxscore-details {
  padding-bottom: 30px !important;
}


/* MOBILE */
@media (max-width: 749px) {

  .glf-gm .glf-game-result-card {
    width: calc(100% - 20px) !important;

    max-height: calc(100dvh - 20px) !important;

    margin: 10px auto !important;
  }

}

/* =========================================================
   GM PERFORMANCE CENTER
========================================================= */

.glf-gm .glf-gm-performance {
  display: block;
}

.glf-gm .glf-gm-approval-header,
.glf-gm .glf-gm-approval-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.glf-gm .glf-gm-approval-header {
  margin-bottom: 9px;
}

.glf-gm .glf-gm-approval-label {
  color: #8ee6a7;

  font-size: 12px;
  font-weight: 800;
}

.glf-gm .glf-gm-approval-row {
  margin-top: 8px;
}

.glf-gm .glf-gm-approval-value {
  font-size: 25px;
}

.glf-gm .glf-gm-approval-trend {
  color: #9fb2c7;

  font-size: 12px;
  font-weight: 800;
}

.glf-gm .glf-gm-status-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 10px;

  margin-top: 18px;
}

.glf-gm .glf-gm-status-card {
  padding: 13px;

  border: 1px solid #244c6d;
  border-radius: 12px;

  background: rgba(
    5,
    25,
    43,
    .55
  );
}

.glf-gm .glf-gm-status-card span,
.glf-gm .glf-gm-subtitle,
.glf-gm .glf-gm-owner-message > span {
  display: block;

  color: #9fb2c7;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}

.glf-gm .glf-gm-status-card strong {
  display: block;

  margin-top: 5px;

  font-size: 16px;
}

.glf-gm .glf-gm-goals {
  margin-top: 18px;

  padding-top: 16px;

  border-top:
    1px solid rgba(
      255,
      255,
      255,
      .10
    );
}

.glf-gm .glf-gm-subtitle {
  margin-bottom: 9px;

  color: #f5b942;
}

.glf-gm .glf-gm-goal {
  display: grid;

  grid-template-columns:
    22px
    minmax(0, 1fr)
    auto;

  gap: 7px;

  align-items: center;

  padding: 7px 0;

  font-size: 12px;
}

.glf-gm .glf-gm-goal-icon {
  color: #9fb2c7;

  font-weight: 900;
}

.glf-gm .glf-gm-goal-value {
  color: #9fb2c7;

  font-size: 11px;

  text-align: right;
}

.glf-gm .glf-gm-goal.complete
.glf-gm-goal-icon,
.glf-gm .glf-gm-goal.complete
.glf-gm-goal-value {
  color: #8ee6a7;
}

.glf-gm .glf-gm-goal.warning
.glf-gm-goal-icon,
.glf-gm .glf-gm-goal.warning
.glf-gm-goal-value {
  color: #f1a2ad;
}

.glf-gm .glf-gm-owner-message {
  margin-top: 17px;

  padding: 13px;

  border-radius: 12px;

  background:
    rgba(
      5,
      25,
      43,
      .60
    );
}

.glf-gm .glf-gm-owner-message > span {
  color: #f5b942;
}

.glf-gm .glf-gm-owner-message p {
  margin:
    7px
    0
    0;

  color: #c5d1de;

  font-size: 12px;
  line-height: 1.45;
}


/* MOBILE */

@media (max-width: 749px) {

  .glf-gm .glf-gm-status-grid {
    grid-template-columns:
      1fr 1fr;
  }

  .glf-gm .glf-gm-goal {
    font-size: 12px;
  }

}

/* =========================
   FRANCHISE GM LAYOUT CLEANUP
   ========================= */

.glf-container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 24px;
  box-sizing: border-box;
}

.glf-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
  gap: 20px;
  align-items: start;
}

.glf-main-panel,
.glf-side-panel {
  display: grid;
  gap: 20px;
  align-content: start;
  min-width: 0;
}

.glf-main-panel > *,
.glf-side-panel > * {
  min-width: 0;
}

/* Unified panel/card styling */
.glf-gm-status,
.glf-injury-report,
.glf-news,
.glf-free-agency,
.glf-next-game,
.glf-team-card,
.glf-panel-card {
  border-radius: 24px;
  padding: 24px;
  box-sizing: border-box;
  height: auto;
  min-height: 0;
}

/* Prevent giant stretched cards */
.glf-injury-report,
.glf-news,
.glf-free-agency,
.glf-gm-status {
  height: auto !important;
  min-height: 0 !important;
}

/* Franchise management cards */
.glf-menu {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.glf-menu button,
.glf-menu .glf-menu-card {
  width: 100%;
  min-height: 124px;
  border-radius: 20px;
  box-sizing: border-box;
}

/* GM status cleanup */
.glf-gm-status {
  display: grid;
  gap: 16px;
}

.glf-gm-performance {
  display: grid;
  gap: 14px;
}

.glf-gm-approval-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.glf-progress {
  width: 100%;
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
}

.glf-progress-fill {
  height: 100%;
  border-radius: 999px;
}

.glf-gm-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.glf-gm-mini-card {
  border-radius: 18px;
  padding: 16px;
}

.glf-goals {
  display: grid;
  gap: 10px;
}

.glf-goal-row {
  display: grid;
  grid-template-columns: 18px 1fr auto;
  align-items: center;
  gap: 10px;
}

.glf-owner-message {
  border-radius: 16px;
  padding: 14px 16px;
  line-height: 1.5;
}

/* Injury report / free agency compact empty states */
.glf-empty-state {
  min-height: 140px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.glf-empty-state-copy {
  display: grid;
  gap: 6px;
}

.glf-empty-badge {
  min-width: 44px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

/* League news spacing */
.glf-news {
  display: grid;
  gap: 14px;
}

.glf-news-item {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 14px;
  align-items: start;
  padding: 14px 0;
}

.glf-news-item + .glf-news-item {
  border-top: 1px solid rgba(255,255,255,0.08);
}

/* Free agency card */
.glf-free-agency {
  display: grid;
  gap: 16px;
}

.glf-free-agency-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.glf-free-agency .glf-open-btn {
  white-space: nowrap;
}

/* Keep top stat cards even */
.glf-ratings-grid,
.glf-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

/* =========================
   TABLET
   ========================= */
@media (max-width: 1100px) {
  .glf-grid {
    grid-template-columns: 1fr;
  }

  .glf-side-panel {
    order: 2;
  }

  .glf-main-panel {
    order: 1;
  }

  .glf-menu {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

/* =========================
   MOBILE
   ========================= */
@media (max-width: 768px) {
  .glf-container {
    padding: 16px;
  }

  .glf-grid,
  .glf-main-panel,
  .glf-side-panel {
    gap: 16px;
  }

  .glf-gm-status,
  .glf-injury-report,
  .glf-news,
  .glf-free-agency,
  .glf-next-game,
  .glf-team-card,
  .glf-panel-card {
    padding: 18px;
    border-radius: 18px;
  }

  .glf-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .glf-menu button,
  .glf-menu .glf-menu-card {
    min-height: 110px;
  }

  .glf-gm-mini-grid {
    grid-template-columns: 1fr;
  }

  .glf-goal-row {
    grid-template-columns: 18px 1fr;
  }

  .glf-goal-row .glf-goal-value {
    grid-column: 2;
    justify-self: start;
  }

  .glf-news-item {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .glf-empty-state {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* =========================
   SMALL PHONE
   ========================= */
@media (max-width: 540px) {
  .glf-menu,
  .glf-ratings-grid,
  .glf-overview-grid {
    grid-template-columns: 1fr;
  }

  .glf-free-agency-header,
  .glf-gm-approval-header {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* =========================================================
   INJURY REPORT - COMPACT DASHBOARD CARD
========================================================= */

.glf-gm .glf-injury-dashboard-button {
  width: 100% !important;

  height: auto !important;
  min-height: 120px !important;
  max-height: none !important;

  align-self: start !important;

  display: grid !important;
  grid-template-columns:
    minmax(0, 1fr)
    auto !important;

  align-items: center !important;

  gap: 18px !important;

  padding: 22px !important;

  box-sizing: border-box !important;

  text-align: left !important;
}


/* Left side: title + injury status */
.glf-gm .glf-injury-dashboard-button > div:first-child {
  min-width: 0 !important;

  display: flex !important;
  flex-direction: column !important;

  gap: 5px !important;
}


.glf-gm .glf-injury-dashboard-button strong {
  display: block !important;

  font-size: 17px !important;
  line-height: 1.2 !important;
}


.glf-gm .glf-injury-dashboard-button small {
  display: block !important;

  margin: 0 !important;

  font-size: 12px !important;
  line-height: 1.35 !important;
}


/* Injury-count circle */
.glf-gm .glf-injury-count {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;

  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  border-radius: 50% !important;

  font-size: 15px !important;
  font-weight: 900 !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-injury-dashboard-button {
    min-height: 100px !important;

    padding: 18px !important;

    gap: 14px !important;
  }


  .glf-gm .glf-injury-dashboard-button strong {
    font-size: 16px !important;
  }


  .glf-gm .glf-injury-count {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }

}

/* =========================================================
   FREE AGENCY - COMPACT DASHBOARD CARD
========================================================= */

.glf-gm .glf-fa-dashboard-button {
  width: 100% !important;

  height: auto !important;
  min-height: 120px !important;
  max-height: none !important;

  align-self: start !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  gap: 18px !important;

  padding: 22px !important;

  box-sizing: border-box !important;

  text-align: left !important;
}


/* Keep the text grouped tightly */
.glf-gm .glf-fa-dashboard-button > div:first-child {
  min-width: 0 !important;

  display: flex !important;
  flex-direction: column !important;

  gap: 5px !important;
}


.glf-gm .glf-fa-dashboard-button strong {
  display: block !important;

  font-size: 17px !important;
  line-height: 1.2 !important;
}


.glf-gm .glf-fa-dashboard-button small {
  display: block !important;

  margin: 0 !important;

  font-size: 12px !important;
  line-height: 1.35 !important;
}


/* If the OPEN control is inside the button */
.glf-gm .glf-fa-dashboard-button .glf-fa-open,
.glf-gm .glf-fa-dashboard-button .glf-open-btn {
  flex: 0 0 auto !important;

  min-width: 64px !important;

  padding: 10px 16px !important;

  border-radius: 999px !important;

  white-space: nowrap !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-fa-dashboard-button {
    min-height: 100px !important;

    padding: 18px !important;

    gap: 14px !important;
  }


  .glf-gm .glf-fa-dashboard-button strong {
    font-size: 16px !important;
  }

}

/* =========================================================
   FRANCHISE MANAGEMENT - CLEAN RESPONSIVE GRID
========================================================= */

.glf-gm .glf-menu {
  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;

  gap: 16px !important;

  align-items: stretch !important;

  width: 100% !important;

  margin-bottom: 20px !important;
}


.glf-gm .glf-menu > button {
  width: 100% !important;

  min-width: 0 !important;
  min-height: 125px !important;

  padding: 18px 12px !important;

  box-sizing: border-box !important;
}


/* TABLET */
@media (max-width: 1000px) {

  .glf-gm .glf-menu {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }

}


/* MOBILE */
@media (max-width: 749px) {

  .glf-gm .glf-menu {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap: 12px !important;
  }

  .glf-gm .glf-menu > button {
    min-height: 112px !important;

    padding: 16px 8px !important;
  }

}

/* =========================================================
   LOWER DASHBOARD - FINAL LAYOUT CLEANUP
========================================================= */

/*
  Force Free Agency and League News onto
  their own full-width rows.
*/
.glf-gm .glf-fa-dashboard-button,
.glf-gm .glf-news {
  grid-column: 1 / -1 !important;

  width: 100% !important;

  height: auto !important;
  min-height: 0 !important;

  align-self: start !important;
}


/*
  Keep Free Agency compact.
*/
.glf-gm .glf-fa-dashboard-button {
  min-height: 110px !important;

  margin-top: 20px !important;
  margin-bottom: 20px !important;
}


/*
  League News should size itself only
  to its actual content.
*/
.glf-gm .glf-news {
  display: grid !important;

  gap: 0 !important;

  margin-top: 0 !important;
  margin-bottom: 20px !important;

  padding: 22px !important;

  overflow: visible !important;
}


/*
  Cleaner news rows.
*/
.glf-gm .glf-news-item {
  display: grid !important;

  grid-template-columns:
    85px minmax(0, 1fr) !important;

  gap: 14px !important;

  align-items: start !important;

  padding: 16px 0 !important;
}


.glf-gm .glf-news-item + .glf-news-item {
  border-top:
    1px solid rgba(
      255,
      255,
      255,
      .10
    );
}


/* =========================================================
   MOBILE LOWER DASHBOARD
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-fa-dashboard-button,
  .glf-gm .glf-injury-dashboard-button,
  .glf-gm .glf-news {
    grid-column: 1 / -1 !important;

    width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
  }


  .glf-gm .glf-fa-dashboard-button {
    min-height: 100px !important;

    margin-top: 14px !important;
    margin-bottom: 14px !important;
  }


  .glf-gm .glf-news {
    padding: 18px !important;

    border-radius: 18px !important;
  }


  .glf-gm .glf-news-item {
    grid-template-columns: 1fr !important;

    gap: 6px !important;

    padding: 14px 0 !important;
  }


  .glf-gm .glf-news-item span {
    display: block !important;

    margin-bottom: 3px !important;
  }

}

/* =========================================================
   NEXT GAME - COMPACT DASHBOARD CARD
========================================================= */

.glf-gm .glf-main-panel {
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
}

.glf-gm .glf-matchup {
  min-height: 0 !important;
  height: auto !important;

  padding: 24px !important;

  align-items: center !important;
}

.glf-gm .glf-matchup + .glf-sim-button,
.glf-gm .glf-main-panel .glf-sim-button {
  margin-top: 18px !important;
}

.glf-gm .glf-main-panel .glf-sim-button {
  min-height: 54px !important;
  padding: 14px 20px !important;
}

.glf-gm .glf-team-circle {
  width: 58px !important;
  height: 58px !important;
}

.glf-gm .glf-matchup-center {
  padding: 0 18px !important;
}


/* MOBILE */
@media (max-width: 749px) {

  .glf-gm .glf-main-panel {
    padding: 18px !important;
  }

  .glf-gm .glf-matchup {
    padding: 18px 8px !important;

    gap: 10px !important;
  }

  .glf-gm .glf-team-circle {
    width: 52px !important;
    height: 52px !important;
  }

  .glf-gm .glf-main-panel .glf-sim-button {
    min-height: 50px !important;
    margin-top: 14px !important;
  }

}

/* =========================================================
   DASHBOARD INDEPENDENT COLUMNS
========================================================= */

.glf-gm .glf-dashboard-columns {
  display: grid;

  grid-template-columns:
    minmax(0, 2fr)
    minmax(330px, 1fr);

  gap: 20px;

  align-items: start;

  width: 100%;
}


.glf-gm .glf-dashboard-left,
.glf-gm .glf-dashboard-right {
  display: flex;

  flex-direction: column;

  gap: 20px;

  min-width: 0;
}


/* Stop individual panels stretching */
.glf-gm .glf-dashboard-columns
.glf-main-panel,

.glf-gm .glf-dashboard-columns
.glf-side-panel,

.glf-gm .glf-dashboard-columns
.glf-menu,

.glf-gm .glf-dashboard-columns
.glf-injury-dashboard-button,

.glf-gm .glf-dashboard-columns
.glf-fa-dashboard-button,

.glf-gm .glf-dashboard-columns
.glf-news {
  width: 100% !important;

  height: auto !important;

  min-height: 0;

  align-self: start !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
}


/* Next Game remains compact */
.glf-gm .glf-dashboard-left
.glf-main-panel {
  min-height: 0 !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-dashboard-columns {
    display: flex;

    flex-direction: column;

    gap: 16px;
  }


  /*
    Remove the desktop column wrappers from
    the mobile visual flow so we can control
    each card's order independently.
  */
  .glf-gm .glf-dashboard-left,
  .glf-gm .glf-dashboard-right {
    display: contents;
  }


  .glf-gm .glf-main-panel {
    order: 1;
  }

  .glf-gm .glf-side-panel {
    order: 2;
  }

  .glf-gm .glf-menu {
    order: 3;
  }

  .glf-gm .glf-injury-dashboard-button {
    order: 4;
  }

  .glf-gm .glf-fa-dashboard-button {
    order: 5;
  }

  .glf-gm .glf-news {
    order: 6;
  }

}

/* =========================================================
   GM STATUS - MOBILE POLISH
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-gm-performance {
    padding: 18px !important;
  }

  .glf-gm .glf-gm-goal {
    display: grid !important;

    grid-template-columns:
      22px
      minmax(0, 1fr) !important;

    gap: 8px 10px !important;

    align-items: start !important;

    padding: 11px 0 !important;
  }

  .glf-gm .glf-gm-goal-icon {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;

    padding-top: 2px !important;
  }

  .glf-gm .glf-gm-goal-text {
    grid-column: 2 !important;
    grid-row: 1 !important;

    min-width: 0 !important;

    font-size: 14px !important;
    line-height: 1.35 !important;
  }

  .glf-gm .glf-gm-goal-value {
    grid-column: 2 !important;
    grid-row: 2 !important;

    justify-self: start !important;

    text-align: left !important;

    font-size: 17px !important;
    line-height: 1.2 !important;

    white-space: normal !important;
  }

  .glf-gm .glf-objective strong {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }

  .glf-gm .glf-gm-owner-message {
    margin-top: 14px !important;
  }

}

/* =========================================================
   MOBILE HERO - COMPACT
========================================================= */

@media (max-width: 749px) {

  .glf-gm .glf-gm-header {
    display: flex !important;
    flex-direction: column !important;

    justify-content: flex-start !important;
    align-items: flex-start !important;

    gap: 22px !important;

    height: auto !important;
    min-height: 0 !important;

    padding: 28px 22px !important;
  }


  .glf-gm .glf-gm-header > div:first-child {
    width: 100% !important;
  }


  .glf-gm .glf-gm-kicker {
    margin-bottom: 10px !important;
  }


  .glf-gm .glf-gm-header h1 {
    margin: 0 0 12px !important;

    font-size: clamp(
      42px,
      11vw,
      56px
    ) !important;

    line-height: .98 !important;
  }


  .glf-gm .glf-gm-header p {
    margin: 0 !important;

    line-height: 1.45 !important;
  }


  .glf-gm .glf-season-badge {
    align-self: flex-start !important;

    margin: 0 !important;

    padding: 14px 24px !important;
  }

}

/* =========================================================
   MOBILE ANNOUNCEMENT BAR - COMPACT HORIZON FIX
========================================================= */

@media (max-width: 749px) {

  aside.announcement-bar {
    --padding-block-start: 6px !important;
    --padding-block-end: 6px !important;

    padding-top: 6px !important;
    padding-bottom: 6px !important;

    min-height: 0 !important;
    height: auto !important;
  }

  aside.announcement-bar > * {
    min-height: 0 !important;
  }

  aside.announcement-bar p,
  aside.announcement-bar a,
  aside.announcement-bar span {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    font-size: 13px !important;
    line-height: 1.2 !important;
  }

}

/* =========================================================
   MOBILE ANNOUNCEMENT INNER SLIDER - FINAL COMPACT FIX
========================================================= */

@media (max-width: 749px) {

  aside.announcement-bar {
    --padding-block-start: 4px !important;
    --padding-block-end: 4px !important;

    padding-block: 4px !important;

    min-height: 0 !important;
    height: auto !important;
  }


  announcement-bar-component.announcement-bar__slider {
    min-height: 36px !important;
    height: 36px !important;

    display: flex !important;
    align-items: center !important;
  }


  announcement-bar-component.announcement-bar__slider > * {
    min-height: 0 !important;
    height: auto !important;
  }


  announcement-bar-component.announcement-bar__slider p,
  announcement-bar-component.announcement-bar__slider a,
  announcement-bar-component.announcement-bar__slider span {
    margin: 0 !important;

    line-height: 1.15 !important;
  }

}

/* =========================================================
   SCHEME FIT
========================================================= */

.glf-gm .glf-scheme-fit {
  margin-bottom: 22px;

  padding: 24px;

  border: 1px solid #244c6d;
  border-radius: 18px;

  background: #0b2741;
}


.glf-gm .glf-scheme-fit-title {
  margin-bottom: 18px;

  color: #f5b942;

  font-size: 13px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-gm .glf-scheme-unit-grid {
  display: grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    );

  gap: 10px;

  margin-bottom: 18px;
}


.glf-gm .glf-scheme-unit-grid > div {
  padding: 14px;

  border-radius: 12px;

  background: #071d31;
}


.glf-gm .glf-scheme-unit-grid span {
  display: block;

  color: #9fb2c7;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-scheme-unit-grid strong {
  display: block;

  margin-top: 5px;

  font-size: 22px;
}


.glf-gm .glf-scheme-fit-columns {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 14px;
}


.glf-gm .glf-scheme-fit-card {
  padding: 17px;

  border-radius: 12px;

  background: #071d31;
}


.glf-gm .glf-scheme-fit-card h4 {
  margin:
    0
    0
    10px;

  color: #9fb2c7;

  font-size: 11px;
  letter-spacing: 1px;
}


.glf-gm .glf-scheme-fit-row {
  display: flex;

  justify-content:
    space-between;

  align-items: center;

  gap: 12px;

  padding: 9px 0;

  border-bottom:
    1px solid
    rgba(
      255,
      255,
      255,
      .07
    );
}


.glf-gm
.glf-scheme-fit-row:last-child {
  border-bottom: 0;
}


.glf-gm
.glf-scheme-fit-row strong {
  display: block;

  font-size: 14px;
}


.glf-gm
.glf-scheme-fit-row small {
  display: block;

  margin-top: 2px;

  color: #9fb2c7;

  font-size: 11px;
}


.glf-gm .glf-scheme-fit-score {
  min-width: 42px;

  padding: 7px 9px;

  border-radius: 9px;

  background: #123d61;

  color: white;

  text-align: center;

  font-size: 16px;
  font-weight: 900;
}


.glf-gm .glf-scheme-recommendation {
  margin-top: 14px;

  padding: 17px;

  border-radius: 12px;

  background: #071d31;
}


.glf-gm
.glf-scheme-recommendation span {
  display: block;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-scheme-recommendation strong {
  display: block;

  margin-top: 6px;

  font-size: 18px;
}


/* MOBILE */

@media (max-width: 749px) {

  .glf-gm .glf-scheme-fit {
    padding: 18px;
  }


  .glf-gm
  .glf-scheme-unit-grid {
    grid-template-columns:
      1fr 1fr;
  }


  .glf-gm
  .glf-scheme-fit-columns {
    grid-template-columns:
      1fr;
  }

}

/* =========================================================
   GAME PLAN IMPACT - FINAL DISPLAY
========================================================= */

.glf-gm .glf-gameplan-impact {
  margin: 14px 0 18px !important;
  padding: 16px !important;

  border: 1px solid rgba(245, 185, 66, .28) !important;
  border-radius: 14px !important;

  background: rgba(5, 25, 43, .75) !important;
}

.glf-gm .glf-gameplan-impact > h4 {
  margin: 0 0 12px !important;

  color: #f5b942 !important;

  font-size: 12px !important;
  font-weight: 900 !important;

  letter-spacing: 1px !important;
}

.glf-gm .glf-gameplan-impact-grid {
  display: grid !important;
  gap: 0 !important;
}

.glf-gm .glf-gameplan-impact-row {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(110px, auto)
    85px !important;

  gap: 10px !important;

  align-items: center !important;

  padding: 8px 0 !important;

  border-bottom:
    1px solid rgba(255,255,255,.08) !important;
}

.glf-gm .glf-gameplan-impact-row:last-child {
  border-bottom: 0 !important;
}

.glf-gm .glf-gameplan-impact-row span {
  color: #9fb2c7 !important;

  font-size: 11px !important;
}

.glf-gm .glf-gameplan-impact-row strong {
  color: white !important;

  font-size: 12px !important;

  text-align: right !important;
}

.glf-gm .glf-gameplan-impact-row b {
  color: #f5b942 !important;

  font-size: 12px !important;

  text-align: right !important;

  white-space: nowrap !important;
}

.glf-gm .glf-gameplan-impact-total {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap: 8px !important;

  margin-top: 12px !important;
}

.glf-gm .glf-gameplan-impact-total > div {
  padding: 10px !important;

  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 10px !important;

  background: #071d31 !important;
}

.glf-gm .glf-gameplan-impact-total span {
  display: block !important;

  color: #9fb2c7 !important;

  font-size: 8px !important;
  font-weight: 900 !important;

  letter-spacing: .7px !important;
}

.glf-gm .glf-gameplan-impact-total strong {
  display: block !important;

  margin-top: 4px !important;

  color: white !important;

  font-size: 19px !important;
}

/* MOBILE */

@media (max-width: 749px) {

  .glf-gm .glf-gameplan-impact {
    padding: 14px !important;
  }

  .glf-gm .glf-gameplan-impact-row {
    grid-template-columns:
      minmax(0, 1fr)
      auto !important;

    gap: 4px 10px !important;
  }

  .glf-gm .glf-gameplan-impact-row span {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .glf-gm .glf-gameplan-impact-row strong {
    grid-column: 1 !important;
    grid-row: 2 !important;

    text-align: left !important;
  }

  .glf-gm .glf-gameplan-impact-row b {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;

    align-self: center !important;
  }

  .glf-gm .glf-gameplan-impact-total {
    grid-template-columns: 1fr !important;
  }

}

/* =========================================================
   HOW TO PLAY / GM HANDBOOK
========================================================= */

.glf-howto-overlay {
  position: fixed;
  inset: 0;

  z-index: 99999;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 24px;

  background:
    rgba(0, 10, 20, .88);

  backdrop-filter:
    blur(8px);
}


.glf-howto-shell {
  width: min(1180px, 100%);
  max-height: calc(100dvh - 48px);

  display: flex;
  flex-direction: column;

  overflow: hidden;

  border:
    1px solid #275b80;

  border-radius: 24px;

  background:
    linear-gradient(
      180deg,
      #0c2a46,
      #061b2e
    );

  color: white;

  box-shadow:
    0 28px 80px
    rgba(0,0,0,.48);
}


.glf-howto-header {
  display: flex;

  justify-content:
    space-between;

  align-items:
    flex-start;

  gap: 20px;

  padding: 26px 28px;

  border-bottom:
    1px solid
    rgba(255,255,255,.10);
}


.glf-howto-kicker {
  margin-bottom: 6px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-howto-header h2 {
  margin: 0;

  font-size: 34px;
  line-height: 1.05;
}


.glf-howto-header p {
  margin:
    7px 0 0;

  color: #a9bdd0;
}


.glf-howto-close {
  width: 44px;
  height: 44px;

  flex: 0 0 auto;

  border:
    1px solid #315e80;

  border-radius: 12px;

  background: #123a5b;

  color: white;

  font-size: 18px;

  cursor: pointer;
}


.glf-howto-layout {
  display: grid;

  grid-template-columns:
    260px
    minmax(0, 1fr);

  min-height: 0;
}


.glf-howto-nav {
  overflow-y: auto;

  padding: 18px;

  border-right:
    1px solid
    rgba(255,255,255,.10);

  background:
    rgba(0,0,0,.12);
}


.glf-howto-tab {
  width: 100%;

  display: flex;

  align-items: center;

  gap: 11px;

  padding: 13px 14px;

  margin-bottom: 7px;

  border:
    1px solid transparent;

  border-radius: 12px;

  background: transparent;

  color: #c7d4df;

  text-align: left;

  cursor: pointer;
}


.glf-howto-tab span {
  font-size: 20px;
}


.glf-howto-tab strong {
  font-size: 13px;
}


.glf-howto-tab:hover,
.glf-howto-tab.active {
  border-color:
    #2e6186;

  background:
    #103754;

  color: white;
}


.glf-howto-tab.active {
  box-shadow:
    inset 3px 0 0
    #f5b942;
}


.glf-howto-content {
  min-height: 0;

  overflow-y: auto;

  padding: 28px 32px;
}


.glf-howto-content-title {
  display: flex;

  align-items: center;

  gap: 12px;

  margin-bottom: 22px;
}


.glf-howto-content-icon {
  font-size: 30px;
}


.glf-howto-content-title h2 {
  margin: 0;

  font-size: 27px;
}


.glf-howto-content-body {
  color: #c7d4df;

  font-size: 15px;
  line-height: 1.6;
}


.glf-howto-content-body h3 {
  margin:
    0 0 10px;

  color: white;

  font-size: 22px;
}


.glf-howto-content-body h4 {
  margin:
    24px 0 6px;

  color: #f5b942;

  font-size: 14px;
}


.glf-howto-content-body p {
  margin:
    0 0 12px;
}


.glf-howto-checklist {
  display: grid;

  gap: 10px;

  margin: 22px 0;
}


.glf-howto-checklist > div {
  display: grid;

  grid-template-columns:
    34px
    minmax(0, 1fr);

  gap: 12px;

  align-items: center;

  padding: 13px;

  border-radius: 12px;

  background:
    #071d31;
}


.glf-howto-checklist strong {
  width: 30px;
  height: 30px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    #f5b942;

  color: #04111f;
}


.glf-howto-tip {
  margin-top: 22px;

  padding: 16px 18px;

  border:
    1px solid
    rgba(245,185,66,.28);

  border-radius: 12px;

  background:
    rgba(245,185,66,.07);
}


.glf-howto-tip strong {
  display: block;

  margin-bottom: 5px;

  color: #f5b942;

  font-size: 10px;
  letter-spacing: 1px;
}


.glf-howto-scale {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 10px;

  margin-top: 18px;
}


.glf-howto-scale > div {
  padding: 13px;

  border-radius: 10px;

  background:
    #071d31;
}


.glf-howto-scale strong,
.glf-howto-scale span {
  display: block;
}


.glf-howto-scale strong {
  color: white;

  font-size: 18px;
}


.glf-howto-scale span {
  margin-top: 2px;

  color: #9fb2c7;

  font-size: 11px;
}


.glf-howto-tips-list {
  margin: 18px 0 0;

  padding-left: 22px;
}


.glf-howto-tips-list li {
  margin-bottom: 14px;
}


/* =========================================================
   HOW TO PLAY - MOBILE
========================================================= */

@media (max-width: 749px) {

  .glf-howto-overlay {
    padding: 0;
  }


  .glf-howto-shell {
    width: 100%;
    height: 100dvh;

    max-height: none;

    border: 0;
    border-radius: 0;
  }


  .glf-howto-header {
    padding: 18px;
  }


  .glf-howto-header h2 {
    font-size: 27px;
  }


  .glf-howto-layout {
    display: flex;

    flex-direction: column;
  }


  .glf-howto-nav {
    display: flex;

    flex: 0 0 auto;

    gap: 8px;

    overflow-x: auto;
    overflow-y: hidden;

    padding: 12px 14px;

    border-right: 0;

    border-bottom:
      1px solid
      rgba(255,255,255,.10);
  }


  .glf-howto-tab {
    width: auto;

    flex: 0 0 auto;

    margin: 0;

    padding: 10px 12px;
  }


  .glf-howto-tab strong {
    white-space: nowrap;
  }


  .glf-howto-content {
    flex: 1;

    padding: 20px 18px 32px;
  }


  .glf-howto-scale {
    grid-template-columns:
      1fr 1fr;
  }

}

/* =========================================================
   FIRST TIME ONBOARDING
========================================================= */

.glf-onboarding-overlay {
  position: fixed;
  inset: 0;

  z-index: 100000;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 24px;

  background:
    rgba(0, 9, 18, .90);

  backdrop-filter:
    blur(9px);
}


.glf-onboarding-card {
  width: min(
    650px,
    100%
  );

  overflow: hidden;

  border:
    1px solid #2c638c;

  border-radius: 24px;

  background:
    linear-gradient(
      180deg,
      #103453,
      #061b2e
    );

  color: white;

  box-shadow:
    0 30px 90px
    rgba(0,0,0,.55);
}


.glf-onboarding-top {
  display: flex;

  justify-content:
    space-between;

  align-items: center;

  gap: 20px;

  padding: 20px 24px 14px;
}


.glf-onboarding-brand {
  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-onboarding-skip {
  border: 0;

  background: transparent;

  color: #9fb2c7;

  font-size: 10px;
  font-weight: 900;

  cursor: pointer;
}


.glf-onboarding-progress {
  display: grid;

  grid-template-columns:
    repeat(
      5,
      1fr
    );

  gap: 6px;

  padding: 0 24px;
}


.glf-onboarding-progress-step {
  height: 4px;

  border-radius: 99px;

  background:
    rgba(
      255,
      255,
      255,
      .12
    );
}


.glf-onboarding-progress-step.active {
  background: #f5b942;
}


.glf-onboarding-content {
  padding: 34px 34px 28px;

  text-align: center;
}


.glf-onboarding-icon {
  margin-bottom: 15px;

  font-size: 48px;
}


.glf-onboarding-kicker {
  margin-bottom: 7px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-onboarding-title {
  margin: 0 0 14px;

  font-size: 34px;
  line-height: 1.05;
}


.glf-onboarding-text {
  max-width: 520px;

  margin:
    0 auto 19px;

  color: #c8d6e2;

  font-size: 16px;
  line-height: 1.55;
}


.glf-onboarding-action {
  max-width: 520px;

  margin: 0 auto;

  padding: 15px 17px;

  border:
    1px solid
    rgba(
      245,
      185,
      66,
      .25
    );

  border-radius: 12px;

  background:
    rgba(
      245,
      185,
      66,
      .06
    );

  color: #d8e2eb;

  font-size: 13px;
  line-height: 1.5;
}


.glf-onboarding-controls {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 12px;

  padding: 18px 24px 24px;

  border-top:
    1px solid
    rgba(
      255,
      255,
      255,
      .09
    );
}


.glf-onboarding-controls button {
  min-height: 50px;

  border-radius: 11px;

  font-weight: 900;

  cursor: pointer;
}


.glf-onboarding-back {
  border:
    1px solid #315b7d;

  background: #103653;

  color: white;
}


.glf-onboarding-back:disabled {
  opacity: .35;

  cursor: default;
}


.glf-onboarding-next {
  border: 0;

  background: #f5b942;

  color: #061626;
}


/* Handbook launch button */

.glf-howto-start-tutorial {
  width: 100%;

  margin-top: 22px;

  padding: 15px 18px;

  border: 0;
  border-radius: 11px;

  background: #f5b942;

  color: #061626;

  font-size: 13px;
  font-weight: 900;

  cursor: pointer;
}


/* =========================================================
   MOBILE ONBOARDING
========================================================= */

@media (max-width: 749px) {

  .glf-onboarding-overlay {
    align-items: flex-end;

    padding: 12px;
  }


  .glf-onboarding-card {
    max-height:
      calc(
        100dvh -
        24px
      );

    overflow-y: auto;

    border-radius: 20px;
  }


  .glf-onboarding-top {
    padding:
      17px
      18px
      12px;
  }


  .glf-onboarding-progress {
    padding:
      0
      18px;
  }


  .glf-onboarding-content {
    padding:
      27px
      20px
      24px;
  }


  .glf-onboarding-icon {
    font-size: 42px;
  }


  .glf-onboarding-title {
    font-size: 29px;
  }


  .glf-onboarding-text {
    font-size: 14px;
  }


  .glf-onboarding-controls {
    padding:
      15px
      18px
      18px;
  }

}

/* =========================================================
   SCHEME FIT - KEY PLAYERS
========================================================= */

.glf-gm .glf-scheme-key-fits {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 12px;

  margin-top: 16px;
}


.glf-gm .glf-scheme-key-fit-group {
  padding: 13px;

  border:
    1px solid
    rgba(255,255,255,.08);

  border-radius: 11px;

  background:
    rgba(0,0,0,.12);
}


.glf-gm .glf-scheme-key-fit-title {
  margin-bottom: 8px;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm .glf-scheme-key-fit-title small {
  display: block;

  margin-top: 2px;

  color: #9fb2c7;

  font-size: 10px;
  font-weight: 700;

  letter-spacing: 0;
}


.glf-gm .glf-scheme-key-fit-player {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 10px;

  align-items: center;

  padding: 8px 0;

  border-bottom:
    1px solid
    rgba(255,255,255,.06);
}


.glf-gm
.glf-scheme-key-fit-player:last-child {
  border-bottom: 0;
}


.glf-gm .glf-scheme-key-fit-player strong {
  display: block;

  font-size: 12px;
}


.glf-gm .glf-scheme-key-fit-player small {
  display: block;

  margin-top: 2px;

  color: #8fa9bf;

  font-size: 9px;
}


.glf-gm .glf-scheme-key-fit-player > span {
  min-width: 34px;

  padding: 5px 7px;

  border-radius: 8px;

  background: #124d75;

  color: white;

  font-size: 12px;
  font-weight: 900;

  text-align: center;
}


@media (max-width: 749px) {

  .glf-gm .glf-scheme-key-fits {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   LEAGUE LEADERS - MOBILE FULL TABLE OVERRIDE
========================================================= */

@media (max-width: 749px) {

  .glf-league-overlay .glf-leader-content {
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  .glf-league-overlay .glf-leader-table-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
  }

  .glf-league-overlay table.glf-leader-table {
    display: table !important;

    width: 900px !important;
    min-width: 900px !important;
    max-width: none !important;

    table-layout: auto !important;
  }

  .glf-league-overlay .glf-leader-table thead {
    display: table-header-group !important;
  }

  .glf-league-overlay .glf-leader-table tbody {
    display: table-row-group !important;
  }

  .glf-league-overlay .glf-leader-table tr {
    display: table-row !important;

    grid-template-columns: none !important;
    grid-template-areas: none !important;
  }

  .glf-league-overlay .glf-leader-table th,
  .glf-league-overlay .glf-leader-table td {
    display: table-cell !important;

    visibility: visible !important;
    opacity: 1 !important;

    width: auto !important;
    max-width: none !important;
    min-width: 72px !important;

    white-space: nowrap !important;
  }

  .glf-league-overlay .glf-leader-table th:nth-child(n),
  .glf-league-overlay .glf-leader-table td:nth-child(n) {
    display: table-cell !important;
  }

  .glf-league-overlay .glf-leader-table .glf-leader-rank {
    min-width: 60px !important;
  }

  .glf-league-overlay .glf-leader-table .glf-leader-player {
    min-width: 220px !important;
    width: 220px !important;
    max-width: none !important;
  }

  .glf-league-overlay .glf-leader-table td::before,
  .glf-league-overlay .glf-leader-table th::before {
    display: none !important;
    content: none !important;
  }

}

.glf-gm select {
  color: #0b1f3a !important;
  background: #ffffff !important;
  border: 1px solid #8aa4c7;
  border-radius: 8px;
  padding: 6px 10px;
}

.glf-gm option {
  color: #0b1f3a !important;
  background: #ffffff !important;
}

/* =========================================================
   LEAGUE LEADERS - SORT CONTROL
========================================================= */

.glf-leader-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 14px;
}

.glf-leader-toolbar label {
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
  white-space: nowrap;
}

#glf-leader-sort {
  min-width: 190px;
  height: 42px;

  padding: 0 38px 0 14px;

  color: #0b1f3a !important;
  background: #ffffff !important;

  border: 2px solid #f5b942;
  border-radius: 10px;

  font-size: 15px;
  font-weight: 700;

  cursor: pointer;
  outline: none;

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#glf-leader-sort:hover {
  border-color: #ffd267;
}

#glf-leader-sort:focus {
  border-color: #f5b942;

  box-shadow:
    0 0 0 3px rgba(245, 185, 66, 0.22);
}

#glf-leader-sort option {
  color: #0b1f3a !important;
  background: #ffffff !important;

  font-weight: 600;
}


/* MOBILE */
@media (max-width: 749px) {

  .glf-leader-toolbar {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
    gap: 7px;

    margin: 18px 0;
  }

  .glf-leader-toolbar label {
    font-size: 14px;
  }

  #glf-leader-sort {
    width: 100%;
    min-width: 0;
    height: 48px;

    font-size: 16px;
    border-radius: 12px;
  }

}

/* =========================================
   PLAYER PROFILE STAT TABS
========================================= */

.glf-player-stat-tabs {
  display: flex;
  gap: 8px;
  margin: 14px 0 18px;
  flex-wrap: wrap;
}

.glf-player-stat-tab {
  appearance: none;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.06);
  color: #cbd5e1;
  padding: 10px 16px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.glf-player-stat-tab:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  transform: translateY(-1px);
}

.glf-player-stat-tab.active {
  background: #f5b942;
  border-color: #f5b942;
  color: #0b1f3a;
}

.glf-player-stat-pane[hidden] {
  display: none !important;
}


/* =========================================
   SEASON-BY-SEASON HISTORY
========================================= */

.glf-player-history-season {
  margin-bottom: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.glf-player-history-season:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.glf-player-history-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.glf-player-history-heading strong {
  color: #f5b942;
  font-size: 15px;
  font-weight: 900;
}

.glf-player-history-heading span {
  color: #94a3b8;
  font-size: 12px;
  font-weight: 700;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 749px) {

  .glf-player-stat-tabs {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .glf-player-stat-tab {
    width: 100%;
    min-height: 44px;
  }

  .glf-player-history-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

}

/* =========================================
   COACH PROFILE PERFORMANCE TABS
========================================= */

.glf-coach-stats-section {
  margin-top: 22px;
  padding-top: 4px;
}

.glf-coach-stat-tabs {
  display: flex;
  gap: 8px;
  margin: 12px 0 18px;
  flex-wrap: wrap;
}

.glf-coach-stat-tab {
  appearance: none;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.06);
  color: #cbd5e1;
  padding: 10px 16px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  cursor: pointer;

  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.glf-coach-stat-tab:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  transform: translateY(-1px);
}

.glf-coach-stat-tab.active {
  background: #f5b942;
  border-color: #f5b942;
  color: #0b1f3a;
}

.glf-coach-stat-pane[hidden] {
  display: none !important;
}


/* =========================================
   COACH SEASON HISTORY
========================================= */

.glf-coach-history-season {
  margin-bottom: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.glf-coach-history-season:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 749px) {

  .glf-coach-stat-tabs {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .glf-coach-stat-tab {
    width: 100%;
    min-height: 44px;
  }

}

/* CONTRACT PLAYER PROFILE LINKS */

.glf-contract-player-link {
  appearance: none;
  width: 100%;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.glf-contract-player-link strong {
  display: block;
  color: #fff;
  font-weight: 800;
}

.glf-contract-player-link small {
  display: block;
  margin-top: 4px;
  color: #8fb6df;
  font-size: 12px;
}

.glf-contract-player-link:hover strong {
  color: #f5b942;
}

.glf-contract-player-link:hover small {
  color: #fff;
}

.glf-player-profile {
  z-index: 10050 !important;
}

.glf-contract-overlay {
  z-index: 9000;
}

/* =========================================
   CONTRACTS — ROSTER MAKEUP
========================================= */

.glf-contract-roster-makeup {
  margin: 22px 0;
  padding: 20px;
  border: 1px solid rgba(52, 168, 255, 0.3);
  border-radius: 14px;
  background: rgba(7, 31, 55, 0.72);
}

.glf-contract-roster-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
  margin-bottom: 18px;
}

.glf-contract-roster-heading > div:first-child > span {
  display: block;
  margin-bottom: 5px;
  color: #f5b942;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.glf-contract-roster-heading > div:first-child > strong {
  color: #fff;
  font-size: 22px;
}

.glf-contract-roster-overview {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.glf-contract-roster-overview > div {
  min-width: 100px;
  padding: 9px 12px;
  border-radius: 9px;
  background: rgba(255,255,255,0.06);
  text-align: center;
}

.glf-contract-roster-overview span {
  display: block;
  color: #8fb6df;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.glf-contract-roster-overview strong {
  display: block;
  margin-top: 3px;
  color: #fff;
  font-size: 16px;
}

.glf-contract-roster-grid {
  display: grid;
  grid-template-columns:
    repeat(8, minmax(75px, 1fr));
  gap: 8px;
}

.glf-contract-roster-pos {
  padding: 10px 8px;
  border-radius: 9px;
  text-align: center;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.045);
}

.glf-contract-roster-pos span {
  display: block;
  color: #8fb6df;
  font-size: 11px;
  font-weight: 900;
}

.glf-contract-roster-pos strong {
  display: block;
  margin: 3px 0;
  color: #fff;
  font-size: 17px;
}

.glf-contract-roster-pos small {
  font-size: 10px;
  font-weight: 800;
}

.glf-contract-roster-pos.good small {
  color: #69e6a6;
}

.glf-contract-roster-pos.needs-help {
  border-color: rgba(245,185,66,0.5);
  background: rgba(245,185,66,0.08);
}

.glf-contract-roster-pos.needs-help small {
  color: #f5b942;
}

@media (max-width: 900px) {

  .glf-contract-roster-grid {
    grid-template-columns:
      repeat(4, minmax(70px, 1fr));
  }

}

@media (max-width: 749px) {

  .glf-contract-roster-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .glf-contract-roster-overview {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .glf-contract-roster-grid {
    grid-template-columns:
      repeat(3, minmax(65px, 1fr));
  }

}

/* =========================================
   REVERSIBLE CONTRACT DECISIONS
========================================= */

.glf-contract-decision-tag {
  appearance: none;
  border: 1px solid transparent;
  border-radius: 9px;
  padding: 8px 12px;
  min-width: 105px;
  background: transparent;
  cursor: pointer;
  text-align: center;
  transition:
    transform .15s ease,
    background .15s ease,
    border-color .15s ease;
}

.glf-contract-decision-tag strong {
  display: block;
  font-size: 13px;
  font-weight: 900;
}

.glf-contract-decision-tag small {
  display: block;
  margin-top: 2px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .06em;
  opacity: .7;
}

.glf-contract-decision-tag.resigned {
  color: #69e6a6;
  border-color: rgba(105,230,166,.28);
  background: rgba(105,230,166,.08);
}

.glf-contract-decision-tag.free-agent {
  color: #ff919b;
  border-color: rgba(255,145,155,.28);
  background: rgba(255,145,155,.07);
}

.glf-contract-decision-tag:hover {
  transform: translateY(-1px);
  border-color: #f5b942;
  background: rgba(245,185,66,.10);
}

/* =========================================
   OFFSEASON FREE AGENCY — VISUAL REFRESH
========================================= */

.glf-offseason-fa-summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}


.glf-offseason-fa-summary-card {
  padding: 18px 20px;
  min-height: 92px;

  border:
    1px solid
    rgba(52, 168, 255, 0.22);

  border-radius: 13px;

  background:
    linear-gradient(
      145deg,
      rgba(18, 56, 91, 0.92),
      rgba(9, 35, 61, 0.96)
    );
}


.glf-offseason-fa-summary-card span {
  display: block;

  color: #8fb6df;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .10em;

  text-transform: uppercase;
}


.glf-offseason-fa-summary-card strong {
  display: block;

  margin-top: 8px;

  color: #fff;

  font-size: 25px;
  font-weight: 900;
}


/* =========================================
   FILTER / SEARCH BAR
========================================= */

.glf-offseason-fa-controls {
  display: grid;

  grid-template-columns:
    minmax(170px, 210px)
    1fr;

  gap: 10px;

  margin:
    20px 0
    14px;
}


.glf-offseason-fa-position,
.glf-offseason-fa-search,
.glf-offseason-fa-salary,
.glf-offseason-fa-years {

  box-sizing: border-box;

  min-height: 44px;

  border:
    1px solid
    rgba(52, 168, 255, 0.35);

  border-radius: 9px;

  outline: none;

  background: #071f37;

  color: #fff;

  font-size: 14px;
  font-weight: 700;
}


.glf-offseason-fa-position,
.glf-offseason-fa-years {

  padding:
    0 38px
    0 13px;

}


.glf-offseason-fa-search,
.glf-offseason-fa-salary {

  padding:
    0 13px;

}


.glf-offseason-fa-search::placeholder {
  color: #7194b6;
}


.glf-offseason-fa-position:focus,
.glf-offseason-fa-search:focus,
.glf-offseason-fa-salary:focus,
.glf-offseason-fa-years:focus {

  border-color: #f5b942;

  box-shadow:
    0 0 0 2px
    rgba(245, 185, 66, 0.12);

}


.glf-offseason-fa-position option,
.glf-offseason-fa-years option {
  background: #fff;
  color: #0b1f3a;
}


/* =========================================
   FREE AGENT TABLE
========================================= */

.glf-offseason-fa-table {

  overflow: hidden;

  border:
    1px solid
    rgba(52, 168, 255, 0.24);

  border-radius: 13px;

  background:
    rgba(8, 34, 59, 0.72);

}


.glf-offseason-fa-row {

  border-bottom:
    1px solid
    rgba(255, 255, 255, 0.08);

  transition:
    background .15s ease;

}


.glf-offseason-fa-row:not(.header):hover {
  background:
    rgba(52, 168, 255, 0.055);
}


.glf-offseason-fa-row.header {

  background:
    rgba(25, 66, 105, 0.9);

  color: #9dc4e9;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .10em;

  text-transform: uppercase;

}


.glf-offseason-fa-name {
  color: #fff;

  font-weight: 900;
}


.glf-offseason-fa-name small {

  display: block;

  margin-top: 4px;

  color: #8fb6df;

  font-size: 12px;

  font-weight: 600;

}


/* =========================================
   MARKET INFO
========================================= */

.glf-offseason-fa-interest {

  color: #8fb6df;

  font-size: 12px;

  line-height: 1.45;

}


.glf-offseason-fa-leading {

  display: inline-block;

  margin-bottom: 5px;

  padding:
    4px 7px;

  border-radius: 6px;

  background:
    rgba(105, 230, 166, 0.12);

  color: #69e6a6;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .06em;

}


/* =========================================
   OFFER CONTROLS
========================================= */

.glf-offseason-fa-offer {

  width: 100%;

  min-height: 38px;

  margin-top: 6px;

  border: 0;

  border-radius: 8px;

  background:
    linear-gradient(
      180deg,
      #ffc74d,
      #f5b942
    );

  color: #071f37;

  font-size: 11px;
  font-weight: 900;

  cursor: pointer;

  transition:
    transform .15s ease,
    filter .15s ease;

}


.glf-offseason-fa-offer:hover {

  transform:
    translateY(-1px);

  filter:
    brightness(1.06);

}


.glf-offseason-fa-withdraw {

  width: 100%;

  min-height: 34px;

  margin-top: 6px;

  border:
    1px solid
    rgba(255, 122, 135, 0.40);

  border-radius: 8px;

  background:
    rgba(255, 122, 135, 0.08);

  color: #ff919b;

  font-size: 10px;
  font-weight: 900;

  cursor: pointer;

}


/* =========================================
   ADVANCE / COMPLETE BUTTON
========================================= */

.glf-offseason-fa-advance,
.glf-offseason-fa-complete {

  width: 100%;

  min-height: 52px;

  margin-top: 20px;

  border: 0;

  border-radius: 10px;

  background:
    linear-gradient(
      180deg,
      #ffc74d,
      #f5b942
    );

  color: #071f37;

  font-size: 14px;
  font-weight: 900;

  letter-spacing: .02em;

  cursor: pointer;

}


/* =========================================
   RECENT SIGNINGS
========================================= */

.glf-offseason-fa-news {

  margin-top: 22px;

  padding: 18px;

  border:
    1px solid
    rgba(52, 168, 255, 0.20);

  border-radius: 12px;

  background:
    rgba(8, 34, 59, 0.65);

}


.glf-offseason-fa-news-title {

  margin-bottom: 10px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: .10em;

}


.glf-offseason-fa-news-item {

  padding:
    9px 0;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);

  color: #c5d7e8;

}


.glf-offseason-fa-news-item:last-child {
  border-bottom: 0;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 749px) {

  .glf-offseason-fa-summary {

    grid-template-columns:
      1fr 1fr;

  }


  .glf-offseason-fa-controls {

    grid-template-columns:
      1fr;

  }


  .glf-offseason-fa-position,
  .glf-offseason-fa-search {

    width: 100%;

  }

}

/* =========================================
   FREE AGENT PROFILE LINKS
========================================= */

.glf-offseason-fa-player-link {
  appearance: none;
  width: 100%;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.glf-offseason-fa-player-link strong {
  display: block;
  color: #fff;
  font-weight: 900;
}

.glf-offseason-fa-player-link small {
  display: block;
  margin-top: 4px;
  color: #8fb6df;
  font-size: 12px;
}

.glf-offseason-fa-player-link:hover strong {
  color: #f5b942;
}

.glf-offseason-fa-player-link:hover small {
  color: #fff;
}

/* =========================================
   FREE AGENCY SELECTS — DARK THEME
========================================= */

.glf-offseason-fa-position,
.glf-offseason-fa-years {
  background-color: #071f37 !important;
  color: #fff !important;
  border: 1px solid rgba(52, 168, 255, 0.35) !important;
}

.glf-offseason-fa-position option,
.glf-offseason-fa-years option {
  background: #071f37 !important;
  color: #fff !important;
}

/* =========================================
   FREE AGENCY SELECTS — FORCE DARK THEME
========================================= */

.glf-offseason-fa-controls
select.glf-offseason-fa-position,

.glf-offseason-fa-row
select.glf-offseason-fa-years {

  -webkit-appearance: none !important;
  appearance: none !important;

  color-scheme: dark;

  background-color: #071f37 !important;
  color: #ffffff !important;

  border:
    1px solid
    rgba(52, 168, 255, 0.40)
    !important;

  border-radius: 9px !important;

  padding:
    0 38px
    0 13px
    !important;

  min-height: 44px;

  cursor: pointer;

  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      #8fb6df 50%
    ),
    linear-gradient(
      135deg,
      #8fb6df 50%,
      transparent 50%
    );

  background-position:
    calc(100% - 16px) 19px,
    calc(100% - 11px) 19px;

  background-size:
    5px 5px,
    5px 5px;

  background-repeat: no-repeat;
}


.glf-offseason-fa-controls
select.glf-offseason-fa-position:hover,

.glf-offseason-fa-row
select.glf-offseason-fa-years:hover {

  border-color:
    #f5b942 !important;

}


.glf-offseason-fa-controls
select.glf-offseason-fa-position:focus,

.glf-offseason-fa-row
select.glf-offseason-fa-years:focus {

  outline: none !important;

  border-color:
    #f5b942 !important;

  box-shadow:
    0 0 0 2px
    rgba(245, 185, 66, 0.12);

}


.glf-offseason-fa-position option,
.glf-offseason-fa-years option {

  background-color:
    #071f37 !important;

  color:
    #ffffff !important;

}

/* =========================================
   FREE AGENCY — ROSTER NEED MATCH
========================================= */

.glf-offseason-fa-row.glf-fa-need-match {
  background:
    rgba(245, 185, 66, 0.045);
}

.glf-offseason-fa-row.glf-fa-need-match:hover {
  background:
    rgba(245, 185, 66, 0.08);
}

.glf-fa-need-badge {
  display: inline-block;

  margin-top: 6px;
  padding: 4px 7px;

  border:
    1px solid
    rgba(245, 185, 66, 0.38);

  border-radius: 6px;

  background:
    rgba(245, 185, 66, 0.10);

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .08em;
}

/* =========================================
   FREE AGENCY — OFFER STRENGTH
========================================= */

.glf-fa-offer-strength {
  display: inline-block;
  margin-bottom: 6px;
  padding: 4px 7px;
  border-radius: 6px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
}

.glf-fa-offer-strength.leading {
  color: #69e6a6;
  background: rgba(105,230,166,.12);
  border: 1px solid rgba(105,230,166,.32);
}

.glf-fa-offer-strength.close {
  color: #f5b942;
  background: rgba(245,185,66,.10);
  border: 1px solid rgba(245,185,66,.35);
}

.glf-fa-offer-strength.competitive {
  color: #8fd0ff;
  background: rgba(52,168,255,.10);
  border: 1px solid rgba(52,168,255,.30);
}

.glf-fa-offer-strength.trailing {
  color: #ff919b;
  background: rgba(255,145,155,.08);
  border: 1px solid rgba(255,145,155,.30);
}

.glf-fa-offer-hint {
  display: inline-block;
  margin-top: 4px;
  color: #9bb7d2;
  font-size: 10px;
  line-height: 1.35;
}

/* =========================================
   CLICKABLE ROSTER MAKEUP
========================================= */

.glf-contract-roster-pos[role="button"] {
  cursor: pointer;

  transition:
    transform .15s ease,
    border-color .15s ease,
    background .15s ease;
}


.glf-contract-roster-pos[role="button"]:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(245,185,66,.7);
}


.glf-contract-roster-pos[role="button"]:focus-visible {
  outline:
    2px solid
    #f5b942;

  outline-offset:
    2px;
}


.glf-contract-roster-pos.selected {
  border-color:
    #f5b942;

  background:
    rgba(245,185,66,.12);
}


/* =========================================
   POSITION DETAILS DRAWER
========================================= */

.glf-roster-position-details {
  margin-top: 14px;
  padding: 16px;

  border:
    1px solid
    rgba(52,168,255,.28);

  border-radius: 12px;

  background:
    rgba(5,26,46,.82);
}


.glf-roster-position-details-header {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 16px;

  margin-bottom: 12px;
}


.glf-roster-position-details-header span {
  display: block;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .10em;
}


.glf-roster-position-details-header strong {
  display: block;

  margin-top: 3px;

  color: #fff;

  font-size: 19px;
}


.glf-roster-position-count {
  padding: 7px 10px;

  border-radius: 8px;

  background:
    rgba(255,255,255,.06);

  color: #8fb6df;

  font-size: 11px;
  font-weight: 800;
}


.glf-roster-position-player-list {
  display: grid;
  gap: 7px;
}


.glf-roster-position-player {
  display: grid;

  grid-template-columns:
    minmax(180px, 2fr)
    repeat(
      4,
      minmax(80px, 1fr)
    );

  align-items: center;

  gap: 10px;

  padding: 11px 12px;

  border:
    1px solid
    rgba(255,255,255,.07);

  border-radius: 9px;

  background:
    rgba(255,255,255,.035);
}


.glf-roster-position-player-name strong {
  display: block;

  color: #fff;

  font-size: 14px;
}


.glf-roster-position-player-name span {
  display: block;

  margin-top: 3px;

  color: #8fb6df;

  font-size: 11px;
}


.glf-roster-position-player > div:not(
  .glf-roster-position-player-name
) span {
  display: block;

  color: #7194b6;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .08em;
}


.glf-roster-position-player > div:not(
  .glf-roster-position-player-name
) strong {
  display: block;

  margin-top: 2px;

  color: #fff;

  font-size: 13px;
}


.glf-roster-position-empty {
  padding: 14px;

  border-radius: 8px;

  background:
    rgba(255,255,255,.035);

  color: #8fb6df;

  text-align: center;
}


@media (max-width: 749px) {

  .glf-roster-position-player {
    grid-template-columns:
      1fr 1fr;
  }


  .glf-roster-position-player-name {
    grid-column:
      1 / -1;
  }


  .glf-roster-position-details-header {
    align-items:
      flex-start;
  }

}

/* =========================================
   LIVE DRAFT — CLICKABLE PROSPECT
========================================= */

.glf-live-prospect-profile {
  display: block;
  width: 100%;
  padding: 0;

  border: 0;
  background: transparent;

  color: inherit;
  text-align: left;

  cursor: pointer;
}

.glf-live-prospect-profile strong {
  display: block;

  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.glf-live-prospect-profile small {
  display: block;

  margin-top: 3px;

  color: #9fb8d2;
  font-size: 12px;
}

.glf-live-prospect-profile:hover strong {
  color: #f5b942;
}

.glf-live-prospect-profile:focus-visible {
  outline: 2px solid #f5b942;
  outline-offset: 4px;
  border-radius: 4px;
}

/* =========================================
   PROFILE MODALS — ALWAYS ABOVE GAME SCREENS
========================================= */

/*
  Draft/scouting prospect profile
*/
.glf-prospect-profile-overlay {
  position: fixed !important;
  inset: 0 !important;

  z-index: 2147483600 !important;

  isolation: isolate;
}


/*
  Normal roster/player profile
*/
.glf-player-profile {
  position: fixed !important;
  inset: 0 !important;

  z-index: 2147483600 !important;

  isolation: isolate;
}


/*
  Make sure the actual cards sit
  above their own dark backdrop.
*/
.glf-prospect-profile-card,
.glf-player-profile-card {
  position: relative !important;
  z-index: 2147483601 !important;
}


/*
  Explicitly keep the larger game
  screens underneath profile modals.
*/
.glf-live-draft-overlay,
.glf-roster-overlay,
.glf-depth-overlay,
.glf-offseason-overlay,
.glf-draft-center-overlay {
  z-index: 100000 !important;
}

/* LIVE DRAFT ROSTER TOOL */

.glf-live-draft-roster {
  margin: 18px 0;
}

/* =========================================
   LIVE DRAFT CLOCK — FINAL 30 SECONDS
========================================= */

.glf-live-draft-timer.warning {
  border-color:
    rgba(245,185,66,.9);

  background:
    rgba(245,185,66,.12);
}

.glf-live-draft-timer.warning strong {
  color: #f5b942;
}


/* =========================================
   LIVE DRAFT CLOCK — FINAL 10 SECONDS
========================================= */

.glf-live-draft-timer.danger {
  border-color:
    rgba(255,91,104,.9);

  background:
    rgba(255,91,104,.12);
}

.glf-live-draft-timer.danger strong {
  color: #ff5b68;
}

.glf-live-draft-timer.danger small {
  color: #ff9ca5;
  font-weight: 800;
}


/* =========================================
   LIVE DRAFT CLOCK — EXPIRED
========================================= */

.glf-live-draft-timer.expired {
  border-color:
    rgba(255,91,104,.75);

  background:
    rgba(255,91,104,.10);
}

.glf-live-draft-timer.expired strong,
.glf-live-draft-timer.expired small {
  color: #ff7b86;
}

/* =====================================================
   LIVE DRAFT — FINAL FRANCHISE GM STYLING
===================================================== */


/* ---------- MAIN SCREEN ---------- */

.glf-live-draft-shell {
  max-width: 1480px;
  margin: 0 auto;
  padding: 28px 30px 40px;
}

.glf-live-draft-header {
  margin-bottom: 24px;
}

.glf-live-draft-header h2 {
  margin: 4px 0 0;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1;
}

.glf-live-draft-kicker {
  color: #f5b942;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .16em;
}


/* =====================================================
   ON THE CLOCK — WAR ROOM HERO
===================================================== */

.glf-live-draft-clock {
  margin-bottom: 22px;
  padding: 24px;

  border: 1px solid rgba(52,168,255,.30);
  border-radius: 18px;

  background:
    linear-gradient(
      135deg,
      rgba(17,55,91,.96),
      rgba(5,27,48,.98)
    );

  box-shadow:
    0 14px 30px rgba(0,0,0,.18);
}


/* User pick gets gold treatment */

.glf-live-draft-clock.user {
  display: grid;
  grid-template-columns:
    minmax(0,1fr)
    auto;

  grid-template-rows:
    auto auto auto;

  column-gap: 28px;

  border:
    1px solid
    rgba(245,185,66,.70);

  border-left:
    5px solid
    #f5b942;
}


/* "YOU ARE ON THE CLOCK" */

.glf-live-draft-clock.user > span {
  grid-column: 1;
  grid-row: 1;

  color: #91bce4;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: .12em;
}


/* Pick number */

.glf-live-draft-clock.user > strong {
  grid-column: 1;
  grid-row: 2;

  margin-top: 7px;

  color: #fff;

  font-size: clamp(25px,3vw,34px);
  line-height: 1.1;
}


/* Team */

.glf-live-draft-clock.user >
div:not(.glf-live-draft-timer) {
  grid-column: 1;
  grid-row: 3;

  margin-top: 8px !important;

  font-size: 16px;
}


/* Put countdown on right */

.glf-live-draft-clock.user
.glf-live-draft-timer {
  grid-column: 2;
  grid-row: 1 / 4;

  align-self: center;

  min-width: 180px;

  margin: 0;
  padding: 17px 25px;

  border-radius: 14px;

  background:
    rgba(0,0,0,.18);
}


.glf-live-draft-timer strong {
  font-size: 38px;
}


/* =====================================================
   LIVE DRAFT — ROSTER MAKEUP
===================================================== */

.glf-live-draft-roster {
  margin: 0 0 22px;
}


.glf-live-draft-roster
.glf-contract-roster-makeup {
  padding: 20px 22px;

  border-radius: 18px;

  background:
    linear-gradient(
      135deg,
      rgba(7,38,68,.98),
      rgba(5,29,51,.98)
    );
}


.glf-live-draft-roster
.glf-contract-roster-heading {
  margin-bottom: 16px;
}


.glf-live-draft-roster
.glf-contract-roster-heading > div:first-child > span {
  font-size: 10px;
}


.glf-live-draft-roster
.glf-contract-roster-heading > div:first-child > strong {
  font-size: 23px;
}


/* Compact position cards */

.glf-live-draft-roster
.glf-contract-roster-pos {
  min-height: 92px;

  padding: 12px 8px;
}


.glf-live-draft-roster
.glf-contract-roster-pos strong {
  font-size: 21px;
}


.glf-live-draft-roster
.glf-contract-roster-pos small {
  margin-top: 5px;
}


/* =====================================================
   PROSPECTS + DRAFT RESULTS
===================================================== */

.glf-live-draft-layout {
  display: grid;

  grid-template-columns:
    minmax(0, 1.9fr)
    minmax(320px, .9fr);

  gap: 20px;

  align-items: start;
}


.glf-live-draft-panel {
  overflow: hidden;

  border:
    1px solid
    rgba(52,168,255,.22);

  border-radius: 18px;

  background:
    linear-gradient(
      180deg,
      rgba(13,50,84,.98),
      rgba(7,32,57,.98)
    );

  box-shadow:
    0 14px 30px
    rgba(0,0,0,.16);
}


.glf-live-draft-panel-title {
  padding: 17px 20px;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);

  background:
    rgba(29,75,119,.42);

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;

  letter-spacing: .12em;
}


/* =====================================================
   FILTER BAR
===================================================== */

.glf-live-draft-controls {
  display: grid;

  grid-template-columns:
    190px 1fr;

  gap: 10px;

  padding: 14px;
}


.glf-live-position,
.glf-live-search {
  min-height: 48px;

  border:
    1px solid
    rgba(52,168,255,.35);

  border-radius: 10px;
}


.glf-live-search {
  padding: 0 15px;

  color: #fff;

  background:
    rgba(20,60,98,.75);
}


/* =====================================================
   PROSPECT ROWS
===================================================== */

.glf-live-prospect-row {
  padding: 15px 16px;

  border-top:
    1px solid
    rgba(255,255,255,.07);

  transition:
    background .15s ease,
    transform .15s ease;
}


.glf-live-prospect-row:hover {
  background:
    rgba(255,255,255,.035);
}


.glf-live-prospect-profile strong {
  font-size: 16px;
}


.glf-live-prospect-profile small {
  color: #91afd0;
}


/* Draft button */

.glf-live-draft-pick-button {
  min-width: 108px;
  min-height: 44px;

  border: 0;
  border-radius: 10px;

  background:
    linear-gradient(
      180deg,
      #ffc34d,
      #f5b133
    );

  color: #08213a;

  font-size: 12px;
  font-weight: 900;

  cursor: pointer;

  box-shadow:
    0 5px 12px
    rgba(0,0,0,.16);

  transition:
    transform .15s ease;
}


.glf-live-draft-pick-button:hover {
  transform:
    translateY(-1px);
}


/* =====================================================
   DRAFT RESULTS
===================================================== */

.glf-live-draft-history {
  max-height: 590px;

  overflow-y: auto;

  scrollbar-width: thin;
}


.glf-live-draft-history-row {
  padding: 15px 17px;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);
}


.glf-live-draft-history-row strong {
  color: #fff;

  font-size: 14px;
}


.glf-live-draft-history-row small {
  display: block;

  margin-top: 5px;

  color: #8fb0cf;

  font-size: 12px;
}


/* Cleveland selection */

.glf-live-draft-history-row.user {
  border-left:
    4px solid
    #f5b942;

  background:
    rgba(245,185,66,.08);
}


/* =====================================================
   ADVANCE BUTTON
===================================================== */

.glf-live-draft-advance {
  width: 100%;

  margin-top: 20px;

  min-height: 54px;

  border: 0;
  border-radius: 12px;

  background:
    linear-gradient(
      180deg,
      #2284c5,
      #176ca8
    );

  color: #fff;

  font-size: 15px;
  font-weight: 900;

  letter-spacing: .02em;

  cursor: pointer;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 749px) {

  .glf-live-draft-shell {
    padding:
      18px 12px
      28px;
  }


  .glf-live-draft-header {
    display: block;
  }


  .glf-live-draft-header h2 {
    font-size: 31px;
  }


  .glf-live-draft-header
  .glf-live-draft-back {
    width: 100%;
    margin-top: 15px;
  }


  /* Pick card stacks */

  .glf-live-draft-clock.user {
    display: block;

    padding: 20px 17px;
  }


  .glf-live-draft-clock.user
  .glf-live-draft-timer {
    width: 100%;

    margin-top: 16px;
  }


  /* Roster panel */

  .glf-live-draft-roster
  .glf-contract-roster-makeup {
    padding: 16px 12px;
  }


  .glf-live-draft-roster
  .glf-contract-roster-heading {
    display: block;
  }


  .glf-live-draft-roster
  .glf-contract-roster-overview {
    margin-top: 13px;
  }


  /* Prospect/results stack */

  .glf-live-draft-layout {
    grid-template-columns: 1fr;
  }


  .glf-live-draft-controls {
    grid-template-columns: 1fr;
  }


  .glf-live-position,
  .glf-live-search {
    width: 100%;
  }


  .glf-live-draft-history {
    max-height: 340px;
  }

}

/* =====================================================
   LIVE DRAFT — COMPACT PROSPECT ROWS
===================================================== */

.glf-live-prospect-row {
  display: grid;

  grid-template-columns:
    34px
    minmax(260px, 1fr)
    70px
    70px
    78px
    110px;

  gap: 10px;

  align-items: center;

  padding: 14px 16px;
}


/* Ranking number */

.glf-live-prospect-row > :first-child {
  text-align: center;

  font-size: 15px;
  font-weight: 800;
}


/* Prospect name/profile area */

.glf-live-prospect-profile {
  width: 100%;

  text-align: left;
}


/* Draft button stays on same row */

.glf-live-prospect-row
.glf-live-draft-pick-button {
  width: 100%;
  min-width: 0;

  margin: 0;
}


/* Position emphasis */

.glf-live-prospect-row > :nth-child(3) {
  color: #f5b942;

  font-weight: 900;
}


/* Round + OVR */

.glf-live-prospect-row > :nth-child(4),
.glf-live-prospect-row > :nth-child(5) {
  text-align: center;
}


/* MOBILE */

@media (max-width: 749px) {

  .glf-live-prospect-row {
    grid-template-columns:
      28px
      minmax(0,1fr)
      55px;

    gap: 8px;

    padding: 13px 10px;
  }


  .glf-live-prospect-row > :nth-child(4),
  .glf-live-prospect-row > :nth-child(5) {
    display: none;
  }


  .glf-live-prospect-row
  .glf-live-draft-pick-button {
    grid-column: 2 / 4;

    margin-top: 4px;

    min-height: 42px;
  }

}

/* =====================================================
   LIVE DRAFT — FORCE DRAFT BUTTON INTO ROW
===================================================== */

.glf-live-prospect-row > :nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

.glf-live-prospect-row > :nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.glf-live-prospect-row > :nth-child(3) {
  grid-column: 3;
  grid-row: 1;
}

.glf-live-prospect-row > :nth-child(4) {
  grid-column: 4;
  grid-row: 1;
}

.glf-live-prospect-row > :nth-child(5) {
  grid-column: 5;
  grid-row: 1;
}

.glf-live-prospect-row > :nth-child(6) {
  grid-column: 6 !important;
  grid-row: 1 !important;

  width: 100%;
  margin: 0 !important;
}

.glf-live-prospect-row
.glf-live-draft-pick-button {
  width: 100% !important;
  margin: 0 !important;
}

/* =====================================================
   LIVE DRAFT — PROSPECT COLUMN HEADERS
===================================================== */

.glf-live-prospect-header {
  display: grid;

  grid-template-columns:
    34px
    minmax(260px, 1fr)
    70px
    70px
    78px
    110px;

  gap: 10px;

  align-items: center;

  padding: 10px 16px;

  border-top:
    1px solid
    rgba(255,255,255,.06);

  border-bottom:
    1px solid
    rgba(255,255,255,.10);

  background:
    rgba(0,0,0,.14);

  color: #7fa9ce;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .11em;
}


.glf-live-prospect-header > div:first-child {
  text-align: center;
}


.glf-live-prospect-header > div:nth-child(3),
.glf-live-prospect-header > div:nth-child(4),
.glf-live-prospect-header > div:nth-child(5),
.glf-live-prospect-header > div:nth-child(6) {
  text-align: center;
}


/* Keep mobile draft board uncluttered */

@media (max-width: 749px) {

  .glf-live-prospect-header {
    display: none;
  }

}

/* =====================================================
   LIVE DRAFT — DRAFT TOOLS
===================================================== */

.glf-live-draft-tools {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;

  padding: 12px 14px;

  border-top:
    1px solid
    rgba(255,255,255,.05);

  border-bottom:
    1px solid
    rgba(255,255,255,.08);

  background:
    rgba(4,24,43,.45);
}


.glf-draft-tool-button {
  min-height: 38px;

  padding: 0 13px;

  border:
    1px solid
    rgba(72,148,211,.30);

  border-radius: 8px;

  background:
    rgba(24,65,103,.55);

  color: #91bce4;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .06em;

  cursor: pointer;

  transition:
    background .15s ease,
    border-color .15s ease,
    color .15s ease,
    transform .15s ease;
}


.glf-draft-tool-button:hover {
  transform:
    translateY(-1px);

  border-color:
    rgba(245,185,66,.55);

  color: #fff;
}


.glf-draft-tool-button.active {
  border-color:
    rgba(245,185,66,.80);

  background:
    rgba(245,185,66,.12);

  color: #f5b942;
}


.glf-live-draft-assistant {
  padding: 0;
}


.glf-live-draft-assistant[hidden] {
  display: none !important;
}


@media (max-width: 749px) {

  .glf-live-draft-tools {
    display: grid;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    gap: 7px;

    padding: 10px;
  }


  .glf-draft-tool-button {
    width: 100%;

    padding: 0 7px;

    font-size: 9px;
  }


  .glf-draft-tool-button:first-child {
    grid-column: 1 / -1;
  }

}

/* =====================================================
   LIVE DRAFT — DRAFT TOOL SUMMARY
===================================================== */

.glf-draft-view-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;

  padding: 15px 18px;

  border-bottom:
    1px solid
    rgba(255,255,255,.08);

  background:
    linear-gradient(
      90deg,
      rgba(245,185,66,.08),
      rgba(22,63,99,.18)
    );
}


.glf-draft-view-summary > div:first-child {
  display: flex;
  flex-direction: column;
}


.glf-draft-view-summary span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .12em;
}


.glf-draft-view-summary strong {
  margin-top: 3px;

  color: #fff;

  font-size: 18px;
}


.glf-draft-view-summary small {
  margin-top: 3px;

  color: #8fb0cf;

  font-size: 11px;
}


.glf-draft-view-stat {
  min-width: 95px;

  padding: 9px 13px;

  border:
    1px solid
    rgba(72,148,211,.25);

  border-radius: 9px;

  background:
    rgba(13,48,80,.75);

  text-align: center;
}


.glf-draft-view-stat strong {
  display: block;

  font-size: 21px;
}


/* TEAM NEED CARDS */

.glf-draft-needs-list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;

  padding: 12px 16px;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);

  background:
    rgba(4,24,43,.45);
}


.glf-draft-need-card {
  min-width: 105px;

  padding: 9px 12px;

  border:
    1px solid
    rgba(245,185,66,.35);

  border-radius: 9px;

  background:
    rgba(245,185,66,.07);

  text-align: center;
}


.glf-draft-need-card span {
  display: block;

  color: #91bce4;

  font-size: 10px;
  font-weight: 900;
}


.glf-draft-need-card strong {
  display: block;

  margin-top: 3px;

  color: #fff;

  font-size: 18px;
}


.glf-draft-need-card small {
  display: block;

  margin-top: 2px;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-draft-no-needs {
  color: #5cf2ae;

  font-size: 12px;
  font-weight: 800;
}


@media (max-width: 749px) {

  .glf-draft-view-summary {
    align-items: flex-start;
  }


  .glf-draft-view-stat {
    min-width: 78px;
  }


  .glf-draft-needs-list {
    display: grid;

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


  .glf-draft-need-card {
    min-width: 0;
  }

}

.glf-live-prospect-row.glf-advisor-pick-row {
  background:
    linear-gradient(
      90deg,
      rgba(245,185,66,.12),
      rgba(245,185,66,.03)
    );

  box-shadow:
    inset 4px 0 0 #f5b942;
}

@media (max-width: 600px) {

  .glf-gm .glf-live-prospects .glf-live-prospect-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;

    position: relative !important;

    width: 100% !important;
    box-sizing: border-box !important;

    padding: 16px 14px 16px 52px !important;
    gap: 10px !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(1) {
    position: absolute !important;
    left: 16px !important;
    top: 24px !important;

    width: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(2) {
    display: block !important;
    position: static !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(3),

  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(4),

  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(5) {
    display: none !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-prospect-name {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    box-sizing: border-box !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-prospect-row > div:nth-child(6) {
    display: block !important;
    position: static !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
  }


  .glf-gm .glf-live-prospects
  .glf-live-draft-pick-button {
    display: block !important;
    position: static !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 12px 14px !important;

    transform: none !important;
    box-sizing: border-box !important;
  }

}

@media (min-width: 601px) {

  .glf-gm .glf-live-prospects
  .glf-live-draft-pick-button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 105px !important;

    padding-left: 10px !important;
    padding-right: 10px !important;

    box-sizing: border-box !important;
  }

}

/* =====================================
   OFFSEASON FREE AGENCY — MOBILE CARDS
===================================== */

@media (max-width: 600px) {

  /* Hide desktop column headings */
  .glf-gm
  .glf-offseason-fa-table
  .glf-offseason-fa-row.header {
    display: none !important;
  }


  /* Turn each free agent into a mobile card */
  .glf-gm
  .glf-offseason-fa-table
  .glf-offseason-fa-row {
    display: grid !important;

    grid-template-columns:
      minmax(0, 1fr)
      minmax(0, 1fr) !important;

    gap: 12px 16px !important;

    width: 100% !important;
    min-width: 0 !important;

    padding: 18px 16px !important;

    box-sizing: border-box !important;
  }


  /* PLAYER */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(1) {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
  }


  /* POS */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(2) {
    grid-column: 1 !important;
  }


  /* OVR */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(3) {
    grid-column: 2 !important;
  }


  /* AGE */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(4) {
    grid-column: 1 !important;
  }


  /* ASK */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(5) {
    grid-column: 2 !important;
  }


  /* YEARS */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(6) {
    grid-column: 1 !important;
  }


  /* MARKET */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(7) {
    grid-column: 1 / -1 !important;

    width: 100% !important;
    min-width: 0 !important;
  }


  /* YOUR OFFER */
  .glf-gm
  .glf-offseason-fa-row > div:nth-child(8) {
    grid-column: 1 / -1 !important;

    display: grid !important;
    grid-template-columns: 1fr 1fr !important;

    gap: 10px !important;

    width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box !important;
  }


  .glf-gm
  .glf-offseason-fa-salary,

  .glf-gm
  .glf-offseason-fa-years {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    box-sizing: border-box !important;
  }


  .glf-gm
  .glf-offseason-fa-offer,

  .glf-gm
  .glf-offseason-fa-withdraw {
    grid-column: 1 / -1 !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    box-sizing: border-box !important;
  }


  .glf-gm
  .glf-offseason-fa-table {
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

}

/* =========================================================
   FRANCHISE GM
   DRAFT RECAP REDESIGN
========================================================= */

.glf-gm .glf-draft-recap {
  width: 100%;
  padding: 10px 4px 24px;
}


/* ---------------------------------------------------------
   MAKE RECAP THE MAIN FOCUS
--------------------------------------------------------- */

.glf-gm
.glf-live-draft-layout:has(.glf-draft-recap) {
  grid-template-columns: minmax(0, 1fr) !important;
}

.glf-gm
.glf-live-draft-layout:has(.glf-draft-recap)
> .glf-live-draft-panel:nth-child(2) {
  display: none !important;
}

.glf-gm
.glf-live-draft-panel:has(.glf-draft-recap)
> .glf-live-draft-panel-title,
.glf-gm
.glf-live-draft-panel:has(.glf-draft-recap)
.glf-live-draft-controls,
.glf-gm
.glf-live-draft-panel:has(.glf-draft-recap)
.glf-live-draft-tools {
  display: none !important;
}


/* ---------------------------------------------------------
   HEADER
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-heading {
  padding: 26px;
  margin-bottom: 20px;

  background:
    linear-gradient(
      135deg,
      rgba(16, 59, 94, .96),
      rgba(4, 29, 49, .98)
    );

  border:
    1px solid rgba(65, 170, 230, .35);

  border-radius: 20px;

  box-shadow:
    0 16px 38px rgba(0, 0, 0, .25);
}

.glf-gm .glf-draft-recap-kicker {
  margin-bottom: 12px;

  color: #f5b942;

  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
}

.glf-gm .glf-draft-recap-title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}

.glf-gm .glf-draft-recap-title-copy h2 {
  margin: 0;

  color: #ffffff;

  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.05;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-title-copy p {
  max-width: 650px;

  margin:
    14px 0 0;

  color: #b9cbe0;

  font-size: 16px;
  line-height: 1.55;
}


/* Overall grade badge */

.glf-gm .glf-draft-recap-overall {
  flex: 0 0 150px;

  min-height: 140px;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  padding: 18px;

  background:
    linear-gradient(
      145deg,
      #f8c24c,
      #e69d20
    );

  border-radius: 18px;

  box-shadow:
    0 12px 28px rgba(245, 185, 66, .22);

  color: #071b2c;
}

.glf-gm .glf-draft-recap-overall span {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.glf-gm .glf-draft-recap-overall strong {
  margin-top: 4px;

  font-size: 58px;
  line-height: 1;
  font-weight: 1000;
}


/* ---------------------------------------------------------
   SUMMARY CARDS
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-summary {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 14px;

  margin-bottom: 18px;
}

.glf-gm .glf-draft-recap-card {
  min-height: 132px;

  padding: 20px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  background:
    linear-gradient(
      145deg,
      #0c3454,
      #08243c
    );

  border:
    1px solid rgba(66, 153, 207, .28);

  border-radius: 17px;
}

.glf-gm .glf-draft-recap-card span {
  color: #8eb4d4;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.glf-gm .glf-draft-recap-card strong {
  margin: 7px 0 3px;

  color: #ffffff;

  font-size: 34px;
  line-height: 1;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-card small {
  color: #9fb2c7;

  font-size: 13px;
}


/* ---------------------------------------------------------
   BEST PICK / BIGGEST REACH
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-highlights {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 14px;

  margin-bottom: 26px;
}

.glf-gm .glf-draft-recap-highlight {
  padding: 20px;

  min-height: 135px;

  background:
    linear-gradient(
      145deg,
      rgba(12, 52, 84, .96),
      rgba(7, 33, 54, .98)
    );

  border:
    1px solid rgba(70, 155, 210, .28);

  border-radius: 17px;
}

.glf-gm .glf-draft-recap-best {
  border-color:
    rgba(245, 185, 66, .55);
}

.glf-gm .glf-draft-recap-highlight-label {
  margin-bottom: 13px;

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.glf-gm .glf-draft-recap-highlight-player {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.glf-gm .glf-draft-recap-highlight-player strong {
  color: #ffffff;

  font-size: 22px;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-highlight-player span {
  padding: 4px 9px;

  background:
    rgba(41, 135, 194, .24);

  border-radius: 20px;

  color: #8fc7ee;

  font-size: 12px;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-highlight-meta {
  margin-top: 9px;

  color: #a9bed2;

  font-size: 14px;
}


/* ---------------------------------------------------------
   SELECTIONS HEADER
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-section-header {
  margin:
    4px 0 14px;

  padding-bottom: 12px;

  border-bottom:
    1px solid rgba(110, 162, 199, .2);
}

.glf-gm .glf-draft-recap-section-header span {
  display: block;

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.8px;
}

.glf-gm .glf-draft-recap-section-header strong {
  display: block;

  margin-top: 4px;

  color: #ffffff;

  font-size: 24px;
  font-weight: 900;
}


/* ---------------------------------------------------------
   PICK CARDS
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-picks {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 12px;

  margin-bottom: 22px;
}

.glf-gm .glf-draft-recap-pick {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 15px;

  padding: 18px;

  background:
    linear-gradient(
      145deg,
      #0b304e,
      #071f35
    );

  border:
    1px solid rgba(61, 143, 199, .25);

  border-radius: 16px;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.glf-gm .glf-draft-recap-pick:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(245, 185, 66, .52);

  box-shadow:
    0 10px 24px rgba(0, 0, 0, .22);
}

.glf-gm .glf-draft-recap-pick-top {
  grid-column:
    1 / -1;

  display: flex;
  align-items: center;
  gap: 10px;
}

.glf-gm .glf-draft-recap-pick-number {
  color: #f5b942;

  font-size: 22px;
  font-weight: 1000;
}

.glf-gm .glf-draft-recap-round {
  padding: 4px 8px;

  border:
    1px solid rgba(105, 168, 210, .25);

  border-radius: 7px;

  color: #9fc4df;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.1px;
}

.glf-gm .glf-draft-recap-player {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.glf-gm .glf-draft-recap-player strong {
  color: #ffffff;

  font-size: 20px;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-player span {
  padding: 4px 8px;

  background:
    rgba(43, 142, 204, .2);

  border-radius: 20px;

  color: #8cc7ef;

  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-draft-recap-pick-meta {
  margin-top: 6px;

  color: #9db3c8;

  font-size: 13px;
}


/* Pick grade */

.glf-gm .glf-draft-recap-pick-grade {
  min-width: 76px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 10px;

  background:
    rgba(245, 185, 66, .11);

  border:
    1px solid rgba(245, 185, 66, .28);

  border-radius: 12px;
}

.glf-gm .glf-draft-recap-pick-grade span {
  color: #c6a457;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-draft-recap-pick-grade strong {
  margin-top: 3px;

  color: #f5b942;

  font-size: 28px;
  line-height: 1;
  font-weight: 1000;
}


/* ---------------------------------------------------------
   NOTE + FINALIZE
--------------------------------------------------------- */

.glf-gm .glf-draft-recap-note,
.glf-gm .glf-draft-recap-finalized {
  margin: 18px 0;

  padding: 14px 17px;

  border-radius: 12px;

  background:
    rgba(26, 72, 103, .35);

  color: #abc0d3;

  font-size: 13px;
  line-height: 1.5;
}

.glf-gm
.glf-draft-recap
.glf-rookie-integrate-button {
  width: 100% !important;

  min-height: 64px;

  margin-top: 8px;

  border: 0;

  border-radius: 15px;

  background:
    linear-gradient(
      135deg,
      #ffc94d,
      #f3a927
    );

  color: #071b2c;

  font-size: 15px;
  font-weight: 1000;
  letter-spacing: .7px;

  cursor: pointer;

  box-shadow:
    0 10px 24px rgba(245, 185, 66, .18);
}


/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 600px) {

  .glf-gm .glf-draft-recap {
    padding:
      4px 0 20px;
  }

  .glf-gm .glf-draft-recap-heading {
    padding: 20px;
  }

  .glf-gm .glf-draft-recap-title-row {
    flex-direction: column;
    align-items: stretch;
  }

  .glf-gm .glf-draft-recap-overall {
    min-height: 100px;
    flex-basis: auto;
  }

  .glf-gm .glf-draft-recap-overall strong {
    font-size: 48px;
  }

  .glf-gm .glf-draft-recap-summary {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .glf-gm
  .glf-draft-recap-summary
  .glf-draft-recap-card:last-child {
    grid-column:
      1 / -1;
  }

  .glf-gm .glf-draft-recap-highlights {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-draft-recap-picks {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-draft-recap-pick {
    padding: 15px;
  }

  .glf-gm .glf-draft-recap-player strong {
    font-size: 18px;
  }

}

/* Hide Draft Roster Tool once Draft Recap is showing */

.glf-gm
.glf-live-draft-shell:has(.glf-draft-recap)
.glf-contract-roster-makeup {
  display: none !important;
}

/* Remove old Live Draft panel frame around recap */

.glf-gm
.glf-live-draft-panel:has(.glf-draft-recap) {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Let the final odd draft pick span the full row */

@media (min-width: 601px) {

  .glf-gm
  .glf-draft-recap-picks
  > .glf-draft-recap-pick:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

}

/* =========================================================
   FRANCHISE GM
   ROOKIE CLASS REDESIGN
========================================================= */

.glf-gm .glf-rookie-subtitle {
  margin-top: 4px;

  color: #9fb2c7;

  font-size: 18px;
  font-weight: 700;
}

.glf-gm .glf-rookie-description {
  max-width: 680px;

  margin:
    10px 0 0;

  color: #9fb2c7;

  font-size: 14px;
  line-height: 1.5;
}


/* ---------------------------------------------------------
   SUMMARY CARDS
--------------------------------------------------------- */

.glf-gm .glf-rookie-summary {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 14px;

  margin-bottom: 26px;
}

.glf-gm .glf-rookie-summary-card {
  min-height: 128px;

  padding: 20px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  background:
    linear-gradient(
      145deg,
      #0c3454,
      #08243c
    );

  border:
    1px solid rgba(66, 153, 207, .28);

  border-radius: 17px;
}

.glf-gm .glf-rookie-summary-card span {
  color: #8eb4d4;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.glf-gm .glf-rookie-summary-card strong {
  margin-top: 7px;

  color: #ffffff;

  font-size: 32px;
  line-height: 1.05;
  font-weight: 900;
}

.glf-gm .glf-rookie-summary-card small {
  display: block;

  margin-top: 6px;

  color: #9fb2c7;

  font-size: 13px;
}

.glf-gm .glf-rookie-top-prospect {
  border-color:
    rgba(245, 185, 66, .5);
}


/* ---------------------------------------------------------
   ROOKIE CLASS HEADING
--------------------------------------------------------- */

.glf-gm .glf-rookie-class-heading {
  margin-bottom: 14px;

  padding-bottom: 12px;

  border-bottom:
    1px solid rgba(110, 162, 199, .2);
}

.glf-gm .glf-rookie-class-heading span {
  display: block;

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.7px;
}

.glf-gm .glf-rookie-class-heading strong {
  display: block;

  margin-top: 4px;

  color: #ffffff;

  font-size: 24px;
  font-weight: 900;
}


/* ---------------------------------------------------------
   ROOKIE GRID
--------------------------------------------------------- */

.glf-gm .glf-rookie-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 14px;
}

.glf-gm .glf-rookie-card {
  padding: 20px;

  background:
    linear-gradient(
      145deg,
      #0b304e,
      #071f35
    );

  border:
    1px solid rgba(61, 143, 199, .28);

  border-radius: 17px;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.glf-gm .glf-rookie-card:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(245, 185, 66, .5);

  box-shadow:
    0 10px 24px rgba(0,0,0,.22);
}

.glf-gm .glf-rookie-card.top-rookie {
  border-color:
    rgba(245, 185, 66, .7);

  box-shadow:
    0 0 0 1px rgba(245, 185, 66, .08);
}


/* ---------------------------------------------------------
   PICK / ROUND / TOP BADGE
--------------------------------------------------------- */

.glf-gm .glf-rookie-card-top {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;

  margin-bottom: 18px;
}

.glf-gm .glf-rookie-pick {
  color: #f5b942;

  font-size: 24px;
  font-weight: 1000;
}

.glf-gm .glf-rookie-round {
  padding: 4px 8px;

  border:
    1px solid rgba(105, 168, 210, .25);

  border-radius: 7px;

  color: #9fc4df;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-rookie-top-badge {
  margin-left: auto;

  padding: 5px 9px;

  background:
    rgba(245, 185, 66, .12);

  border:
    1px solid rgba(245, 185, 66, .35);

  border-radius: 20px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: .8px;
}


/* ---------------------------------------------------------
   PLAYER + DRAFT GRADE
--------------------------------------------------------- */

.glf-gm .glf-rookie-card-player {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;

  margin-bottom: 18px;
}

.glf-gm .glf-rookie-card-player > div:first-child {
  min-width: 0;
}

.glf-gm .glf-rookie-card-player strong {
  display: block;

  color: #ffffff;

  font-size: 22px;
  font-weight: 900;
}

.glf-gm .glf-rookie-card-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;

  margin-top: 7px;

  color: #9fb2c7;

  font-size: 13px;
}

.glf-gm .glf-rookie-position {
  padding: 4px 8px;

  background:
    rgba(43, 142, 204, .2);

  border-radius: 20px;

  color: #8cc7ef;

  font-size: 11px;
  font-weight: 900;
}

.glf-gm .glf-rookie-draft-grade {
  flex: 0 0 88px;

  min-height: 82px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 9px;

  background:
    rgba(245, 185, 66, .10);

  border:
    1px solid rgba(245, 185, 66, .27);

  border-radius: 12px;
}

.glf-gm .glf-rookie-draft-grade span {
  color: #c6a457;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: .9px;
}

.glf-gm .glf-rookie-draft-grade strong {
  margin-top: 4px;

  color: #f5b942;

  font-size: 27px;
  line-height: 1;
  font-weight: 1000;
}


/* ---------------------------------------------------------
   ROOKIE STATS
--------------------------------------------------------- */

.glf-gm .glf-rookie-card-stats {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 8px;

  padding-top: 16px;

  border-top:
    1px solid rgba(105, 159, 198, .16);
}

.glf-gm .glf-rookie-card-stats > div {
  min-width: 0;
}

.glf-gm .glf-rookie-card-stats span {
  display: block;

  color: #759fc0;

  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-rookie-card-stats strong {
  display: block;

  margin-top: 4px;

  color: #ffffff;

  font-size: 16px;
  font-weight: 900;

  word-break: break-word;
}


/* Final odd card fills row */

@media (min-width: 601px) {

  .glf-gm
  .glf-rookie-grid
  > .glf-rookie-card:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

}


/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 600px) {

  .glf-gm .glf-rookie-summary {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .glf-gm .glf-rookie-summary-card {
    min-height: 110px;
    padding: 16px;
  }

  .glf-gm .glf-rookie-summary-card strong {
    font-size: 26px;
  }

  .glf-gm .glf-rookie-grid {
    grid-template-columns: 1fr;
  }

  .glf-gm .glf-rookie-card {
    padding: 16px;
  }

  .glf-gm .glf-rookie-card-player {
    align-items: flex-start;
  }

  .glf-gm .glf-rookie-card-player strong {
    font-size: 19px;
  }

  .glf-gm .glf-rookie-draft-grade {
    flex-basis: 72px;
    min-height: 72px;
  }

  .glf-gm .glf-rookie-draft-grade strong {
    font-size: 24px;
  }

  .glf-gm .glf-rookie-card-stats {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 14px 8px;
  }

}

/* =========================================================
   FINAL ROSTER CUTS
   ROOKIE CLASS BUTTON
========================================================= */

.glf-gm .glf-cuts-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.glf-gm .glf-cuts-rookie-class {
  padding: 10px 14px;

  border:
    1px solid rgba(245, 185, 66, .45);

  border-radius: 10px;

  background:
    rgba(245, 185, 66, .10);

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;
  letter-spacing: .8px;

  cursor: pointer;
}

.glf-gm .glf-cuts-rookie-class:hover {
  background:
    rgba(245, 185, 66, .18);

  border-color:
    rgba(245, 185, 66, .75);
}

@media (max-width: 600px) {

  .glf-gm .glf-cuts-header-actions {
    width: 100%;
  }

  .glf-gm .glf-cuts-rookie-class,
  .glf-gm .glf-cuts-back {
    width: 100%;
  }

}

/* =========================================================
   ROOKIE CLASS ABOVE FINAL ROSTER CUTS
========================================================= */

.glf-gm .glf-rookie-overlay {
  position: fixed !important;
  z-index: 99999 !important;
}

.glf-gm .glf-cuts-overlay {
  z-index: 90000 !important;
}

/* =========================================================
   ASSISTANT GM
   SUGGESTED ROSTER CUTS
========================================================= */

.glf-gm .glf-cuts-suggestions {
  margin-bottom: 22px;
}

.glf-gm .glf-cuts-suggestions-card {
  padding: 22px;

  background:
    linear-gradient(
      145deg,
      #0b304e,
      #071f35
    );

  border:
    1px solid rgba(245, 185, 66, .35);

  border-radius: 16px;
}

.glf-gm .glf-cuts-suggestions-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;

  margin-bottom: 12px;
}

.glf-gm .glf-cuts-suggestions-heading span {
  display: block;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.6px;
}

.glf-gm .glf-cuts-suggestions-heading strong {
  display: block;

  margin-top: 3px;

  color: #ffffff;

  font-size: 26px;
  font-weight: 900;
}

.glf-gm .glf-cuts-suggestions-count {
  padding: 8px 12px;

  background:
    rgba(245, 185, 66, .12);

  border:
    1px solid rgba(245, 185, 66, .35);

  border-radius: 20px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: .8px;

  white-space: nowrap;
}

.glf-gm .glf-cuts-suggestions-card > p {
  margin:
    0 0 18px;

  color: #a9bed2;

  font-size: 14px;
  line-height: 1.5;
}

.glf-gm .glf-cuts-suggestions-list {
  display: grid;
  gap: 9px;
}

.glf-gm .glf-cuts-suggestion {
  display: grid;

  grid-template-columns:
  40px
  minmax(190px, .8fr)
  minmax(0, 1.4fr)
  150px;

  gap: 14px;

  align-items: center;

  padding: 13px 15px;

  background:
    rgba(17, 57, 88, .66);

  border:
    1px solid rgba(78, 145, 192, .18);

  border-radius: 12px;
}

.glf-gm .glf-cuts-suggestion-rank {
  width: 34px;
  height: 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    rgba(245, 185, 66, .12);

  border-radius: 50%;

  color: #f5b942;

  font-size: 15px;
  font-weight: 1000;
}

.glf-gm .glf-cuts-suggestion-player strong {
  display: block;

  color: #ffffff;

  font-size: 16px;
  font-weight: 900;
}

.glf-gm .glf-cuts-suggestion-player span {
  display: block;

  margin-top: 3px;

  color: #8fc2e5;

  font-size: 12px;
  font-weight: 700;
}

.glf-gm .glf-cuts-suggestion-reason {
  color: #a9bed2;

  font-size: 13px;
  line-height: 1.4;
}

.glf-gm .glf-cuts-suggestion-empty {
  padding: 16px;

  color: #9fb2c7;

  text-align: center;
}


/* Mobile */

@media (max-width: 600px) {

  .glf-gm .glf-cuts-suggestions-card {
    padding: 17px;
  }

  .glf-gm .glf-cuts-suggestions-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .glf-gm .glf-cuts-suggestion {
    grid-template-columns:
      34px
      minmax(0, 1fr);
  }

  .glf-gm .glf-cuts-suggestion-reason {
    grid-column:
      2;
  }

}

.glf-gm .glf-cuts-suggestion-actions {
  display: flex;
  justify-content: flex-end;
}

.glf-gm .glf-cuts-suggestion-release {
  width: 100%;
  max-width: 150px;
  min-height: 42px;
}

@media (max-width: 600px) {

  .glf-gm .glf-cuts-suggestion-actions {
    grid-column: 2;
    justify-content: stretch;
  }

  .glf-gm .glf-cuts-suggestion-release {
    max-width: none;
  }

}

/* =========================================================
   FINAL ROSTER CUTS - ROSTER MAKEUP
========================================================= */

.glf-gm .glf-cuts-roster-makeup {
  margin: 22px 0;
}

.glf-gm .glf-cuts-makeup-card {
  padding: 22px;

  background:
    linear-gradient(
      145deg,
      #0b304e,
      #071f35
    );

  border:
    1px solid rgba(78, 145, 192, .25);

  border-radius: 16px;
}

.glf-gm .glf-cuts-makeup-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;

  margin-bottom: 18px;
}

.glf-gm .glf-cuts-makeup-heading > div:first-child > span {
  display: block;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.glf-gm .glf-cuts-makeup-heading > div:first-child > strong {
  display: block;

  margin-top: 4px;

  color: #ffffff;

  font-size: 24px;
  font-weight: 900;
}

.glf-gm .glf-cuts-makeup-overview {
  display: flex;
  gap: 10px;
}

.glf-gm .glf-cuts-makeup-overview > div {
  min-width: 82px;

  padding: 8px 12px;

  background: rgba(255,255,255,.04);

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 10px;

  text-align: center;
}

.glf-gm .glf-cuts-makeup-overview span {
  display: block;

  color: #8da7be;

  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
}

.glf-gm .glf-cuts-makeup-overview strong {
  display: block;

  margin-top: 3px;

  color: #ffffff;

  font-size: 20px;
  font-weight: 900;
}


/* POSITION GRID */

.glf-gm .glf-cuts-makeup-grid {
  display: grid;

  grid-template-columns:
    repeat(5, minmax(0, 1fr));

  gap: 10px;
}


/* POSITION TILE */

.glf-gm .glf-cuts-makeup-position {
  appearance: none;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  min-height: 88px;

  padding: 13px 14px;

  background: #102f4d;

  border:
    1px solid rgba(108, 158, 194, .25);

  border-radius: 12px;

  color: #ffffff;

  text-align: left;

  cursor: pointer;

  transition:
    transform .15s ease,
    border-color .15s ease,
    background .15s ease;
}

.glf-gm .glf-cuts-makeup-position:hover {
  transform: translateY(-2px);

  background: #143959;

  border-color:
    rgba(245,185,66,.6);
}

.glf-gm .glf-cuts-makeup-position > span {
  color: #91b8d5;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.glf-gm .glf-cuts-makeup-position > strong {
  margin-top: 4px;

  color: #ffffff;

  font-size: 22px;
  font-weight: 900;
}

.glf-gm .glf-cuts-makeup-position > small {
  margin-top: auto;

  font-size: 11px;
  font-weight: 900;
}


/* SET */

.glf-gm .glf-cuts-makeup-position.set {
  border-color:
    rgba(71, 209, 137, .28);
}

.glf-gm .glf-cuts-makeup-position.set > small {
  color: #65d99d;
}


/* EXTRA */

.glf-gm .glf-cuts-makeup-position.extra {
  background:
    linear-gradient(
      145deg,
      rgba(245,185,66,.13),
      #102f4d
    );

  border-color:
    rgba(245,185,66,.55);
}

.glf-gm .glf-cuts-makeup-position.extra > small {
  color: #f5b942;
}


/* NEED */

.glf-gm .glf-cuts-makeup-position.need {
  background:
    linear-gradient(
      145deg,
      rgba(255,91,103,.11),
      #102f4d
    );

  border-color:
    rgba(255,91,103,.45);
}

.glf-gm .glf-cuts-makeup-position.need > small {
  color: #ff8b94;
}


/* TABLET */

@media (max-width: 900px) {

  .glf-gm .glf-cuts-makeup-grid {
    grid-template-columns:
      repeat(3, minmax(0, 1fr));
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .glf-gm .glf-cuts-makeup-card {
    padding: 16px;
  }

  .glf-gm .glf-cuts-makeup-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .glf-gm .glf-cuts-makeup-overview {
    width: 100%;
  }

  .glf-gm .glf-cuts-makeup-overview > div {
    flex: 1;
  }

  .glf-gm .glf-cuts-makeup-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}

.glf-gm .glf-cuts-makeup-position.selected {
  box-shadow:
    0 0 0 2px #f5b942,
    0 8px 20px rgba(0,0,0,.18);

  transform: translateY(-2px);
}

.glf-gm .glf-cuts-makeup-position.selected > span {
  color: #f5b942;
}

/* =========================================================
   FINAL ROSTER CUTS - CLEAR FILTER
========================================================= */

.glf-gm .glf-cuts-clear-filter {
  min-width: 120px;
  min-height: 50px;

  padding: 0 18px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 12px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;

  cursor: pointer;

  transition:
    background .15s ease,
    border-color .15s ease;
}

.glf-gm .glf-cuts-clear-filter:hover {
  background:
    rgba(245,185,66,.18);

  border-color:
    rgba(245,185,66,.85);
}


@media (max-width: 600px) {

  .glf-gm .glf-cuts-clear-filter {
    width: 100%;
  }

}

/* =========================================================
   BYE WEEK RECOVERY
========================================================= */

.glf-gm .glf-bye-benefit {
  display: flex;
  flex-direction: column;
  gap: 5px;

  margin: 0 0 14px;

  padding: 14px 16px;

  background:
    linear-gradient(
      145deg,
      rgba(57, 168, 116, .14),
      rgba(8, 40, 58, .9)
    );

  border:
    1px solid rgba(91, 221, 154, .35);

  border-radius: 12px;
}

.glf-gm .glf-bye-benefit strong {
  color: #69e3a6;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.glf-gm .glf-bye-benefit span {
  color: #b9cfdf;

  font-size: 13px;
  line-height: 1.45;
}

@media (max-width: 600px) {

  .glf-gm .glf-bye-benefit {
    padding: 13px 14px;
  }

}

/* =========================================================
   OFFICIAL GAME BOX SCORE - DESKTOP
========================================================= */

.glf-gm .glf-game-result-card {
  width: min(1080px, calc(100vw - 48px));
  max-width: 1080px;
  max-height: 88vh;

  padding: 38px 42px;

  overflow-y: auto;
  overflow-x: hidden;
}


/* MAIN BOX SCORE WRAPPER */

.glf-gm .glf-official-boxscore {
  margin-top: 28px;
}

.glf-gm .glf-boxscore-title {
  margin-bottom: 22px;

  color: #f5b942;

  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
}


/* SECTION */

.glf-gm .glf-boxscore-official-section {
  margin-bottom: 28px;
}

.glf-gm .glf-boxscore-official-heading {
  margin-bottom: 10px;

  color: #ffffff;

  font-size: 18px;
  font-weight: 900;
  letter-spacing: .5px;
}


/* TABLE CONTAINER */

.glf-gm .glf-boxscore-table-wrap {
  width: 100%;

  overflow-x: auto;

  background:
    rgba(7, 31, 53, .65);

  border:
    1px solid rgba(113, 157, 192, .22);

  border-radius: 14px;
}


/* TABLE */

.glf-gm .glf-boxscore-table {
  width: 100%;

  border-collapse: collapse;

  color: #ffffff;

  font-size: 14px;
}

.glf-gm .glf-boxscore-table thead {
  background:
    rgba(20, 59, 91, .9);
}

.glf-gm .glf-boxscore-table th {
  padding: 12px 14px;

  color: #9fc0dc;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;

  text-align: center;

  white-space: nowrap;
}

.glf-gm .glf-boxscore-table th:first-child {
  text-align: left;
}

.glf-gm .glf-boxscore-table td {
  padding: 13px 14px;

  border-top:
    1px solid rgba(255,255,255,.07);

  text-align: center;

  vertical-align: middle;
}

.glf-gm .glf-boxscore-table td:first-child {
  text-align: left;
}

.glf-gm .glf-boxscore-table tbody tr:hover {
  background:
    rgba(255,255,255,.025);
}

.glf-gm .glf-boxscore-table td strong {
  color: #ffffff;

  font-weight: 900;
}


/* TEAM COMPARISON */

.glf-gm .glf-boxscore-team-table th:first-child,
.glf-gm .glf-boxscore-team-table td:first-child {
  width: 34%;
}

.glf-gm .glf-boxscore-team-table th:not(:first-child),
.glf-gm .glf-boxscore-team-table td:not(:first-child) {
  width: 33%;
}

.glf-gm .glf-boxscore-team-table tbody td:not(:first-child) {
  font-size: 18px;
  font-weight: 800;
}

.glf-gm .glf-boxscore-team-table tbody tr:first-child td {
  color: #f5b942;

  font-size: 20px;
  font-weight: 900;
}


/* OFFENSIVE LEADERS */

.glf-gm .glf-boxscore-offense-grid {
  display: grid;
  gap: 18px;
}

.glf-gm .glf-boxscore-stat-panel {
  overflow: hidden;

  background:
    rgba(9, 37, 61, .65);

  border:
    1px solid rgba(113, 157, 192, .18);

  border-radius: 14px;
}

.glf-gm .glf-boxscore-stat-panel-title {
  padding: 12px 14px;

  background:
    linear-gradient(
      90deg,
      rgba(245,185,66,.12),
      rgba(245,185,66,.02)
    );

  border-bottom:
    1px solid rgba(245,185,66,.22);

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.glf-gm
.glf-boxscore-stat-panel
.glf-boxscore-table-wrap {
  border: 0;
  border-radius: 0;

  background: transparent;
}


/* DEFENSE */

.glf-gm .glf-boxscore-defense-table {
  min-width: 820px;
}

.glf-gm .glf-boxscore-defense-table th:first-child,
.glf-gm .glf-boxscore-defense-table td:first-child {
  min-width: 180px;
}

.glf-gm .glf-boxscore-defense-table td:not(:first-child),
.glf-gm .glf-boxscore-defense-table th:not(:first-child) {
  text-align: center;
}


/* COACHING SECTION */

.glf-gm .glf-boxscore-coaching-wrap {
  margin-top: 30px;
}

.glf-gm
.glf-boxscore-coaching-wrap
> .glf-boxscore-official-heading {
  margin-bottom: 12px;
}

.glf-gm
.glf-boxscore-coaching-wrap
.glf-gameplan-impact {
  margin: 0;
}


/* CONTINUE BUTTON */

.glf-gm .glf-game-result-card > .glf-result-close {
  display: block;

  width: min(320px, 100%);

  margin:
    28px auto
    0;

  min-height: 52px;
}

/* =========================================================
   OFFICIAL BOX SCORE - COLLAPSIBLE SECTIONS
========================================================= */

.glf-gm .glf-boxscore-collapse {
  overflow: hidden;

  border:
    1px solid rgba(113, 157, 192, .22);

  border-radius: 14px;

  background:
    rgba(7, 31, 53, .5);

  margin-bottom: 18px;
}


.glf-gm .glf-boxscore-collapse-summary {
  list-style: none;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;

  min-height: 58px;

  padding: 15px 18px;

  cursor: pointer;

  background:
    linear-gradient(
      90deg,
      rgba(20, 59, 91, .95),
      rgba(12, 39, 64, .9)
    );

  color: #ffffff;

  font-size: 16px;
  font-weight: 900;
  letter-spacing: .5px;

  transition:
    background .15s ease,
    border-color .15s ease;
}


.glf-gm .glf-boxscore-collapse-summary::-webkit-details-marker {
  display: none;
}


.glf-gm .glf-boxscore-collapse-summary:hover {
  background:
    linear-gradient(
      90deg,
      rgba(25, 70, 106, .98),
      rgba(15, 46, 75, .95)
    );
}


.glf-gm .glf-boxscore-collapse-summary > span:first-child {
  color: #ffffff;
}


.glf-gm .glf-boxscore-collapse-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 28px;
  height: 28px;

  flex: 0 0 28px;

  border:
    1px solid rgba(245,185,66,.5);

  border-radius: 50%;

  color: #f5b942;

  font-size: 20px;
  font-weight: 900;
  line-height: 1;
}


/* CHANGE + TO - WHEN OPEN */

.glf-gm
.glf-boxscore-collapse[open]
.glf-boxscore-collapse-icon {
  font-size: 0;
}


.glf-gm
.glf-boxscore-collapse[open]
.glf-boxscore-collapse-icon::before {
  content: '−';

  font-size: 20px;
}


/* CONTENT SPACING */

.glf-gm
.glf-boxscore-collapse
> .glf-boxscore-table-wrap,

.glf-gm
.glf-boxscore-collapse
> .glf-boxscore-offense-grid,

.glf-gm
.glf-boxscore-collapse
> .glf-gameplan-impact {
  margin: 16px;
}


/* OPEN STATE */

.glf-gm .glf-boxscore-collapse[open] {
  border-color:
    rgba(245,185,66,.28);
}


.glf-gm .glf-boxscore-collapse[open]
.glf-boxscore-collapse-summary {
  border-bottom:
    1px solid rgba(245,185,66,.18);
}


/* COACHING WRAPPER */

.glf-gm .glf-boxscore-coaching-wrap {
  margin-top: 18px;
}


/* MOBILE */

@media (max-width: 600px) {

  .glf-gm .glf-boxscore-collapse-summary {
    min-height: 52px;

    padding: 13px 14px;

    font-size: 13px;
  }


  .glf-gm .glf-boxscore-collapse-icon {
    width: 26px;
    height: 26px;

    flex-basis: 26px;
  }


  .glf-gm
  .glf-boxscore-collapse
  > .glf-boxscore-table-wrap,

  .glf-gm
  .glf-boxscore-collapse
  > .glf-boxscore-offense-grid,

  .glf-gm
  .glf-boxscore-collapse
  > .glf-gameplan-impact {
    margin: 10px;
  }

}

.glf-gm .glf-boxscore-subcollapse {
  overflow: hidden;
}

.glf-gm .glf-boxscore-stat-panel-title {
  list-style: none;

  display: flex;
  align-items: center;
  justify-content: space-between;

  cursor: pointer;
}

.glf-gm
.glf-boxscore-stat-panel-title::-webkit-details-marker {
  display: none;
}

.glf-gm .glf-boxscore-subcollapse-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 24px;
  height: 24px;

  border: 1px solid rgba(245,185,66,.45);
  border-radius: 50%;

  color: #f5b942;

  font-size: 17px;
  font-weight: 900;
}

.glf-gm
.glf-boxscore-subcollapse[open]
.glf-boxscore-subcollapse-icon {
  font-size: 0;
}

.glf-gm
.glf-boxscore-subcollapse[open]
.glf-boxscore-subcollapse-icon::before {
  content: '−';

  font-size: 17px;
}

/* =========================================================
   SCHEDULE - CLICKABLE COMPLETED GAMES
========================================================= */

.glf-gm .glf-schedule-row.has-boxscore {
  cursor: pointer;

  transition:
    transform .15s ease,
    border-color .15s ease,
    background .15s ease;
}

.glf-gm .glf-schedule-row.has-boxscore:hover {
  transform: translateY(-2px);

  border-color:
    rgba(245,185,66,.55);

  background:
    linear-gradient(
      90deg,
      rgba(245,185,66,.06),
      rgba(14,45,73,.96)
    );
}

.glf-gm .glf-schedule-result {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.glf-gm .glf-schedule-view-boxscore {
  display: block;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.2;

  text-transform: uppercase;
}

.glf-gm .glf-schedule-row.has-boxscore:hover
.glf-schedule-view-boxscore {
  text-decoration: underline;
}


/* MOBILE */

@media (max-width: 600px) {

  .glf-gm .glf-schedule-view-boxscore {
    margin-top: 2px;

    font-size: 8px;
  }

}

/* =========================================================
   ASSISTANT GM - FRONT OFFICE BRIEFING
========================================================= */

.glf-gm .glf-assistant-gm-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;

  background:
    linear-gradient(
      180deg,
      #06192a 0%,
      #03111d 100%
    );

  overflow-y: auto;
  overflow-x: hidden;

  padding: 32px 24px 60px;
}


.glf-gm .glf-assistant-gm-shell {
  width: min(
    1100px,
    100%
  );

  margin: 0 auto;
}


.glf-gm .glf-assistant-gm-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 24px;

  margin-bottom: 24px;
}


.glf-gm .glf-assistant-gm-kicker {
  margin-bottom: 8px;

  color: #f5b942;

  font-size: 14px;
  font-weight: 900;

  letter-spacing: 2px;
}


.glf-gm .glf-assistant-gm-header h2 {
  margin: 0;

  color: #fff;

  font-size: clamp(
    34px,
    5vw,
    58px
  );

  line-height: 1.05;
}


.glf-gm .glf-assistant-gm-header p {
  margin: 10px 0 0;

  color: #9fb2c7;

  font-size: 16px;
  font-weight: 700;
}


.glf-gm .glf-assistant-gm-close {
  flex: 0 0 auto;

  padding: 14px 20px;

  border: 1px solid
    rgba(113,157,192,.35);

  border-radius: 12px;

  background:
    rgba(20,59,91,.85);

  color: #fff;

  font-size: 14px;
  font-weight: 900;

  cursor: pointer;
}


.glf-gm .glf-assistant-gm-close:hover {
  border-color:
    rgba(245,185,66,.75);
}


.glf-gm .glf-assistant-gm-intro {
  margin-bottom: 26px;

  padding: 20px 22px;

  border: 1px solid
    rgba(245,185,66,.22);

  border-radius: 14px;

  background:
    rgba(245,185,66,.06);
}


.glf-gm .glf-assistant-gm-intro strong {
  display: block;

  margin-bottom: 8px;

  color: #f5b942;

  font-size: 13px;
  font-weight: 900;

  letter-spacing: 1.3px;
}


.glf-gm .glf-assistant-gm-intro p {
  margin: 0;

  color: #c8d5e2;

  font-size: 15px;

  line-height: 1.6;
}


/* =========================================================
   RECOMMENDATION CARDS
========================================================= */

.glf-gm .glf-assistant-gm-list {
  display: grid;

  gap: 22px;
}


.glf-gm .glf-assistant-gm-card {
  padding: 24px;

  border: 1px solid
    rgba(113,157,192,.22);

  border-radius: 16px;

  background:
    linear-gradient(
      145deg,
      rgba(18,49,78,.96),
      rgba(8,29,49,.98)
    );

  box-shadow:
    0 14px 34px
    rgba(0,0,0,.22);
}


.glf-gm .glf-assistant-gm-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;

  gap: 15px;

  margin-bottom: 14px;
}


.glf-gm .glf-assistant-gm-priority {
  display: inline-block;

  margin-right: 10px;

  padding: 5px 9px;

  border-radius: 999px;

  background:
    rgba(245,185,66,.12);

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-category {
  color: #9fb2c7;

  font-size: 13px;
  font-weight: 800;
}


.glf-gm .glf-assistant-gm-number {
  color:
    rgba(255,255,255,.25);

  font-size: 28px;
  font-weight: 900;
}


.glf-gm .glf-assistant-gm-card h3 {
  margin:
    0 0 18px;

  color: #fff;

  font-size: 27px;

  line-height: 1.15;
}


/* =========================================================
   WHAT I RECOMMEND
========================================================= */

.glf-gm .glf-assistant-gm-recommendation {
  margin-bottom: 20px;

  padding: 16px 18px;

  border-left: 4px solid
    #f5b942;

  border-radius: 8px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm .glf-assistant-gm-recommendation span {
  display: block;

  margin-bottom: 5px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 1.2px;
}


.glf-gm .glf-assistant-gm-recommendation strong {
  color: #fff;

  font-size: 16px;

  line-height: 1.45;
}


/* =========================================================
   EDUCATION GRID
========================================================= */

.glf-gm .glf-assistant-gm-learning-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0,1fr));

  gap: 12px;
}


.glf-gm .glf-assistant-gm-learning-block {
  padding: 16px;

  border: 1px solid
    rgba(113,157,192,.16);

  border-radius: 12px;

  background:
    rgba(5,23,39,.55);
}


.glf-gm .glf-assistant-gm-learning-block span {
  display: block;

  margin-bottom: 8px;

  color: #9fb2c7;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-learning-block p {
  margin: 0;

  color: #dbe5ee;

  font-size: 14px;

  line-height: 1.55;
}


.glf-gm .glf-assistant-gm-football-lesson {
  border-color:
    rgba(245,185,66,.28);

  background:
    rgba(245,185,66,.055);
}


.glf-gm .glf-assistant-gm-football-lesson span {
  color: #f5b942;
}


.glf-gm .glf-assistant-gm-next-step {
  border-color:
    rgba(79,195,247,.23);
}


/* =========================================================
   PRIORITY STATES
========================================================= */

.glf-gm .glf-assistant-gm-critical {
  border-color:
    rgba(255,92,92,.55);
}


.glf-gm .glf-assistant-gm-high {
  border-color:
    rgba(255,153,66,.45);
}


.glf-gm .glf-assistant-gm-medium {
  border-color:
    rgba(245,185,66,.35);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

  .glf-gm .glf-assistant-gm-overlay {
    padding:
      20px 14px 45px;
  }


  .glf-gm .glf-assistant-gm-header {
    flex-direction: column;
  }


  .glf-gm .glf-assistant-gm-close {
    width: 100%;
  }


  .glf-gm .glf-assistant-gm-card {
    padding: 18px;
  }


  .glf-gm .glf-assistant-gm-learning-grid {
    grid-template-columns:
      1fr;
  }


  .glf-gm .glf-assistant-gm-card h3 {
    font-size: 23px;
  }

}

/* =========================================================
   ASSISTANT GM - DECISION PATHS
========================================================= */

.glf-gm .glf-assistant-gm-decision-section {
  margin-top: 20px;
  padding-top: 20px;

  border-top:
    1px solid rgba(113,157,192,.18);
}


.glf-gm .glf-assistant-gm-decision-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 16px;

  margin-bottom: 14px;
}


.glf-gm .glf-assistant-gm-decision-heading span {
  color: #f5b942;

  font-size: 13px;
  font-weight: 900;
  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-decision-heading small {
  color: #8fa5b9;

  font-size: 12px;
}


.glf-gm .glf-assistant-gm-decision-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0,1fr));

  gap: 12px;
}


.glf-gm .glf-assistant-gm-decision-card {
  padding: 17px;

  border:
    1px solid rgba(113,157,192,.2);

  border-radius: 13px;

  background:
    rgba(5,23,39,.68);
}


.glf-gm .glf-assistant-gm-decision-top {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 10px;

  margin-bottom: 10px;
}


.glf-gm .glf-assistant-gm-decision-top strong {
  color: #fff;

  font-size: 12px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-decision-top span {
  padding: 4px 8px;

  border-radius: 999px;

  background:
    rgba(113,157,192,.12);

  color: #adc0d2;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm .glf-assistant-gm-decision-card h4 {
  margin:
    0 0 8px;

  color: #f5b942;

  font-size: 17px;
}


.glf-gm .glf-assistant-gm-decision-card p {
  margin:
    0 0 13px;

  color: #d6e0e8;

  font-size: 13px;

  line-height: 1.5;
}


.glf-gm .glf-assistant-gm-decision-lesson {
  padding-top: 11px;

  border-top:
    1px solid rgba(113,157,192,.14);

  color: #9fb2c7;

  font-size: 12px;

  line-height: 1.5;
}


.glf-gm .glf-assistant-gm-decision-lesson span {
  display: block;

  margin-bottom: 5px;

  color: #7fa6c8;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


/* BEST FIT */

.glf-gm .glf-assistant-gm-decision-card:
  has(
    .glf-assistant-gm-decision-top
    span
  ) {
  transition:
    border-color .15s ease,
    transform .15s ease;
}


.glf-gm .glf-assistant-gm-decision-card:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(245,185,66,.45);
}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm .glf-assistant-gm-decision-heading {
    align-items: flex-start;
    flex-direction: column;
  }


  .glf-gm .glf-assistant-gm-decision-grid {
    grid-template-columns:
      1fr;
  }

}

/* =========================================================
   ASSISTANT GM - DECISION FIT HIGHLIGHTS
========================================================= */

.glf-gm .glf-assistant-gm-decision-best {
  border-color:
    rgba(245,185,66,.75);

  background:
    linear-gradient(
      145deg,
      rgba(245,185,66,.10),
      rgba(5,23,39,.78)
    );

  box-shadow:
    inset 0 0 0 1px
    rgba(245,185,66,.08);
}


.glf-gm
.glf-assistant-gm-decision-best
.glf-assistant-gm-decision-top span {
  background:
    rgba(245,185,66,.18);

  color: #f5b942;

  border:
    1px solid rgba(245,185,66,.35);
}


.glf-gm .glf-assistant-gm-decision-good {
  border-color:
    rgba(87,173,220,.42);

  background:
    linear-gradient(
      145deg,
      rgba(87,173,220,.07),
      rgba(5,23,39,.72)
    );
}


.glf-gm
.glf-assistant-gm-decision-good
.glf-assistant-gm-decision-top span {
  color: #c7e8fb;

  border:
    1px solid rgba(87,173,220,.28);
}

.glf-gm .glf-assistant-gm-decision-action {
  width: 100%;

  margin-top: 14px;
  padding: 11px 12px;

  border:
    1px solid rgba(245,185,66,.28);

  border-radius: 9px;

  background:
    rgba(245,185,66,.07);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: .8px;

  cursor: pointer;
}

.glf-gm .glf-assistant-gm-decision-action:hover {
  background:
    rgba(245,185,66,.14);

  border-color:
    rgba(245,185,66,.6);
}

/* =========================================================
   TRADE CENTER - ASSISTANT GM TARGET
========================================================= */

.glf-gm .glf-tradev2-assistant-target {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 18px;

  margin-bottom: 16px;
  padding: 15px 17px;

  border:
    1px solid rgba(245,185,66,.35);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.09),
      rgba(8,28,45,.82)
    );
}


.glf-gm .glf-tradev2-assistant-target div {
  display: flex;
  align-items: center;

  gap: 11px;
}


.glf-gm .glf-tradev2-assistant-target span {
  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: .9px;
}


.glf-gm .glf-tradev2-assistant-target strong {
  padding: 5px 9px;

  border-radius: 7px;

  background:
    rgba(245,185,66,.15);

  color: #f5b942;

  font-size: 14px;
}


.glf-gm .glf-tradev2-assistant-target small {
  color: #9fb2c7;

  font-size: 12px;
}


.glf-gm .glf-tradev2-assistant-clear {
  flex-shrink: 0;

  padding: 9px 12px;

  border:
    1px solid rgba(113,157,192,.3);

  border-radius: 8px;

  background:
    rgba(113,157,192,.08);

  color: #d7e4ef;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: .7px;

  cursor: pointer;
}


@media (max-width: 700px) {

  .glf-gm .glf-tradev2-assistant-target,
  .glf-gm .glf-tradev2-assistant-target div {
    align-items: flex-start;
    flex-direction: column;
  }


  .glf-gm .glf-tradev2-assistant-clear {
    width: 100%;
  }

}

/* =========================================================
   ASSISTANT GM - RECOMMENDED GAME PLAN
========================================================= */

.glf-gm .glf-assistant-gm-gameplan {
  margin-top: 20px;
  padding-top: 20px;

  border-top:
    1px solid rgba(113,157,192,.18);
}


.glf-gm .glf-assistant-gm-gameplan-heading {
  margin-bottom: 14px;

  color: #f5b942;

  font-size: 12px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-gameplan-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0,1fr));

  gap: 12px;
}


.glf-gm .glf-assistant-gm-gameplan-card {
  padding: 17px;

  border:
    1px solid rgba(113,157,192,.22);

  border-radius: 13px;

  background:
    linear-gradient(
      145deg,
      rgba(12,36,56,.92),
      rgba(5,23,39,.72)
    );
}


.glf-gm .glf-assistant-gm-gameplan-card span {
  display: block;

  margin-bottom: 7px;

  color: #7fa6c8;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-assistant-gm-gameplan-card strong {
  display: block;

  margin-bottom: 8px;

  color: #f5b942;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm .glf-assistant-gm-gameplan-card p {
  margin: 0;

  color: #cdd9e4;

  font-size: 13px;

  line-height: 1.55;
}


@media (max-width: 700px) {

  .glf-gm .glf-assistant-gm-gameplan-grid {
    grid-template-columns:
      1fr;
  }

}

.glf-gm .glf-assistant-gm-gameplan-action {
  width: 100%;

  margin-top: 14px;
  padding: 12px 14px;

  border:
    1px solid rgba(245,185,66,.4);

  border-radius: 9px;

  background:
    rgba(245,185,66,.09);

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: .9px;

  cursor: pointer;
}


.glf-gm .glf-assistant-gm-gameplan-action:hover {
  background:
    rgba(245,185,66,.16);

  border-color:
    rgba(245,185,66,.7);
}

.glf-gm .glf-assistant-gm-gameplan-labelrow {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 10px;

  margin-bottom: 7px;
}


.glf-gm .glf-assistant-gm-gameplan-labelrow span {
  margin: 0;
}


.glf-gm .glf-assistant-gm-gameplan-labelrow em {
  padding: 4px 7px;

  border-radius: 999px;

  font-size: 9px;
  font-style: normal;
  font-weight: 900;

  letter-spacing: .7px;
}


.glf-gm .glf-assistant-gm-gameplan-labelrow em.match {
  background:
    rgba(72,190,120,.12);

  border:
    1px solid rgba(72,190,120,.28);

  color: #8fe0ad;
}


.glf-gm .glf-assistant-gm-gameplan-labelrow em.change {
  background:
    rgba(245,185,66,.12);

  border:
    1px solid rgba(245,185,66,.32);

  color: #f5b942;
}

.glf-gm .glf-tradev2-assistant-analyze {
  width: 100%;

  margin-bottom: 10px;
  padding: 12px 14px;

  border:
    1px solid rgba(245,185,66,.42);

  border-radius: 9px;

  background:
    rgba(245,185,66,.08);

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;
  letter-spacing: .9px;

  cursor: pointer;
}


.glf-gm .glf-tradev2-assistant-analyze:hover {
  background:
    rgba(245,185,66,.16);

  border-color:
    rgba(245,185,66,.7);
}

/* =========================================================
   TRADE CENTER V2 - COMPACT DRAFT PICKS
========================================================= */

.glf-gm .glf-tradev2-pick {
  display: grid;

  grid-template-columns:
    42px
    minmax(0, 1fr)
    70px;

  align-items: center;

  gap: 14px;

  min-height: 0;

  padding: 14px 16px;
}


.glf-gm
.glf-tradev2-pick
.glf-tradev2-check {
  width: 32px;
  height: 32px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 8px;
}


.glf-gm
.glf-tradev2-pick
.glf-tradev2-name {
  min-width: 0;

  font-size: 15px;
  font-weight: 800;

  line-height: 1.25;
}


.glf-gm
.glf-tradev2-pick
.glf-tradev2-name small {
  display: block;

  margin-top: 4px;

  font-size: 11px;
  font-weight: 500;

  line-height: 1.3;

  color: #8fa5b9;
}


.glf-gm
.glf-tradev2-pick
.glf-tradev2-value {
  text-align: right;

  color: #f5b942;

  font-size: 16px;
  font-weight: 900;
}


@media (max-width: 700px) {

  .glf-gm .glf-tradev2-pick {
    grid-template-columns:
      36px
      minmax(0, 1fr)
      54px;

    gap: 10px;

    padding: 12px;
  }

}

/* =========================================================
   TRADE CENTER V2 - PICK ROW CLEANUP
========================================================= */

.glf-gm .glf-tradev2-pick {
  min-height: 72px !important;
  height: auto !important;

  padding: 12px 16px !important;

  align-content: center;
}


.glf-gm .glf-tradev2-pick-name {
  display: block !important;

  width: auto !important;
  min-width: 0 !important;

  white-space: normal;
}


.glf-gm .glf-tradev2-pick-name strong {
  display: block;

  margin: 0 0 4px;

  color: #fff;

  font-size: 15px;
  font-weight: 800;

  line-height: 1.2;

  white-space: nowrap;
}


.glf-gm .glf-tradev2-pick-name small {
  display: block;

  margin: 0;

  color: #8fa5b9;

  font-size: 11px;

  line-height: 1.25;
}


.glf-gm .glf-tradev2-pick .glf-tradev2-value {
  align-self: center;

  font-size: 16px;
  font-weight: 900;
}

/* =========================================================
   TRADE CENTER V2 - PLAYER ROW CLEANUP
========================================================= */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick) {
  display: grid;

  grid-template-columns:
    40px
    52px
    minmax(0, 1fr)
    64px
    72px;

  align-items: center;

  gap: 12px;

  min-height: 70px;
  height: auto;

  padding: 12px 14px;

  border-bottom:
    1px solid rgba(113,157,192,.14);

  cursor: pointer;
}


.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick):hover {
  background:
    rgba(113,157,192,.07);
}


/* CHECKBOX */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-check {
  width: 30px;
  height: 30px;

  display: flex;
  align-items: center;
  justify-content: center;

  border:
    1px solid rgba(143,165,185,.55);

  border-radius: 8px;

  font-size: 15px;
  font-weight: 900;
}


/* POSITION */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-pos {
  display: flex;
  align-items: center;
  justify-content: center;

  min-width: 46px;

  padding: 5px 7px;

  border-radius: 7px;

  background:
    rgba(113,157,192,.12);

  color: #a9c4d9;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: .5px;
}


/* PLAYER NAME */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-name {
  min-width: 0;

  color: #fff;

  font-size: 14px;
  font-weight: 800;

  line-height: 1.2;
}


.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-name small {
  display: block;

  margin-top: 4px;

  color: #8fa5b9;

  font-size: 10px;
  font-weight: 500;
}


/* OVERALL */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-ovr {
  text-align: center;

  color: #fff;

  font-size: 17px;
  font-weight: 900;
}


.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-ovr::before {
  content: 'OVR';

  display: block;

  margin-bottom: 2px;

  color: #6f879d;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .8px;
}


/* TRADE VALUE */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-value {
  text-align: right;

  color: #f5b942;

  font-size: 16px;
  font-weight: 900;
}


.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-value::before {
  content: 'VALUE';

  display: block;

  margin-bottom: 2px;

  color: #8d7540;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .8px;
}


/* SELECTED */

.glf-gm
.glf-tradev2-item.selected {
  background:
    rgba(245,185,66,.10);

  box-shadow:
    inset 3px 0 0 #f5b942;
}


.glf-gm
.glf-tradev2-item.selected
.glf-tradev2-check {
  border-color:
    rgba(245,185,66,.75);

  background:
    rgba(245,185,66,.16);

  color: #f5b942;
}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-item:not(.glf-tradev2-pick) {
    grid-template-columns:
      34px
      44px
      minmax(0, 1fr)
      48px
      54px;

    gap: 8px;

    padding: 10px;
  }


  .glf-gm
  .glf-tradev2-item:not(.glf-tradev2-pick)
  .glf-tradev2-pos {
    min-width: 40px;

    font-size: 9px;
  }


  .glf-gm
  .glf-tradev2-item:not(.glf-tradev2-pick)
  .glf-tradev2-name {
    font-size: 12px;
  }

}

/* =========================================================
   TRADE CENTER V2 - COMPACT OVR BADGE
========================================================= */

.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-ovr {
  width: 56px !important;
  height: 56px !important;

  min-width: 56px !important;
  min-height: 56px !important;

  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 0 !important;

  border-radius: 50%;

  background:
    rgba(28,117,178,.78);

  font-size: 18px;
  line-height: 1;
}


.glf-gm
.glf-tradev2-item:not(.glf-tradev2-pick)
.glf-tradev2-ovr::before {
  margin-bottom: 3px;

  font-size: 8px;

  line-height: 1;
}

.glf-gm .glf-tradev2-player-profile {
  appearance: none;

  padding: 0;

  border: 0;

  background: none;

  color: #fff;

  font: inherit;
  font-weight: 800;

  cursor: pointer;

  text-align: left;
}


.glf-gm .glf-tradev2-player-profile:hover {
  color: #f5b942;
  text-decoration: underline;
}


.glf-gm .glf-tradev2-player-profile:focus-visible {
  outline:
    2px solid rgba(245,185,66,.65);

  outline-offset: 3px;

  border-radius: 3px;
}

/* =========================================================
   TRADE CENTER V2 - TRADE ASSET CARDS
========================================================= */

.glf-gm .glf-tradev2-deal-assets {
  display: grid;
  gap: 8px;

  margin-top: 10px;
}


.glf-gm .glf-tradev2-deal-asset {
  display: grid;

  grid-template-columns:
    42px
    minmax(0, 1fr)
    56px;

  align-items: center;

  gap: 10px;

  padding: 10px 12px;

  border:
    1px solid rgba(113,157,192,.18);

  border-radius: 9px;

  background:
    rgba(7,22,35,.55);
}


.glf-gm .glf-tradev2-deal-position {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 34px;

  border-radius: 7px;

  background:
    rgba(113,157,192,.12);

  color: #a9c4d9;

  font-size: 10px;
  font-weight: 900;
}


.glf-gm .glf-tradev2-deal-pick
.glf-tradev2-deal-position {
  background:
    rgba(245,185,66,.10);

  color: #f5b942;
}


.glf-gm .glf-tradev2-deal-main {
  min-width: 0;
}


.glf-gm .glf-tradev2-deal-main strong {
  display: block;

  color: #fff;

  font-size: 13px;
  font-weight: 800;
}


.glf-gm .glf-tradev2-deal-main small {
  display: block;

  margin-top: 3px;

  color: #8398aa;

  font-size: 9px;
}


.glf-gm .glf-tradev2-deal-value {
  text-align: right;
}


.glf-gm .glf-tradev2-deal-value span {
  display: block;

  color: #7d6b42;

  font-size: 7px;
  font-weight: 900;

  letter-spacing: .7px;
}


.glf-gm .glf-tradev2-deal-value strong {
  display: block;

  margin-top: 2px;

  color: #f5b942;

  font-size: 16px;
  font-weight: 900;
}


.glf-gm .glf-tradev2-deal-empty {
  padding: 16px;

  border:
    1px dashed rgba(143,165,185,.22);

  border-radius: 8px;

  color: #73899c;

  font-size: 11px;

  text-align: center;
}

/* =========================================================
   TRADE CENTER V2 - SIDE BY SIDE PROPOSAL
========================================================= */

.glf-gm .glf-tradev2-summary-grid {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    70px
    minmax(0, 1fr);

  align-items: stretch;

  gap: 18px;
}


.glf-gm .glf-tradev2-summary-side {
  min-width: 0;

  padding: 22px;

  border:
    1px solid rgba(113,157,192,.16);

  border-radius: 14px;

  background:
    rgba(4,18,31,.72);
}


.glf-gm .glf-tradev2-arrow {
  display: flex;

  align-items: center;
  justify-content: center;

  color: #f5b942;

  font-size: 34px;
  font-weight: 900;
}


.glf-gm .glf-tradev2-deal-label {
  margin-bottom: 14px;

  color: #fff;

  font-size: 18px;
  font-weight: 900;

  letter-spacing: .5px;
}


.glf-gm .glf-tradev2-deal-total {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 12px;

  margin-top: 12px;

  padding-top: 12px;

  border-top:
    1px solid rgba(113,157,192,.18);
}


.glf-gm .glf-tradev2-deal-total span {
  color: #8fa5b9;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .9px;
}


.glf-gm .glf-tradev2-deal-total strong {
  color: #f5b942;

  font-size: 22px;
  font-weight: 900;
}


@media (max-width: 850px) {

  .glf-gm .glf-tradev2-summary-grid {
    grid-template-columns: 1fr;
  }


  .glf-gm .glf-tradev2-arrow {
    min-height: 44px;

    transform: rotate(90deg);
  }

}

/* =========================================================
   TRADE CENTER V2 - TRADE IMPACT POLISH
========================================================= */

.glf-gm .glf-tradev2-impact {
  margin-top: 18px;

  padding: 20px;

  border:
    1px solid rgba(113,157,192,.18);

  border-radius: 14px;

  background:
    rgba(4,18,31,.72);
}


.glf-gm .glf-tradev2-impact-title {
  margin-bottom: 14px;

  color: #f5b942;

  font-size: 11px;
  font-weight: 900;

  letter-spacing: 1.1px;
}


.glf-gm .glf-tradev2-impact-grid {
  display: grid;

  grid-template-columns:
    minmax(0,1fr)
    48px
    minmax(0,1fr);

  align-items: center;

  gap: 12px;
}


.glf-gm .glf-tradev2-impact-card {
  padding: 15px 16px;

  border:
    1px solid rgba(113,157,192,.14);

  border-radius: 10px;

  background:
    rgba(10,31,49,.72);
}


.glf-gm .glf-tradev2-impact-card span {
  display: block;

  margin-bottom: 6px;

  color: #7f95a7;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .9px;
}


.glf-gm .glf-tradev2-impact-card strong {
  display: block;

  color: #fff;

  font-size: 18px;
  font-weight: 900;
}


.glf-gm .glf-tradev2-impact-card small {
  display: block;

  margin-top: 5px;

  color: #9bb0c1;

  font-size: 11px;
}


.glf-gm .glf-tradev2-impact-arrow {
  text-align: center;

  color: #f5b942;

  font-size: 24px;
  font-weight: 900;
}


.glf-gm .glf-tradev2-impact-message {
  margin-top: 14px;

  padding: 11px 13px;

  border-radius: 8px;

  background:
    rgba(113,157,192,.07);

  color: #c6d4df;

  font-size: 11px;
  font-weight: 700;
}


/* WARNING STATE */

.glf-gm
.glf-tradev2-impact.warning
.glf-tradev2-impact-message {
  background:
    rgba(245,185,66,.10);

  color: #f5b942;
}


/* DANGER STATE */

.glf-gm
.glf-tradev2-impact.danger
.glf-tradev2-impact-message {
  background:
    rgba(220,74,74,.12);

  color: #ff8b8b;
}


/* GOOD STATE */

.glf-gm
.glf-tradev2-impact.good
.glf-tradev2-impact-message {
  background:
    rgba(68,170,115,.10);

  color: #8fd7ad;
}


@media (max-width: 700px) {

  .glf-gm .glf-tradev2-impact-grid {
    grid-template-columns: 1fr;
  }


  .glf-gm .glf-tradev2-impact-arrow {
    transform: rotate(90deg);
  }

}

/* =========================================================
   TRADE CENTER V2 - MONEY IMPACT
========================================================= */

.glf-gm .glf-tradev2-money-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 10px;

  margin-top: 12px;
}


.glf-gm .glf-tradev2-money-card {
  padding: 12px 14px;

  border:
    1px solid rgba(113,157,192,.14);

  border-radius: 9px;

  background:
    rgba(10,31,49,.55);
}


.glf-gm .glf-tradev2-money-card span {
  display: block;

  margin-bottom: 5px;

  color: #8197a9;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm .glf-tradev2-money-card strong {
  color: #fff;

  font-size: 16px;
  font-weight: 900;
}


.glf-gm
.glf-tradev2-money-card.positive
strong {
  color: #8fd7ad;
}


.glf-gm
.glf-tradev2-money-card.negative
strong {
  color: #ff8b8b;
}


.glf-gm
.glf-tradev2-money-card.neutral
strong {
  color: #f5b942;
}


@media (max-width: 700px) {

  .glf-gm .glf-tradev2-money-grid {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   TRADE CENTER V2 - ASSISTANT GM TRADE REPORT
========================================================= */

.glf-gm .glf-tradev2-assistant-result {
  margin-top: 14px;

  padding: 20px;

  border:
    1px solid rgba(113,157,192,.18);

  border-radius: 14px;

  background:
    rgba(4,18,31,.78);
}


/* RECOMMENDATION BANNER */

.glf-gm .glf-tradev2-assistant-verdict {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 16px;

  padding: 14px 16px;

  border-radius: 10px;

  background:
    rgba(113,157,192,.08);

  border:
    1px solid rgba(113,157,192,.18);
}


.glf-gm
.glf-tradev2-assistant-verdict
span {
  color: #8fa5b9;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-tradev2-assistant-verdict
strong {
  color: #fff;

  font-size: 18px;
  font-weight: 900;

  text-align: right;
}


/* GOOD */

.glf-gm
.glf-tradev2-assistant-verdict.good {
  border-color:
    rgba(82,190,125,.35);

  background:
    rgba(82,190,125,.08);
}


.glf-gm
.glf-tradev2-assistant-verdict.good
strong {
  color: #8fd7ad;
}


/* WARNING */

.glf-gm
.glf-tradev2-assistant-verdict.warning {
  border-color:
    rgba(245,185,66,.40);

  background:
    rgba(245,185,66,.08);
}


.glf-gm
.glf-tradev2-assistant-verdict.warning
strong {
  color: #f5b942;
}


/* NEUTRAL */

.glf-gm
.glf-tradev2-assistant-verdict.neutral {
  border-color:
    rgba(113,157,192,.30);
}


/* TOP ANALYSIS CARDS */

.glf-gm .glf-tradev2-assistant-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0,1fr));

  gap: 10px;

  margin-top: 12px;
}


.glf-gm
.glf-tradev2-assistant-grid
> div {
  padding: 14px;

  border:
    1px solid rgba(113,157,192,.15);

  border-radius: 10px;

  background:
    rgba(10,31,49,.72);
}


.glf-gm
.glf-tradev2-assistant-grid
span {
  display: block;

  margin-bottom: 6px;

  color: #7f95a7;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .9px;
}


.glf-gm
.glf-tradev2-assistant-grid
strong {
  display: block;

  color: #fff;

  font-size: 18px;
  font-weight: 900;
}


.glf-gm
.glf-tradev2-assistant-grid
small {
  display: block;

  margin-top: 5px;

  color: #8fa5b9;

  font-size: 10px;
  line-height: 1.45;
}


/* EXPLANATION SECTIONS */

.glf-gm .glf-tradev2-assistant-section {
  margin-top: 10px;

  padding: 14px 16px;

  border-left:
    3px solid rgba(113,157,192,.40);

  border-radius: 0 9px 9px 0;

  background:
    rgba(113,157,192,.05);
}


.glf-gm
.glf-tradev2-assistant-section
> strong {
  display: block;

  margin-bottom: 7px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .9px;
}


.glf-gm
.glf-tradev2-assistant-section
p {
  margin: 0;

  color: #c4d2dd;

  font-size: 12px;

  line-height: 1.55;
}


/* NEXT STEP */

.glf-gm
.glf-tradev2-assistant-next {
  border-left-color:
    #f5b942;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-tradev2-assistant-next
p {
  color: #fff;

  font-weight: 700;
}


/* MOBILE */

@media (max-width: 750px) {

  .glf-gm
  .glf-tradev2-assistant-verdict {
    display: block;
  }


  .glf-gm
  .glf-tradev2-assistant-verdict
  strong {
    display: block;

    margin-top: 6px;

    text-align: left;
  }


  .glf-gm
  .glf-tradev2-assistant-grid {
    grid-template-columns: 1fr;
  }

}

.glf-gm .glf-tradev2-assistant-player-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-top: 12px;

  padding: 9px 13px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 7px;

  background:
    rgba(245,185,66,.08);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;

  text-decoration: none;
}


.glf-gm
.glf-tradev2-assistant-player-button:hover {
  background:
    rgba(245,185,66,.14);

  text-decoration: none;
}

/* =========================================================
   ASSISTANT GM - BUILD TRADE BUTTON
========================================================= */

.glf-gm .glf-tradev2-assistant-build-player {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  max-width: 220px;

  margin-top: 12px;
  margin-left: 8px;

  padding: 10px 14px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.25;

  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


.glf-gm
.glf-tradev2-assistant-build-player:hover {
  background:
    rgba(245,185,66,.18);

  border-color:
    rgba(245,185,66,.80);
}


@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-assistant-build-player {
    width: 100%;
    max-width: none;

    margin-left: 0;
  }

}

/* =========================================================
   ASSISTANT GM - MATCH ACTION BUTTON SIZES
========================================================= */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-assistant-player-button,

  .glf-gm
  .glf-tradev2-assistant-build-player {
    width: 142px;
    min-width: 142px;
    max-width: 142px;

    min-height: 136px;

    padding: 10px 12px;

    margin-top: 12px;

    text-align: center;

    line-height: 1.35;
  }

}

/* =========================================================
   ASSISTANT GM - MATCH ALL ACTION BUTTONS
========================================================= */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-assistant-player-button,

  .glf-gm
  .glf-tradev2-assistant-build-player,

  .glf-gm
  .glf-tradev2-assistant-add-player {
    width: 142px;
    min-width: 142px;
    max-width: 142px;

    min-height: 136px;

    padding: 10px 12px;

    margin-top: 12px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    text-align: center;

    line-height: 1.35;
  }


  .glf-gm
  .glf-tradev2-assistant-add-player {
    border:
      1px solid rgba(82,190,125,.55);

    border-radius: 8px;

    background:
      rgba(82,190,125,.10);

    color: #8fd7ad;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .7px;

    cursor: pointer;
  }


  .glf-gm
  .glf-tradev2-assistant-add-player:hover {
    background:
      rgba(82,190,125,.18);

    border-color:
      rgba(82,190,125,.80);
  }

}

/* =========================================================
   ASSISTANT GM - MOBILE ACTION BUTTONS
========================================================= */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-assistant-player-button,

  .glf-gm
  .glf-tradev2-assistant-add-player,

  .glf-gm
  .glf-tradev2-assistant-build-player {
    width: 100%;
    max-width: none;

    min-height: 64px;

    margin:
      10px
      0
      0;

    padding:
      12px
      14px;

    display: flex;
    align-items: center;
    justify-content: center;

    border:
      1px solid rgba(245,185,66,.55);

    border-radius: 8px;

    background:
      rgba(245,185,66,.10);

    color: #f5b942;

    font-size: 11px;
    font-weight: 900;

    line-height: 1.3;

    letter-spacing: .7px;

    text-align: center;

    cursor: pointer;
  }


  .glf-gm
  .glf-tradev2-assistant-player-button:hover,

  .glf-gm
  .glf-tradev2-assistant-add-player:hover,

  .glf-gm
  .glf-tradev2-assistant-build-player:hover {
    background:
      rgba(245,185,66,.18);
  }

}

/* =========================================================
   ASSISTANT GM - ADD SUGGESTED PICK
========================================================= */

.glf-gm
.glf-tradev2-assistant-add-pick {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;

  margin-top: 12px;

  padding: 10px 14px;

  border:
    1px solid rgba(82,190,125,.55);

  border-radius: 8px;

  background:
    rgba(82,190,125,.10);

  color: #8fd7ad;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.3;
  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


.glf-gm
.glf-tradev2-assistant-add-pick:hover {
  background:
    rgba(82,190,125,.18);

  border-color:
    rgba(82,190,125,.80);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-assistant-add-pick {
    min-width: 190px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-assistant-add-pick {
    width: 100%;
    max-width: none;

    min-height: 64px;

    margin:
      12px
      0
      0;

    padding:
      12px
      14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - REMOVE SUGGESTED ASSET
========================================================= */

.glf-gm
.glf-tradev2-assistant-remove-asset {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;

  margin-top: 12px;

  padding: 10px 14px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.3;
  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


.glf-gm
.glf-tradev2-assistant-remove-asset:hover {
  background:
    rgba(245,185,66,.18);

  border-color:
    rgba(245,185,66,.80);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-assistant-remove-asset {
    min-width: 210px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-assistant-remove-asset {
    width: 100%;
    max-width: none;

    min-height: 64px;

    margin:
      12px
      0
      0;

    padding:
      12px
      14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - ADD SUGGESTED ASSET
========================================================= */

.glf-gm
.glf-tradev2-assistant-add-asset {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;

  margin-top: 12px;

  padding: 10px 14px;

  border:
    1px solid rgba(82,190,125,.55);

  border-radius: 8px;

  background:
    rgba(82,190,125,.10);

  color: #8fd7ad;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.3;
  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


.glf-gm
.glf-tradev2-assistant-add-asset:hover {
  background:
    rgba(82,190,125,.18);

  border-color:
    rgba(82,190,125,.80);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-assistant-add-asset {
    min-width: 210px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-assistant-add-asset {
    width: 100%;
    max-width: none;

    min-height: 64px;

    margin:
      12px
      0
      0;

    padding:
      12px
      14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - DEAL STATUS
========================================================= */

.glf-gm .glf-tradev2-deal-status {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin-top: 12px;

  padding: 14px 16px;

  border:
    1px solid rgba(113,157,192,.20);

  border-radius: 10px;

  background:
    rgba(10,31,49,.72);
}


.glf-gm
.glf-tradev2-deal-status
span {
  display: block;

  margin-bottom: 4px;

  color: #8298aa;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-tradev2-deal-status
strong {
  display: block;

  font-size: 18px;
  font-weight: 900;
}


.glf-gm
.glf-tradev2-deal-status
p {
  max-width: 520px;

  margin: 0;

  color: #aebfcb;

  font-size: 11px;

  line-height: 1.45;

  text-align: right;
}


/* GREAT VALUE */

.glf-gm
.glf-tradev2-deal-status.great {
  border-color:
    rgba(82,190,125,.40);

  background:
    rgba(82,190,125,.08);
}

.glf-gm
.glf-tradev2-deal-status.great
strong {
  color: #8fd7ad;
}


/* FAIR DEAL */

.glf-gm
.glf-tradev2-deal-status.fair
strong {
  color: #d8e4ec;
}


/* SLIGHT OVERPAY */

.glf-gm
.glf-tradev2-deal-status.warning {
  border-color:
    rgba(245,185,66,.40);

  background:
    rgba(245,185,66,.07);
}

.glf-gm
.glf-tradev2-deal-status.warning
strong {
  color: #f5b942;
}


/* MAJOR OVERPAY / RISK */

.glf-gm
.glf-tradev2-deal-status.danger,
.glf-gm
.glf-tradev2-deal-status.risk {
  border-color:
    rgba(230,92,92,.42);

  background:
    rgba(230,92,92,.08);
}

.glf-gm
.glf-tradev2-deal-status.danger
strong,
.glf-gm
.glf-tradev2-deal-status.risk
strong {
  color: #ff8f8f;
}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-tradev2-deal-status {
    display: block;

    padding: 14px;
  }


  .glf-gm
  .glf-tradev2-deal-status
  p {
    max-width: none;

    margin-top: 8px;

    text-align: left;
  }


  .glf-gm
  .glf-tradev2-deal-status
  strong {
    font-size: 16px;
  }

}

/* =========================================================
   ASSISTANT GM - DEAL STATUS LABEL WIDTH
========================================================= */

@media (min-width: 701px) {

  .glf-gm
  .glf-tradev2-deal-status
  > div {
    min-width: 240px;
    flex-shrink: 0;
  }


  .glf-gm
  .glf-tradev2-deal-status
  strong {
    white-space: nowrap;
  }

}

/* =========================================================
   FREE AGENCY - ASSISTANT GM ACTIONS
========================================================= */

.glf-gm .glf-fa-actions {
  display: grid;

  gap: 7px;

  min-width: 145px;
}


.glf-gm .glf-fa-assistant-check {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 38px;

  padding: 8px 10px;

  border:
    1px solid rgba(245,185,66,.48);

  border-radius: 7px;

  background:
    rgba(245,185,66,.08);

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  line-height: 1.25;
  letter-spacing: .5px;

  text-align: center;

  cursor: pointer;
}


.glf-gm .glf-fa-assistant-check:hover {
  background:
    rgba(245,185,66,.15);

  border-color:
    rgba(245,185,66,.75);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm .glf-fa-actions {
    width: 155px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm .glf-fa-actions {
    width: 100%;
    min-width: 125px;
  }


  .glf-gm .glf-fa-assistant-check {
    width: 100%;

    min-height: 48px;

    padding: 10px;

    font-size: 10px;
  }


  .glf-gm
  .glf-fa-actions
  .glf-fa-sign {
    width: 100%;
  }

}

/* =========================================================
   FREE AGENCY - ASSISTANT GM ANALYSIS
========================================================= */

.glf-gm .glf-fa-assistant-overlay {
  position: fixed;
  inset: 0;

  z-index: 10050;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,12,22,.82);

  overflow-y: auto;
}


.glf-gm .glf-fa-assistant-card {
  width: min(760px, 100%);

  padding: 22px;

  border:
    1px solid rgba(245,185,66,.35);

  border-radius: 16px;

  background:
    #071c30;
}


.glf-gm .glf-fa-assistant-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 16px;
}


.glf-gm .glf-fa-assistant-top span {
  color: #86a4bd;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-fa-assistant-top h3 {
  margin:
    5px
    0
    0;

  color: #fff;

  font-size: 24px;
}


.glf-gm .glf-fa-assistant-close {
  border: 0;
  background: transparent;

  color: #9fb4c5;

  font-size: 20px;

  cursor: pointer;
}


.glf-gm .glf-fa-assistant-verdict {
  margin-top: 18px;

  padding: 14px 16px;

  border-radius: 10px;

  background:
    rgba(113,157,192,.08);
}


.glf-gm .glf-fa-assistant-verdict span {
  display: block;

  margin-bottom: 5px;

  color: #839aac;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm .glf-fa-assistant-verdict strong {
  font-size: 20px;
}


.glf-gm
.glf-fa-assistant-verdict.good
strong {
  color: #8fd7ad;
}


.glf-gm
.glf-fa-assistant-verdict.fair
strong {
  color: #f5b942;
}


.glf-gm
.glf-fa-assistant-verdict.warning
strong {
  color: #f5b942;
}


.glf-gm
.glf-fa-assistant-verdict.danger
strong,
.glf-gm
.glf-fa-assistant-verdict.pass
strong {
  color: #ff8f8f;
}


.glf-gm .glf-fa-assistant-metrics {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0,1fr));

  gap: 10px;

  margin-top: 12px;
}


.glf-gm
.glf-fa-assistant-metrics
> div {
  padding: 13px;

  border:
    1px solid rgba(113,157,192,.15);

  border-radius: 9px;

  background:
    rgba(10,31,49,.75);
}


.glf-gm
.glf-fa-assistant-metrics
span {
  display: block;

  margin-bottom: 5px;

  color: #8096a8;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-fa-assistant-metrics
strong {
  color: #fff;

  font-size: 16px;
}


.glf-gm .glf-fa-assistant-section {
  margin-top: 10px;

  padding: 13px 15px;

  border-left:
    3px solid rgba(113,157,192,.45);

  background:
    rgba(113,157,192,.05);
}


.glf-gm
.glf-fa-assistant-section
> strong {
  display: block;

  margin-bottom: 6px;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-fa-assistant-section
p {
  margin: 0;

  color: #c4d2dd;

  font-size: 12px;

  line-height: 1.55;
}


.glf-gm .glf-fa-assistant-next {
  border-left-color: #f5b942;

  background:
    rgba(245,185,66,.07);
}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-fa-assistant-overlay {
    align-items: flex-start;

    padding:
      16px
      12px;
  }


  .glf-gm
  .glf-fa-assistant-card {
    padding: 16px;

    border-radius: 12px;
  }


  .glf-gm
  .glf-fa-assistant-top
  h3 {
    font-size: 20px;
  }


  .glf-gm
  .glf-fa-assistant-metrics {
    grid-template-columns: 1fr;
  }


  .glf-gm
  .glf-fa-assistant-section
  p {
    font-size: 13px;
  }

}

/* =========================================================
   FREE AGENCY ASSISTANT GM - DESKTOP HEIGHT FIX
========================================================= */

@media (min-width: 701px) {

  .glf-gm
  .glf-fa-assistant-overlay {
    align-items: flex-start;

    padding:
      24px;
  }


  .glf-gm
  .glf-fa-assistant-card {
    margin:
      20px
      auto
      40px;
  }

}

/* =========================================================
   FREE AGENCY ASSISTANT GM - ACTION BUTTONS
========================================================= */

.glf-gm .glf-fa-assistant-actions-panel {
  display: flex;
  align-items: stretch;

  gap: 10px;

  margin-top: 14px;
}


.glf-gm
.glf-fa-assistant-actions-panel
button {
  flex: 1;

  min-height: 48px;

  padding: 10px 14px;

  border-radius: 8px;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.3;
  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


/* VIEW PLAYER */

.glf-gm
.glf-fa-assistant-view-player {
  border:
    1px solid rgba(245,185,66,.50);

  background:
    rgba(245,185,66,.08);

  color: #f5b942;
}


/* SIGN PLAYER */

.glf-gm
.glf-fa-assistant-sign-player {
  border:
    1px solid rgba(82,190,125,.55);

  background:
    rgba(82,190,125,.12);

  color: #8fd7ad;
}


/* CUT PLAN */

.glf-gm
.glf-fa-assistant-cut-plan {
  border:
    1px solid rgba(113,157,192,.45);

  background:
    rgba(113,157,192,.10);

  color: #b7cad8;
}


.glf-gm
.glf-fa-assistant-actions-panel
button:hover {
  filter: brightness(1.15);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-fa-assistant-actions-panel
  button {
    min-height: 54px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-fa-assistant-actions-panel {
    display: grid;

    grid-template-columns: 1fr;

    gap: 8px;
  }


  .glf-gm
  .glf-fa-assistant-actions-panel
  button {
    width: 100%;

    min-height: 58px;

    font-size: 11px;
  }

}

/* =========================================================
   FREE AGENCY ASSISTANT GM - CUT PLAN
========================================================= */

.glf-gm .glf-fa-cut-plan-result {
  margin-top: 12px;

  padding: 15px 16px;

  border:
    1px solid rgba(245,185,66,.38);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-fa-cut-plan-result
> span {
  display: block;

  margin-bottom: 6px;

  color: #86a4bd;

  font-size: 8px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-fa-cut-plan-result
> strong {
  display: block;

  margin-bottom: 8px;

  color: #f5b942;

  font-size: 18px;
  font-weight: 900;
}


.glf-gm
.glf-fa-cut-plan-result
p {
  margin:
    5px
    0
    0;

  color: #c4d2dd;

  font-size: 12px;

  line-height: 1.5;
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-fa-cut-plan-result {
    padding: 16px 18px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-fa-cut-plan-result
  > strong {
    font-size: 16px;
  }


  .glf-gm
  .glf-fa-cut-plan-result
  p {
    font-size: 13px;
  }

}

/* =========================================================
   FREE AGENCY ASSISTANT GM - RELEASE RECOMMENDED CUT
========================================================= */

.glf-gm
.glf-fa-assistant-release-cut {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;

  margin-top: 14px;

  padding: 10px 14px;

  border:
    1px solid rgba(230,92,92,.55);

  border-radius: 8px;

  background:
    rgba(230,92,92,.10);

  color: #ff9b9b;

  font-size: 10px;
  font-weight: 900;

  line-height: 1.3;
  letter-spacing: .7px;

  text-align: center;

  cursor: pointer;
}


.glf-gm
.glf-fa-assistant-release-cut:hover {
  background:
    rgba(230,92,92,.18);

  border-color:
    rgba(230,92,92,.80);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-fa-assistant-release-cut {
    min-width: 240px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-fa-assistant-release-cut {
    width: 100%;

    min-height: 58px;

    padding:
      12px
      14px;

    font-size: 11px;
  }

}

/* =========================================================
   FREE AGENCY ASSISTANT GM - CUT COMPLETE
========================================================= */

.glf-gm
.glf-fa-cut-plan-result.success {
  border-color:
    rgba(82,190,125,.45);

  background:
    rgba(82,190,125,.08);
}


.glf-gm
.glf-fa-cut-plan-result.success
> strong {
  color: #8fd7ad;
}

/* =========================================================
   PLAYER CARD ABOVE ASSISTANT GM
========================================================= */

.glf-gm
.glf-player-profile {
  z-index: 10150 !important;
}

/* =========================================================
   PLAYER DEVELOPMENT - ASSISTANT GM
========================================================= */

.glf-gm .glf-development-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin:
    18px
    0;

  padding:
    18px
    20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.85)
    );
}


.glf-gm
.glf-development-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-development-assistant-copy
span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-development-assistant-copy
strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-development-assistant-copy
small {
  max-width: 620px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-development-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding:
    10px
    16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-development-assistant-button:hover {
  background:
    rgba(245,185,66,.18);

  border-color:
    rgba(245,185,66,.80);
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-development-assistant-button {
    min-width: 240px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-development-assistant {
    display: block;

    padding:
      16px;
  }


  .glf-gm
  .glf-development-assistant-copy
  strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-development-assistant-copy
  small {
    font-size: 12px;
  }


  .glf-gm
  .glf-development-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - DEVELOPMENT POINT BANK
========================================================= */

.glf-gm
.glf-development-points-bank {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 24px;

  margin: 18px 0;

  padding: 20px;

  border:
    1px solid rgba(52,152,219,.40);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(52,152,219,.12),
      rgba(10,31,49,.88)
    );
}


.glf-gm
.glf-development-points-main {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-development-points-main
span {
  color: #76c7ff;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-development-points-main
strong {
  color: #fff;

  font-size: 30px;
  font-weight: 900;
}


.glf-gm
.glf-development-points-main
small {
  max-width: 420px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.4;
}


.glf-gm
.glf-development-points-details {
  display: grid;

  grid-template-columns:
    repeat(3, 1fr);

  gap: 10px;

  min-width: 460px;
}


.glf-gm
.glf-development-points-details
div {
  padding: 10px 12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 8px;

  background:
    rgba(255,255,255,.035);
}


.glf-gm
.glf-development-points-details
span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 800;

  letter-spacing: .6px;
}


.glf-gm
.glf-development-points-details
strong {
  color: #fff;

  font-size: 14px;
  font-weight: 900;
}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-development-points-bank {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-development-points-main
  strong {
    font-size: 28px;
  }


  .glf-gm
  .glf-development-points-main
  small {
    font-size: 12px;
  }


  .glf-gm
  .glf-development-points-details {
    grid-template-columns: 1fr;

    min-width: 0;

    margin-top: 16px;
  }


  .glf-gm
  .glf-development-points-details
  div {
    padding: 12px;
  }

}

/* =========================================================
   PLAYER DEVELOPMENT - INVEST DP BUTTON
========================================================= */

.glf-gm
.glf-development-invest-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 30px;

  margin-top: 7px;

  padding: 6px 10px;

  border:
    1px solid rgba(52,152,219,.50);

  border-radius: 6px;

  background:
    rgba(52,152,219,.10);

  color: #76c7ff;

  font-size: 8px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .6px;

  cursor: pointer;
}


.glf-gm
.glf-development-invest-button:hover {
  background:
    rgba(52,152,219,.20);

  border-color:
    rgba(52,152,219,.80);
}


.glf-gm
.glf-development-invest-button:disabled {
  opacity: .35;

  cursor: not-allowed;
}


/* DESKTOP */

@media (min-width: 701px) {

  .glf-gm
  .glf-development-invest-button {
    min-width: 92px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .glf-gm
  .glf-development-invest-button {
    min-height: 36px;

    padding: 8px 10px;

    font-size: 9px;
  }

}

/* =========================================================
   DEVELOPMENT POINT INVESTMENT MODAL
========================================================= */

.glf-gm
.glf-development-invest-overlay {
  position: fixed;

  inset: 0;

  z-index: 2147483000;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.88);

  overflow-y: auto;
}


.glf-gm
.glf-development-invest-card {
  width: min(
    760px,
    100%
  );

  padding: 24px;

  border:
    1px solid rgba(52,152,219,.45);

  border-radius: 14px;

  background:
    #0b2238;

  box-shadow:
    0 24px 80px
    rgba(0,0,0,.45);
}


.glf-gm
.glf-development-invest-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 20px;
}


.glf-gm
.glf-development-invest-header
span {
  color: #76c7ff;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-development-invest-header
h2 {
  margin:
    5px 0;

  color: #fff;

  font-size: 26px;
}


.glf-gm
.glf-development-invest-header
p {
  margin: 0;

  color: #9fb2c7;

  font-size: 12px;

  line-height: 1.5;
}


.glf-gm
.glf-development-invest-close {
  flex-shrink: 0;

  width: 40px;
  height: 40px;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-development-invest-player {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  padding: 16px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 10px;

  background:
    rgba(255,255,255,.035);
}


.glf-gm
.glf-development-invest-player
strong {
  display: block;

  margin: 4px 0;

  color: #fff;

  font-size: 20px;
}


.glf-gm
.glf-development-invest-player
small,
.glf-gm
.glf-development-invest-player
span {
  color: #9fb2c7;
}


.glf-gm
.glf-development-invest-current {
  text-align: right;
}


.glf-gm
.glf-development-invest-current
strong {
  color: #76c7ff;

  font-size: 22px;
}


.glf-gm
.glf-development-invest-limits {
  display: grid;

  grid-template-columns:
    repeat(4, 1fr);

  gap: 10px;

  margin-top: 14px;
}


.glf-gm
.glf-development-invest-limits
div {
  padding: 12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 8px;

  background:
    rgba(255,255,255,.025);
}


.glf-gm
.glf-development-invest-limits
span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 800;
}


.glf-gm
.glf-development-invest-limits
strong {
  color: #fff;

  font-size: 14px;
}


.glf-gm
.glf-development-invest-title {
  margin:
    20px 0
    10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-development-invest-options {
  display: grid;

  grid-template-columns:
    repeat(3, 1fr);

  gap: 10px;
}


.glf-gm
.glf-development-invest-choice {
  min-height: 110px;

  padding: 14px;

  border:
    1px solid rgba(52,152,219,.40);

  border-radius: 10px;

  background:
    rgba(52,152,219,.08);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-development-invest-choice
strong {
  display: block;

  color: #76c7ff;

  font-size: 22px;
}


.glf-gm
.glf-development-invest-choice
span {
  display: block;

  margin:
    4px 0;

  font-size: 14px;
  font-weight: 800;
}


.glf-gm
.glf-development-invest-choice
small {
  color: #9fb2c7;

  line-height: 1.4;
}


.glf-gm
.glf-development-invest-choice:disabled {
  opacity: .30;

  cursor: not-allowed;
}


.glf-gm
.glf-development-invest-note {
  margin-top: 16px;

  padding: 12px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.06);

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-development-invest-overlay {
    align-items: flex-start;

    padding: 12px;
  }


  .glf-gm
  .glf-development-invest-card {
    margin:
      16px 0
      40px;

    padding: 16px;
  }


  .glf-gm
  .glf-development-invest-header
  h2 {
    font-size: 21px;
  }


  .glf-gm
  .glf-development-invest-player {
    display: block;
  }


  .glf-gm
  .glf-development-invest-current {
    margin-top: 14px;

    text-align: left;
  }


  .glf-gm
  .glf-development-invest-limits {
    grid-template-columns:
      repeat(2, 1fr);
  }


  .glf-gm
  .glf-development-invest-options {
    grid-template-columns:
      1fr;
  }


  .glf-gm
  .glf-development-invest-choice {
    min-height: 82px;
  }

}

/* =========================================================
   DEVELOPMENT INVESTMENT MODAL - DESKTOP HEIGHT FIX
========================================================= */

@media (min-width: 701px) {

  .glf-gm
  .glf-development-invest-overlay {
    align-items: flex-start;

    padding:
      24px;

    overflow-y: auto;
  }


  .glf-gm
  .glf-development-invest-card {
    margin:
      20px auto
      40px;
  }

}

/* =========================================================
   ASSISTANT GM - DEVELOPMENT PRIORITY REPORT
========================================================= */

.glf-gm
.glf-development-priority-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483200;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.92);

  overflow-y: auto;
}


.glf-gm
.glf-development-priority-report {
  width: min(950px,100%);

  margin:
    20px auto
    40px;

  padding: 24px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 14px;

  background:
    #0b2238;
}


.glf-gm
.glf-development-priority-header {
  display: flex;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 18px;
}


.glf-gm
.glf-development-priority-header
span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-development-priority-header
h2 {
  margin: 5px 0;

  color: #fff;

  font-size: 28px;
}


.glf-gm
.glf-development-priority-header
p {
  margin: 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-development-priority-close {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-development-priority-recommendation {
  margin-bottom: 18px;

  padding: 18px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-development-priority-recommendation
span {
  display: block;

  margin-bottom: 5px;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-development-priority-recommendation
strong {
  display: block;

  color: #fff;

  font-size: 22px;
}


.glf-gm
.glf-development-priority-recommendation
p {
  margin:
    7px 0 0;

  color: #b9c9d8;

  line-height: 1.5;
}


.glf-gm
.glf-development-priority-section-title {
  margin-bottom: 10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-development-priority-card {
  display: grid;

  grid-template-columns:
    52px
    1.4fr
    1.5fr
    .6fr;

  align-items: center;

  gap: 14px;

  margin-bottom: 10px;

  padding: 16px;

  border:
    1px solid rgba(255,255,255,.09);

  border-radius: 10px;

  background:
    rgba(255,255,255,.035);
}


.glf-gm
.glf-development-priority-rank {
  color: #f5b942;

  font-size: 24px;
  font-weight: 900;
}


.glf-gm
.glf-development-priority-main
strong {
  display: block;

  margin: 3px 0;

  color: #fff;

  font-size: 18px;
}


.glf-gm
.glf-development-priority-main
span,
.glf-gm
.glf-development-priority-main
small {
  color: #9fb2c7;
}


.glf-gm
.glf-development-priority-reason
span,
.glf-gm
.glf-development-priority-score
span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-development-priority-reason
strong {
  color: #dce8f3;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-development-priority-score
strong {
  color: #76c7ff;

  font-size: 21px;
}


.glf-gm
.glf-development-priority-guidance {
  display: grid;

  grid-template-columns:
    repeat(2,1fr);

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-development-priority-guidance
div {
  padding: 14px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.05);
}


.glf-gm
.glf-development-priority-guidance
span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-development-priority-guidance
p {
  margin:
    5px 0 0;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-development-priority-overlay {
    padding: 12px;
  }


  .glf-gm
  .glf-development-priority-report {
    padding: 16px;
  }


  .glf-gm
  .glf-development-priority-header
  h2 {
    font-size: 22px;
  }


  .glf-gm
  .glf-development-priority-card {
    grid-template-columns:
      42px 1fr;
  }


  .glf-gm
  .glf-development-priority-reason,
  .glf-gm
  .glf-development-priority-score {
    grid-column: 2;
  }


  .glf-gm
  .glf-development-priority-guidance {
    grid-template-columns:
      1fr;
  }

}

/* =========================================================
   ASSISTANT GM - DEVELOPMENT ACTION
========================================================= */

.glf-gm
.glf-development-priority-action {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 48px;

  margin-top: 14px;

  padding: 10px 16px;

  border:
    1px solid rgba(118,199,255,.55);

  border-radius: 8px;

  background:
    rgba(118,199,255,.10);

  color: #76c7ff;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-development-priority-action:hover {
  background:
    rgba(118,199,255,.18);
}


.glf-gm
.glf-development-priority-action:disabled {
  opacity: .35;
  cursor: not-allowed;
}


@media (max-width:700px) {

  .glf-gm
  .glf-development-priority-action {
    width: 100%;
    min-height: 58px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - RECOMMENDED DEVELOPMENT INVESTMENT
========================================================= */

.glf-gm
.glf-development-invest-choice.assistant-recommended {
  border-color: rgba(245,185,66,.80);

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.14),
      rgba(52,152,219,.08)
    );

  box-shadow:
    0 0 0 1px
    rgba(245,185,66,.15);
}


.glf-gm
.glf-development-invest-recommended {
  display: block;

  margin-bottom: 8px;

  color: #f5b942;

  font-size: 8px;
  font-style: normal;
  font-weight: 900;

  letter-spacing: .7px;
}


@media (max-width:700px) {

  .glf-gm
  .glf-development-invest-recommended {
    font-size: 9px;
  }

}

/* =========================================================
   DRAFT SCOUTING - ASSISTANT GM
========================================================= */

.glf-gm
.glf-scouting-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin: 18px 0;

  padding: 18px 20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.86)
    );
}


.glf-gm
.glf-scouting-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-scouting-assistant-copy
span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-scouting-assistant-copy
strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-assistant-copy
small {
  max-width: 650px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-scouting-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding: 10px 16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-scouting-assistant-button:hover {
  background:
    rgba(245,185,66,.18);
}


/* DESKTOP */

@media (min-width:701px) {

  .glf-gm
  .glf-scouting-assistant-button {
    min-width: 250px;
  }

}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-scouting-assistant {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-scouting-assistant-copy
  strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-scouting-assistant-copy
  small {
    font-size: 12px;
  }


  .glf-gm
  .glf-scouting-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - SCOUTING PRIORITY REPORT
========================================================= */

.glf-gm
.glf-scouting-priority-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483200;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.92);

  overflow-y: auto;
}


.glf-gm
.glf-scouting-priority-report {
  width: min(980px,100%);

  margin: 20px auto 40px;

  padding: 24px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 14px;

  background: #0b2238;
}


.glf-gm
.glf-scouting-priority-header {
  display: flex;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 18px;
}


.glf-gm
.glf-scouting-priority-header span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-scouting-priority-header h2 {
  margin: 5px 0;

  color: #fff;

  font-size: 28px;
}


.glf-gm
.glf-scouting-priority-header p {
  margin: 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-scouting-priority-close {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-scouting-priority-recommendation {
  margin-bottom: 18px;

  padding: 18px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-scouting-priority-recommendation span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-priority-recommendation strong {
  display: block;

  margin-top: 5px;

  color: #fff;

  font-size: 22px;
}


.glf-gm
.glf-scouting-priority-recommendation p {
  margin: 7px 0 0;

  color: #b9c9d8;

  line-height: 1.5;
}


.glf-gm
.glf-scouting-priority-title {
  margin: 18px 0 10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-scouting-priority-position {
  display: grid;

  grid-template-columns:
    48px
    .7fr
    .7fr
    1fr
    1fr;

  align-items: center;

  gap: 12px;

  margin-bottom: 8px;

  padding: 14px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 9px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-scouting-priority-rank {
  color: #f5b942;

  font-size: 22px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-priority-position span,
.glf-gm
.glf-scouting-priority-prospect span {
  display: block;

  margin-bottom: 4px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-priority-position strong {
  color: #fff;

  font-size: 14px;
}


.glf-gm
.glf-scouting-priority-prospect {
  display: grid;

  grid-template-columns:
    1.5fr
    .7fr
    .7fr
    .8fr;

  align-items: center;

  gap: 14px;

  margin-bottom: 8px;

  padding: 14px;

  border:
    1px solid rgba(52,152,219,.20);

  border-radius: 9px;

  background:
    rgba(52,152,219,.045);
}


.glf-gm
.glf-scouting-priority-prospect strong {
  color: #fff;
}


.glf-gm
.glf-scouting-priority-prospect small {
  display: block;

  margin-top: 4px;

  color: #9fb2c7;
}


.glf-gm
.glf-scouting-priority-guidance {
  display: grid;

  grid-template-columns:
    repeat(2,1fr);

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-scouting-priority-guidance div {
  padding: 14px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.05);
}


.glf-gm
.glf-scouting-priority-guidance span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-priority-guidance p {
  margin: 5px 0 0;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


@media (max-width:700px) {

  .glf-gm
  .glf-scouting-priority-overlay {
    padding: 12px;
  }


  .glf-gm
  .glf-scouting-priority-report {
    padding: 16px;
  }


  .glf-gm
  .glf-scouting-priority-position {
    grid-template-columns:
      40px 1fr;
  }


  .glf-gm
  .glf-scouting-priority-position
  > div:nth-child(n+3) {
    grid-column: 2;
  }


  .glf-gm
  .glf-scouting-priority-prospect {
    grid-template-columns: 1fr;
  }


  .glf-gm
  .glf-scouting-priority-guidance {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   ASSISTANT GM - SCOUTING ACTION
========================================================= */

.glf-gm
.glf-scouting-priority-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 48px;

  margin-top: 14px;

  padding: 10px 16px;

  border:
    1px solid rgba(118,199,255,.55);

  border-radius: 8px;

  background:
    rgba(118,199,255,.10);

  color: #76c7ff;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-scouting-priority-action:hover {
  background:
    rgba(118,199,255,.18);
}


@media (max-width:700px) {

  .glf-gm
  .glf-scouting-priority-action {
    width: 100%;

    min-height: 58px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - SPECIFIC SCOUTING TARGET
========================================================= */

.glf-gm
.glf-scouting-specific-target {
  margin-top: 10px;

  padding: 18px;

  border:
    1px solid rgba(118,199,255,.38);

  border-radius: 10px;

  background:
    linear-gradient(
      135deg,
      rgba(118,199,255,.09),
      rgba(245,185,66,.04)
    );
}


.glf-gm
.glf-scouting-specific-target-kicker {
  margin-bottom: 12px;

  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-scouting-specific-target-grid {
  display: grid;

  grid-template-columns:
    1.5fr
    1fr
    .7fr
    .7fr;

  gap: 14px;
}


.glf-gm
.glf-scouting-specific-target-grid
span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-specific-target-grid
strong {
  display: block;

  color: #fff;

  font-size: 16px;
}


.glf-gm
.glf-scouting-specific-target-grid
small {
  display: block;

  margin-top: 4px;

  color: #9fb2c7;
}


.glf-gm
.glf-scouting-specific-target-why {
  margin-top: 16px;

  padding-top: 14px;

  border-top:
    1px solid rgba(255,255,255,.08);
}


.glf-gm
.glf-scouting-specific-target-why
span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-scouting-specific-target-why
p,
.glf-gm
.glf-scouting-specific-target.no-target
p {
  margin: 6px 0 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-scouting-specific-target.no-target
strong {
  color: #fff;

  font-size: 20px;
}


@media (max-width:700px) {

  .glf-gm
  .glf-scouting-specific-target-grid {
    grid-template-columns:
      1fr 1fr;
  }

}

/* =========================================================
   ASSISTANT GM - SPECIFIC SCOUTING ACTIONS
========================================================= */

.glf-gm
.glf-scouting-specific-target-actions {
  display: flex;

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-scouting-specific-view,
.glf-gm
.glf-scouting-specific-board {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;

  padding: 10px 14px;

  border-radius: 8px;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .6px;

  cursor: pointer;
}


.glf-gm
.glf-scouting-specific-view {
  border:
    1px solid rgba(118,199,255,.55);

  background:
    rgba(118,199,255,.10);

  color: #76c7ff;
}


.glf-gm
.glf-scouting-specific-board {
  border:
    1px solid rgba(245,185,66,.55);

  background:
    rgba(245,185,66,.10);

  color: #f5b942;
}


@media (min-width:701px) {

  .glf-gm
  .glf-scouting-specific-view,
  .glf-gm
  .glf-scouting-specific-board {
    min-width: 220px;
  }

}


@media (max-width:700px) {

  .glf-gm
  .glf-scouting-specific-target-actions {
    display: grid;

    grid-template-columns: 1fr;
  }


  .glf-gm
  .glf-scouting-specific-view,
  .glf-gm
  .glf-scouting-specific-board {
    width: 100%;

    min-height: 58px;

    font-size: 11px;
  }

}

.glf-gm
.glf-scouting-specific-board:disabled {
  opacity: .70;
  cursor: default;
}

/* =========================================================
   PROSPECT PROFILE ABOVE ASSISTANT GM
========================================================= */

.glf-gm
.glf-prospect-profile-overlay {
  z-index: 2147483300 !important;
}

/* =========================================================
   COACHING STAFF - ASSISTANT GM
========================================================= */

.glf-gm
.glf-coach-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin: 18px 0;

  padding: 18px 20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.86)
    );
}


.glf-gm
.glf-coach-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-coach-assistant-copy span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-coach-assistant-copy strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-coach-assistant-copy small {
  max-width: 650px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-coach-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding: 10px 16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-coach-assistant-button:hover {
  background:
    rgba(245,185,66,.18);
}


/* DESKTOP */

@media (min-width:701px) {

  .glf-gm
  .glf-coach-assistant-button {
    min-width: 240px;
  }

}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-coach-assistant {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-coach-assistant-copy strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-coach-assistant-copy small {
    font-size: 12px;
  }


  .glf-gm
  .glf-coach-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - COACHING STAFF REPORT
========================================================= */

.glf-gm
.glf-coach-assistant-overlay {
  position: fixed;
  inset: 0;

  z-index: 2147483200;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.92);

  overflow-y: auto;
}


.glf-gm
.glf-coach-assistant-report {
  width: min(980px,100%);

  margin: 20px auto 40px;

  padding: 24px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 14px;

  background: #0b2238;
}


.glf-gm
.glf-coach-assistant-header {
  display: flex;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 18px;
}


.glf-gm
.glf-coach-assistant-header span,
.glf-gm
.glf-coach-assistant-recommendation span,
.glf-gm
.glf-coach-assistant-market span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-coach-assistant-header h2 {
  margin: 5px 0;

  color: #fff;

  font-size: 28px;
}


.glf-gm
.glf-coach-assistant-header p {
  margin: 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-coach-assistant-close {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-coach-assistant-recommendation {
  padding: 18px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-coach-assistant-recommendation strong {
  display: block;

  margin-top: 5px;

  color: #fff;

  font-size: 22px;
}


.glf-gm
.glf-coach-assistant-recommendation p {
  margin: 7px 0 0;

  color: #b9c9d8;

  line-height: 1.5;
}


.glf-gm
.glf-coach-assistant-snapshot {
  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  gap: 10px;

  margin-top: 14px;
}


.glf-gm
.glf-coach-assistant-snapshot div {
  padding: 12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 8px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-coach-assistant-snapshot span,
.glf-gm
.glf-coach-assistant-row span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-coach-assistant-snapshot strong {
  color: #fff;
}


.glf-gm
.glf-coach-assistant-section-title {
  margin: 18px 0 10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-coach-assistant-row {
  display: grid;

  grid-template-columns:
    46px
    1.4fr
    .5fr
    1.2fr
    .7fr;

  align-items: center;

  gap: 12px;

  margin-bottom: 8px;

  padding: 14px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 9px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-coach-assistant-rank {
  color: #f5b942;

  font-size: 22px;
  font-weight: 900;
}


.glf-gm
.glf-coach-assistant-row strong {
  color: #fff;
}


.glf-gm
.glf-coach-assistant-row small {
  display: block;

  margin-top: 3px;

  color: #9fb2c7;
}


.glf-gm
.glf-coach-assistant-market {
  margin-top: 14px;

  padding: 16px;

  border:
    1px solid rgba(118,199,255,.35);

  border-radius: 9px;

  background:
    rgba(118,199,255,.06);
}


.glf-gm
.glf-coach-assistant-market strong {
  display: block;

  margin-top: 5px;

  color: #fff;

  font-size: 18px;
}


.glf-gm
.glf-coach-assistant-market p {
  margin: 5px 0 0;

  color: #9fb2c7;
}


.glf-gm
.glf-coach-assistant-guidance {
  display: grid;

  grid-template-columns:
    repeat(2,1fr);

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-coach-assistant-guidance div {
  padding: 14px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.05);
}


.glf-gm
.glf-coach-assistant-guidance span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-coach-assistant-guidance p {
  margin: 5px 0 0;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


@media (max-width:700px) {

  .glf-gm
  .glf-coach-assistant-overlay {
    padding: 12px;
  }


  .glf-gm
  .glf-coach-assistant-report {
    padding: 16px;
  }


  .glf-gm
  .glf-coach-assistant-snapshot {
    grid-template-columns:
      repeat(2,1fr);
  }


  .glf-gm
  .glf-coach-assistant-row {
    grid-template-columns:
      40px 1fr;
  }


  .glf-gm
  .glf-coach-assistant-row
  > div:nth-child(n+3) {
    grid-column: 2;
  }


  .glf-gm
  .glf-coach-assistant-guidance {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   ASSISTANT GM - COACHING ACTIONS
========================================================= */

.glf-gm
.glf-coach-assistant-actions {
  display: flex;

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-coach-assistant-current-profile,
.glf-gm
.glf-coach-assistant-replacement-profile,
.glf-gm
.glf-coach-assistant-open-market {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;

  padding: 10px 14px;

  border-radius: 8px;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .6px;

  cursor: pointer;
}


.glf-gm
.glf-coach-assistant-current-profile {
  border:
    1px solid rgba(255,255,255,.18);

  background:
    rgba(255,255,255,.05);

  color: #dce8f3;
}


.glf-gm
.glf-coach-assistant-replacement-profile {
  border:
    1px solid rgba(118,199,255,.55);

  background:
    rgba(118,199,255,.10);

  color: #76c7ff;
}


.glf-gm
.glf-coach-assistant-open-market {
  border:
    1px solid rgba(245,185,66,.55);

  background:
    rgba(245,185,66,.10);

  color: #f5b942;
}


@media (min-width:701px) {

  .glf-gm
  .glf-coach-assistant-actions
  button {
    flex: 1;
  }

}


@media (max-width:700px) {

  .glf-gm
  .glf-coach-assistant-actions {
    display: grid;

    grid-template-columns: 1fr;
  }


  .glf-gm
  .glf-coach-assistant-actions
  button {
    width: 100%;

    min-height: 58px;

    font-size: 11px;
  }

}

/* =========================================================
   COACH PROFILE - VIEWPORT HEIGHT FIX
========================================================= */

.glf-gm
.glf-coach-profile-overlay {
  align-items: flex-start !important;

  overflow-y: auto !important;

  padding: 24px !important;
}


.glf-gm
.glf-coach-profile-card {
  margin:
    20px auto
    40px !important;

  max-height: none !important;
}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-coach-profile-overlay {
    padding: 12px !important;
  }


  .glf-gm
  .glf-coach-profile-card {
    margin:
      12px auto
      36px !important;
  }

}

/* =========================================================
   COACH PROFILE ABOVE ASSISTANT GM
========================================================= */

.glf-gm
.glf-coach-profile-overlay {
  z-index: 2147483300 !important;
}

/* =========================================================
   ROSTER - ASSISTANT GM
========================================================= */

.glf-gm
.glf-roster-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin: 18px 0;

  padding: 18px 20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.86)
    );
}


.glf-gm
.glf-roster-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-roster-assistant-copy span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-roster-assistant-copy strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-roster-assistant-copy small {
  max-width: 650px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-roster-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding: 10px 16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-roster-assistant-button:hover {
  background:
    rgba(245,185,66,.18);
}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-roster-assistant {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-roster-assistant-copy strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-roster-assistant-copy small {
    font-size: 12px;
  }


  .glf-gm
  .glf-roster-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   ROSTER PLAYER PROFILE - KEEP ABOVE ROSTER WINDOW
========================================================= */

.glf-gm
.glf-player-profile {
  z-index: 2147483400 !important;
}


/* Make tall player profiles scroll safely */

.glf-gm
.glf-player-profile {
  align-items: flex-start !important;

  overflow-y: auto !important;

  padding: 24px !important;
}


.glf-gm
.glf-player-profile-card {
  margin:
    20px auto
    40px !important;
}


/* MOBILE */

@media (max-width:700px) {

  .glf-gm
  .glf-player-profile {
    padding: 12px !important;
  }


  .glf-gm
  .glf-player-profile-card {
    margin:
      12px auto
      36px !important;
  }

}

/* =========================================================
   ASSISTANT GM - ROSTER ANALYSIS REPORT
========================================================= */

.glf-gm
.glf-roster-assistant-overlay {
  position: fixed;
  inset: 0;

  z-index: 2147483200;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.92);

  overflow-y: auto;
}


.glf-gm
.glf-roster-assistant-report {
  width: min(1000px,100%);

  margin: 20px auto 40px;

  padding: 24px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 14px;

  background: #0b2238;
}


.glf-gm
.glf-roster-assistant-header {
  display: flex;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 18px;
}


.glf-gm
.glf-roster-assistant-header span,
.glf-gm
.glf-roster-assistant-recommendation span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-roster-assistant-header h2 {
  margin: 5px 0;

  color: #fff;

  font-size: 28px;
}


.glf-gm
.glf-roster-assistant-header p {
  margin: 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-roster-assistant-close {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-roster-assistant-recommendation {
  padding: 18px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-roster-assistant-recommendation strong {
  display: block;

  margin-top: 5px;

  color: #fff;

  font-size: 22px;
}


.glf-gm
.glf-roster-assistant-recommendation p {
  margin: 7px 0 0;

  color: #b9c9d8;

  line-height: 1.5;
}


.glf-gm
.glf-roster-assistant-snapshot {
  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 10px;

  margin-top: 14px;
}


.glf-gm
.glf-roster-assistant-snapshot div {
  padding: 12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 8px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-roster-assistant-snapshot span,
.glf-gm
.glf-roster-priority-row span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-roster-assistant-snapshot strong {
  color: #fff;
}


.glf-gm
.glf-roster-assistant-title {
  margin: 18px 0 10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-roster-priority-row {
  display: grid;

  grid-template-columns:
    45px
    .65fr
    .8fr
    .8fr
    .7fr
    .7fr;

  align-items: center;

  gap: 12px;

  margin-bottom: 8px;

  padding: 14px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 9px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-roster-priority-rank {
  color: #f5b942;

  font-size: 22px;
  font-weight: 900;
}


.glf-gm
.glf-roster-priority-row strong {
  color: #fff;
}


.glf-gm
.glf-roster-core-grid {
  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 10px;
}


.glf-gm
.glf-roster-core-player {
  padding: 14px;

  border:
    1px solid rgba(118,199,255,.22);

  border-radius: 9px;

  background:
    rgba(118,199,255,.05);
}


.glf-gm
.glf-roster-core-player strong {
  display: block;

  color: #fff;
}


.glf-gm
.glf-roster-core-player span {
  display: block;

  margin-top: 4px;

  color: #9fb2c7;

  font-size: 10px;
}


.glf-gm
.glf-roster-assistant-guidance {
  display: grid;

  grid-template-columns:
    repeat(2,1fr);

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-roster-assistant-guidance div {
  padding: 14px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.05);
}


.glf-gm
.glf-roster-assistant-guidance span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-roster-assistant-guidance p {
  margin: 5px 0 0;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


@media (max-width:700px) {

  .glf-gm
  .glf-roster-assistant-overlay {
    padding: 12px;
  }


  .glf-gm
  .glf-roster-assistant-report {
    padding: 16px;
  }


  .glf-gm
  .glf-roster-assistant-snapshot {
    grid-template-columns:
      repeat(2,1fr);
  }


  .glf-gm
  .glf-roster-priority-row {
    grid-template-columns:
      40px 1fr;
  }


  .glf-gm
  .glf-roster-priority-row
  > div:nth-child(n+3) {
    grid-column: 2;
  }


  .glf-gm
  .glf-roster-core-grid {
    grid-template-columns: 1fr;
  }


  .glf-gm
  .glf-roster-assistant-guidance {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   DEPTH CHART - ASSISTANT GM
========================================================= */

.glf-gm
.glf-depth-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin: 18px 0;

  padding: 18px 20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.86)
    );
}


.glf-gm
.glf-depth-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-depth-assistant-copy span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-depth-assistant-copy strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-depth-assistant-copy small {
  max-width: 650px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-depth-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding: 10px 16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-depth-assistant-button:hover {
  background:
    rgba(245,185,66,.18);
}


@media (min-width:701px) {

  .glf-gm
  .glf-depth-assistant-button {
    min-width: 230px;
  }

}


@media (max-width:700px) {

  .glf-gm
  .glf-depth-assistant {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-depth-assistant-copy strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-depth-assistant-copy small {
    font-size: 12px;
  }


  .glf-gm
  .glf-depth-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - DEPTH CHART REPORT
========================================================= */

.glf-gm
.glf-depth-assistant-overlay {
  position: fixed;
  inset: 0;

  z-index: 2147483200;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 24px;

  background:
    rgba(2,10,20,.92);

  overflow-y: auto;
}


.glf-gm
.glf-depth-assistant-report {
  width: min(1050px,100%);

  margin: 20px auto 40px;

  padding: 24px;

  border:
    1px solid rgba(245,185,66,.45);

  border-radius: 14px;

  background: #0b2238;
}


.glf-gm
.glf-depth-assistant-header {
  display: flex;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 18px;
}


.glf-gm
.glf-depth-assistant-header span,
.glf-gm
.glf-depth-assistant-recommendation span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-depth-assistant-header h2 {
  margin: 5px 0;

  color: #fff;

  font-size: 28px;
}


.glf-gm
.glf-depth-assistant-header p {
  margin: 0;

  color: #9fb2c7;

  line-height: 1.5;
}


.glf-gm
.glf-depth-assistant-close {
  width: 40px;
  height: 40px;

  flex-shrink: 0;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius: 8px;

  background:
    rgba(255,255,255,.05);

  color: #fff;

  cursor: pointer;
}


.glf-gm
.glf-depth-assistant-recommendation {
  padding: 18px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 10px;

  background:
    rgba(245,185,66,.07);
}


.glf-gm
.glf-depth-assistant-recommendation strong {
  display: block;

  margin-top: 5px;

  color: #fff;

  font-size: 22px;
}


.glf-gm
.glf-depth-assistant-recommendation p {
  margin: 7px 0 0;

  color: #b9c9d8;

  line-height: 1.5;
}


.glf-gm
.glf-depth-assistant-snapshot {
  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  gap: 10px;

  margin-top: 14px;
}


.glf-gm
.glf-depth-assistant-snapshot div {
  padding: 12px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 8px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-depth-assistant-snapshot span,
.glf-gm
.glf-depth-assistant-row span {
  display: block;

  margin-bottom: 5px;

  color: #8298ad;

  font-size: 8px;
  font-weight: 900;
}


.glf-gm
.glf-depth-assistant-snapshot strong {
  color: #fff;
}


.glf-gm
.glf-depth-assistant-title {
  margin: 18px 0 10px;

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .8px;
}


.glf-gm
.glf-depth-assistant-row {
  display: grid;

  grid-template-columns:
    45px
    .55fr
    1.2fr
    1.2fr
    1fr
    .6fr;

  align-items: center;

  gap: 12px;

  margin-bottom: 8px;

  padding: 14px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 9px;

  background:
    rgba(255,255,255,.03);
}


.glf-gm
.glf-depth-assistant-rank {
  color: #f5b942;

  font-size: 22px;
  font-weight: 900;
}


.glf-gm
.glf-depth-assistant-row strong {
  color: #fff;
}


.glf-gm
.glf-depth-assistant-row small {
  display: block;

  margin-top: 3px;

  color: #9fb2c7;
}


.glf-gm
.glf-depth-assistant-empty {
  padding: 18px;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius: 9px;

  color: #9fb2c7;
}


.glf-gm
.glf-depth-assistant-guidance {
  display: grid;

  grid-template-columns:
    repeat(2,1fr);

  gap: 10px;

  margin-top: 16px;
}


.glf-gm
.glf-depth-assistant-guidance div {
  padding: 14px;

  border-left:
    3px solid #f5b942;

  background:
    rgba(245,185,66,.05);
}


.glf-gm
.glf-depth-assistant-guidance span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;
}


.glf-gm
.glf-depth-assistant-guidance p {
  margin: 5px 0 0;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.5;
}


@media (max-width:700px) {

  .glf-gm
  .glf-depth-assistant-overlay {
    padding: 12px;
  }


  .glf-gm
  .glf-depth-assistant-report {
    padding: 16px;
  }


  .glf-gm
  .glf-depth-assistant-snapshot {
    grid-template-columns:
      repeat(2,1fr);
  }


  .glf-gm
  .glf-depth-assistant-row {
    grid-template-columns:
      40px 1fr;
  }


  .glf-gm
  .glf-depth-assistant-row
  > div:nth-child(n+3) {
    grid-column: 2;
  }


  .glf-gm
  .glf-depth-assistant-guidance {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   ASSISTANT GM - DEPTH CHART ACTION
========================================================= */

.glf-gm
.glf-depth-assistant-apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 48px;

  margin-top: 14px;

  padding: 10px 16px;

  border:
    1px solid rgba(118,199,255,.55);

  border-radius: 8px;

  background:
    rgba(118,199,255,.10);

  color: #76c7ff;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-depth-assistant-apply:hover {
  background:
    rgba(118,199,255,.18);
}


@media (max-width:700px) {

  .glf-gm
  .glf-depth-assistant-apply {
    width: 100%;

    min-height: 58px;

    font-size: 11px;
  }

}

/* =========================================================
   GAME PLAN - ASSISTANT GM
========================================================= */

.glf-gm
.glf-gameplan-assistant {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  margin: 18px 0;

  padding: 18px 20px;

  border:
    1px solid rgba(245,185,66,.32);

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      rgba(245,185,66,.08),
      rgba(10,31,49,.86)
    );
}


.glf-gm
.glf-gameplan-assistant-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}


.glf-gm
.glf-gameplan-assistant-copy span {
  color: #f5b942;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: 1px;
}


.glf-gm
.glf-gameplan-assistant-copy strong {
  color: #fff;

  font-size: 19px;
  font-weight: 900;
}


.glf-gm
.glf-gameplan-assistant-copy small {
  max-width: 650px;

  color: #9fb2c7;

  font-size: 11px;

  line-height: 1.45;
}


.glf-gm
.glf-gameplan-assistant-button {
  flex-shrink: 0;

  min-height: 46px;

  padding: 10px 16px;

  border:
    1px solid rgba(245,185,66,.55);

  border-radius: 8px;

  background:
    rgba(245,185,66,.10);

  color: #f5b942;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .7px;

  cursor: pointer;
}


.glf-gm
.glf-gameplan-assistant-button:hover {
  background:
    rgba(245,185,66,.18);
}


@media (min-width:701px) {

  .glf-gm
  .glf-gameplan-assistant-button {
    min-width: 260px;
  }

}


@media (max-width:700px) {

  .glf-gm
  .glf-gameplan-assistant {
    display: block;

    padding: 16px;
  }


  .glf-gm
  .glf-gameplan-assistant-copy strong {
    font-size: 17px;
  }


  .glf-gm
  .glf-gameplan-assistant-copy small {
    font-size: 12px;
  }


  .glf-gm
  .glf-gameplan-assistant-button {
    width: 100%;

    min-height: 58px;

    margin-top: 14px;

    font-size: 11px;
  }

}

/* =========================================================
   ASSISTANT GM - GAME PLAN RECOMMENDATION
========================================================= */

.glf-assistant-gameplan-result {
  width: 100%;
  margin-top: 24px;
  padding: 24px;
  border: 1px solid rgba(245, 184, 54, 0.55);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(21, 48, 70, 0.96),
      rgba(11, 31, 46, 0.98)
    );
  box-sizing: border-box;

  /* Force this result onto its own full-width row */
  grid-column: 1 / -1;
  flex-basis: 100%;
}


.glf-assistant-result-kicker {
  margin-bottom: 20px;
  color: #f5b836;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}


.glf-assistant-result-grid {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
  gap: 16px;
}


.glf-assistant-result-item {
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(84, 139, 179, 0.45);
  border-radius: 14px;
  background: rgba(4, 23, 38, 0.55);
}


.glf-assistant-result-item span {
  display: block;
  margin-bottom: 8px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1px;
}


.glf-assistant-result-item strong {
  display: block;
  margin-bottom: 6px;
  color: #ffffff;
  font-size: 22px;
  line-height: 1.15;
}


.glf-assistant-result-item small {
  display: block;
  margin-bottom: 14px;
  color: #9fc7e8;
  font-size: 13px;
  font-weight: 700;
}


.glf-assistant-result-item p {
  margin: 0;
  color: #c8d6e5;
  font-size: 14px;
  line-height: 1.55;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 700px) {

  .glf-assistant-result-grid {
    grid-template-columns: 1fr;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .glf-assistant-gameplan-result {
    margin-top: 18px;
    padding: 16px;
    border-radius: 14px;
  }


  .glf-assistant-result-item {
    padding: 16px;
  }


  .glf-assistant-result-item strong {
    font-size: 19px;
  }

}

/* =========================================================
   ASSISTANT GM - APPLIED BADGE
========================================================= */

.glf-assistant-applied-badge {
  display: inline-flex;
  align-items: center;
  margin: 0 0 22px;
  padding: 8px 13px;
  border: 1px solid rgba(130, 210, 150, 0.55);
  border-radius: 999px;
  background: rgba(60, 150, 85, 0.14);
  color: #9ee5ad;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1px;
}

/* =========================================================
   ASSISTANT GM - GUIDANCE SECTIONS
========================================================= */

.glf-assistant-guidance-grid {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}


.glf-assistant-guidance-card {
  padding: 20px;
  border: 1px solid rgba(84, 139, 179, 0.38);
  border-radius: 14px;
  background: rgba(4, 23, 38, 0.42);
}


.glf-assistant-guidance-card > span {
  display: block;
  margin-bottom: 10px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-assistant-guidance-card > strong {
  display: block;
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.3;
}


.glf-assistant-guidance-card p {
  margin: 0 0 10px;
  color: #c8d6e5;
  font-size: 14px;
  line-height: 1.6;
}


.glf-assistant-guidance-card p:last-child {
  margin-bottom: 0;
}


.glf-assistant-next-step {
  border-color: rgba(245, 184, 54, 0.5);
  background: rgba(245, 184, 54, 0.06);
}


@media (max-width: 700px) {

  .glf-assistant-guidance-grid {
    grid-template-columns: 1fr;
  }

}

/* =========================================================
   ASSISTANT GM - SCHEDULE
========================================================= */

.glf-schedule-assistant {
  margin: 26px 0;
  padding: 26px;
  border: 1px solid rgba(245, 184, 54, 0.58);
  border-radius: 20px;
  background:
    linear-gradient(
      180deg,
      rgba(21, 48, 70, 0.96),
      rgba(8, 28, 43, 0.98)
    );
}


.glf-schedule-assistant-kicker {
  margin-bottom: 10px;
  color: #f5b836;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 1.4px;
}


.glf-schedule-assistant h3 {
  margin: 0;
  color: #ffffff;
  font-size: 28px;
  line-height: 1.2;
}


.glf-schedule-assistant-summary {
  margin: 10px 0 22px;
  color: #a9c8e5;
  font-size: 16px;
  line-height: 1.55;
}


.glf-schedule-assistant-window {
  margin-bottom: 20px;
}


.glf-schedule-assistant-window-title {
  margin-bottom: 10px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-schedule-assistant-games {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
  gap: 12px;
}


.glf-schedule-assistant-game {
  padding: 16px;
  border: 1px solid rgba(84, 139, 179, 0.42);
  border-radius: 13px;
  background: rgba(4, 23, 38, 0.52);
}


.glf-schedule-assistant-game span,
.glf-schedule-assistant-game strong,
.glf-schedule-assistant-game small {
  display: block;
}


.glf-schedule-assistant-game span {
  margin-bottom: 5px;
  color: #f5b836;
  font-size: 11px;
  font-weight: 800;
}


.glf-schedule-assistant-game strong {
  color: #ffffff;
  font-size: 17px;
}


.glf-schedule-assistant-game small {
  margin-top: 6px;
  color: #9fc7e8;
  font-size: 12px;
  font-weight: 700;
}


@media (max-width: 700px) {

  .glf-schedule-assistant {
    padding: 18px;
  }


  .glf-schedule-assistant-games {
    grid-template-columns: 1fr;
  }


  .glf-schedule-assistant h3 {
    font-size: 23px;
  }

}

/* =========================================================
   SCHEDULE ASSISTANT GM - LAUNCHER
========================================================= */

.glf-schedule-assistant-launcher {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;

  margin: 22px 0;
  padding: 20px;

  border: 1px solid rgba(245, 184, 54, 0.5);
  border-radius: 14px;

  background:
    linear-gradient(
      135deg,
      rgba(15, 40, 59, 0.94),
      rgba(12, 31, 45, 0.96)
    );
}


.glf-schedule-assistant-launcher-copy {
  flex: 1;
  min-width: 0;
}


.glf-schedule-assistant-launcher-kicker {
  margin-bottom: 8px;

  color: #f5b836;

  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-schedule-assistant-launcher h3 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 20px;
  line-height: 1.25;
}


.glf-schedule-assistant-launcher p {
  max-width: 760px;

  margin: 0;

  color: #9fc0df;

  font-size: 14px;
  line-height: 1.5;
}


.glf-schedule-assistant-open {
  flex: 0 0 auto;

  min-width: 240px;
  padding: 16px 22px;

  border: 1px solid #b98b27;
  border-radius: 12px;

  background: rgba(245, 184, 54, 0.08);

  color: #f5b836;

  font-size: 13px;
  font-weight: 800;
  letter-spacing: .5px;

  cursor: pointer;

  transition:
    transform .15s ease,
    background .15s ease;
}


.glf-schedule-assistant-open:hover {
  background: rgba(245, 184, 54, 0.16);
  transform: translateY(-1px);
}

/* =========================================================
   SCHEDULE ASSISTANT GM - ANALYSIS SCREEN
========================================================= */

.glf-schedule-analysis-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;

  overflow-y: auto;

  padding: 32px 24px 70px;

  background: #06192a;
}


.glf-schedule-analysis-shell {
  width: 100%;
  max-width: 1280px;

  margin: 0 auto;
}


.glf-schedule-analysis-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;

  margin-bottom: 24px;
}


.glf-schedule-analysis-header h2 {
  margin: 6px 0;

  color: #ffffff;

  font-size: 34px;
}


.glf-schedule-analysis-header p {
  margin: 0;

  color: #9fc0df;

  font-size: 15px;
}


.glf-schedule-analysis-back {
  padding: 14px 20px;

  border: 1px solid rgba(84, 139, 179, 0.55);
  border-radius: 12px;

  background: #14395d;

  color: #ffffff;

  font-weight: 800;

  cursor: pointer;
}


@media (max-width: 700px) {

  .glf-schedule-assistant-launcher {
    flex-direction: column;
    align-items: stretch;
  }


  .glf-schedule-assistant-open {
    width: 100%;
    min-width: 0;
  }


  .glf-schedule-analysis-overlay {
    padding: 18px 14px 60px;
  }


  .glf-schedule-analysis-header {
    flex-direction: column;
  }


  .glf-schedule-analysis-back {
    width: 100%;
  }

}

/* =========================================================
   STANDINGS ASSISTANT GM
========================================================= */

.glf-standings-assistant-launcher {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;

  margin: 20px 0;
  padding: 20px;

  border: 1px solid rgba(245, 184, 54, 0.5);
  border-radius: 14px;

  background:
    linear-gradient(
      135deg,
      rgba(15, 40, 59, 0.94),
      rgba(12, 31, 45, 0.96)
    );
}


.glf-standings-assistant-copy {
  flex: 1;
}


.glf-standings-assistant-kicker {
  margin-bottom: 7px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-standings-assistant-launcher h3 {
  margin: 0 0 6px;
  color: #ffffff;
  font-size: 20px;
}


.glf-standings-assistant-launcher p {
  max-width: 760px;
  margin: 0;
  color: #9fc0df;
  font-size: 14px;
  line-height: 1.5;
}


.glf-standings-assistant-open {
  min-width: 240px;
  padding: 16px 22px;

  border: 1px solid #b98b27;
  border-radius: 12px;

  background: rgba(245, 184, 54, 0.08);
  color: #f5b836;

  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}


/* ANALYSIS SCREEN */

.glf-standings-analysis-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;

  overflow-y: auto;

  padding: 32px 24px 70px;

  background: #06192a;
}


.glf-standings-analysis-shell {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}


.glf-standings-analysis-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;

  margin-bottom: 24px;
}


.glf-standings-analysis-header h2 {
  margin: 6px 0;
  color: white;
  font-size: 34px;
}


.glf-standings-analysis-header p {
  margin: 0;
  color: #9fc0df;
}


.glf-standings-analysis-back {
  padding: 14px 20px;
  border: 1px solid rgba(84, 139, 179, 0.55);
  border-radius: 12px;
  background: #14395d;
  color: white;
  font-weight: 800;
  cursor: pointer;
}


.glf-standings-analysis-hero {
  margin-bottom: 18px;
  padding: 24px;

  border: 1px solid rgba(245, 184, 54, 0.55);
  border-radius: 18px;

  background:
    linear-gradient(
      180deg,
      rgba(21, 48, 70, 0.96),
      rgba(8, 28, 43, 0.98)
    );
}


.glf-standings-analysis-kicker {
  margin-bottom: 8px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-standings-analysis-hero h3 {
  margin: 0 0 8px;
  color: white;
  font-size: 28px;
}


.glf-standings-analysis-hero p {
  margin: 0;
  color: #b7cde1;
  font-size: 15px;
  line-height: 1.55;
}


.glf-standings-analysis-metrics {
  display: grid;
  grid-template-columns:
    repeat(6, minmax(0, 1fr));

  gap: 12px;
  margin-bottom: 20px;
}


.glf-standings-analysis-metrics > div {
  padding: 16px;

  border: 1px solid rgba(84, 139, 179, 0.42);
  border-radius: 13px;

  background: rgba(4, 23, 38, 0.55);
}


.glf-standings-analysis-metrics span,
.glf-standings-analysis-metrics strong {
  display: block;
}


.glf-standings-analysis-metrics span {
  margin-bottom: 6px;
  color: #f5b836;
  font-size: 10px;
  font-weight: 800;
}


.glf-standings-analysis-metrics strong {
  color: white;
  font-size: 21px;
}


@media (max-width: 900px) {

  .glf-standings-analysis-metrics {
    grid-template-columns:
      repeat(3, 1fr);
  }

}


@media (max-width: 700px) {

  .glf-standings-assistant-launcher,
  .glf-standings-analysis-header {
    flex-direction: column;
  }


  .glf-standings-assistant-open,
  .glf-standings-analysis-back {
    width: 100%;
    min-width: 0;
  }


  .glf-standings-analysis-metrics {
    grid-template-columns:
      repeat(2, 1fr);
  }

}

/* =========================================================
   LEAGUE ASSISTANT GM - LAUNCHER
========================================================= */

.glf-league-assistant-launcher {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;

  margin: 20px 0;
  padding: 20px;

  border: 1px solid rgba(245, 184, 54, 0.5);
  border-radius: 14px;

  background:
    linear-gradient(
      135deg,
      rgba(15, 40, 59, 0.94),
      rgba(12, 31, 45, 0.96)
    );
}


.glf-league-assistant-copy {
  flex: 1;
}


.glf-league-assistant-kicker {
  margin-bottom: 7px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-league-assistant-launcher h3 {
  margin: 0 0 6px;
  color: #ffffff;
  font-size: 20px;
}


.glf-league-assistant-launcher p {
  max-width: 760px;
  margin: 0;
  color: #9fc0df;
  font-size: 14px;
  line-height: 1.5;
}


.glf-league-assistant-open {
  min-width: 240px;
  padding: 16px 22px;

  border: 1px solid #b98b27;
  border-radius: 12px;

  background: rgba(245, 184, 54, 0.08);
  color: #f5b836;

  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}


/* =========================================================
   LEAGUE ASSISTANT GM - ANALYSIS
========================================================= */

.glf-league-analysis-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;

  overflow-y: auto;

  padding: 32px 24px 70px;

  background: #06192a;
}


.glf-league-analysis-shell {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}


.glf-league-analysis-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;

  margin-bottom: 24px;
}


.glf-league-analysis-header h2 {
  margin: 6px 0;
  color: #ffffff;
  font-size: 34px;
}


.glf-league-analysis-header p {
  margin: 0;
  color: #9fc0df;
}


.glf-league-analysis-back {
  padding: 14px 20px;

  border: 1px solid rgba(84, 139, 179, 0.55);
  border-radius: 12px;

  background: #14395d;
  color: #ffffff;

  font-weight: 800;
  cursor: pointer;
}


.glf-league-analysis-hero {
  margin-bottom: 18px;
  padding: 24px;

  border: 1px solid rgba(245, 184, 54, 0.55);
  border-radius: 18px;

  background:
    linear-gradient(
      180deg,
      rgba(21, 48, 70, 0.96),
      rgba(8, 28, 43, 0.98)
    );
}


.glf-league-analysis-kicker {
  margin-bottom: 8px;
  color: #f5b836;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
}


.glf-league-analysis-hero h3 {
  margin: 0 0 8px;
  color: #ffffff;
  font-size: 28px;
}


.glf-league-analysis-hero p {
  margin: 0;
  color: #b7cde1;
  line-height: 1.55;
}


.glf-league-analysis-metrics {
  display: grid;
  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 12px;
  margin-bottom: 20px;
}


.glf-league-analysis-metrics > div {
  padding: 18px;

  border: 1px solid rgba(84, 139, 179, 0.42);
  border-radius: 13px;

  background: rgba(4, 23, 38, 0.55);
}


.glf-league-analysis-metrics span,
.glf-league-analysis-metrics strong,
.glf-league-analysis-metrics small {
  display: block;
}


.glf-league-analysis-metrics span {
  margin-bottom: 7px;
  color: #f5b836;
  font-size: 11px;
  font-weight: 800;
}


.glf-league-analysis-metrics strong {
  color: #ffffff;
  font-size: 24px;
}


.glf-league-analysis-metrics small {
  margin-top: 7px;
  color: #9fc7e8;
  font-size: 12px;
}


@media (max-width: 700px) {

  .glf-league-assistant-launcher,
  .glf-league-analysis-header {
    flex-direction: column;
  }


  .glf-league-assistant-open,
  .glf-league-analysis-back {
    width: 100%;
    min-width: 0;
  }


  .glf-league-analysis-metrics {
    grid-template-columns:
      repeat(2, 1fr);
  }

}