А в чём у тебя проблема? Просто блоки под друг другом. Кружок - :after с border-radius и counter-increment. Палка - :before с L-образной фиговиной нарисованной border'ом. Для всех кроме :last-child - border-left.
Aetae, в целом я так и думаю, но не могу догадаться как создать последнюю строку, т.к. она по сути обрывается в центре и не идёт до конца элемента :before
ArutaGerman, яж расписал - она не отличается от других - у всех L-образные хреновины(без отростка вниз). Просто для всех :not(:last-child) блоков дополнительно border-left.