Thanks for pointing this out! I have had the same experience when inserting date/time in a topic, which shares the same problem. I believe this is a known issue and there is an explanation for it. The input follows your device region, not the locale set in your discourse preferences. But the display does follow your locale discourse preferences (and also of any user looking at your post containing an event or date/time). Can you confirm this on your end?
It would certainly be less confusing and better UX if they were the same for the user creating the event or adding date/time to a post.
Here’s a demonstration. Note in screenshot below the 4:00pm selected time but 16:00 in the input. The reason this is happening to me is that I have my device region set to Germany (which uses 24 hour time), while my Discourse locale is US-WA (which users 12 hour time). The input seems to follow the device locale.
This appears as [date=2025-04-01 time=16:00:00 timezone="America/Los_Angeles"]
in markdown which displays correctly to me as 4pm: 2025-04-01T23:00:00Z.
Changing my device region to United States brought these two in line, but is a cumbersome process requiring a restart.
With my region set to United States, when I insert date/time in a topic the input time is also in 12 hour time. The markdown is the same [date=2025-04-01 time=16:00:00 timezone="America/Los_Angeles"]
and displays correctly as 4pm: 2025-04-01T23:00:00Z.