Manera eficiente de colocar elementos huérfanos en la parte superior / inicial usando CSS flexbox

Cuando usa flexbox wrap para crear una cuadrícula y tiene una última fila con menos elementos que las filas anteriores, el comportamiento predeterminado de los elementos "huérfanos" conflex: 1 es estirar horizontalmente para llenar el ancho, haciendo que los elementos sean más grandes que las filas anteriores. Quiero el mismo comportamiento, excepto que quiero que los elementos más grandes aparezcan en la fila superior en lugar de en la fila inferior.

Se me ocurrió una solución (que se muestra a continuación) pero no escala bien y se siente como un mal truco. ¿Hay alguna forma mejor (más elegante) de lograr este diseño? La solución necesita manejar contenido dinámico; es decir, no sabré la cantidad de elementos de antemano y necesito mantener el orden de origen.

Debe tener un aspecto como este:

ul#subcategory_list {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap-reverse;
  flex-direction: row-reverse;
}

ul#subcategory_list li:nth-child(1) {order: 30}
ul#subcategory_list li:nth-child(2) {order: 29}
ul#subcategory_list li:nth-child(3) {order: 28}
ul#subcategory_list li:nth-child(4) {order: 27}
ul#subcategory_list li:nth-child(5) {order: 26}
ul#subcategory_list li:nth-child(6) {order: 25}
ul#subcategory_list li:nth-child(7) {order: 24}
ul#subcategory_list li:nth-child(8) {order: 23}
ul#subcategory_list li:nth-child(9) {order: 22}
ul#subcategory_list li:nth-child(10) {order: 21}
ul#subcategory_list li:nth-child(11) {order: 20}
ul#subcategory_list li:nth-child(12) {order: 19}
ul#subcategory_list li:nth-child(13) {order: 18}
ul#subcategory_list li:nth-child(14) {order: 17}
ul#subcategory_list li:nth-child(15) {order: 16}
ul#subcategory_list li:nth-child(16) {order: 15}
ul#subcategory_list li:nth-child(17) {order: 14}
ul#subcategory_list li:nth-child(18) {order: 13}
ul#subcategory_list li:nth-child(19) {order: 12}
ul#subcategory_list li:nth-child(20) {order: 11}
ul#subcategory_list li:nth-child(21) {order: 10}
ul#subcategory_list li:nth-child(22) {order: 9}
ul#subcategory_list li:nth-child(23) {order: 8}
ul#subcategory_list li:nth-child(24) {order: 7}
ul#subcategory_list li:nth-child(25) {order: 6}
ul#subcategory_list li:nth-child(26) {order: 5}
ul#subcategory_list li:nth-child(27) {order: 4}
ul#subcategory_list li:nth-child(28) {order: 3}
ul#subcategory_list li:nth-child(29) {order: 2}
ul#subcategory_list li:nth-child(30) {order: 1}

Respuestas a la pregunta(1)

Su respuesta a la pregunta