html {
  background-color: black;
}
html,
body {
  overflow: hidden auto;
}
body {
  display: flex;
  flex-flow: column nowrap;
  font-family: monospace;
  font-size: 1rem;
  color: white;
}
.templ {
  display: none;
}
h2 {
  text-align: center;
  text-decoration: underline;
}

header {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
header button {
  padding: 0.5em;
  font-size: 1em;
  margin: 0.5em;
  border-radius: 0.5em;
}

.boolean_option,
.number_option,
.color_option,
.enum_option,
.text_option {
  display: grid;
  grid-template-columns: 100fr min(30em, 50%);
  grid-template-rows: auto;
  align-items: center;
}
.boolean_option input,
.number_option input,
.color_option input,
.text_option input,
.enum_option select {
  margin: 0 0.5em;
  font-size: 1em;
  background-color: hsl(0, 0%, 20%);
  color: white;
  border: 2px solid white;
}

.number_option input,
.text_option input,
.enum_option select {
  padding: 0.4em;
}
.boolean_option input {
  width: 2em;
  height: 2em;
  font-size: 0.75em;
  justify-self: center;
}
.color_option input {
  width: 100%;
  height: 100%;
  background-color: lightgray;
}

.unbounded .title::before {
  content: 'UNBOUND OPTION ';
  color: red;
  font-weight: bold;
}
