/* Terminal Website - Base Styles */

@font-face {
  font-family: 'VGA';
  src: url('/ea918e0/fonts/vga.woff2') format('woff2'),
       url('/ea918e0/fonts/vga.woff') format('woff'),
       url('/ea918e0/fonts/vga.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  overflow-x: hidden;
  position: relative;
  min-height: 100vh;
}

/* Main terminal container */
#terminal {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* Terminal elements */
.terminal-title {
  text-align: center;
}

.terminal-text {
  margin-bottom: 0.2em;
}

.hexdump {
  white-space: pre-line;
  padding: 0.5em;
  width: auto;
  min-width: none;
  display: inline-block;
}

.center {
  text-align: center;
}

/* Link styling */
.terminal-link {
  text-decoration: none;
  display: inline-block;
}

/* Image styling */
.image-container {
  margin: 0.2em 0;
  display: flex;
  justify-content: left;
}

.terminal-image {
  position: relative;
  max-width: 100%;
}

/* Selection styling */
.select-container {
  margin: 1em 0;
}

.select-label {
  margin-right: 0.5em;
}

.select-option {
  cursor: pointer;
}

/* Input styling */
.input-container {
  margin: 1em 0;
  display: flex;
  align-items: center;
}

.input-label {
  margin-right: 0.5em;
}

.terminal-input {
  outline: none;
  flex-grow: 1;
}

/* Button styling */
.button-container {
  margin: 1em 0;
}

.terminal-button {
  cursor: pointer;
}

/* Loading and error messages */
.loading-text, .error-text {
  padding: 1em;
  text-align: center;
}

.error-text {
  color: #FF0000;
}

/* Content animations */
.executing {
  animation: executing-animation 5s ease-in-out forwards;
  padding: 0.5em;
  margin: 0.5em;
}

@keyframes executing-animation {
  0% { opacity: 1; display: block; }
  50% { opacity: 0.50; display: block; }
  99% { opacity: 1; display: block; }
  100% { display: none; }
}

/* Cursor animation */
@keyframes blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

.cursor {
  display: inline-block;
  width: 0.6em;
  height: 1em;
  margin-left: 0.2em;
  animation: blink 1s step-end infinite;
  vertical-align: bottom;
}
