Thanks!
The password was considered fairly strong...upper case, lower case, special characters, fairly long, etc. I can't recall exactly, but I think it was one I forgot to change after an auction website I use got hacked and I happened to have the same user account and password. Again, two-factor authentication should have prevented that, so I have to take blame twice there.
While a bit of a bad practice, don't victim-blame yourself. The criminal is the one to blame.
I have used a random character generator I created in Excel to generate my passwords for the past twenty years. I also don't use the same password twice. Unfortunately, this creates passwords that are impossible to memorize so I have a master password list in Excel, password protected, of course.
Its been a long time since I've worked with Excel at a programming level, but at that time it was trivial code to crack Excel's sheet-level password protection. But otherwise this is pretty much what everyone should be doing.
If anyone is shopping for a password manager, include KeePass in your search. I runs locally (PC software), very good encryption, open-source with active community to provide checks & balances. I have no affiliation, just a long-time user. They do not feature a native mobile app, but there are a few unofficial ports based on the same code. And if you want: you can use a cloud storage of your choice (Google drive, drop box, OneDrive, etc...) for the primary or a backup copy of the encrypted DB file.
If you want to get really serious (regardless of which PM manager you choose): use a second-level cypher that only you would know. For instance: use a musical artist's song names for passwords. But instead of storing the literal song name in your password manager, use a cypher like album number and song number. So your password manager password entry would look like "2.3", which stands for Album #2, Song #3. And of course: the actual password (song name) should be made strong using various methods like character replacement (A->4, I->1, etc...), backwards, appending/prepending a particular char/s, etc...to ensure the actual password is complex. I'd suggest using a consistent method for this part.
Yes, its a bit of work but about the best you can do (in addition to 2FA).