@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap');

.pixel-font {
  font-family: 'Press Start 2P', monospace;
  line-height: 1.6;
}

.retro-border {
  border: 4px solid #00ffff;
  box-shadow: 0 0 20px rgba(0, 255, 255, 0.5), inset 0 0 20px rgba(0, 255, 255, 0.2);
}

.retro-border-thin {
  border: 2px solid #00ffff;
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.3);
}

.retro-shadow {
  text-shadow: 4px 4px 0px #000, 0 0 10px #ffff00;
}

.scanlines {
  position: relative;
}

.scanlines::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  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;
}

.retro-button {
  border: 3px solid #ffff00;
  box-shadow: 0 0 10px rgba(255, 255, 0, 0.5);
  transition: all 0.1s;
  position: relative;
  overflow: hidden;
}

.retro-button:hover:not(:disabled) {
  box-shadow: 0 0 20px rgba(255, 255, 0, 0.8);
  transform: translateY(-2px);
}

.retro-button:active:not(:disabled) {
  transform: translateY(1px);
}

.retro-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.retro-button-small {
  border: 2px solid #00ffff;
  box-shadow: 0 0 5px rgba(0, 255, 255, 0.5);
  transition: all 0.1s;
}

.retro-button-small:hover {
  box-shadow: 0 0 10px rgba(0, 255, 255, 0.8);
}

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

body {
  image-rendering: pixelated;
  image-rendering: -moz-crisp-edges;
  image-rendering: crisp-edges;
}

select {
  cursor: pointer;
}

select:focus {
  outline: none;
  box-shadow: 0 0 15px rgba(0, 255, 255, 0.8);
}