How to have grid take up the "rest" of vertical layout with textfield on to

I have an accordion, and within each tab there is a grid, and I want to have a textfield and search-button on top of that. The challenge is to have the grid take up the “rest” of the space, and have the textfield and button (they live in a horizontal layout btw) have a fixed height…

The closest I’ve got so far is to use :expand=“0.09”, which is not ideal because the space allocated varies with the height of the vertial-layout. However, if I use :expand on the grid it’ll take up all space covering textfield and button, and all other combinations of height=“xyzzy” on the various components and layouts involved seems to split the vertical-layout in half, so that the grid does only take up half the space.

I figure I could calculate the expand ratio each time the vertical layout changes size, but I’d rather not if I don’t have to.

<vaadin-horizontal-split-panel split-position="42.786884%" :expand="">
<vaadin-accordion size-full="true">
<tab caption="Customer" selected="true">
<vaadin-vertical-layout size-full="true">
<vaadin-horizontal-layout spacing="true" size-full="true" :expand="0.09">
<vaadin-button width="30px" _id="btnCustSearch"></vaadin-button>
<vaadin-text-field width-full="true" :expand=""></vaadin-text-field>
<vaadin-grid size-full="true" _id="grdCustomer" :expand=""></vaadin-grid>
</tab> <tab caption="Etc">