.labeler__widget {
    position: relative;
    display: flex;
    width: auto;
    box-sizing: border-box;
}

.labeler__editor {
    position: relative;
    display: flex;
    min-width: 0;
}

.labeler__text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    z-index: 1;
}

.labeler__text::before {
  content: "\200b";
}

.labeler__editor--edit-mode .labeler__text {
    opacity: 0;
}

.labeler__link {
    margin: 0 0 0 0.25em;
    z-index: 3;
}

.labeler__link--disabled {
    display: none;
}

.labeler__icon {
    pointer-events: none;
    opacity: 0;
    transform: translateX(100%);
    transition: 0.15s ease all;
}

.labeler__editor--edit-mode .labeler__icon {
    pointer-events: none;
}

.labeler__editor:hover .labeler__icon,
.labeler__editor--edit-mode .labeler__icon {
    opacity: 1;
    transform: translateX(0);
}

.labeler__input {
    position: absolute;
    display: none;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    width: 100%;
    border: 0 none;
    outline: 0 none;
    text-decoration-line: underline;
    background: transparent;
    opacity: 0;
    z-index: 2;
    box-sizing: border-box;
}

.labeler__text,
.labeler__input {
    text-decoration-style: solid;
    text-decoration-thickness: 0.0625em;
    text-underline-offset: 0.125em;
}

.labeler__editor:hover .labeler__text {
    text-decoration-style: dashed;
    text-decoration-line: underline;
}

.labeler__editor--allow-click-edit .labeler__input,
.labeler__editor--edit-mode .labeler__input,
.labeler__link--disabled + .labeler__input {
    display: inline-block;
}

.labeler__editor--edit-mode .labeler__input {
    opacity: 1;
}

.labeler__widget,
.labeler__text,
.labeler__link,
.labeler__input {
    line-height: inherit;
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    color: inherit;
}
