It's mainly based on regional differences. In some places they mean the same thing, in others they don't, and as far as I know, garoto/a is not frequently used in Portugal. Usually, when there is a difference (besides regional preference), it's age related, and people say menina more often to kids and teenagers, and garota to teenagers and young adults (the ages may overlap a bit).
I wrote "However, the girl does not have the time." but it seems wrong .... It is difficult to understand what you must write each time... a small different word from the reported in the database and you must repeat all the level, not the single exercise... A very good program is Duolingo, but not always it permits free spoked expression. It will be better, certainly