Почитайте как вычисляется процентная часть от высот.
В стандарте флекс бокса написано следующее
Percentage margins and paddings on flex items are always resolved against their respective dimensions; unlike blocks, they do not always resolve against the inline dimension of their containing block.