.terminal-console-panel .terminal-output {
  position: relative;
  z-index: 1;
}

.terminal-face {
  left: 50%;
  right: auto;
  top: clamp(72px, 14vh, 150px);
  bottom: auto;
  width: max-content;
  max-width: none;
  transform: translateX(-50%);
  opacity: .62;
  z-index: 0;
  color: var(--terminal-green);
  filter: drop-shadow(0 0 8px var(--terminal-shadow));
}

.terminal-face-ascii,
.terminal-message-face-ascii {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-family: "Courier New", Courier, monospace;
  font-weight: 700;
  font-variant-ligatures: none;
  line-height: .92;
  letter-spacing: 0;
  text-align: left;
  white-space: pre;
  user-select: none;
}

.terminal-face-ascii {
  font-size: clamp(6px, .72vw, 10px);
}

.terminal-message-face-ascii {
  max-width: 100%;
  overflow: hidden;
  color: var(--terminal-green);
  font-size: clamp(5px, 1vw, 9px);
  filter: drop-shadow(0 0 8px var(--terminal-shadow));
}

@media (max-width: 720px) {
  .terminal-face {
    left: 50%;
    right: auto;
    top: clamp(8px, 2.2vh, 20px);
    bottom: auto;
    width: max-content;
    transform: translateX(-50%);
    opacity: .68;
  }

  .terminal-face-ascii {
    font-size: clamp(4.55px, 1.38vw, 5.9px);
    line-height: .88;
  }

  .terminal-message-face-ascii {
    font-size: clamp(4.4px, 1.28vw, 5.7px);
  }
}

@media (max-width: 390px) {
  .terminal-face-ascii {
    font-size: 4.45px;
  }
}
