- loadStrings sends the chosen language as ?locale= and keeps
meta.locales as availableLocales
- the user menu lists the admin locales, each named in its own language;
choosing one saves it through PUT /account/preferences, caches it and
reloads the page
- boot loads the strings in the cached language; me() reloads them when
the stored preference differs
- the rail's top button cycles system, light and dark and names the
current choice; light and dark ignore prefers-color-scheme
- usePreferences applies the cached theme before the first await of boot,
saves the choice through PUT /account/preferences and reverts with a
toast when the save fails; me() applies the stored preference