Всем привет!
Уже несколько часов не могу сообразить, как реализовать такую задумку:

А именно, как сделать, чтобы когда хотя бы один пункт не помещается в имеющихся строках, добавлялась новая строка и все пункты распределялись равномерно по горизонтали по всем строкам?
Может быть, флексом такое возможно?
Похожее по поведению, но мне не подходящее, что удалось найти (вдруг кому пригодится) -
dabblet.com/gist/2030070Посмотреть, что я успел натворить
UPD:
Пришёл к такому варианту на js