.game-menu-zoom {
  display: flex;
  align-items: center;
  gap: 6px;
}
.game-menu-zoom__label {
  flex: 1;
  color: #d9e2ec;
  font: 700 12px ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: .08em;
}
.game-menu-zoom__button {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid var(--color-border);
  border-radius: 5px;
  background: var(--color-surface-deep);
  color: #d9e2ec;
  font: 700 16px ui-monospace, SFMono-Regular, Menlo, monospace;
  cursor: pointer;
}
.game-menu-zoom__button:hover:not(:disabled) { border-color: var(--color-accent); background: var(--color-surface-alt); }
.game-menu-zoom__button:disabled { opacity: .38; cursor: default; }
.game-menu-zoom__button:focus-visible { outline: 2px solid var(--color-accent-light); outline-offset: 2px; }

/* Applied to .zoom-layer only for menu-driven scale changes, never during a
   live pinch gesture (the transition would otherwise fight real-time finger
   tracking). */
.zoom-layer--transitioning { transition: transform 150ms ease-out; }

@media (prefers-reduced-motion: reduce) {
  .zoom-layer--transitioning {
    transition: none;
  }
}
