.o-list {
    reset-list();
    
    &--numbered {
        counter-reset: list-index;

        .o-list__item {
            position: relative;
            padding-left: 34px;

            &:before {
                counter-increment: list-index;
                content: counter(list-index) ".";

                display: block;
                position: absolute;
                left: 0;
                top: 0;
            }
        }
    }

    &__item {
        flexbox();
        align-items: center;
        height: 24px;
        
        &:not(:last-child) {
            margin-bottom: $vertical--element-sm;
        }

        &--multiline {
            align-items: flex-start;
            height: auto;
            line-height: 24px;
        }

        &--bordered {
            &:not(:last-child) {
                box-shadow: inset 0 -1px 0 0 $color--gray-2;
                padding-bottom: $vertical--element-sm;
            }
        }

        &--disabled {
            color: $color--gray-1;
            pointer-events: none;

            .o-list__icon {
                color: inherit;
            }
        }


        &-title {
            margin: 0;
            font-size: 1em;
            font-weight: $font--bold;
            text-transform: uppercase;
            
            text-ellipsis();
        }

        label {
            cursor: pointer;

            &:hover {
                color: $color--main;
            }
        }
    }

    &__main {
        flex-grow: 1;
    }
    
    &__icon {
        margin-right: 10px;
        height: 24px;
        font-size: 24px;
        color: $color--main;
    }
}