.c-object-label {
  // <a> tag and draggable element that holds type icon and name.
  // Used mostly in trees and lists
  @include ellipsize();
  display: flex;
  align-items: center;
  flex: 0 1 auto;

  > * + * {
    margin-left: $interiorMargin;
  }

  &.is-status--draft {
    .c-object-label__type-icon {
      &:after {
        color: $colorStatusAlert;
        font-family: symbolsfont;
        content: $glyph-icon-draft;
        margin-left: $interiorMarginSm;
      }
    }
  }

  &__name {
    @include ellipsize();
    color: $objectLabelNameColorFg;
    display: inline;
    padding: 1px 0;
  }

  &__type-icon {
    // Type icon. Must be an HTML entity to allow inclusion of alias indicator.
    display: block;
    flex: 0 0 auto;
    font-size: 1.1em;
    opacity: $objectLabelTypeIconOpacity;
  }

  .is-status__indicator {
    position: absolute;
    right: -3px;
    top: -3px;
    transform: scale(0.5);
  }

  &.is-status--missing,
  &.is-status--suspect {
    [class*='__type-icon'] {
      &:before,
      &:after {
        opacity: $opacityMissing;
      }
    }
  }

  &.is-status--notebook-default {
    &:after {
      content: $glyph-icon-notebook-page;
      display: block;
      margin-left: $interiorMargin;
    }
  }

  &.is-status--current {
    &:after {
      content: $glyph-icon-asterisk;
      display: block;
      margin-left: $interiorMargin;
      font-family: symbolsfont;
    }
  }
}

.c-tree .c-object-label {
  border-radius: $controlCr;
  padding: $interiorMarginSm 1px;

  > * + * {
    margin-left: $interiorMarginSm;
  }

  &__name {
    display: inline;
    width: 100%;
  }

  &__type-icon {
    color: $colorItemTreeIcon;
    font-size: 1.25em;
    margin-right: $interiorMarginSm;
    opacity: 1;
    min-width: $treeTypeIconW;
  }
}
