It is possible that the client was using a stolen credit card, or did a charge back. Unfortunately there is no way of knowing unless you ask the client. I had a client suspended once, but it was just his credit card had expired and as soon as he updated it the contract was reinstated.
Sounds like there was something fishy about your client as they would not have refunded with something as simple as expired credit card.
Sorry it happened but without using the tracker the way it was intended you take that risk.
These are indeed the rules of the game. I appreciate your post, and I appreciate your positive attitude about this. It is good that you accept and understand what happened.
If the contract was suspended by Upwork and not by the client that sometimes signals that there is a problem with the client's account - payment method, a violation of ToS, etc - very often it has nothing to do with the freelancer or the work being delivered. Preston is right - your positivity is refreshing. Unfortunately, the lack of protection in manual time comes back to bite sometimes.
Peter, welcome to the platform of opportunities some avail opportunities by doing hard work and some avail via an evil way ( they know very well the loopholes in the system and capitalizing it).
There are clients, some even "well-established" who fully know how to game the system. When I first started I had no idea that bonuses could be revoked. I had a client pay one milestone and then use bonuses to pay for hours of additional work. The contract ended badly. I think was the client's intent all along- to force the freelancer to quit out of frustration thus avoiding the last payment. I should probably consider myself lucky that I was just out the last payment and not all the bonuses.
Your situation is differently, but be aware there are cheesy clients who know exactly what they are doing to avoid payment.