Ah, got it! I see in your examples that you're dynamically scaling text to fit in the card's text area with a maximum possible size... I'm going to make a suggestion here to settle on a comfortable reading size for the text for consistency, and then base the length of what can be written on a card around that... With real cards, you'd want to keep a consistent text size to improve readability.
So... two ideas I'd do:
1. Choose a size based on the longest string in your game.
Here, I've used the rect transform to position it within a given area box, and changed the line spacing value to move text in a bit closer. (another option here is setting the Vertical Limit Mode to Squish, but that code isn't done yet and gets the alignment wrong. Either way...) As long as you test this with the longest possible string that will be shown on a card in your game, this solution will work and keep the font size consistent.
That said, the card's text is really small on the left, where I have it set to actual screen size. An 8px rendering size is really small, but if you're okay with this, this is the easiest solution. If possible, the text can be re-written to fit in at a bigger size, but assuming that's impossible...
2. Keeping a readable size, but not showing all at once.
So, if It's absolutely impossible to keep the text at a readable size in a particular area, I'd try to use a scroll rect! Here, I've set up a scroll rect in the area on the card, and I've got a few unity UI components set up in a very specific way:
On the "content" object, I've put on a content size fitter and a vertical layout group, note the settings on these, this will resize the content's height to match the containing text.
And here, I've scrolled down to show that the scrollrect ends where it's supposed to, and I've selected the Super Text child object. What's important here is the content size fitter with "vertical fit" set to "preferred size"... it will give you a warning about being within a layout group, but ignore it.
All that's missing is... you can disable "interactable" on the scrollrect, and make a script that automatically scrolls the scrollrect after a few seconds, and returns to the top, when text is too large to show at once.
So... apart from the broken "Squish" vertical limit mode, this is how I would handle it. Focus on the text size you want on screen first, then go from there! (Additionally, for the names on cards, the "Squish Over Limit" best fit option will be good for those, since they are a single line of text.