.budgeter_form .flex-cols {
    display: flex;
}

.budgeter_form .flex-cols > div {
    flex: 1;
    padding: 0 10px;
}

.budgeter_form input {
    width: 100%;
}

div.input input {
    padding: 10px 12px;
    border-radius: 0.28571429rem;
}

div.input.select-search > div {
    position: relative;
}

div.input.select-search > div > ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

div.input.select-search > div > ul > li {
    padding: 6px 8px;
    cursor: pointer;
}
div.input.select-search > div > ul > li:hover {
    background: rgba(0,0,0,.05);
}

div.input.select-search .search-results {
    display: none;
    position: absolute;
    top: 100%;
    max-height: 200px;
    background: #fff;
    width: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 1;
}

div.input.select-search > div:has(> input:focus) .search-results {
    display: block;
}

.budgeter_form > .form-footer {
    margin: 15px 0;
    text-align: center;
}

button {
    font-size: 1.14285714rem;
    cursor: pointer;
    display: inline-block;
    min-height: 1em;
    outline: 0;
    border: none;
    vertical-align: baseline;
    background: #e0e1e2 none;
    color: rgba(0,0,0,.6);
    font-family: Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;
    margin: 0 0.25em 0 0;
    padding: 0.78571429em 1.5em 0.78571429em;
    text-transform: none;
    text-shadow: none;
    font-weight: 700;
    line-height: 1em;
    font-style: normal;
    text-align: center;
    text-decoration: none;
    border-radius: 0.28571429rem;
    -webkit-box-shadow: 0 0 0 1px transparent inset, 0 0 0 0 rgba(34,36,38,.15) inset;
    box-shadow: 0 0 0 1px transparent inset, 0 0 0 0 rgba(34,36,38,.15) inset;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;
    transition: opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;
    transition: opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease;
    transition: opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease,-webkit-box-shadow .1s ease;
    will-change: '';
    -webkit-tap-highlight-color: transparent;
}

button.positive {
    background-color: #21ba45;
    color: #fff;
}