@import '../../style/themes/index';
@import '../../style/mixins/index';

@message-prefix-cls: ~'@{ant-prefix}-message';

.@{message-prefix-cls} {
  .reset-component();

  position: fixed;
  top: 8px;
  left: 0;
  z-index: @zindex-message;
  width: 100%;
  pointer-events: none;

  &-notice {
    padding: 8px;
    text-align: center;
  }

  &-notice-content {
    display: inline-block;
    padding: @message-notice-content-padding;
    background: @message-notice-content-bg;
    border-radius: @border-radius-middle;
    box-shadow: @shadow-2;
    pointer-events: all;
  }

  .lm_message {
    .ant-message-notice-content {
      position: relative;
    }
    .message_progress {
      position: absolute;
      width: calc(100% - 16px);
      margin: 0 8px;
      height: 2px;
      background-color: @primary-color;
      left: 0;
      bottom: 0;
      animation-name: Progress1;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
      transition: width .2s;
      animation-timing-function: linear;
    }

    &:hover {
      .message_progress {
        animation-name: none;
        animation-play-state: paused;
      }
    }
  }

  &-success .@{iconfont-css-prefix} {
    color: @success-color;
  }

  &-error .@{iconfont-css-prefix} {
    color: @error-color;
  }

  &-warning .@{iconfont-css-prefix} {
    color: @warning-color;
  }

  &-info .@{iconfont-css-prefix},
  &-loading .@{iconfont-css-prefix} {
    color: @info-color;
  }

  .@{iconfont-css-prefix} {
    position: relative;
    top: 1px;
    margin-right: 8px;
    font-size: @font-size-lg;
  }

  &-notice.@{ant-prefix}-move-up-leave.@{ant-prefix}-move-up-leave-active {
    animation-name: MessageMoveOut;
    animation-duration: 0.3s;
  }
}

@keyframes MessageMoveOut {
  0% {
    max-height: 150px;
    padding: 8px;
    opacity: 1;
  }

  100% {
    max-height: 0;
    padding: 0;
    opacity: 0;
  }
}

@keyframes Progress1 {
  from {
    width: calc(100% - 16px);
  }

  to {
    width: 0;
  }
}

@import './rtl';
