/* Georgia Generals — Oct 2026 fixes (load after styles.css) */

/* `hidden` must always win over component display rules
   (.hero__stats, .modal, etc. set display and would otherwise override it). */
[hidden] { display: none !important; }

/* Coach panel: visible by default. The old rule started it at opacity 0
   and relied on an animation to reveal it — if Safari skipped the
   animation the screen stayed blank. Animation is now enhancement only. */
.clubhouse { opacity: 1; transform: none; }
.clubhouse.is-open { animation: panelIn 0.5s var(--ease-out) both; }
@keyframes panelIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .clubhouse.is-open { animation: none; }
}

/* Up Next empty state */
.game--empty { justify-content: center; text-align: center; }
.game--empty .game__vs { font-size: 1.05rem; }

/* Admin helper text */
.admin-hint {
  font-family: var(--font-cond);
  font-size: 0.92rem;
  color: rgba(201, 210, 222, 0.7);
  line-height: 1.5;
  margin: -0.3rem 0 1rem;
}

/* On phones each event row stacks to several lines — separate them clearly */
@media (max-width: 900px) {
  .admin-events { gap: 0.9rem; }
  .admin-event {
    padding: 0.7rem;
    background: rgba(16, 32, 60, 0.35);
    border-left: 3px solid var(--red-500);
  }
}

/* Practice schedule: one row per weekday, each with its own time */
.admin-pdays { display: grid; gap: 0.45rem; }
.admin-pday {
  display: grid;
  grid-template-columns: 7.5rem 1fr 1fr;
  align-items: center;
  gap: 0.6rem;
}
.admin-pday label {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-family: var(--font-cond);
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  color: var(--silver);
  cursor: pointer;
}
.admin-pday input[type="checkbox"] { accent-color: var(--red-500); }
.admin-pday input[type="text"] {
  background: rgba(16, 32, 60, 0.6);
  border: 1px solid rgba(201, 210, 222, 0.25);
  color: var(--cream);
  font-family: var(--font-cond);
  font-size: 1rem;
  padding: 0.45em 0.7em;
  outline: none;
  min-width: 0;
}
.admin-pday input[type="text"]:focus { border-color: var(--red-400); }
.admin-pday:has(input[type="checkbox"]:not(:checked)) input[type="text"] { opacity: 0.45; }
/* Narrow cards (phones, and the side column on desktop): day name on its own line */
@media (max-width: 1200px) {
  .admin-pday { grid-template-columns: 1fr 1fr; row-gap: 0.3rem; }
  .admin-pday label { grid-column: 1 / -1; }
}
