.cp-list {
  &-item {
    display: flex;
    border-bottom: 1px solid $color-border;

    &.no-border {
      border-bottom: none;
    }

    &-operations {
      display: none;
    }

    &:hover {
      background-color: $color-active-bg;

      .cp-list-item-operations {
        display: flex;
        align-items: center;
        cursor: default;
      }
    }

    &:last-child {
      border-bottom: none;
    }

    &-body {
      display: flex;
      flex: 1;
      flex-direction: column;
      width: 0;

      .body-title {
        display: flex;
        align-items: center;

        .title-text {
          width: auto;
          color: $color-text;
        }

        .title-icon {
          color: $color-text-desc;
          font-size: 18px;
        }
      }

      .body-description {
        color: $color-text-sub;
      }

      .body-extra-info {
        color: $color-text-desc;

        .info-item {
          display: inline-flex;
          align-items: center;
          width: 120px;
          margin-right: 16px;

          &.type-normal {
            color: $color-text-desc;
          }

          &.type-success {
            color: $color-success;
          }

          &.type-warning {
            color: $color-warning;
          }

          &.type-error {
            color: $color-danger;
          }
        }
      }
    }

    .cp-list-item-prefix-img {
      margin-right: 12px;

      > * {
        width: 42px;
        height: 42px;
      }

      .prefix-img-middle {
        width: 36px;
        height: 36px;
      }

      .prefix-img-circle {
        border-radius: 50%;
      }
    }

    .body-title {
      margin-bottom: 4px;
      font-size: 20px;
      line-height: 28px;
    }

    .body-description {
      font-size: 14px;
      line-height: 22px;
    }

    .body-extra-info {
      margin-top: 12px;
    }

    &.middle {
      padding: 8px 12px;
    }

    &.small {
      padding: 4px 8px;

      .body-title {
        margin: 0;
      }
      .item-prefix-img {
        width: 20px;
        height: 20px;

        &.prefix-img-circle {
          border-radius: 50%;
        }
      }

      .cp-list-item-body {
        .title-icon {
          width: 20px;
          height: 20px;
        }

        .title-text {
          font-size: 14px;
          line-height: 20px;
          font-weight: normal;
        }
      }
    }

    &.large {
      padding: 12px 16px;
    }
  }

  .load-more {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 12px;
    color: $color-text-desc;
    font-size: 14px;
  }
}
