Panel state overlay helpers: (de)serialize element arrays IN PLACE. The panel structure is seeded from the shared master, so load must never let Boost reconstruct elements (that would wipe the seeded definitions). load_array_state throws std::runtime_error when the archived element count differs from the seeded array.