Card game guidance help

I have a simple problem and I think I can do it, but I feel like the idea I have might be overly complicated so I wanted some advice for more experienced unit developers.

I have a button on a canvas right now and a script attached to that button. What I want is every time the player clicks that button a new card is added face up to the player (Adding a card to the player’s hand).

I imported a free unity asset pack of the 52 standard card deck and it’s currently stored as png in my assets.

Just wanted some guidance on what is a good “Unity” way of doing things instead of my current idea of making every png into a sprite then having all 52 sprites stored as a public gameObject variable to instantiate in my script which I feel is kinda wrong.
,I have a simple problem and I think I can do it, but I feel like the idea I have might be overly complicated so I wanted some advice for more experienced unit developers.

I have a button on a canvas right now and a script attached to that button. What I want is every time the player clicks that button a new card is shown face up to the player.

I imported a free unity asset pack for the 52 standard card deck and it’s currently stored as png in my assets.

Just wanted some guidance on what is a good “Unity” way of doing things instead of my current idea of making every png into a sprite then having all 52 sprite stored as a gameObject to instantiate in my script which I feel is kinda wrong.

There is no a single way of doing this it depends on the project but using scriptableobjects would be a good idea