Reverse the digits of a signed 32-bit integer. Return 0 if the reversed value overflows [-2³¹, 2³¹-1]. Check for overflow before multiplying — no 64-bit integers allowed.