:root {
    --animation-duration: 3s;
    /* Animation duration */
}

.imm_highlighted {
    position: relative;
}

.imm_highlighted_text {
    position: relative;
    color: #000;
    font-weight: bold;
    display: inline-block;
}

.imm_highlighted_text span {
    position: relative;
    z-index: 1;
}

.imm_highlighted_text .imm_highlighted_block {
    position: absolute;
    top: 10%;
    left: -4px;
    height: 90%;
    background-color: rgba(250, 33, 192, 0.15);
    transition: all 2s;
    width: 0px;
    /* width: calc(100% + 8px); */
    z-index: 0;
}

.imm_highlighted_block-animated {
    animation: imm_highlighted_block_animation var(--animation-duration) forwards;
}

.imm_highlight_icon_up {
    position: absolute;
    left: 0;
    transform: translateX(-50%);
    height: calc(100% + 8px);
    width: auto;
    top: -8px;
}

.imm_highlight_icon_down {
    position: absolute;
    right: 0;
    transform: translateX(50%);
    height: calc(100% + 8px);
    width: auto;
    bottom: -8px;
    opacity: 0;
}

.imm_highlighted_block-animated .imm_highlight_icon_down {
    animation: imm_highlight_icon_down_animation var(--animation-duration) forwards;
}

@keyframes imm_highlighted_block_animation {
    0% {
        width: 0px;
    }

    100% {
        width: calc(100% + 8px);
    }
}

@keyframes imm_highlight_icon_down_animation {
    0% {
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}