* {
  box-sizing: border-box;
}
body {
  background-color: #eee;
  font-size: 10pt;
}
select,
.reserved {
  background-color: #ddd;
  border: none;
  padding: 1em;
  margin: 0;
}
.reserved {
  width: 100%;
}
.voices {
  max-width: calc(50% - 2px);
}
audio {
  display: block;
  width: 100%;
}
ul {
  list-style: none;
  line-height: 2.25;
}
#instructions {
  border: dashed 3px #f00;
  padding: 2.5em;
}
#instructions h1 {
  font-family: monospace;
  margin: 0;
}
#instructions h1::before {
  content: "[";
}
#instructions h1::after {
  content: "]";
}
#instructions p {
  line-height: 1.5;
  margin-top: 1em;
}
#instructions blockquote {
  font-style: italic;
}
#content {
  font-family: monospace;
  padding: 0 2em 20em 2em;
}
#content > ul {
  padding: 0;
}
#controls {
  position: fixed;
  width: 100%;
  bottom: 0;
  text-align: center;
}
.missing {
  background-color: #fcc;
}
.selected {
  background-color: #ccc;
  color: #000;
}
.close {
  position: absolute;
  right: 0;
  top: 0;
  padding: 1em;
  color: #f00;
  font-weight: bold;
  font-size: 200%;
  cursor: pointer;
}