swirl-tree-view-item {
  display: block;
  flex-grow: 1;
}

  swirl-tree-view-item * {
    box-sizing: border-box;
  }

.tree-view-item {
  list-style: none;
}

.tree-view-item--chosen.tree-view-item--drag:not(.tree-view-item--ghost) {
  border-radius: var(--s-border-radius-sm);
  box-shadow: var(--s-shadow-level-3);
}

.tree-view-item--chosen.tree-view-item--drag:not(.tree-view-item--ghost) .tree-view-item__link {
    background-color: var(--s-translucent-low-pressed);
  }

.tree-view-item--chosen.tree-view-item--drag:not(.tree-view-item--ghost) .tree-view-item__link:hover .tree-view-item__drag-handle {
        opacity: 0;
      }

.tree-view-item--ghost {
  border: var(--s-border-width-default) solid var(--s-border-highlight);
  border-radius: var(--s-border-radius-sm);
}

.tree-view-item--ghost .tree-view-item__link:hover .tree-view-item__drag-handle {
        opacity: 0;
      }

.tree-view-item--moving-via-keyboard {
  position: relative;
  z-index: 1;
  border: var(--s-border-width-default) solid var(--s-border-highlight);
  border-radius: var(--s-border-radius-sm);
  box-shadow: var(--s-shadow-level-3);
}

.tree-view-item--moving-via-keyboard .tree-view-item__link {
    background-color: var(--s-translucent-low-pressed);
  }

.tree-view-item--moving-via-keyboard .tree-view-item__link:focus-visible {
      outline: none;
    }

.tree-view-item--cannot-keyboard-drop {
  opacity: 0.5;
}

.tree-view-item--active > .tree-view-item__link {
    background-color: var(--s-state-hovered);
  }

.tree-view-item--has-tags .tree-view-item__tags {
    display: flex;
  }

.tree-view-item__children {
  display: flex;
  margin: 0;
  padding: 0 0 0 var(--s-space-12);
  padding-top: var(--s-space-2);
  flex-direction: column;
  gap: var(--s-space-2);
}

.tree-view-item__children--drop-zone {
  min-height: 0.5rem;
  margin-top: -0.5rem;
}

.tree-view-item__link {
  display: flex;
  height: 2.25rem;
  padding: var(--s-space-4) var(--s-space-8);
  align-items: center;
  border-radius: var(--s-border-radius-sm);
  color: var(--s-text-default);
  font-size: var(--s-font-size-base);
  font-weight: var(--s-font-weight-medium);
  text-decoration: none;
  gap: var(--s-space-4);
}

.tree-view-item__link:hover {
    background-color: var(--s-state-hovered);
  }

.tree-view-item__link:hover .tree-view-item__drag-handle {
      opacity: 1;
    }

.tree-view-item__link:active {
    background-color: var(--s-state-pressed);
  }

.tree-view-item__link:focus:not(:focus-visible) {
    outline: none;
  }

.tree-view-item__link:focus-visible {
    outline-color: var(--s-focus-default);
  }

@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px) {

.tree-view-item__link {
    font-size: var(--s-font-size-sm)
}
  }

.tree-view-item__drag-handle {
  display: inline-flex;
  flex-shrink: 0;
  cursor: grab;
  opacity: 0;
}

.tree-view-item__drag-handle:active {
    cursor: grabbing;
  }

.tree-view-item__icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: var(--s-space-4);
  flex-grow: 0;
  flex-shrink: 0;
  color: var(--s-icon-default);
  font-size: var(--s-font-size-lg);
}

.tree-view-item__icon ::part(icon) {
    width: 100%;
    height: 100%;
  }

@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px) {

.tree-view-item__icon {
    width: 1.25rem;
    height: 1.25rem;
    font-size: var(--s-font-size-base)
}
  }

.tree-view-item__toggle-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  flex-grow: 0;
  flex-shrink: 0;
  color: var(--s-icon-default);
}

.tree-view-item__toggle-icon ::part(icon) {
    width: 100%;
    height: 100%;
  }

@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px) {

.tree-view-item__toggle-icon {
    width: 1.25rem;
    height: 1.25rem
}
  }

.tree-view-item__label {
  overflow: hidden;
  min-width: 5rem;
  flex-grow: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.tree-view-item__tags {
  display: none;
  padding-left: var(--s-space-4);
  align-items: center;
  gap: var(--s-space-4);
}
