Fair question, but there is a decent answer. It's because Steam is an app that is shipped to 3 platforms and at least 2 architectures; the web platform is a platform- and architecture-agnostic target; and there is an extremely large set of tools and large developer pool to pull from. It may not be the set of you trade-offs you would have chosen, but it's also a reasonable choice for the problem they are tackling with the set of real-world constraints they are presented with.