/* Phone-only fixes, loaded last in <head> so page styles can't undo them. */
@media (max-width: 768px) {
  /* Menu: one column that scrolls down. With flex-wrap:wrap and a max-height, an opened dropdown
     pushed the rest of the menu into a second column off to the right. */
  .navbar-nav { flex-wrap: nowrap !important; overflow-x: hidden !important; gap: .25rem !important; overscroll-behavior: contain; }
  .navbar-nav.active { max-height: calc(100dvh - var(--nav-h, 80px)) !important; }

  /* Readable small text: labels, tags and meta lines floor at 13px. */
  .wk-tags span, .tk-card .tags, .track-meta-row span, .passport-title-tag,
  .neural-firing-badge span, .neural-brain-footer span, .bkc-nav .bk-out,
  .gta-card-meta span, .gta-radio-indicator, .key-help-strip span,
  .arcade-live-badge span, .arcade-album-stats-badge { font-size: 13px !important; }

  /* Game HUD pixel labels (7-9px): lift to 10-11px, which pixel fonts render cleanly. */
  .pa-route span, .pa-scene-top span, .pa-footer span, .zt-mission span, .zt-footer span,
  .de-chapter span, .de-footer span, .fc-location span, .fc-footer span,
  .nw-orbit-label span, .nw-foot span { font-size: 10px !important; }
  .pa-start-note, .pa-eyebrow, .pa-travel-status span, .zt-kicker, .de-kicker, .fc-kicker,
  .vc-kicker, .vc-mission-label span { font-size: 11px !important; }
}
