/* Arena navigation only; battle geometry and controls retain their owners. */
.home-arena-entry { border: 1px solid #8e7442; border-radius: 12px; padding: 14px; background: #24271e; display: grid; gap: 8px; }
.home-arena-entry h3 { margin: 0; color: var(--gold); font-size: 20px; }
.home-arena-entry p { margin: 0; color: var(--muted); }
.home-arena-entry button, .arena-hub button { min-height: 44px; }
.arena-hub { width: min(720px, calc(100vw - 24px)); max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); box-sizing: border-box; padding: 18px; border: 1px solid #8e7442; border-radius: 16px; background: #101813; color: var(--text); overflow-y: auto; }
.arena-hub::backdrop { background: rgb(0 0 0 / 70%); }
.arena-hub-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.arena-hub-header h2 { margin: 0; }
.arena-hub-header button { min-width: 44px; }
.arena-hub-intro { color: var(--muted); margin: 8px 0 14px; }
.arena-hub-formats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.arena-hub-format, .arena-hub-resume { border: 1px solid #695a38; border-radius: 12px; padding: 14px; min-width: 0; }
.arena-hub-format { display: flex; flex-direction: column; gap: 8px; }
.arena-hub-format h3, .arena-hub-format p { margin: 0; }
.arena-hub-description { color: var(--muted); line-height: 1.4; }
.arena-hub-status { font-size: 13px; color: #d9cda9; }
.arena-hub-format > button { margin-top: auto; width: 100%; }
.arena-hub-resume { margin: 0 0 12px; }
.arena-hub-resume.is-active { border-color: #d2ad55; background: #29291d; }
.arena-hub-resume p { margin: 6px 0 10px; }
.arena-hub-resume button { width: 100%; }
.arena-hub [hidden] { display: none !important; }
.arena-hub-error:empty { display: none; }
.arena-hub-error { color: #efba9e; }
.arena-hub-footer { display: flex; justify-content: flex-end; margin-top: 12px; }
.arena-hub #matchmakingStatus { margin: 0; font-size: 13px; overflow-wrap: anywhere; }
.arena-hub #matchmakingStatus button { width: 100%; margin-top: 8px; }
.home-training-access > summary { min-height: 44px; cursor: pointer; padding: 12px 0; }
@media (max-width: 600px) {
  .arena-hub { padding: 14px; }
  .arena-hub-formats { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .arena-hub-format { padding: 12px; }
}
