Зеленый блок превышает родительскую ширину, потому что он имеет ширину 100%, и вы должны добавить ширину поля, равную 48px.
Если вы хотите остановиться в конце родительского элемента, просто измените свойство ширины на:
width: calc(100% - 48px);
Если вы хотите иметь одинаковое расстояние слева и справа, удвойте его:
width: calc(100% - 96px);
Вот рабочий живой кодовый указатель: https://codepen.io/alezuc/pen/RwWrpKV