smart-breadcrumb {
    display: block;
    box-sizing: border-box;
    width: var(--smart-breadcrumb-default-width);
    min-width: calc(2 * var(--smart-breadcrumb-padding) + 2 * var(--smart-border-width) + 40px);
    height: var(--smart-breadcrumb-default-height);
    border: var(--smart-border-width) solid var(--smart-border);
    padding: var(--smart-breadcrumb-padding);
    padding-top: 0;
    border-top-right-radius: var(--smart-border-top-right-radius);
    border-top-left-radius: var(--smart-border-top-left-radius);
    border-bottom-left-radius: var(--smart-border-bottom-left-radius);
    border-bottom-right-radius: var(--smart-border-bottom-right-radius);
    touch-action: none;
}

    smart-breadcrumb .smart-template-container {
        height: auto;
    }

    smart-breadcrumb .smart-breadcrumb-items {
        width: 100%;
        height: auto;
    }

    smart-breadcrumb .smart-breadcrumb-items {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }

    smart-breadcrumb .smart-breadcrumb-item,
    .smart-breadcrumb-feedback {
        display: flex;
        flex-direction: row;
        align-items: center;
        position: relative;
        border: var(--smart-border-width) solid var(--smart-border);
        margin-right: var(--smart-breadcrumb-horizontal-offset);
        margin-top: var(--smart-breadcrumb-padding);
        width: auto;
        height: var(--smart-breadcrumb-item-height);
        padding: 5px;
        background-color: var(--smart-primary);
        color: var(--smart-primary-color);
    }

        smart-breadcrumb .smart-breadcrumb-item:not(:last-child):after {
            position: absolute;
            width: var(--smart-breadcrumb-horizontal-offset);
            height: 2px;
            background-color: var(--smart-border);
            left: calc(100% + var(--smart-border-width));
            top: 50%;
            content: '';
        }

    smart-breadcrumb .smart-breadcrumb-items > .target:before,
    smart-breadcrumb .smart-breadcrumb-items > .afterTarget:last-child:after {
        position: absolute;
        width: 2px;
        height: 100%;
        background-color: var(--smart-success);
        left: calc(-1 * var(--smart-breadcrumb-horizontal-offset) / 2 - 2px);
        content: '';
    }

    smart-breadcrumb .smart-breadcrumb-items > .afterTarget:last-child:after {
        left: calc(100% + var(--smart-breadcrumb-horizontal-offset) / 2);
    }

    smart-breadcrumb[allow-drag] .smart-breadcrumb-item {
        cursor: pointer;
    }

    smart-breadcrumb .smart-breadcrumb-item-label,
    smart-breadcrumb[add-new-item] .smart-breadcrumb-items > smart-button > button {
        user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
    }

    smart-breadcrumb .smart-breadcrumb-item > .smart-close-button {
        display: none;
        margin-left: 10px;
        margin-right: 5px;
        width: 1em;
        user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        cursor: pointer;
        font-family: "smart-icons";
        font-size: 8px;
    }

    smart-breadcrumb[close-buttons] .smart-breadcrumb-item > .smart-close-button {
        display: block;
    }

    smart-breadcrumb[add-new-item] .smart-breadcrumb-items > smart-button {
        --smart-button-padding: 0;
        position: relative;
        margin-right: var(--smart-breadcrumb-horizontal-offset);
        margin-top: var(--smart-breadcrumb-padding);
        border: var(--smart-border-width) solid var(--smart-border);
        border-radius: initial;
        width: var(--smart-breadcrumb-item-height);
        height: var(--smart-breadcrumb-item-height);
        text-align: center;
        font-size: 25px;
        overflow: visible;
    }

        smart-breadcrumb[add-new-item] .smart-breadcrumb-items > smart-button > button {
            overflow: hidden;
        }

