Limit hits per facet value (i.e. show N results per each color)

I have a hits page where I want to display 6 most relevant hits per each facet value. I’m trying to construct a query which will allow this, but I can’t.

Using multipleQueries it appears possible to construct multiple queries for each facet value, with each using something like filters: 'facet:value' (and it’s not even working as I expect, the results contain hits for just 1 facet). But how to actually limit the returned hits per each facet value? Setting hitsPerPage: N will limit total hits per page (obviously), which is not what I need

Also looking at this seems like I could create a separate index just to query N hits per facet value using this facet as attributeForDistinct and setting distinct: N (I still need regular index for regular data querying, thus a separate index just for this). Not sure if it will work though. But also distinct can’t be greater than 4, so this again won’t work