Europe's top court has upheld a Spanish amnesty law granting pardon to Catalan independence campaigners involved in the 2017 referendum, a deal that allowed Prime Minister Pedro Sánchez to maintain power but triggered significant opposition protests at home.