After reading around what I need to do to switch the HD/SD at runtime, I finished with this steps:
1. Instead create the reference atlas as prefab like video tutorial, you need to create the reference atlas in each scene, this will allow you to do changes in runtime.
2. The script that load the atlas from resources must execute before any ngui stuff. Use awake and script execution order.
3. Before a build, you update each scene the reference atlas to point to null, so the default is loaded in memory.
4. For prefabs with sprites (like popups). You must point to null atlas and resolve when instantiated.
Any advice or better solution? A simple
"ok, you are not crazy" is a good answer to me
