In Safari, the element (div.header) with this layout doesn\'t calculate its height. In Chrome it works.
div.header
If you open this example in Safari, you will see
There's an issue with Safari where you need to define flex-shrink.
flex-shrink
Add this to your code:
.header { flex-shrink: 0 }