body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  font-family: 'Orbitron', 'Arial', sans-serif;
  background: #1a1a1a;
  transition: filter 0.3s;
}

#canvas {
  width: 100vw;
  height: 100vh;
  display: block;
}

.overlay {
  position: absolute;
  top: 20px;
  left: 20px;
  color: #00ffcc;
  text-shadow: 0 0 10px #00ffcc, 0 0 20px #ff00ff;
  z-index: 1;
}

h1 {
  font-size: 3rem;
  margin: 0;
  animation: glitch 2s infinite;
}

p {
  font-size: 1.2rem;
  margin: 5px 0;
}

nav ul {
  list-style: none;
  padding: 0;
  margin-top: 20px;
}

nav ul li {
  display: inline;
  margin-right: 20px;
}

nav ul li a {
  color: #ff00ff;
  text-decoration: none;
  font-size: 1.5rem;
  transition: color 0.3s;
}

nav ul li a:hover {
  color: #ffff00;
}

button {
  background: #ff00ff;
  border: none;
  padding: 10px 20px;
  color: #fff;
  font-family: 'Orbitron', 'Arial', sans-serif;
  font-size: 1rem;
  margin: 10px 5px;
  cursor: pointer;
  border-radius: 5px;
  box-shadow: 0 0 10px #ff00ff;
  transition: transform 0.2s;
}

button:hover {
  transform: scale(1.1);
}

button:active {
  transform: scale(0.95);
}

.hz-controls {
  margin-top: 10px;
}

.drum-pad {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.drum-btn {
  background: #00ffcc;
  padding: 15px;
  font-size: 1.2rem;
  box-shadow: 0 0 10px #00ffcc;
}

.drum-btn:active {
  background: #ffff00;
  box-shadow: 0 0 15px #ffff00;
}

.focus-mode {
  filter: grayscale(80%) brightness(1.2);
  animation: none !important;
}

@keyframes glitch {
  0% { transform: translate(0); }
  20% { transform: translate(-5px, 5px); }
  40% { transform: translate(5px, -5px); }
  60% { transform: translate(-5px, 0); }
  80% { transform: translate(5px, 0); }
  100% { transform: translate(0); }
}