.input-with-button {
    display: grid;
    grid-template:
            "input buttons" fit-content(100%)
            / auto fit-content(100%);
}

.input-with-button>.input {
    grid-area: input;
}

.input-with-button>.input>input {
    padding: 0;
    margin: 0 .5em 0 0;
    border: none;
    border-bottom: 1px solid;
    width: calc(100% - .5em);
}

.input-with-button>.input>input:focus {
    border-bottom: 1px solid var(--secundary-color);
}

.input-with-button>.buttons {
    white-space: nowrap;
    grid-area: buttons;
}

.button-panel {
    display: flex;
    justify-content: flex-end;
}