Summary
Three small UI polish fixes identified during a UX/accessibility review of layouts/index.html.
1. Native <select> in Windows dark mode (line 611)
On Windows with system dark mode enabled, the native <select> element renders with the OS default dark background but inherits no explicit color/background-color from CSS, causing it to look broken. Add explicit overrides in the select CSS rule:
select {
background-color: #1e293b; /* dark */
color: white;
/* existing rules... */
}
.light select {
background-color: white;
color: #0f172a;
}
2. Missing bottom safe area on mobile (line 576)
The header correctly applies env(safe-area-inset-top), but the map container bottom has no env(safe-area-inset-bottom) padding. On iPhone with home indicator, the map's bottom edge is clipped behind the gesture bar.
Add to .map-container or the wrapping .app-container:
padding-bottom: env(safe-area-inset-bottom);
3. Passive voice in error message (line 701)
"There was a problem loading the map."
Should be active:
"The map failed to load."
Acceptance criteria
Summary
Three small UI polish fixes identified during a UX/accessibility review of
layouts/index.html.1. Native
<select>in Windows dark mode (line 611)On Windows with system dark mode enabled, the native
<select>element renders with the OS default dark background but inherits no explicitcolor/background-colorfrom CSS, causing it to look broken. Add explicit overrides in theselectCSS rule:2. Missing bottom safe area on mobile (line 576)
The header correctly applies
env(safe-area-inset-top), but the map container bottom has noenv(safe-area-inset-bottom)padding. On iPhone with home indicator, the map's bottom edge is clipped behind the gesture bar.Add to
.map-containeror the wrapping.app-container:3. Passive voice in error message (line 701)
Should be active:
Acceptance criteria
<select>renders correctly in Windows dark mode (manual test)npm run test:uipasses