.combo *,
.combo *::before,
.combo *::after {
    box-sizing: border-box;
}

.combo {
    display: block;
    margin-bottom: 1.5em;
    position: relative;
}

.combo::after {
    border-bottom: 1px solid rgb(0 0 0 / 75%);
    border-right: 1px solid rgb(0 0 0 / 75%);
    content: "";
    display: block;
    height: 8px;
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translate(0, -65%) rotate(45deg);
    width: 8px;
}

.combo-input {
    background-color: white;
    border: 1px solid rgb(0 0 0 / 75%);
    border-radius: 2px;
    display: block;
    font-size: 14px;
    padding: 9px 3px 9px 3px;
    text-align: left;
    width: 100%;
}

.open .combo-input {
    border-radius: 2px;
}

.combo-input:focus {
    border: 3px solid #A38D00;
    outline-color: transparent;
    padding: 7px 1px 7px 1px;
}

.combo-menu {
    background-color: white;
    border: 1px solid rgb(0 0 0 / 75%);
    border-radius: 0 0 4px 4px;
    display: none;
    max-height: 300px;
    overflow-y: scroll;
    left: 0;
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 100;
}

.open .combo-menu {
    display: block;
}

.combo-option {
    padding: 10px 12px 12px;
}

.combo-option:hover {
    background-color: var(--psiAzureWhite);
}

.combo-option.option-current {
    outline: 3px solid #A38D00;
    outline-offset: -3px;
}

.combo-option[aria-selected="true"] {
    padding-right: 30px;
    position: relative;
}

.combo-option[aria-selected="true"]::after {
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    content: "";
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translate(0, -50%) rotate(45deg);
    width: 8px;
}
