html, body {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
}

.root {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* pages never shrink below their content: a page taller than the screen (driver checklists and other public pages
   with a bar fixed at the bottom) was squeezed to the screen height, its content spilled out of it and its bottom
   padding no longer kept the last section above the bar */
.root > * {
  flex-shrink: 0;
}
