/* Shared desktop navigation; gameplay keeps its existing in-game controls. */
.global-navigation { display: none; }
@media (min-width: 901px) {
  body[data-global-title] { --global-navigation-height: 80px; padding-top: var(--global-navigation-height); }
  .global-navigation { box-sizing: border-box; position: fixed; inset: 0 0 auto; z-index: 100; height: var(--global-navigation-height); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 14px 3.2%; border-bottom: 2px solid #07142e; background: #fffaf1; color: #07142e; font-family: "PingFang SC","Microsoft YaHei",system-ui,sans-serif; }
  .global-navigation > strong { font-size: 24px; font-weight: 850; letter-spacing: 1px; }
  .global-navigation-control { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; justify-self: start; gap: 10px; height: 46px; min-width: 152px; padding: 0 18px; background: #fffaf1; border: 2px solid #07142e; border-radius: 0; box-shadow: 3px 3px #07142e; color: #07142e; font: 800 16px/1.2 "PingFang SC","Microsoft YaHei",system-ui,sans-serif; text-decoration: none; cursor: pointer; }
  .global-navigation-control:last-child { justify-self: end; }
  .global-navigation-control img { display: block; width: 23px; height: 23px; }
  .global-navigation-control:first-child img { width: 17px; }
  .global-navigation-control:hover { background: #a8e6cf; }
  .global-navigation-control:focus-visible { outline: 3px solid #123bee; outline-offset: 4px; }
  .global-navigation-control:active { transform: translate(2px,2px); box-shadow: none; }
  body[data-global-title] > .web-audio-launcher,
  body[data-global-title] > .game-world-return,
  body[data-global-title] .hall-social-return,
  body[data-global-title] .puzzle-gallery-tools { display: none; }
  .game-page[data-global-title] .city-map-shell { height: calc(100svh - var(--global-navigation-height)); }
  .game-page[data-global-title]:is(.game-frame-open,.route-board-open) { padding-top: 0; }
  .game-page:is(.game-frame-open,.route-board-open) .global-navigation { display: none; }
  .hall-page[data-global-title] .hall-social-header { top: var(--global-navigation-height); grid-template-columns: 220px minmax(0,1fr) 64px; }
}

