TL;DR — the app’s countdown is correct.
Even having grown up with AM/PM, I find it confusing at the margins. The wikipedia page has a convenient translation table.
On reading it, I discovered the source of my confusion: 12 stands in for 0, so the sequence is 11:00 PM, 12:00 AM (midnight), 1:00 AM, and similarly around noon. It seems that this system of counting time pre-dates the discovery of zero by the western world.
I’ve long thought that we should use noon and midnight rather than numeric times in our interfaces, side-stepping the issue in the name of clarity. But I guess that wouldn’t solve the ambiguity of 12:30 AM, which is indeed in the middle of the night.
(I’ve set most of my goals to end at 11:59 PM, because that is harder for me to get confused about…)