.bz-overflow-menu {
  background-color: $bz-neutral-100;
  border-radius: $bz-border-radius-m;
  box-shadow: $bz-shadow-m;
  list-style: none;
  max-width: 250px;
  min-width: 125px;
  position: absolute;
  user-select: none;

  &__divider {
    background-color: $bz-neutral-300;
    height: 1px;
  }

  &__item {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: $bz-font-size-body;
    overflow: hidden;
    padding: $bz-space-inset-squish-s;
    text-overflow: ellipsis;
    user-select: none;
    white-space: nowrap;

    &:hover:not(.bz-overflow-menu__item--active),
    &:focus {
      background-color: $bz-neutral-200;

      .bz-icn {
        fill: $bz-theme-400;
      }
    }

    &:focus {
      outline: 0;
    }

    &--comfortable {
      padding: $bz-space-inset-squish-m;
    }

    &-combo {
      overflow: initial;
    }

    &-text {
      overflow: hidden;
      text-overflow: ellipsis;
    }

    &--link {
      padding: 0;
    }

    &--active {
      background-color: $bz-theme-100;
      .bz-icn {
        fill: $bz-theme-400;
      }
    }

    &--disabled {
      pointer-events: none;
    }

    > span, > a {
      display: block;
      min-height: 100%;
      flex: 1;
      overflow: hidden;
      text-decoration: none;
      text-overflow: ellipsis;
      white-space: nowrap;

      &:hover {
        color: $bz-neutral-600;
      }

      &:visited {
        color: $bz-neutral-500;
      }
    }
  }

  &__allow-overflow {
    overflow: visible;
  }

  &__icon {
    align-items: center;
    display: flex;
    overflow: hidden;
  }

  &__title {
    font-weight: $bz-font-weight-semibold;
    padding: $bz-space-inset-squish-s;
  }

  &__sub-title {
    color: $bz-neutral-500;
    font-size: $bz-font-size-body-small;
    padding: $bz-space-inset-squish-s;
    text-transform: uppercase;
  }
}
