/*
  References: 
    - https://css-tricks.com/old-timey-terminal-styling/
    - 
*/

body {
  background-color: black;
  background-image: radial-gradient(
    rgba(0, 150, 0, 0.75), black 120%
  );
  height: 100vh;
  margin: 0;
  padding: 0;
  color: white;
  font-size: 1.5em;
  font-family: "VT323", monospace;
  font-variant-ligatures: none;
  text-shadow: 0 0 5px #A8A8A8;
}
body::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.15) 1px, transparent 1px, transparent 2px);
  pointer-events: none;
}

::selection {
  background: #0080FF;
  text-shadow: none;
}

img {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-weight: bold;
}

div.buffer {
  margin: 0 0 1em 0;
}

p { 
  margin: 1em 0 1em 0;
  padding: 0px;
}

ul {
  margin-top: 0;
  margin-bottom: 1em;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 1em;
}

li {
  position: relative;
  list-style: none;
}
li:before {
  content: "* ";
}

pre {
  margin: 0 0 0 0;
  padding: 0;
  font-size: 1em;
  font-family: "VT323", monospace;
  font-variant-ligatures: none;
}

pre.block {
  margin: 0 0 1em 0;
}

code {
  margin: 0;
  padding: 0;
  font-size: 1em;
  font-family: "VT323", monospace;
  font-variant-ligatures: none;
}

a {
  color: #6c6cff;
  text-shadow: 0 0 2px #282898;
}

.choice:hover {
  cursor: pointer;
  background-color: white;
  color: #006600;
  text-shadow: 0 0 2px #389838;
}

#terminal-window {
  position: absolute;
  left: 2em;
  top: 2em;
  width: calc(100% - 4em);
  height: calc(100% - 4em);
  border: 2px solid white;
}

#terminal-title {
  background-color: white;
  color: #006600;
  text-shadow: 0 0 2px #389838;
  text-align: center;
}

#terminal {
  position: absolute;
  width: calc(100% - 0.5em);
  height: calc(100% - 1.5em);
  padding-left: 0.5em;
  overflow-y: auto;
  overflow-x: hidden;
}

#input {
  display: inline;
  outline: none;
  visibility: visible;
}

/*
  If you press the Insert key, the vertical line caret will automatically
  be replaced by a one-character selection.
*/
#input::selection {
  color: #000;
  background: #0F0;
}

#input:empty::before {
  content: ' ';
}

@keyframes blink {
  to {
    visibility: hidden;
  }
}

#input:focus + #caret {
  animation: blink 1.2s steps(5, start) infinite;
}

#input.noCaret + #caret {
  visibility: hidden;
}

#caret {
  font-size: inherit;
  border: 0;
  padding: 0;
  outline: none;
  background-color: #0F0;
  display: inline-block;
  font-family: monospace;
}

#history {
  padding: 0;
  margin: 0px;
}

.history-entry {
  padding: 0;
  margin: 0;
  white-space-collapse: preserve-spaces;
}
