Say BTC does gain mainstream acceptance, and your girlfriend starts buying her $18 dollar lattes in starbucks using bitcoin. They have to charge sales tax on that transaction. There is a finite number of bitcoins. If they hoard them and spend fiat, on a long enough timeline, all the bitcoins will end up in hands of the tax collectors. what then?
Bitcoin has some basic difference with FIAT system. It is infinitesimally divisible. Whenever someone is hoarding bitcoin, its value increases because the availability decreases in the rest of the system (pure demand supply economics). So, if someone hoards 1m bitcoin, value of the rest of the bitcoins increase. Hence, if I assume, there are N no. of bitcoin in circulation at a certain time with the market cap X USD when 1m bitcoin gets hoarded, value of each will increase* using the following formula: (X/(N-(10^6)) - X/N) USD
In effect, if you bought 1 ice-cream with 0.001 BTC before, it may take 0.0001 BTC now. Even if 1 BTC is left, it can do the job of 21m, because it is just a number.
*Please note that, value of Bitcoin also gets affected by other factors.