I'd recommend a start over again.
I tried installing next.js latest version
npx create-next-app@latest
Then I checked the documentation about the loading.tsx. Seems like your implementation is correct. I added the same code structure as well.
I added the same layout function as well
When I refresh the page. Loading... state appear. Looks like there is nothing wrong with your code.