> why should expatriates who left a country decades ago get any say in pivotal decisions on its future? That seems like a really dumb idea
We don't. If you have not resided there for 15 years or longer, you have no vote. And I'm totally fine with that, it makes sense to me, for a variety of reasons, including that I pay no taxes in the UK, and that to a large degree nothing that happens in the UK affects me directly (it does affect my family, but they all get their own vote).
However, most democracies have a general policy of not taking away the rights and priviledges of citizenship without giving those affected a vote to at least nominally affect the decision. I remain a UK citizen and could return there to reside at any time. It is precisely because (a) this is a pivotal decision about the future and (b) it was a decision that would change the status of anyone with UK citizenship, whether or not they resided there, that I felt that someone like myself should have been able to vote. So for example, had Brexit actually been a vote on some sort of reconfiguration of the relationship with the EU that ended up with UK citizens still having the same individual relationship with the EU (unlikely, but you can half imagine it, I think), again, I don't think that people like me should have been able to vote. But when you're going to strip millions of people with the right to permanently reside in the UK of their relationship with the EU, it seems democratic and fair to me that you give them some say.
And Cameron apparently felt that way too, or at least voiced that opinion during his final election campaign, but then didn't follow through (not really a surprise).