Potential Energy can be negative or positive because it is all relative. calling U = mgh (for approximations close to the surface) you could make U=0 the floor or U=0 the ceiling, it wouldn't matter, since the change would be the same anyway. The change in energy can be positive or negative.
Kinetic energy can never be negative, since energy is a scalar quantity, but the change in Kinetic Energy can be positive or negative.
Work can be positive or negative, depending on the direction of the force and displacement. However, Work is equal to the CHANGE in energy, not the actual quantity of energy itself.
Because potential energy is entirely relative to a datum at which you define it to equal zero as per your convenience.
It is extremely inconvenient to know the value of "absolute potential energy" should there really be such a thing.
And actually, potential energy is NOT equal to work. Potential energy equals the NEGATIVE of the work done by the conservative force as the conservative force delivers the object TO the PRESENT position, originating FROM the DATUM.
You can make potential energy equal to work, if you swap source and destination. You could say that potential energy EQUALS the work done by the conservative force, as the conservative force delivers the object TO the DATUM, originating FROM the PRESENT position.
Take gravity for example. If you let gravity deliver an object below the datum elevation, gravity does positive work on it. The gravitational potential energy below the datum elevation is a negative number.
If you want your object to ascend from the datum with gravity being the only force doing work on it, it better have a pre-existing speed such that gravity can do negative work on it as it ascends.