html {
  background-color: lightgray;
  border: 1em;
  cursor: not-allowed;
  font-family: monospace;
  font-size: 16px;
}
body * {
  cursor: inherit;
  pointer-events: none;
}
#program {
  pointer-events: auto;
}
#editor {
  display: flex;
  height: 10.5em;
}
#linenumbers {
  background-color: white;
  color: lightgray;
  padding: 0.5em 0.3em;
  overflow: hidden;
  text-align: right;
}
#code {
  background-color: white;
  border: 0;
  box-sizing: border-box;
  color: black;
  display: block;
  font-family: monospace;
  font-size: 1em;
  margin: 0;
  outline: none;
  padding: 0.5em;
  width: 100%;
}
#syntaxerror {
  background-color: black;
  box-sizing: border-box;
  color: white;
  display: none;
  font-family: monospace;
  font-size: 1em;
  height: 8em;
  margin: 0;
  padding: 0.5em;
  white-space: pre;
  width: 100%;
}
#button {
  background-color: purple;
  border: 0.2em solid white;
  border-radius: 0.5em;
  box-shadow: 0 0 0.2em 0.2em white;
  color: white;
  display: none;
  font-family: monospace;
  font-size: 1em;
  margin: 1em 0 0.5em;
  padding: 1em;
  text-align: left;
}
#hint {
  color: gray;
  display: none;
  font-size: 0.8em;
  margin-top: 0;
}
#message {
  border-radius: 0.5em;
  padding: 1.5em;
  position: absolute;
  right: 1em;
  top: 1em;

  &.loading {
    background-color: blue;
    color: white;
  }

  &.success {
    background-color: green;
    color: white;
  }

  &.failure {
    background-color: red;
    color: white;
  }
  
  &.animate {
    opacity: 0;
    transition: opacity 5s linear;
  }
}
