I tested your code on my android devices and there is no overlap. But when tested on an iPad there was overlap. So from that perspective...
adding height solved the overlapping problem. But seems to be another issue with the tabs.
Ran your CSS through Autoprefixer( a PostCSS plugin which parses your CSS and adds vendor prefixes)
Tabs now working properly on the iPad