/* NFL Team Logos - Real Images */
.team-logo {
  width: 32px;
  height: 32px;
  margin-right: 12px;
  border-radius: 4px;
  object-fit: contain;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* NFL Team Logo Images from ESPN CDN */
.team-logo-DAL { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/dal.png'); }
.team-logo-PHI { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/phi.png'); }
.team-logo-KC { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/kc.png'); }
.team-logo-LAR { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/lar.png'); }
.team-logo-TB { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/tb.png'); }
.team-logo-ATL { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/atl.png'); }
.team-logo-CIN { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/cin.png'); }
.team-logo-CLE { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/cle.png'); }
.team-logo-MIA { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/mia.png'); }
.team-logo-IND { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/ind.png'); }
.team-logo-LV { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/lv.png'); }
.team-logo-NE { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/ne.png'); }
.team-logo-ARI { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/ari.png'); }
.team-logo-NO { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/no.png'); }
.team-logo-PIT { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/pit.png'); }
.team-logo-NYJ { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/nyj.png'); }
.team-logo-NYG { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/nyg.png'); }
.team-logo-WSH { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/wsh.png'); }
.team-logo-CAR { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/car.png'); }
.team-logo-JAX { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/jax.png'); }
.team-logo-TEN { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/ten.png'); }
.team-logo-DEN { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/den.png'); }
.team-logo-SF { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/sf.png'); }
.team-logo-SEA { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/sea.png'); }
.team-logo-DET { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/det.png'); }
.team-logo-GB { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/gb.png'); }
.team-logo-HOU { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/hou.png'); }
.team-logo-LAC { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/lac.png'); }
.team-logo-BAL { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/bal.png'); }
.team-logo-BUF { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/buf.png'); }
.team-logo-MIN { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/min.png'); }
.team-logo-CHI { background-image: url('https://a.espncdn.com/i/teamlogos/nfl/500/chi.png'); }

/* Team selection styling improvements */
.form-check.game-option {
  transition: all 0.2s ease-in-out;
  border: 2px solid #e9ecef;
  border-radius: 8px;
  background: white;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.form-check.game-option:hover {
  border-color: #28a745;
  box-shadow: 0 2px 8px rgba(40, 167, 69, 0.15);
  transform: translateY(-1px);
}

/* SELECTED STATE - This is the most important part! */
.form-check.game-option.selected,
.form-check.game-option:has(.form-check-input:checked),
.form-check.game-option:has(input[type="radio"]:checked) {
  border: 3px solid #28a745 !important;
  background: rgba(40, 167, 69, 0.08) !important;
  box-shadow: 0 2px 12px rgba(40, 167, 69, 0.25) !important;
  transform: translateY(-1px) !important;
}

/* Even more specific for selected state */
input[type="radio"]:checked + .form-check-label {
  /* This targets the label after a checked radio */
}

.form-check.game-option:has(input:checked) {
  border: 3px solid #28a745 !important;
  background: rgba(40, 167, 69, 0.08) !important;
}

/* Removed checkmark - using green border and background instead */

.form-check.game-option .form-check-input {
  opacity: 0;
  position: absolute;
}

.form-check.game-option .form-check-label {
  width: 100%;
  margin: 0;
  cursor: pointer;
  padding: 12px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.team-info {
  display: flex;
  align-items: center;
  flex-grow: 1;
}

.team-name {
  font-weight: 500;
  color: #333;
  margin-left: 8px;
}

.form-check.game-option:has(.form-check-input:checked) .team-name,
.form-check.game-option:has(input[type="radio"]:checked) .team-name,
.form-check.game-option.selected .team-name {
  font-weight: 600;
  color: #1a5a2b;
}

/* Styles for games that have started */
.card.game-started {
  opacity: 0.6;
  background-color: #f8f9fa !important;
}

.game-started .form-check-label.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.game-started .form-check-input:disabled {
  cursor: not-allowed;
}

.game-started .team-selection {
  pointer-events: none;
}

.game-started .badge {
  opacity: 0.7;
}

/* Styles for completed games (results entered) */
.card.game-completed {
  border: 2px solid #28a745;
  background-color: #f8fff9 !important;
}

.game-completed .card-header {
  background: linear-gradient(45deg, #28a745, #20c997) !important;
}

.badge.bg-secondary,
.badge.bg-primary {
  background: #333 !important;
  color: white !important;
  font-size: 0.75rem;
  padding: 4px 8px;
}

.form-check.game-option:has(.form-check-input:checked) .badge,
.form-check.game-option:has(input[type="radio"]:checked) .badge,
.form-check.game-option.selected .badge {
  background: #28a745 !important;
  color: white !important;
}
