html, body {
    margin: 0;
    height: 100%;
    overflow: hidden;
    overscroll-behavior: none;
    touch-action: none;
    background: #0b0f14;
}

body {
    padding: 0;
    color: rgba(255, 255, 255, 0.87);
}

#app {
    width: 100%;
    height: 100vh;
    /* dvh wins where supported: on iOS Chrome 100vh includes the area under the bottom
       toolbar, hiding the lowest ~100 logical px of the FIT canvas (WP9a). */
    height: 100dvh;
    box-sizing: border-box;
    padding-bottom: env(safe-area-inset-bottom);
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

canvas {
    touch-action: none;
    display: block;
}

/* WP61 A4 [D3a] / WP79 A: during a run in pointer mode WITHOUT the Pointer Lock (Reddit's live iframe refuses it) the
   OS cursor would sit on the helicopter. The class is on only while playing and draws NO cursor at all - the
   helicopter follows the mouse and is the cursor (WP61's small helicopter image sat on top of it). `!important`: an
   inline `cursor` Phaser left on the canvas (a hand cursor) must not bring the pointer back. Off on every overlay,
   Game Over, the Base and once the lock is held. */
canvas.el-cursor-hidden {
    cursor: none !important;
}
