26c94e426f
Places fell back to a flat themed background (blankStyle) when no Protomaps .pmtiles basemap was present, so the map was just a grey void behind the photo markers. Replace that with worldStyle(): a MapLibre GL v8 style that draws land masses and country borders over a themed ocean, sourced from a bundled Natural Earth 110m outline (public domain). The asset is geometry-only (properties stripped, coords rounded to 2 decimals) — 177 features (148 Polygon + 29 MultiPolygon), ~165 KB — served same-origin at /geo/world-110m.geojson, so no external tiles (CSP connect-src 'self' friendly) and no per-instance basemap install. A full Protomaps basemap still takes precedence when one is installed. Also add a quiet map 'error' handler: if the outline is ever missing, the SPA fallback serves index.html (text/html) which MapLibre can't parse as GeoJSON; markers still render over the ocean layer, so swallow the error rather than logging to the console (mirrors the checkBasemap content-type guard). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>