button.multiselect {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #CFCFCF;
    box-shadow: none;
    padding-left: 5px;
    background-color: #FFF;
    width: 100%;
    height: 30px !important;
    line-height: 30px !important;
}

    button.multiselect.focused,
    button.multiselect:focus {
        border: 1px solid #003d57 !important;
        -moz-transition: border-radius ease 0.5s, border-color ease 0.5s;
        -o-transition: border-radius ease 0.5s, border-color ease 0.5s;
        -webkit-transition: border-radius ease 0.5s, border-color ease 0.5s;
        transition: border-radius ease 0.5s, border-color ease 0.5s;
    }

    button.multiselect.focused {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }


button.multiselect span:first-child
{
    white-space: nowrap;
    overflow: hidden;
    cursor: default;
}

    button.multiselect span.dropbutton {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'Glyphicons Basic' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        min-width: 20px;
        width: 20px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    button.multiselect span.dropbutton::after {
        content: '\e9dc';
        cursor: default;
    }

button.multiselect[disabled="disabled"] span.dropbutton, 
button.multiselect[disabled="disabled"] span.dropbutton:hover {
    background: #F4F4F4;
    outline: 1px solid  #fcfcfc;
    outline-offset: -2px;
    border: 1px solid #adb2b5;
}

button.multiselect[disabled="disabled"] span.dropbutton::after, 
button.multiselect[disabled="disabled"] span.dropbutton:hover::after {
    opacity: 0.5;
}


div.multiselect {
    position: absolute;
    display: none;
    background: #FFF;
    margin: 0;
    padding: 0;
    box-shadow: 0px 3px 5px 1px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0px 3px 5px 1px rgba(0,0,0,0.1);
    -webkit-animation: swing-in-top 0.2s ease-in-out both;
    animation: swing-in-top 0.2s ease-in-out both;
    border: none !important;
    border-radius: 0 0 4px 4px;
    z-index: 1001;
}


/* Panel All / None / Close */
div.multiselect div:first-child
{
	background-color: #e1e4e8;
    margin-bottom: 0px;
    padding: 0px;
    line-height: normal;
}

.clearfix {
    margin-top: 2px;
    height: var(--field-height);
}


div.multiselect div:first-child ul
{
    display: flex;
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

div.multiselect :first-child ul li {
    width: 50%;
    text-align: center;
    padding: 2px;
}
    div.multiselect :first-child ul li:hover {
        background-color: var(--brand-rgb-10);
    }

    div.multiselect :first-child ul li a:hover {
        text-decoration: none;
    }

        div.multiselect :first-child ul li a.checkall,
        div.multiselect :first-child ul li a.checknone {
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: .8rem;
        }

    div.multiselect :first-child ul li a span {
        text-decoration: none;
        color: var(--primary-color);
        cursor: pointer;
        line-height: var(--field-height);
        height: var(--field-height);
    }

div.multiselect :first-child ul li a:hover span
{
    color: #696969;
}

    /* multiselect combos button images */
    div.multiselect :first-child ul li a.checkall .icon:before {
        font-family: 'Glyphicons Basic' !important;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        content: '\e998';
        font-size: 1.6rem;
        color: var(--primary-color);
    }

    div.multiselect :first-child ul li a.checknone .icon:before {
        font-family: 'Glyphicons Basic' !important;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        content: '\e999';
        font-size: 1.6rem;
        color: var(--primary-color);
    }

div.multiselect div:first-child ul li:last-child
{
    display: none;
}

div.multiselect div:first-child ul li:last-child a .close
{
    display: none;
}


/* Panel Filter */
div.multiselect .filter 
{
    /* do not use display: none */ 
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
}

div.multiselect.origin-top.searchable .filter {
    margin-bottom: 0px;
}

div.multiselect.searchable .filter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 2px;
    padding: 0 5px !important;
    background-color: var(--surface-color) !important;
    position: relative;
    -webkit-animation: swing-in-top 0.2s ease-in-out both;
    animation: swing-in-top 0.2s ease-in-out both;
    outline: 0 !important;
}

    div.multiselect.searchable .filter:before {
        font-family: 'Glyphicons Basic' !important;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        speak: none;
        content: '\e91b';
        position: absolute;
        top: 6px;
        left: 12px;
        font-size: 14px;
        color: var(--font-color);
        -webkit-transform: scaleX(-1);
        transform: scaleX(-1);
    }

    div.multiselect.searchable .filter input {
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        height: 25px !important;
        padding-left: 25px !important;
        margin-left: 2px !important;
        font-family: "Inter var",sans-serif;
        font-size: 12px;
        font-weight: 500;
        color: var(--font-color);
        outline: 0 !important;
    }

/* Panel Checklist */
div.multiselect ul.checklist {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: block !important;
    overflow-y: auto;
    text-align: left;
    font-weight: 500;
    max-height: 500px;
    outline: 0 !important;
    position: relative !important;
    border-radius: 4px;
}

    div.multiselect ul.checklist li {
        clear: both;
        white-space: nowrap;
        overflow: hidden;
        display: block;
        text-overflow: ellipsis;
        padding: 2.5px 5px 2.5px 5px;
        height: var(--field-height);
        line-height: var(--field-height);
        color: var(--input-font-color);
    }

div.multiselect ul.checklist li.hidden
{
    display: none !important;
}

div.multiselect ul.checklist li.hover
{
    background: #F5F5F5 !important;
}

        div.multiselect ul.checklist li mark {
            background-color: #FF0;
            color: var(--input-font-color)
        }

div.multiselect ul.checklist li label
{
    display: flex;
    align-items: center;
    cursor: pointer;
}

    div.multiselect ul.checklist li label:before {
        display: flex;
        justify-content: center;
        align-items: center;
        content: "";
        margin: 0px 8px;
        width: 20px;
        height: 20px;
        background-color: rgba(0, 0, 0, 0);
        color: var(--font-color);
        border: 2px solid var(--font-color);
        border-radius: 4px;
    }

        div.multiselect ul.checklist li label.checked:before {
            content: "\2714";
            color: var(--primary-contrast-color);
            background-color: var(--primary-color);
            border-color: var(--primary-color);
        }

    div.multiselect ul.checklist li label input {
        display: none;
    }
