For some reason, the default QML Image element doesn't scale SVGs like
it should. Essentially, it just reads the source size of the SVG and
scales it like it would a regular image (say PNG).
I'm fixing this by manually setting the source size of the image to the
current size. That said, this is in my opinion a hacky fix and it's
really weird that QML doesn't special-case SVGs and scale them as it
should.
Source:
https://stackoverflow.com/questions/69641034/qml-image-does-not-stretch-fit-svg
Currently, most things were scaled based on the card dimensions,
though some things were hard-coded. This commit moves away from all
hard-coded sizes in favor of everything relying on card heights.
Additionally, it makes the card height itself no longer hard-coded,
passing it as a property to most custom structures.
The card height itself is now calculated from Main.qml to make sure
everything fits within the screen and scales as the window is resized.