This program assumes that the work shift is entirely between midnight and the next midnight, and in one chunk. If I start work at 8 PM, work til 4 AM, rest until 10AM to start again, and work until 6 PM before starting another day, there is no way to enter the data.
Granted 12 AM and 12 PM are often considered ambiguous, but 12 AM is considered Midnight, and 12 PM is considered Noon. If I set the start time at 12 AM and the end time at 4 PM, instead of there being 4 hours, the total time shows 16 hours instead of 4 hours. If I change the start time to 0 AM, then the total time changes to 4 hours.