/* Game surfaces own their gestures. Reading panels and forms keep native behavior. */
html { overscroll-behavior-y: none; }
canvas, button, [role="button"], #board, #hand, #cards, .card, .tile,
#touchpad, .dpad, .pedals, #pedals {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
canvas, button *, [role="button"] *, #board *, #hand *, #cards * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}
canvas { -webkit-user-drag: none; }
/* Only continuous controls consume pan/zoom; large boards remain scrollable. */
canvas#game, canvas#board, canvas#world,
#touchpad button, .dpad button, .pedal, #pedals button {
  touch-action: none;
}
button, [role="button"] { -webkit-tap-highlight-color: transparent; }
input, textarea, [contenteditable="true"], [contenteditable="true"] * {
  -webkit-touch-callout: default;
  -webkit-user-select: text;
  user-select: text;
}
