made role background calculation simpler
implemented role min widths and prevent overlapping on zoom