:root{
    --dropdown-font-family: var(--main-font-family);
    --dropdown-option-background-color: white;
    --dropdown-option-selected-background-color: var(--main-color-gold);
    --dropdown-option-same-as-selected-background-color: var(--main-color-purple);
    --dropdown-option-hover-background-color: var(--main-color-purple);
    --dropdown-font-color: #000000;
    --custom-checkbox-background-color: #eee;
    --custom-checkbox-hover-background-color: #bbb;
    --custom-checkbox-border-color: #bbb;
    --custom-checkbox-checked-background-color: var(--main-color-gold);
    
}

.custom-dropdown-wrapper {
    position: relative;
    font-family: var(--dropdown-font-family);
    width:300px;
}

.custom-dropdown-wrapper select{
    display: none;  
}

.options-wrapper{
    position: absolute;
    z-index: 100;
    width:100%;
    max-height: 385px;
    overflow-y: auto;
    border: 1px solid rgba(0,0,0,0.2);
    border-top: none;
    box-sizing: border-box;
}

.custom-dropdown-wrapper .option-selected{
    background-color: var(--dropdown-option-selected-background-color);
    color: var(--dropdown-font-color);
    padding: 5px 10px;
    border-radius: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.custom-dropdown-wrapper .option-selected:not([data-value="0"]){
    background-color: var(--dropdown-option-selected-background-color);
    padding-right: 35px;
}


.custom-dropdown-wrapper .option-selected:after {
    position: absolute;
    font-family: "FontAwesome";
    content: "\f078";
    top: 20px;
    right: 10px;
    line-height: 0;
}

.custom-dropdown-wrapper .option {
    display:none;
    background-color: var(--dropdown-option-background-color);
    color: var(--dropdown-font-color);
    padding: 5px 10px;
    border-bottom:1px solid rgba(0,0,0,0.2);
}

.custom-dropdown-wrapper .option:hover {
    background-color: var(--dropdown-option-hover-background-color);
    cursor:pointer;
    color: white;
}

.custom-dropdown-wrapper.select-open .option-selected{
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
}

.custom-dropdown-wrapper.select-open .option-selected:after{
    content: "\f077";
}

.custom-dropdown-wrapper.select-open .option{
    display: block;
}

.custom-dropdown-wrapper .option.disabled {
    pointer-events: none;
    cursor: not-allowed;
    background-color: #bbb;
}

.custom-dropdown-wrapper .same-as-selected{
    background-color: var(--main-color-purple);
    color: white;
}

.custom-checkbox-wrapper{
    position:relative;
}

.custom-checkbox-wrapper input{
    opacity: 0;
}

.custom-checkbox-wrapper .custom-checkbox {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: var(--custom-checkbox-background-color);
    border-radius: 6px;
    cursor: pointer;
    border: 1px solid var(--custom-checkbox-border-color);
}

.custom-checkbox-wrapper .content {
    display: inline-block;
    padding-left: 10px;
    line-height: 25px;
}

.custom-checkbox-wrapper img{
    vertical-align: middle;
    margin-left: 20px;
} 

.custom-checkbox-wrapper:hover input ~ .custom-checkbox {
    background-color: var(--custom-checkbox-hover-background-color);
}

.custom-checkbox-wrapper input:checked ~ .custom-checkbox {
    background-color: var(--custom-checkbox-checked-background-color);
    border:none;
}

.custom-checkbox-wrapper input:checked ~ .custom-checkbox:after {
    content:"\f00c";
    font-family: "FontAwesome";
    color:#000000;
    font-size: 16px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.custom-dropdown-wrapper.white .option {
    background-color: #ffffff;
    color: var(--main-text-color);
}

.custom-dropdown-wrapper .option-selected{
    background-color: white;
    color: var(--main-text-color);
}