They take all of them but cant go wrong with visa or barclay card i use my credit card and debit card depends on funds!! You are not allowed to take a lot of levs into the country because it so poor out there so only change a bit to start off with.
I take some lev for taxis etc and then either change sterling in banks or use cash machines for lev. Avoid exchange booths unless they have a crown symbal. I always stick to banks.
There is a summer site www.beachbulgaria.com that you may find useful. Have a good one.