а почему недостаточно одного прямоугольника, который копирует форму кнопки?
Ну, во-первых, after/before нельзя разместить под кнопкой, если html имеет вид
<button> content </button>
А во-вторых, если кнопка будет прозрачной (как здесь), то прямоугольник внизу будет видно