.ui-tree {
  &__panel {
    display: grid;
    grid-area: content;
    grid-template-rows: auto 1fr;
    line-height: 1;
    overflow: hidden;
  }

  &__container {
    padding: 0.25rem;
    @extend .ui-scroll;
  }

  &__node {
    align-items: center;
    display: grid;
    grid-auto-flow: column;
    grid-gap: 0.25rem;
    place-content: start;
  }

  &__search {
    margin: 0;
    min-width: unset;

    .ui-input {
      box-shadow: none;
    }
  }

  &__content {
    @include property-prefix(padding-start, 1rem);
  }

  &__spacer {
    padding: 0 0.5rem;

    &__lines {
      border-bottom: 1px dashed black;
      border-left: 1px dashed black;
      height: 2rem;
      position: relative;
      top: -1rem;
      left: 0.45rem;
      margin-bottom: auto;
    }

    &__vertical {
      border-left: 1px dashed black;
      height: 100%;
      position: relative;
      bottom: 1rem;
      left: 0.45rem;
    }
  }

  &__expander {
    padding: 0.25rem 0;
    z-index: 1; // Show above dotted lines
    & :not(.disabled) {
      cursor: pointer;
    }
  }

  &__checkbox {
    cursor: pointer;
    opacity: 0.95;
    padding: 0.25rem 0;
  }

  &__icon {
    z-index: 1; // Show above dotted lines
  }

  &__label {
    padding: 0.25rem;
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently*/
    z-index: 1; // Show above dotted lines

    white-space: normal;
    line-height: 1.125rem;

    &.ui-tree__selectable {
      cursor: pointer;
    }
  }

  &__show-more {
    font-size: 0.8rem;
    font-weight: $font-weight-medium;
    padding: 0.25rem;
  }

  &__no-children {
    font-size: 0.9rem;
    font-weight: $font-weight-medium;
    padding: 0.25rem;
  }

  &__action {
    height: 100%;

    .ui-btn__inner {
      box-shadow: none !important;
    }

    .dropdown-content {
      li > a > i {
        margin: 0;
      }
    }
  }
}

ux-dialog-body .ui-tree__panel > .row:first-child {
  width: 100%;
}
