Obviously this comes with caveats.
My intention is just to demonstrate how a little bit of flexbox can go a long way.
.root {
height: 100vh;
width: 100vw;
}
.column {
display: flex;
flex-direction: column;
}
.row {
display: flex;
flex-direction: row;
}
.flex {
flex: 1;
min-width: 0;
}