How would you design an offline-first mobile app that syncs data reliably when connectivity returns? | onGist