I think the key to building components like this id learning a few key tools in CSS. The first is Flexbox. Take a look at CSS Tricks' guide. You will give you the structure.
Then learn the position attribute thru and thru: absolute and relative will help you with pixel perfect tweaks like the vertical line and circles.
Make sure you have a mental model of the layout algorithm. If you add absolute to a div, how will its height and with change? What is the size and position of a div or span when height is specified?
Then learn the position attribute thru and thru: absolute and relative will help you with pixel perfect tweaks like the vertical line and circles.
Make sure you have a mental model of the layout algorithm. If you add absolute to a div, how will its height and with change? What is the size and position of a div or span when height is specified?