update styles recursively on relayout