.filter-row-btn {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin-top: 0.25rem;
}

.filter-row-btn-common {
    margin-top: 0;
}

.filter-row>*,
.filter-row-btn-common>* {
    padding-right: calc(var(--bs-gutter-x) * .25);
    padding-left: calc(var(--bs-gutter-x) * .25);
}

.filter-col {
    margin-top: 0.25rem;
    flex: 1 1 325px;
}

.filter-btn {
    margin: 0.25rem;
    border-width: 2px;
    max-width: 225px;
    width: auto;
}


.filter-btn-common {
    text-align: center;
    display: block;
    width: 100%;
    margin-top: 0.25rem;
}

.filter-col-btn-common {
    flex: 0 0 175px;
}

.filter-btn-append {
    margin-top: 0;
    margin-bottom: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.filter-btn-dropdown {
    text-align: left;
    display: block;
    width: 100%;
}

.filter-col-toggle-dropdown,
.filter-loadsave-settings-dropdown {
    height: var(--bs-card-header-buttons-height);
    width: var(--bs-card-header-buttons-width);
    margin-right: 0.2rem;

}

.filter-col-toggle-dropdown>button,
.filter-loadsave-settings-dropdown>button {
    margin-right: 0;
    position: absolute;
}


@keyframes filter-custom-button-loading {
    0% {
        transform: scale(0.75);
    }

    50% {
        opacity: 1;
        transform: none;
    }

    100% {
        transform: scale(0.75);
    }
}

.filter-custom-button-loading {
    animation: 1.5s linear infinite filter-custom-button-loading;
}

.form-check-input.filter-input:not(.form-switch .form-check-input.filter-input),
.form-check-input.filter-check-col-toggle,
.form-check-input.filter-check-col-toggle-all {
    position: initial;
    margin-left: 0px;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.form-check.filter-element {
    padding-left: 0.5rem;
}

.form-check.filter-element.filter-dropdown-element {
    padding-bottom: 0;
    padding-top: 0;
}

.form-check.filter-element:hover {
    color: var(--bs-secondary);
    background-color: var(--bs-primary);
}

.filter-inline-input-group input.filter-input:not(.form-switch .form-check-input.filter-input) {
    height: calc(1.5em + 0.5rem + 2px);
    padding: 0.25rem 0.5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-color: var(--bs-primary);
}

.filter-inline-input-group .input-group-text .form-check.form-switch {
    min-height: auto;
}

.filter-inline-input-group .input-group-text {
    height: calc(1.5em + 0.5rem + 2px);
    font-size: .875rem;
    line-height: 1.5rem;
    background-color: var(--bs-secondary);
    border-color: var(--bs-primary);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.filter-inline-input-group button.filter-btn-common {
    height: calc(1.5em + 0.5rem + 2px);
    width: auto;
    margin-top: 0;
}

.filter-dropdown-menu-items {
    max-height: 30vh;
    overflow-y: auto;
}

.filter-input-checkbox-label,
.filter-input-radio-label {
    width: 100%;
    padding-left: 0.5rem;
    margin-top: auto;
    margin-bottom: auto;
}

.filter-input-checkbox-label span.filter-input-label-amount,
.filter-input-radio-label span.filter-input-label-amount {
    font-size: 0.8em;
    font-style: italic;
}

.filter-dropdown-element {
    display: -ms-flexbox;
    display: flex;
}

/*
.filter-element{

}




.filter-dropdown{

}


.filter-dropdown-menu{

}

.filter-input{

}

.filter-iput-label{

}

.filter-input-search{

}
*/

.filter-dynamic-toggle-element {
    width: 90px;
}
.filter-dynamic-toggle-element > i{
    top: -5px;
}