/* Foundation Demo — page-specific rules */
.touch-controls {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, 60px);
  grid-template-rows: repeat(2, 60px);
  justify-content: center;
  align-items: center;
}

.touch-controls button {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  border: 1px solid rgba(var(--accent-rgb), 0.22);
  background: rgba(255, 255, 255, 0.05);
  color: var(--accent);
  font-size: 1.1rem;
  box-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

.touch-controls button:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 3px;
}

.touch-controls .up { grid-column: 2; grid-row: 1; }
.touch-controls .left { grid-column: 1; grid-row: 2; }
.touch-controls .down { grid-column: 2; grid-row: 2; }
.touch-controls .right { grid-column: 3; grid-row: 2; }

@media (min-width: 861px) {
  .touch-controls { display: none !important; }
}
