.bsl-container {
    position: relative;
    display: inline-block;
    width: 100%;
}

.bsl-current {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    cursor: pointer;
    background-color: transparent;
    box-sizing: border-box;
    color: inherit;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.bsl-container:hover .bsl-current,
.bsl-container.is-open .bsl-current,
.bsl-dropdown {
    background-color: var(--bsl-bg-h) !important;
    color: var(--bsl-txt-h) !important;
}

.bsl-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    overflow: hidden;
    box-sizing: border-box;
}

.bsl-container:hover .bsl-dropdown,
.bsl-container.is-open .bsl-dropdown {
    opacity: 1;
    visibility: visible;
}

.bsl-item {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    width: 100%;
    cursor: pointer;
    color: inherit;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.bsl-item:hover,
.bsl-item:focus-visible {
    background-color: var(--bsl-el-bg-h) !important;
    color: var(--bsl-el-txt-h) !important;
}

.bsl-item:active {
    background-color: var(--bsl-el-bg-a) !important;
    color: var(--bsl-el-txt-a) !important;
}

.bsl-ico {
    display: flex;
    transition: transform 0.3s ease;
    width: var(--bsl-ico-size, 1em);
    color: var(--bsl-ico-color, inherit);
}

.bsl-container:hover .bsl-ico,
.bsl-container.is-open .bsl-ico {
    transform: rotate(180deg);
    color: var(--bsl-ico-color-h, var(--bsl-ico-color, inherit));
}

.bsl-ico svg {
    width: 100%;
    height: auto;
    fill: currentColor;
}
