body:last-child::after {
  display: block;
  content: '';
  margin-bottom: 100vh;
}
li { line-height: 1.25; }
input { display: block; }

div.render {
  display: flex;
  flex-flow: column wrap;
  height: 1024px;

  font: 26px Arial;
  color: #ed2121;
  background-color: #111;

  overflow-x: auto;
  resize: vertical;
}

div.render > div {
  display: block;
  padding: 8px;
}
div.render > div > span {
  display: inline-block;
  padding: 4px 0;
}
div.render > div > img { display: block; }

div.report {
  display: flex;
  flex-flow: column wrap;

  margin-top: 25px;
  height: 1024px;

  color: #CCC;
  font-size: 25px;
  background-color: #444;
  padding: 2em 2ch;

  overflow-x: auto;
  resize: vertical;
}

div.report > div {
  display: flex;
}

div.report > div.column-break {
  content: '';
  flex-basis: 100%;
}

div.report > div > div {
  align-self: center;
}

div.report > div > div:first-child {
  text-align: right;
  width: 6ch;
}

div.report > div > canvas {
  margin: 0.25ch 0.5ch;
  width: 32px;
}
