Кто-то отправил ответ здесь ранее (я почти уверен, я не уверен, почему он был удален?).
Да, это разница между хром и firefox, но это легко исправлено:
.item { flex: 1 1 0; }
Это говорит браузеру, что все элементы flex должны начинаться с 0 ширины, и все они растут с той же скоростью, чтобы заполнить оставшееся пространство.