custom-indicator {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    bottom: 0;
    left: 0;
    right: 0;
    position: fixed;
    background-color: transparent;
    z-index: 100;
    overflow-x: clip;
    width: 100%;
    padding-top: max(30px, calc(2.08vw * var(--scale)));
    padding-bottom: max(30px, calc(2.08vw * var(--scale)));
    height: max(81px, calc(5.63vw * var(--scale)));
}

.indicator-lines {
    display: flex;
    align-items: flex-end;
}

.indicator-line {
    display: flex;
    justify-content: center;
    width: 2px;
    min-width: 2px;
    height: max(17px, calc(1.18vw * var(--scale)));
    opacity: 0.3;
    padding-left: max(6px, calc(0.42vw * var(--scale)));
    padding-right: max(6px, calc(0.42vw * var(--scale)));
    cursor: pointer;
    transition: height .2s cubic-bezier(.5,1,.89,1), opacity .2s ease-out;
}

.indicator-line:first-child {
    padding-left: 0px;
}

.indicator-line-inner {
    background-color: var(--text-color);
    width: 2px;
    min-width: 2px;
    transition: background-color .2s cubic-bezier(.5,1,.89,1);
}

.active-indicator {
    height: max(21px, calc(1.46vw * var(--scale)));
    opacity: 1;
}

.active-indicator .indicator-line-inner {
    background-color: red;
}

.current-section-wrapper {
    text-align: right;
    width: max(360px, 25vw);
    position: relative;
    overflow: visible;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
}

.section-text {
    transition: transform 1s var(--transition), opacity 1s cubic-bezier(.19,1,.22,1);
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(100%);
    opacity: 0;
    pointer-events: none;
}

.active-text {
    transform: translateY(0%);
    opacity: 1;
    pointer-events: auto;
}

@media (max-width: 991px) { 
    custom-indicator {
        background-color: var(--background-color);
    }

    .current-section {
        width: 100%;
        padding-left: 28px;
    }

    .current-section-wrapper {
        width: 100%;
    }

    .section-text {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-align: left;
    }
}

@media (max-width: 479px) { 
    custom-indicator {
        padding-bottom: 17px;
        padding-top: 17px;
        height: 55px;
    }
    
    .indicator-lines {
        display: flex;
        align-items: flex-end;
    }
    
    .indicator-line {
        padding-left: 5px;
        padding-right: 5px;
    }

    .current-section {
        padding-left: 18px;
    }
}

