The mantissa (the decimal part as opposed to the exponent part) of a 64bit floating point number safely holds 21x10^14 (sats) and leaves enough overhead to add or subtract two values without overflow. This appears to be the reasoning given to by this article.
Log10(21x10^14)/log10(2) = 50.9 bits