@RES_PATH: '/public/assets/';
@webp: '?x-oss-process=image/format,webp';

.sparkBg(@value) {
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: left top;

  background-image: url("@{RES_PATH}@{value}");

  [duiba-webp='true'] & {
    background-image: url("@{RES_PATH}@{value}@{webp}");
  }
}

.formatBg() {
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: left top;
}

/* 文本过长隐藏文字并显示省略号 单行*/
.lineClamp1() {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.lineClampN(@num) {
  white-space: wrap;
  text-overflow: -o-ellipsis-lastline;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: @num;
  overflow: hidden;
}

.breathAnimation() {
  animation: scale 1s linear infinite alternate;

  @keyframes scale {
    0% {
      transform: scale(0.9);
    }

    100% {
      transform: scale(1.04);
    }
  }
}

@font-face {
  font-family: SFMono-Medium;
  src: url('./assets/font/SFMono-Medium.ttf');
}



.btnShow() {
  animation: btnShowAni 600ms ease-out infinite;

  @keyframes btnShowAni {

    0%,
    100% {
      transform: scale(1);
    }

    50% {
      transform: scale(1.1);
    }
  }
}