.c-progress {
    flexbox();

    &--light {
        .c-progress__step {
            color: #fff;
            border-bottom-color: currentColor

            &--current {
                color: @color;

                .c-progress__number-content {
                    color: $color--main;
                }
            }

            &--completed {
                .c-progress__number-content {
                    color: $color--main;
                }
            }
        }
    }

    &__step {
        flex: 1 0 0;
        min-width: 1px;
        border-bottom: solid 1px $color--gray-2;
        color: $color--gray-1;

        &--current {
            color: $color--main;

            .c-progress {
                &__number {
                    border-color: transparent;
                    background-color: currentColor;

                    &-content {
                        color: #fff;
                        font-weight: $font--bold;
                    }
                }
                &__title {
                    font-weight: $font--bold;
                }
            }
        }

        &--completed {
            .c-progress {
                &__number {
                    border-color: transparent;
                    background-color: currentColor;

                    &-content {
                        color: #fff;
                    }
                }
            }
        }
    }

    &__number {
        width: 24px;
        height: @width;
        border: solid 1px currentColor
        border-radius: 50em;
        font-size: 12px;
        line-height: (@height - 2);
        text-align: center;

        .c-icon {
            vertical-align: middle;
        }
    }

    &__title {
        margin: 10px 0;
        font-size: 16px;
        text-ellipsis();
    }

    &__bar {
        height: 5px;
        background-color: currentColor;
        border-radius: 0 7px 7px 0;
        transition: all .4s ease-out;
    }
}