body {
  margin: 0;
  padding: 0;
  background-color: #0400a0;
  font-family: 'VT323', monospace;
  color: #80ffff;
  font-size: 32px;
  line-height: 1.4;
  min-height: 100vh;
  /* Cross-browser font smoothing for retro aesthetic */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.c64-header {
  text-align: center;
  margin: 0 0 1.5em 0;
  color: #80ffff;
  font-size: 32px;
  font-family: 'VT323', monospace;
  letter-spacing: 1px;
  text-transform: uppercase;
}

#output {
  display: block;
  padding: 0;
  white-space: pre;
  min-height: 60vh;
  font-family: 'VT323', monospace;
  font-size: 32px;
  color: #80ffff;
}

.cursor {
  display: inline-block;
  color: #80ffff;
  animation: blink 1s step-start infinite;
  font-family: 'VT323', monospace;
  font-size: 32px;
}

#prompt-hint {
  font-family: 'VT323', monospace;
  color: #80ffff;
  font-size: 20px;
  margin-bottom: 0.5em;
  text-align: left;
  opacity: 0.7;
}

#prompt-line {
  font-family: 'VT323', monospace;
  color: #80ffff;
  font-size: 32px;
  margin-top: 1em;
  display: flex;
  align-items: center;
}

#fake-input {
  min-width: 1ch;
  outline: none;
  display: inline-block;
  white-space: pre;
}

.hidden {
  display: none;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}

/* ========== MOBILE RESPONSIVENESS ========== */
/* Tablets and smaller (max 768px) */
@media (max-width: 768px) {
  body {
    font-size: 20px;
    padding: 10px;
  }

  .c64-header {
    font-size: 18px;
    margin: 0 0 1em 0;
  }

  #output {
    font-size: 16px;
    min-height: 50vh;
    padding: 10px;
  }

  .cursor {
    font-size: 16px;
  }

  #prompt-line {
    font-size: 16px;
    margin-top: 0.8em;
  }

  #prompt-hint {
    font-size: 14px;
  }
}

/* Mobile phones (max 480px) */
@media (max-width: 480px) {
  body {
    font-size: 14px;
    padding: 5px;
  }

  .c64-header {
    font-size: 12px;
    margin: 0 0 0.8em 0;
  }

  #output {
    font-size: 12px;
    min-height: 45vh;
    padding: 8px;
    line-height: 1.3;
  }

  .cursor {
    font-size: 12px;
  }

  #prompt-line {
    font-size: 12px;
    margin-top: 0.5em;
  }

  #prompt-hint {
    font-size: 10px;
  }
}