*,
*::after,
*::before {
  box-sizing: inherit;
}

html {
  background-color: #222;
  box-sizing: border-box;
  color: #fff;
  font: 300 14px / 1.2 Helvetica Neue, sans-serif;
}

body {
  align-items: center;
  display: flex;
  justify-content: center;
  height: 100vh;
  margin: 0;
}

.mpc {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(4, 1fr);
  height: 100vmin;
  padding: 1rem;
  width: 100vmin;
}

.mpc__pad {
  align-items: center;
  background-color: #333;
  border: 1px solid #666;
  display: flex;
  justify-content: center;
  transition: background-color .1s linear;
}

.mpc__pad--active {
  background-color: #f80;
  transition-duration: 0s;
}
