Pause game automatically on scene start and then resume on key press

So, I don’t want my game to start immediately when the scene loads, I want my game to be paused from the start and then resumed on Space key pressed.

So, scene loads, game is paused, panel (on which there is text like “press Space button to start”) is active and then when the player presses Space the game should resume, panel (on which there is text like “press Space button to start”) should become inactive and audio of the game should start playing. How can I do this?

This is what I did:

Created this script and put it on that panel that is active in the beginning:

public class SceneStartPause : MonoBehaviour
{
    public GameObject SceneStart;
    private void Start()
    {
        Time.timeScale = 0;
        SceneStart.SetActive(true);
    }
    public void OnSceneStart()
    {
        if (Input.GetKeyDown(KeyCode.Space))
        {
            Time.timeScale = 1;
            SceneStart.SetActive(false);
        }
    }
}

The panel is active and game is paused on scene start but nothing happens when I press the Space button, why is that? Also how could I add audio to start playing when the Space button is pressed?

Put in the start method:
void Start()
{
time.timescale = 0;
}

and then in update function
void Update()
{
if (Input.anyKey)
{
time.timescale = 1;
}
}