Difference between SPA, Regular Web App, and even Native Apps?

A couple things from my perspective here, if it is just a change in what flow you use, then why are there different kinds of apps? Aren’t they all just a UI app and you choose a flow to specify?

Because when you choose a regular app, it actually registers it as a native app.

Also, if what you said is the reason for choosing your type of app in the beginning, I would assume that Auth0 would only let me choose one type of grant type for my specific application right?

It just seems like I can randomly select one of those three app types (Native, Regular, SPA) and nothing would change.

EDIT: Lastly, isn’t the Implicit flow discouraged due to the fact that it was kinda a hack when they made it? That sending an access token to a front end isn’t good practice?