Because make needs to tell the difference between the rules and then the recipes. Make tells the difference by requiring recipes (you shell scripts) to be preceded by tab.
If you let Make accept spaces then there’s no backwards compatible way for it to tell the difference.
You can change the behavior of make to allow a different character to be used before recipes, but then it’s not backwards compatible with other files.