.optionPopup {
    display: none;

    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2000;
    pointer-events: none;

    --option-popup-hover-background: var(--gray3);
    --option-popup-item-height: 40px;
    --option-popup-item-font-size: 14px;
    --option-popup-head-height: 50px;
    --option-popup-foot-height: 50px;
    --gray1: #fbfbfb;
    --gray2: #f5f5f5;
    --gray3: #eeeeee;
    --gray4: #e0e0e0;
    --gray5: #dddddd;
    --gray6: #bbbbbb;
    --gray7: #999999;
    --gray8: #777777;
    --gray9: #555555;
}
.optionPopup--expansionWidth .optionPopup__wrapper {
    width: initial;
}
.optionPopup__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: all;
}
.optionPopup__wrapper {
    position: absolute;
    top: 0;
    z-index: 2;
    min-width: 190px;
    background: var(--gray1);
    box-shadow: 2px 2px 10px rgba(0,0,0,0.1);
    pointer-events: all;
}
.optionPopup__head {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: var(--option-popup-head-height);
    border-bottom: 1px solid var(--gray4);
    padding-left: 16px;
    padding-right: 8px;
    background: var(--gray1);
    z-index: 1;
}
.optionPopup__title {
    font-size: 16px;
}
.optionPopup__close {
    margin-left: auto;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    cursor: pointer;
    color: var(--gray7);
}
.optionPopup__close:hover{
    background-color: var(--option-popup-hover-background);
}


/* option content */
.optionPopup__content {
    /* max-height: 300px; */
    overflow-y: auto;
    height: 100%;
    padding-top: var(--option-popup-head-height);
    padding-bottom: var(--option-popup-foot-height);
    max-height: 560px;
}
/* 
.optionPopup__list {
    position: relative;
    padding: 8px 0;
} */

/* option check item */
.optionPopup__check {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: var(--option-popup-item-height);
    padding: 0 16px;
    cursor: pointer;
}
.optionPopup__check:hover {
    background-color: var(--option-popup-hover-background);
}
.optionPopup__check input {
    cursor: pointer;
}
.optionPopup__check label {
    cursor: pointer;
    min-width: 50px;
    margin-left: 8px;
    font-size: var(--option-popup-item-font-size);
}
.optionPopup__order {
    display: none;
    margin-left: auto;
    font-size: 14px;
    color: var(--gray7);
}
.optionPopup__check:hover .optionPopup__order{
    display: block;
}

/* option select item */
.optionPopup__sel {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: var(--option-popup-item-height);
    padding: 0 16px;
    color: black;
    font-size: var(--option-popup-item-font-size);
    cursor: pointer;
    gap: 8px;
}
.optionPopup__sel:hover {
    background-color: var(--option-popup-hover-background);
}
.optionPopup__sel--selected {
    color: white;
    background-color: var(--primary) !important;
}
.optionPopup__sel__icon {
    font-size: 14px;
}
.optionPopup__sel__text {
    color: inherit;
    font-size: 14px;
}

/* option foot */
.optionPopup__foot {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: var(--option-popup-foot-height);
    padding-right: 8px;
    border-top: 1px solid var(--gray4);
    background: var(--gray1);
    z-index: 1;
}
.optionPopup__ctrl {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.optionPopup__btn {
    padding: 8px 8px;
    font-size: 14px;
    cursor: pointer;
    border-radius: 4px;
}
.optionPopup__btn:hover{
    background-color: var(--option-popup-hover-background);
}
