That is a fun exercise! However the reality is that public IPv6 is always given out in 48 or 64 bits prefixes (minimum).

The math is a lot less impressive when you do it with 2^48 or 2^64.

Yep. IPv6 should be thought of as 2^64 subnets, each with "enough space for everyone" within each subnet.