body { background:#111; color:#eee; font-family:sans-serif; }

.control-container {
  position: relative;
  height: 360px;
  font-size:12px;
}

.control-row {
  display: flex;
  align-items: center;
  margin-top: 10px;
  gap: 12px;
}

.buttons-row {
  display: flex;
  gap: 6px;
}

.waveform-btn {
  width: 65px;
  height: 36px;
  border: 1px solid #555;
  background: #222;
  color: #aaa;
  cursor: pointer;
  font-size: 12px;
  padding: 0;
  align-items: center;
  justify-content: center;
  text-align: center;
  -webkit-appearance: none;
  appearance: none;
}

.key-btn {
  width: 36px;
  height: 36px;
  border: 1px solid #555;
  background: #222;
  color: #aaa;
  cursor: pointer;
  font-size: 12px;
}

.start-btn {
  width: 80px;
  height: 36px;
  border: 1px solid #555;
  background: #222;
  color: #aaa;
  cursor: pointer;
  font-size: 12px;
}

.active {
  background: #044;
  color: #0ff;
}

.playing {
  background: #0a4;
  color: #fff;
  box-shadow: 0 0 8px #0f8;
}

.canvas-container {
  display: flex;
  position: relative;
  width: 0;
  height: 0;
}

.canvasA { background:#000; border:0; display:block; }
.canvasB { background: transparent; border:0; display:block; }

#worldCanvas {
  position: absolute;
  left: 75px;
  top: -300px;
  z-index: 2;
  opacity: 0.7;
  touch-action: none;
}

#reflectCanvas {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  touch-action: none;
}

#specCanvas {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  opacity: 0.7;
}

#fftCanvas {
  position: absolute;
  left: 75px;
  top: -300px;
  z-index: 1;
}

#xy {
  position: absolute;
  left: 460px;
  top: -360px;
  z-index: 1;
}

#scope {
  position: absolute;
  left: 480px;
  top: -20px;
  z-index: 1;
  opacity: 0.7;
}

.footer-container {
  display: block;
  position: relative;
  gap:6px;
  margin-top:60px;
  margin-left:75px;
}

.coords { font-family:monospace; color:#0ff; }
.operation {
  padding-top: 4px;
  font-size: 13px;
  color: #eee;
  font-weight: bold;
}
.version { color:#aaa; font-size:12px; }
.footer { color: #888;  font-size: 11px; }
