Fixed
- Proxied SPAs (Mealie, Immich, etc.) no longer show a 404 on page refresh -- the proxy interceptor now strips the
/proxy/slug/prefix fromlocation.pathnamebefore the SPA router reads it, and patcheshistory.pushState/replaceStateto maintain correct proxy URLs in the browser history - Back/forward navigation within proxied SPAs now works correctly -- a
popstatecapture-phase listener strips the proxy prefix before the app's router handler fires location.assign(),location.replace(), andwindow.open()inside proxied apps are now rewritten to go through the proxynavigator.sendBeacon()inside proxied apps is now rewritten to go through the proxy- Anchor
hrefand formactionproperty setters are now intercepted by the proxy rewriter -- previously only the MutationObserver fallback caught these, missing programmatica.href = "/page"assignments - Empty app color no longer produces invalid
color-mix()CSS in icon backgrounds -- falls back to default grey when color is blank - App color field now shows a reset button and placeholder, matching the icon background field pattern