Cursor stuck in pointer after putting scene to sleep

Hey!
I have a scene registering an interactive Close button, and I want to put the scene to sleep when this button is clicked.
Everything kinda works, but the cursor is stuck in pointer mode when the scene sleeps. When waking the scene up, the pointer goes back to normal. I figure it’s because Phaser has no time to reset the pointer before putting the scene to sleep, but I don’t know how to fix this.

Use case is a sort of modal scene that gets rendered on top of the main scene.

Here’s a minimal working example:

class MainScene extends Phaser.Scene {

    constructor() {
        super("main");
    }

    create () {
        const btn = this.add.text(400, 100, 'Open Modal')
            .setOrigin(0.5)
            .setInteractive({ useHandCursor: true })
            .on('pointerover', () => btn.setStyle({ fill: "#f39c12" }))
            .on('pointerout', () => btn.setStyle({ fill: "#fff" }))
            .on('pointerdown', () => this.scene.run('modal'));
    }
}

class ModalScene extends Phaser.Scene {

    constructor() {
        super("modal");
    }

    create () {
        const bounds = this.add.rectangle(400, 300, 400, 300, 0x222222, 1)
            .setOrigin(0.5)
            .getBounds();

        const btn = this.add.text(bounds.right - 10, bounds.top + 10, 'Close')
            .setOrigin(1, 0)
            .setInteractive({ useHandCursor: true })
            .on('pointerover', () => btn.setStyle({ fill: "#f39c12" }))
            .on('pointerout', () => btn.setStyle({ fill: "#fff" }))
            .on('pointerdown', () => this.scene.sleep('modal'));
    }
}

var config = {
    type: Phaser.AUTO,
    parent: 'phaser-example',
    width: 800,
    height: 600,
    scene: [MainScene, ModalScene],
    backgroundColor: '#000000'
};

var game = new Phaser.Game(config);

this.input.setDefaultCursor('');

will do it I think.