Суть проблемы именно в преодолении религиозных убеждений связанных с использованием стандартных тегов или в чем-то другом?
В CSS к этим элементам вы будете обращаться абсолютно так же, как и в случае со стандартными элементами: по имени тега - без точки, по классу - с точкой, по атрибутам - с использованием квадратных скобок, то есть, рассматривая ваш случай, к элементу с тегом app обращаться селектором app, а к элементу с атрибутом position равным top обращаться селектором [position='top']