Somewhy inputs do not perceive flex-basis correctly. Here is a simplest example illustrating how inputs do not obey and span outside of their parent block (see jsfiddle):
<div>
<input>
<input>
</div>
<style>
div { display: flex; width: 200px; border: 2px solid red; }
input { flex-basis: 50%; }
</style>
Here is another, more comprehensive, case.
What the hell? :)