Sorry, yeah I didn’t read your comment thoroughly, just quickly adapted my own set up.
Maybe you should use different collections for each clutter groups then join them. You can access to instance number in the collection with “domain size” node.
You can start with this setup, see where it goes, you can throw whatever number of objects to collections. Books and Objects will spawn at their own vertex group whatever the number is.
sry I don’t have enough time to further explore.
ipaint3.blend (1.7 MB)