Hola victor, funciona perfecto. Una recomendación, solo para que sea de más fácil lectura, sería organizar mejor el código respecto al tabulado según la jerarquía.
Un ejemplo simple sería, donde
alert() está dentro de
<script> y este dentro de
<head>.
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title></title>
<script>
alert();
</script>
</head>
<body>
</body>
</html>
El único error, que si no recuerdo mal ya viene con el código que copiamos del enunciado, es que la parte de estilos hay un error en la línea 20.
.parteSuperior span.limpiar, { background-color: #FF9FA8; color: #FFFFFF; }
La coma luego de '
span.limpiar' no va.
Adjunto ejercicio JavaScript CU01134E para ver si está correcto o ver formas mejor de hacerlo ya que no lo veo por el foro.
https://aprenderaprogramar.com/foros/index.php?topic=7559.0