¿Por qué el relleno porcentual / margen no funciona en elementos flexibles en Firefox y Edge?

Quiero tener un div cuadrado dentro de un flexbox. Entonces uso:

.outer {
  display: flex;
  width: 100%;
  background: blue;
}
.inner {
  width: 50%;
  background: yellow;
  padding-bottom: 50%;
}
<div class="outer">
  <div class="inner">
    <a>hehe</a>
  </div>
</div>

Esto funciona bien en Chrome. Pero en Firefox, el padre se reduce a una sola línea.

¿Cómo resuelvo esto en Firefox? Yo uso la versión 44.

También puede ver el código enhttps://jsbin.com/lakoxi/edit?html,css

Respuestas a la pregunta(2)

Su respuesta a la pregunta