Fallback catalog

In-house routes, fixed micro prices

When no offer for a route is healthy, the catalog answers the call instead. Same JSON-RPC envelope, same receipt, same billing states — the response header reads X-Surplus-Route: catalog.