Good question. You didn't get hacked. You approved the payment to Mullvad.
When you send XMR to an "integrated address", Ledger does not display the integrated address on the device. It displays the raw Monero address. Mullvad probably uses integrated addresses.
SethForPrivacy said:
At present, the UX around integrated addresses can be confusing and even outright dangerous, like how the Ledger always displays the underlying address instead of the integrated address, making address verification difficult or impossible depending on the application.
I don't know if there are plans to fix this or if it can be fixed at all.