CSS JS 2018+

isolation

This paragraph is clipped by CSS clip-path:polygon(..) which is being updated with CSS Variables controlled by JS. You'll find that in the JS source, neither DOM nodes creation, nor string manipulation; It only updates CSS Variables of existing elements.

The styling *logic* is scoped in one place, the stylesheet. Coders will not and should not know how it is implemented.(E.g. Tokenize fx is done by clip-path) What they need to do is to populate CSS Variables. CSSTOM will help a lot.

There are few limitations of CSS Variables
1) Not every rule can be parametrized (keyframes state)
2) No real guard (el.style.setProperty)
3) Typeless (or by js CSS.registerProperty but WHY JS)