templates & styles
selection logic