Очень просто.
Вы делаете блок - присваиваете ему
position: relative
,
input
- даете дополнительную обертку для удобного позиционирования.
Обертке и button
присваиваете значение
position: absolute
и выравниваете обертку
top: -n px, button - bottom: -n px.
Основному блоку задаете
background-color: transparent, border: 1px solid #your-color.
Такой же трюк можно сделать с отрицательными margin. Но я думаю игра не стоит свеч.