IANA timezone picker — searchable select-ui populated from Intl.supportedValuesOf('timeZone') (browser-native, ~400 zones, zero-deps). Each option renders as America/Los_Angeles · UTC-8 so users can scan by offset or search by city / region.
User preferences / scheduling / log-display surfaces where the operator must pick a canonical IANA zone (not just a display offset). Defaults to the browser's resolved zone via Intl.DateTimeFormat().resolvedOptions().timeZone — overrides for users in multi-zone accounts.
Type to filter by city, region, or offset. Default value resolved from the browser's locale; the current-tz hint sits under the input. Composes select-ui[searchable] with no new primitive.
The chosen zone's current local time updates in the description as the user changes the picker. Useful for "Send at" / "Schedule report" forms where the time-in-target matters more than the offset.
Intl.supportedValuesOf('timeZone') — browser-native, always current with the IANA database the browser ships. No external tz-data dependency.region/city · UTC±N — gives both the canonical identifier (for storage) and the human offset (for scanning). Users sort by either.Intl.DateTimeFormat().resolvedOptions().timeZone — the browser's resolved zone is the right zero-friction default. Surface the value as a hint so users can confirm before saving.