Too Long; Didn't Read
Shadow DOM is an API for encapsulation and encapsulation. Shadow DOM allows the Shadow DOM tree to be attached to the regular DOM tree tree in this Shadow tree. The Shadow DOM can be used to embed widgets in a DOM that you don't own or have access to. The difficulty with embedding a widget into a DOM is that every DOM is going to reference different default fonts and colors. The most common approach is to just be super specific with my CSS. This can be tedious and will most likely need to be tweaked for each new client.