@notice-prefix: s-notice;

.@{notice-prefix} {
  &__container {
    top: 30px;
    position: fixed;
    height: 0;
    width: 0;
    right: 0;
    top: 0;
    z-index: 2001;
  }
  &__content {
    margin-top: 12px;
    padding: 16px 20px;
    // position: fixed;
    // top: 10%;
    // right: -360px;
    max-height: 300px;
    overflow-y: auto;
    width: 324px;
    background: #fff;
    box-shadow: 0px 2px 20px 1px rgba(33, 15, 15, 0.1);
    border-radius: 4px;
    z-index: 2001;
    transition: 0.3s transform;
    box-sizing: border-box;
    transform: translateX(0px);
    &.show {
      transform: translateX(-360px);
    }
    &.simple {
      padding: 12px 16px;
      .@{notice-prefix} {
        &__title {
          margin: 0;
        }
      }
    }
    &.info {
      background: #e5f1ff;
      border: 1px solid #60a9ff;
      .s-notice__icon {
        .s-icon {
          color: #0879ff;
        }
      }
      .s-notice__action {
        span {
          color: #0879ff;
        }
      }
    }
    &.success {
      background: #eafbf2;
      border: 1px solid #7ac990;
      .s-notice__icon {
        .s-icon {
          color: #33ac54;
        }
      }
      .s-notice__action {
        span {
          color: #33ac54;
        }
      }
    }
    &.error {
      border: 1px solid #f67f7f;
      background: #fef6f5;
      .s-notice__icon {
        .s-icon {
          color: #f13130;
        }
      }
      .s-notice__action {
        span {
          color: #f13130;
        }
      }
    }
    &.warning {
      border: 1px solid #ffc86d;
      background: #fffaf2;
      .s-notice__icon {
        .s-icon {
          color: #ff9f00;
        }
      }
      .s-notice__action {
        span {
          color: #ff9f00;
        }
      }
    }
  }
  &__close {
    position: absolute;
    right: 12px;
    top: 12px;
    line-height: 1;
    color: #999;
    cursor: pointer;
  }
  &__body {
    display: flex;
  }
  &__icon {
    width: 24px;
    line-height: 14px;
    .s-icon {
      vertical-align: top;
      font-size: 16px;
      &.info {
        color: #0879ff;
      }
      &.success {
        color: #33ac54;
      }
      &.error {
        color: #f13130;
      }
      &.warning {
        color: #ff9f00;
      }
    }
  }
  &__info {
    flex: 1;
  }
  &__title {
    font-size: 14px;
    line-height: 14px;
    margin: 0 0 10px 0;
  }
  &__text {
    font-size: 13px;
    line-height: 20px;
    margin: 0 0 10px 0;
    text-align: justify;
  }
  &__action {
    span {
      font-size: 13px;
      cursor: pointer;
    }
  }
}