It's really great but I have a suggestion for you, you can link the soul type with card seed affinity maybe you have a +1 one on the check if you draw a card with your affinity. I thought of something like this (bringing back soul colors from Undertale):
Red(Determination): hearts (+2)
Orange(Bravery): Diamonds and spades
Yellow(Justice): spades and hearts
Blue(Integrity): diamonds and hearts.
Green(Kindness): Clubs and hearts.
Cyan(Patience): Diamonds and Clubs.
Purple(Perseverance): Spades and Clubs.