.smart-breadcrumb-feedback {
    opacity: 0.8;
    position: absolute;
    box-sizing: border-box;
    display: inline-flex;
    font-family: var(--smart-font-family);
    font-size: var(--smart-font-size);
    z-index: 999;
}

    .smart-breadcrumb-feedback:after {
        margin-left: 10px;
        content: var(--smart-icon-check);
        font-family: "smart-icons";
        font-size: 14px;
        width: 1.5em;
        border-radius: 100%;
        height: 1.5em;
        background-color: var(--smart-success);
        color: var(--smart-success-color);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .smart-breadcrumb-feedback.error:after {
        background-color: var(--smart-error);
        color: var(--smart-error-color);
        content: var(--smart-icon-attention-circled);
    }

    .smart-breadcrumb-feedback * {
        box-sizing: border-box;
    }

/* minimized */
smart-breadcrumb[minimized] {
    padding: 0;
    overflow: visible;
}

    smart-breadcrumb[minimized] .smart-container {
        display: flex;
        align-items: center;
        position: relative;
        padding: var(--smart-breadcrumb-padding);
    }

    smart-breadcrumb[minimized] .smart-template-container {
        position: absolute;
        left: calc(-1 * var(--smart-border-width));
        top: calc(100% + 2px + var(--smart-border-width));
        margin: calc(var(--smart-drop-down-vertical-offset) + var(--smart-drop-down-element-padding-size)) 0px;
        border-width: var(--smart-border-width);
        border-style: solid;
        border-color: var(--smart-border);
        padding: var(--smart-drop-down-element-padding-size);
        width: var(--smart-breadcrumb-drop-down-width);
        background-color: var(--smart-background);
        box-shadow: var(--smart-elevation-8);
        z-index: 1;
    }

    smart-breadcrumb[minimized][animation="none"] .smart-template-container.smart-visibility-hidden {
        display: none;
    }

    smart-breadcrumb[minimized]:not([animation="none"]) .smart-template-container.smart-visibility-hidden {
        opacity: 0.2;
        transform: scaleY(0);
    }

    smart-breadcrumb[minimized]:not([animation="none"]) .smart-template-container {
        opacity: 1;
        transform: scaleY(1);
        -webkit-transform-origin: top;
        transform-origin: top;
        transition: opacity 0.2s ease-in, visibility 0.2s ease-in, transform 0.2s ease-in;
    }

    smart-breadcrumb[minimized] .smart-breadcrumb-item {
        width: 100%;
        margin: 0;
        justify-content: space-between;
    }

        smart-breadcrumb[minimized] .smart-breadcrumb-item:not(:last-child):after {
            content: none;
        }

    smart-breadcrumb[minimized] .smart-breadcrumb-items > smart-button {
        width: 100%;
        margin: 0;
    }

        smart-breadcrumb[minimized] .smart-breadcrumb-items > smart-button > button {
            padding: 0;
            justify-content: center;
        }

    smart-breadcrumb[minimized] .smart-breadcrumb-items > .target:before,
    smart-breadcrumb[minimized] .smart-breadcrumb-items > .afterTarget:last-child:after {
        width: 100%;
        height: 4px;
        left: 0;
        top: calc(-3px);
    }

    smart-breadcrumb[minimized] .smart-breadcrumb-items > .afterTarget:last-child:after {
        top: 100%;
    }

    smart-breadcrumb[minimized] .smart-hamburger-icon {
        width: 40px;
        height: 40px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        float: none;
        cursor: pointer;
    }

smart-breadcrumb .smart-hamburger-icon-line {
    margin-bottom: 5px;
    border-radius: 10px;
    width: 30px;
    height: 5px;
    background-color: var(--smart-primary);
    transform-origin: left;
}

smart-breadcrumb:not([animation="none"]) .smart-hamburger-icon-line {
    transition: visibility 0.02s ease-in, transform 0.2s ease-in, width 0.2s ease-in;
}

smart-breadcrumb .smart-hamburger-icon-line-bottom {
    margin-bottom: 0;
}

smart-breadcrumb .smart-hamburger-icon.smart-close-button > .smart-hamburger-icon-line-top {
    width: 29px;
    transform: translateX(4px) rotate(45deg);
}

smart-breadcrumb .smart-hamburger-icon.smart-close-button > .smart-hamburger-icon-line-center {
    visibility: hidden;
}

smart-breadcrumb .smart-hamburger-icon.smart-close-button > .smart-hamburger-icon-line-bottom {
    width: 29px;
    transform: translateX(4px) rotate(-45deg);
}

/* Microsoft Edge-specific fix */
smart-breadcrumb[minimized]:not([animation="none"]) .smart-template-container.smart-visibility-hidden.not-in-view {
    left: -9999px;
    top: -9999px;
    transition: none;
}
/* minimized - end*/

/* --- Right-To-Left */

smart-breadcrumb[right-to-left] > .smart-container,
.smart-breadcrumb-feedback[right-to-left] {
    direction: rtl;
}

smart-breadcrumb[right-to-left] .smart-breadcrumb-item:not(:last-child):after {
    left: calc(-1 * var(--smart-breadcrumb-horizontal-offset));
}

smart-breadcrumb[right-to-left]:not([minimized]) .smart-breadcrumb-item,
smart-breadcrumb[right-to-left][add-new-item]:not([minimized]) .smart-breadcrumb-items > smart-button,
.smart-breadcrumb-feedback[right-to-left] {
    margin-left: var(--smart-breadcrumb-horizontal-offset);
    margin-right: initial;
}

    .smart-breadcrumb-feedback[right-to-left]:after {
        margin-left: initial;
        margin-right: var(--smart-breadcrumb-horizontal-offset);
    }

smart-breadcrumb[right-to-left] .smart-breadcrumb-items > .afterTarget:first-child:after {
    position: absolute;
    content: '';
    width: 2px;
    height: 100%;
    top: 0;
    left: calc(100% + var(--smart-breadcrumb-horizontal-offset) / 2);
    background-color: var(--smart-success);
}

/* --- */
