MAL token refresh waited on the general 20s request timeout while the Trakt and MDBList refresh paths use the dedicated 15s refresh timeout, so a hung refresh held the 401 retry longer on MAL than on its siblings. Align MAL with the shared refreshTimeout.