/* Stable overrides live here while legacy style.css is reduced incrementally. */
:focus-visible {
  outline: 3px solid #ffa500;
  outline-offset: 3px;
}

.win-actions,
.challenge-result-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.win-actions button,
.challenge-result-actions button {
  width: 100%;
  min-height: 42px;
  margin: 0;
}

.result-primary-action {
  background: var(--cg-accent, #ffa500) !important;
  color: #1a1a1a !important;
  border-color: #cc8400 !important;
  font-weight: 900;
}

.result-secondary-action {
  border-color: rgba(255, 165, 0, 0.5) !important;
}

.season-card {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 14px;
  padding: 12px;
  border: 1px solid rgba(255, 165, 0, 0.34);
  border-radius: 8px;
  background: rgba(255, 165, 0, 0.1);
}

.missions-modal {
  width: min(760px, calc(100vw - 28px));
}

.missions-modal-grid {
  margin-top: 12px;
}

.season-card p,
.season-card small {
  margin: 0;
}

.season-card .daily-progress-track {
  grid-column: 1 / -1;
}

.season-rank-reward {
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(255, 165, 0, 0.18);
  color: #8a5700;
  font-size: 11px;
  font-weight: 900;
}

.leaderboard-period-tabs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.dark-mode .season-rank-reward {
  color: #ffd28a;
}

@media (max-width: 768px) {
  body {
    padding-bottom: calc(70px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .replay-controls {
    bottom: calc(76px + env(safe-area-inset-bottom, 0px));
  }

  .replay-summary {
    bottom: calc(228px + env(safe-area-inset-bottom, 0px));
    max-height: calc(100dvh - 248px - env(safe-area-inset-bottom, 0px));
  }

  .app-modal,
  #winScreen {
    max-height: calc(100dvh - 24px - env(safe-area-inset-bottom, 0px));
  }

  .win-actions,
  .challenge-result-actions {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 420px) {
  .win-actions,
  .challenge-result-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) and (orientation: landscape) {
  .app-modal,
  #winScreen {
    max-height: calc(100dvh - 16px);
    padding: 18px;
  }

  .replay-summary {
    max-height: calc(100dvh - 210px);
  }
}
