#search-form {
    width: 100%;
    margin: 20px auto;
    border-radius: 8px;
    margin-bottom: 10px
}

#search-form label,
.sort-form label {
    display: block;
    margin-bottom: 8px
}

#search-form select,
.sort-form select {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    border-radius: var(--rounded-sm);
    border: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23333%23333" width="18px" height="18px"><path d="M0 0h24v24H0z" fill="none"/><path d="M7 10l5 5 5-5H7z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 10px center;
    cursor: pointer
}

#search-form select option,
.sort-form select option {
    color: #333;
    padding: 8px;
    cursor: pointer
}

#search-form select option:hover,
.sort-form select option:hover {
    background-color: var(--primary);
    background-color: #fff
}

#search-form select option:checked,
.sort-form select option:checked {
    background-color: var(--primary);
    color: #fff
}

#search-form select:focus,
.sort-form select:focus {
    outline-color: var(--primary)
}

#search-form input,
.sort-form input {
    width: 100%;
    padding: 10px;
    box-sizing: border-box
}

#search-form input:focus,
.sort-form input:focus {
    outline-color: var(--primary)
}

#search-form input[type=text],
.sort-form input[type=text] {
    width: 100%;
    padding: 10px;
    padding-left: 35px !important;
    font-size: 1rem !important;
    box-sizing: border-box;
    border-radius: var(--rounded-sm);
    border: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-repeat: no-repeat;
    background-position: right 10px center;
    border: none !important
}

#search-form input[type=submit],
#search-form button[type=submit],
.sort-form input[type=submit],
.sort-form button[type=submit] {
    color: #fff !important;
    cursor: pointer;
    border-radius: var(--rounded-default)
}

#search-form .searchbar,
.sort-form .searchbar {
    position: relative;
    width: 100%
}

#search-form .searchbar svg,
.sort-form .searchbar svg {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%)
}

@media(min-width: 993px) {

    #search-form .col,
    .sort-form .col {
        display: flex;
        align-items: center
    }

    #search-form .col:first-child,
    .sort-form .col:first-child {
        padding-left: 0
    }

    #search-form .col:last-child,
    .sort-form .col:last-child {
        padding-right: 0
    }

    #search-form .search_box,
    .sort-form .search_box {
        padding: 3px 6px;
        border-radius: var(--rounded-sm);
        border: 1px solid var(--border)
    }

    #search-form .search_box .select2 .selection .select2-selection,
    .sort-form .search_box .select2 .selection .select2-selection {
        border: none !important;
        border-left: 1px solid var(--border) !important;
        border-radius: 0 !important
    }
}

@media(max-width: 992px) {

    #search-form select,
    #search-form input[type=text],
    .sort-form select,
    .sort-form input[type=text] {
        background-color: var(--input-bg)
    }

    #search-form .row,
    .sort-form .row {
        margin: 0
    }

    #search-form .col,
    .sort-form .col {
        padding: 5px
    }
}

#sort-form {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px
}

#sort-form select,
#sort-form .select2 {
    max-width: 300px
}