.dropdown-menu {
  @apply absolute bg-white dark:bg-slate-900 z-40 rounded-md shadow-lg py-1 w-56;

  &.left { transform-origin: 100% 50%; }
  &.top { transform-origin: 50% 100%; }
  &.bottom { transform-origin: 50% 0; }
  &.right { transform-origin: 0 50%; }

  &__arrow {
    @apply absolute w-0 h-0;
    border: 0 solid transparent;

    &.left {
      @apply border-l-white dark:border-l-slate-900;
      right: -5px;
      margin-top: -5px;
      border-width: 5px 0 5px 5px;
    }

    &.top {
      @apply border-t-white dark:border-t-slate-900;
      bottom: -5px;
      margin-left: -5px;
      border-width: 5px 5px 0;
    }

    &.bottom {
      @apply border-b-white dark:border-b-slate-900;
      top: -5px;
      margin-left: -5px;
      border-width: 0 5px 5px;
    }

    &.right {
      @apply border-r-white dark:border-r-slate-900;
      left: -5px;
      margin-top: -5px;
      border-width: 5px 5px 5px 0;
    }
  }

  ul {
    overflow: hidden;
  }

  &__item {
    a {
      @apply flex px-4 py-2.5 text-sm text-gray-700 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-slate-800 cursor-pointer;

      > .svg-icon:first-child {
        @apply h-5 w-5 mr-2.5 transition-none;

        svg {
          @apply stroke-[1.5px] transition-none;
        }
      }
    }

    &.destructive a {
      @apply text-danger-600 dark:text-danger-400;
    }
  }

  &__separator {
    @apply block my-2 h-[1px] bg-gray-200 dark:bg-gray-600;
  }
}
// end .dropdown-menu

// NOTE - not sure what this relates to — but it doesn't involve the navbar dropdown

.dropdown {
  display: inline-block;
}

.dropdown__content {
  display: none;
  position: absolute;
}

.dropdown--active .dropdown__content {
  display: block;
  line-height: 18px;
  max-width: 311px;
  right: 0;
  text-align: left;
  z-index: 9999;

  & > ul {
    list-style: none;
    background: var(--background-color);
    padding: 4px 0;
    border-radius: 4px;
    box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
    min-width: 140px;
    position: relative;
  }

  &.dropdown__right {
    right: 0;
  }

  &.dropdown__left {
    & > ul {
      left: -98px;
    }
  }

  & > ul > li > a {
    font-size: 13px;
    line-height: 18px;
    display: block;
    padding: 4px 14px;
    box-sizing: border-box;
    text-decoration: none;
    background: var(--background-color);
    color: var(--primary-text-color);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

    &:focus {
      outline: 0;
    }

    &:hover {
      background: var(--brand-color);
      color: var(--primary-text-color--faint);
    }
  }
}

.dropdown__icon {
  vertical-align: middle;
}
