Я обычно "отлаживаю" вывод, используя специальный CSS для такого рода вещей.
Что, если вы добавите класс / стиль к некоторым элементам, например. сделать
ul {border:solid 1px #f00;}
, чтобы построить красивую красную рамку вокруг каждой группы UL и посмотреть, получите ли вы один или два красных прямоугольника. Тогда мы знаем, если он обнаруживает / отображает UL номер. 2.
Если это так, то я бы сделал еще один тест CSS, чтобы посмотреть, смогу ли я получить зеленый внутри красного:
ul li ul {border:solid 1px #0f0;}
Если это сработает, вы можете попробовать добавить поле margin-left: 20px ко второму тесту.