body {
  margin: 0;
  background-color: #0d1b2a;
  color: #61dafb;
  font-family: monospace;
  display: flex;
  flex-direction: column;
  height: 100vh;
}

#terminal {
  padding: 20px;
  flex-grow: 1;
  overflow-y: auto;
}

.input-line {
  display: flex;
  align-items: center;
}

.prompt {
  margin-right: 5px;
  color: #8ecae6;
  white-space: nowrap;
  word-break: keep-all;
}


input {
  background: transparent;
  border: none;
  color: #ffffff;
  font: inherit;
  outline: none;
  width: 100%;
}

.vizon-home-link {
  position: fixed;
  top: 20px;
  right: 30px;
  text-decoration: none;
  font-size: 1.2em;
  color: #61dafb;
  font-weight: bold;
  z-index: 1000;
}

.vizon-home-link:hover {
  text-decoration: underline;
}
pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: keep-all;
}
.prompt-line {
  display: inline-block;
  white-space: nowrap;
}

@keyframes flicker {
  0% { opacity: 1; }
  50% { opacity: 0.8; }
  100% { opacity: 1; }
}

#terminal {
  animation: flicker 0.2s infinite alternate;
}
input:focus {
  text-shadow: 0 0 5px #61dafb;
}
