@media (max-width: 600px) {
  body { background: linear-gradient(180deg, #211c14 0, #1a1610 28%, #141210 100%); }
  .app-shell--mobile { width: 100vw; min-height: 100dvh; }
  .app-shell--mobile .site-mode-nav { display: none; }
  .app-shell--mobile .top-bar { padding: 8px 12px; min-height: 48px; }
  .app-shell--mobile .brand h1 { font-size: 15px; }
  .app-shell--mobile .top-bar-right { display: flex; flex-wrap: wrap; gap: 8px; }
  .app-shell--mobile .balances, .app-shell--mobile .user-info { justify-content: flex-start; flex-wrap: wrap; }
  .app-shell--mobile .pg-stage { max-height: 25vh; }
  .app-shell--mobile .tab-content { padding: 12px 12px calc(84px + env(safe-area-inset-bottom, 0px)); }
  .app-shell--mobile .tab-bar { position: sticky; bottom: 0; gap: 6px; padding: 10px 10px calc(10px + env(safe-area-inset-bottom, 0px)); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
  .app-shell--mobile .tab { min-height: 44px; }
  .app-shell--mobile button, .app-shell--mobile .action-link { min-height: 48px; }
  .app-shell--mobile .grid-2, .app-shell--mobile .grid-3, .app-shell--mobile .split-grid { grid-template-columns: 1fr !important; }
  .mobile-panel, .mobile-stack, .mobile-columns, .mobile-grid { display: grid; gap: 10px; }
  .mobile-grid--2 { grid-template-columns: repeat(2, 1fr); }
  .mobile-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .mobile-head, .city-row { display: grid; gap: 8px; }
  .mobile-meta, .mobile-result { color: var(--muted); font-size: 12px; }
  .mobile-action { min-height: 64px; font-size: 18px; font-weight: 700; border-color: var(--accent); background: linear-gradient(180deg, rgba(126,203,110,.22), rgba(126,203,110,.08)); }
  .mobile-pill { min-height: 48px; font-weight: 600; }
  .mobile-pill.is-active { border-color: var(--accent); color: #d5ffd2; }
  .mobile-columns { grid-template-columns: repeat(5, 1fr); }
  .mobile-column { min-height: 56px; font-weight: 700; }
  .city-row { padding: 10px; border: 1px solid var(--border, rgba(162,133,84,0.3)); border-radius: 10px; background: rgba(255,255,255,.02); }
  .app-shell--mobile .game-section { display: grid; gap: 12px; padding: 0; }
  .app-shell--mobile .section-eyebrow { margin-bottom: 0; }
  .app-shell--mobile .idle-game-list { grid-template-columns: repeat(2, 1fr); }
  .app-shell--mobile .idle-game-card { min-height: 96px; }
}
