Nice, but needs work, and luck shouldn't outweigh skill- it did here, really badly. The randomly assigned values to the defense and attack cards meant you could be left unable to do anything useful for turns and turns, as well as the fact that you keep every card until you played it keeping your options down too much for meaningful choices.
The counterattack is utterly broken. It can deal eight or ten damage at borderline random, or leave you to die, or kill you in the first turn the opponent isn't blocking above your attack level...
Slay the spire is a good place to take inspiration from, but for its formula to work- in fact, any turn based game- the player must be able to strategize, and given opportunities, not just put to live or die at the whims of the dice.
If you want something less refined, that's fine too, sometimes there's a place for clunkier systems with more random chance. But if you're going to do that, don't make a roguelike where it's game over at one or two bad draws.