/* Nightmire — the phone-web hardening the engine's own shell does not do (#850).
 *
 * Loaded from `html/head_include`, which Godot substitutes at the END of <head> — AFTER the
 * template's own <style> block. That ordering is the whole reason this can be a plain stylesheet
 * rather than a fork of the shell: same specificity, later in the cascade, so these win.
 *
 * What the engine's shell ALREADY does, so it is deliberately not repeated here:
 *   html, body, #canvas { margin/padding/border: 0 }   body { overflow: hidden; touch-action: none }
 * Everything below is a gap in that set, each one a papercut a phone browser inflicts and a desktop
 * one does not.
 */

/* Pull-to-refresh. `overflow: hidden` stops the page SCROLLING but not the browser's own overscroll
 * gesture: a downward drag near the top edge of Android Chrome still arms the reload, and a reload
 * mid-session drops the player back through the boot splash and the auth resume. `none` also kills
 * horizontal swipe-navigation, which is the same accident on the other axis. */
html,
body {
	overscroll-behavior: none;
}

/* Double-tap zoom. The shell sets `touch-action: none` on <body> and the spec does take the union of
 * an element's ancestors' values — but the gesture is decided on the element the touch LANDS on, the
 * canvas is where every touch lands, and its own computed value is `auto` (touch-action does not
 * inherit). Saying it on the canvas itself removes the argument. `none` rather than `manipulation`
 * to match the body: the game wants no browser-owned touch gesture at all, pan included. */
#canvas {
	touch-action: none;
}
