@charset "utf-8";
/**
 * 创建按钮样式的 mixin
 * 
 * @param {string} $type - 按钮类型，可选值为 "normal"、"responsive" 或 "custom"
 * @param {boolean} $animation - 是否开启动画
 * @param {string} $animationType - 动画类型，可选值为 "background"、"before" 或 "after"
 * @param {string} $direction - 动画方向，可选值为 "left"、"right"、"top"、"bottom"、"center" 或 "centerCircle"
 * @param {number} $opcacityOrigin - 伪元素初始透明度
 * @param {color} $pseudoElementHover - 伪元素悬停时的背景颜色
 * @param {number} $min-width - 按钮最小宽度
 * @param {number} $min-height - 按钮最小高度
 * @param {number} $max-width - 按钮最大宽度
 * @param {number} $max-height - 按钮最大高度
 * @param {number} $width - 按钮宽度
 * @param {number} $height - 按钮高度
 * @param {number} $padding - 按钮内边距
 * @param {number} $responsivePadding - 自适应按钮内边距
 * @param {string} $align - 按钮文本对齐方式，可选值为 "center"
 * @param {number} $borderRadius - 按钮边框圆角半径
 * @param {number} $borderSize - 按钮边框宽度
 * @param {color} $backgroundColor - 按钮背景颜色
 * @param {color} $boderColor - 按钮边框颜色
 * @param {color} $backgroundColorHover - 按钮悬停时的背景颜色
 * @param {color} $fontColor - 按钮文本颜色
 * @param {color} $boderColorHover - 按钮悬停时的边框颜色
 * @param {color} $fontColorHover - 按钮悬停时的文本颜色
 * @param {number} $duration - 动画持续时间
 * @param {string} $cubic - 动画时间函数
 * @param {string} $box-sizing - 盒模型类型，可选值为 "border-box"
 * @param {boolean} $outHover - 是否开启外部悬停效果
 */
.underline-lrl,
.underlineLrl {
  cursor: pointer;
}
.underline-lrl.line,
.underline-lrl .line,
.underlineLrl.line,
.underlineLrl .line {
  position: relative;
  white-space: nowrap;
}
.underline-lrl.line::after,
.underline-lrl .line::after,
.underlineLrl.line::after,
.underlineLrl .line::after {
  -webkit-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  content: "";
  display: block;
  position: absolute;
  width: 0%;
  left: 0;
  height: 1px;
  bottom: -3px;
  background: #182b88;
  opacity: 1;
}
.underline-lrl:hover.line::after,
.underline-lrl:hover .line::after,
.underlineLrl:hover.line::after,
.underlineLrl:hover .line::after {
  width: 100%;
  opacity: 1;
}

.underline-lrl-w,
.underlineLrlW {
  cursor: pointer;
}
.underline-lrl-w.line,
.underline-lrl-w .line,
.underlineLrlW.line,
.underlineLrlW .line {
  position: relative;
  white-space: nowrap;
}
.underline-lrl-w.line::after,
.underline-lrl-w .line::after,
.underlineLrlW.line::after,
.underlineLrlW .line::after {
  -webkit-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  content: "";
  display: block;
  position: absolute;
  width: 0%;
  left: 0;
  height: 1px;
  bottom: -3px;
  background: #fff;
  opacity: 1;
}
.underline-lrl-w:hover.line::after,
.underline-lrl-w:hover .line::after,
.underlineLrlW:hover.line::after,
.underlineLrlW:hover .line::after {
  width: 100%;
  opacity: 1;
}

.underline-lrr,
.underlineLrr {
  cursor: pointer;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.underline-lrr.line,
.underline-lrr .line,
.underlineLrr.line,
.underlineLrr .line {
  background-repeat: no-repeat;
  will-change: background-size;
  -webkit-transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-background-size: 0 1px;
       -o-background-size: 0 1px;
          background-size: 0 1px;
  background-position: 100% 100%;
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#182b88), to(#182b88));
  background-image: -webkit-linear-gradient(#182b88, #182b88);
  background-image: -moz-linear-gradient(#182b88, #182b88);
  background-image: -o-linear-gradient(#182b88, #182b88);
  background-image: linear-gradient(#182b88, #182b88);
}
.underline-lrr:hover.line,
.underline-lrr:hover .line,
.underlineLrr:hover.line,
.underlineLrr:hover .line {
  background: -webkit-gradient(linear, left top, left bottom, from(#182b88), to(#182b88)) no-repeat 0 100%/100% 1px;
  background: -webkit-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: -moz-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: -o-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
}

.underline-lrr-w,
.underlineLrrW {
  cursor: pointer;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.underline-lrr-w.line,
.underline-lrr-w .line,
.underlineLrrW.line,
.underlineLrrW .line {
  background-repeat: no-repeat;
  will-change: background-size;
  -webkit-transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-background-size: 0 1px;
       -o-background-size: 0 1px;
          background-size: 0 1px;
  background-position: 100% 100%;
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
  background-image: -webkit-linear-gradient(#fff, #fff);
  background-image: -moz-linear-gradient(#fff, #fff);
  background-image: -o-linear-gradient(#fff, #fff);
  background-image: linear-gradient(#fff, #fff);
}
.underline-lrr-w:hover.line,
.underline-lrr-w:hover .line,
.underlineLrrW:hover.line,
.underlineLrrW:hover .line {
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)) no-repeat 0 100%/100% 1px;
  background: -webkit-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: -moz-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: -o-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
}

.underline-lr,
.underlineLr {
  cursor: pointer;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.underline-lr.line,
.underline-lr .line,
.underlineLr.line,
.underlineLr .line {
  background-repeat: no-repeat;
  will-change: background-size;
  -webkit-transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-background-size: 0 1px;
       -o-background-size: 0 1px;
          background-size: 0 1px;
  background-position: 100% 100%;
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent));
  background-image: -webkit-linear-gradient(transparent, transparent);
  background-image: -moz-linear-gradient(transparent, transparent);
  background-image: -o-linear-gradient(transparent, transparent);
  background-image: linear-gradient(transparent, transparent);
}
.underline-lr:hover.line,
.underline-lr:hover .line,
.underlineLr:hover.line,
.underlineLr:hover .line {
  background: -webkit-gradient(linear, left top, left bottom, from(#182b88), to(#182b88)) no-repeat 0 100%/100% 1px;
  background: -webkit-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: -moz-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: -o-linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
  background: linear-gradient(#182b88, #182b88) no-repeat 0 100%/100% 1px;
}

.underline-lr-w,
.underlineLrW {
  cursor: pointer;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.underline-lr-w.line,
.underline-lr-w .line,
.underlineLrW.line,
.underlineLrW .line {
  background-repeat: no-repeat;
  will-change: background-size;
  -webkit-transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), -o-background-size 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-background-size: 0 1px;
       -o-background-size: 0 1px;
          background-size: 0 1px;
  background-position: 100% 100%;
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent));
  background-image: -webkit-linear-gradient(transparent, transparent);
  background-image: -moz-linear-gradient(transparent, transparent);
  background-image: -o-linear-gradient(transparent, transparent);
  background-image: linear-gradient(transparent, transparent);
}
.underline-lr-w:hover.line,
.underline-lr-w:hover .line,
.underlineLrW:hover.line,
.underlineLrW:hover .line {
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)) no-repeat 0 100%/100% 1px;
  background: -webkit-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: -moz-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: -o-linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
  background: linear-gradient(#fff, #fff) no-repeat 0 100%/100% 1px;
}