.u-relative,
.u-rela,
.relative {
	position: relative;
}

.u-absolute,
.u-abso,
.absolute {
	position: absolute;
}

.u-fixed,
.u-fix {
	position: fixed;
}

// nvue不能用标签命名样式，不能放在微信组件中，否则微信开发工具会报警告，无法使用标签名当做选择器
/* #ifndef APP-NVUE */
image {
	display: inline-block;
}

// 在weex，也即nvue中，所有元素默认为border-box
view,
text {
	box-sizing: border-box;
}

/* #endif */

.u-font-xs {
	font-size: 11px;
}

.u-font-sm {
	font-size: 13px;
}

.u-font-md {
	font-size: 14px;
}

.u-font-lg {
	font-size: 15px;
}

.u-font-xl {
	font-size: 17px;
}

.flex {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.u-flex {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.u-flex-wrap {
	flex-wrap: wrap;
}

.u-flex-nowrap {
	flex-wrap: nowrap;
}

.free-price {
	text-decoration: line-through;
	color: #999;
}
.cur-pointer{
	cursor: pointer;
}
.u-col-center {
	align-items: center;
}

.u-col-top {
	align-items: flex-start;
}

.u-col-bottom {
	align-items: flex-end;
}

.u-row-center {
	justify-content: center;
}

.u-row-left {
	justify-content: flex-start;
}

.u-row-right {
	justify-content: flex-end;
}

.u-row-between {
	justify-content: space-between;
}

.u-row-around {
	justify-content: space-around;
}

.u-text-left {
	text-align: left;
}

.u-text-center {
	text-align: center;
}

.u-text-right {
	text-align: right;
}

.u-flex-col {
	display: flex;
	flex-direction: column;
}

// 定义flex等分
@for $i from 0 through 12 {
	.u-flex-#{$i} {
		flex: $i;
	}
}

// 定义字体(px)单位，小于20都为px单位字体
@for $i from 9 to 20 {
	.u-font-#{$i} {
		font-size: $i + px;
	}
}

// 定义字体(rpx)单位，大于或等于20的都为rpx单位字体
@for $i from 20 through 40 {
	.u-font-#{$i} {
		font-size: $i + px;
	}
}

// 定义内外边距，历遍1-80
@for $i from 0 through 80 {

	// 只要双数和能被5除尽的数
	@if $i % 2==0 or $i % 5==0 {

		// 得出：u-margin-30或者u-m-30
		.u-margin-#{$i},
		.u-m-#{$i} {
			margin: $i + px !important;
		}

		// 得出：u-padding-30或者u-p-30
		.u-padding-#{$i},
		.u-p-#{$i} {
			padding: $i + px !important;
		}

		@each $short, $long in l left, t top, r right, b bottom {

			// 缩写版，结果如： u-m-l-30
			// 定义外边距
			.u-m-#{$short}-#{$i} {
				margin-#{$long}: $i + px !important;
			}

			// 定义内边距
			.u-p-#{$short}-#{$i} {
				padding-#{$long}: $i + px !important;
			}

			// 完整版，结果如：u-margin-left-30
			// 定义外边距
			.u-margin-#{$long}-#{$i} {
				margin-#{$long}: $i + px !important;
			}

			// 定义内边距
			.u-padding-#{$long}-#{$i} {
				padding-#{$long}: $i + px !important;
			}
		}
	}
}

// 重置nvue的默认关于flex的样式
.u-reset-nvue {
	flex-direction: row;
	align-items: center;
}

/* start--文本行数限制--start */
.u-line-1 {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.u-line-2 {
	-webkit-line-clamp: 2;
}

.u-line-3 {
	-webkit-line-clamp: 3;
}

.u-line-4 {
	-webkit-line-clamp: 4;
}

.u-line-5 {
	-webkit-line-clamp: 5;
}

.u-line-2,
.u-line-3,
.u-line-4,
.u-line-5 {
	overflow: hidden;
	word-break: break-all;
	text-overflow: ellipsis;
	display: -webkit-box; // 弹性伸缩盒
	-webkit-box-orient: vertical; // 设置伸缩盒子元素排列方式
}

/* end--文本行数限制--end */


/* start--不同颜色文字--start */
.color-333 {
	color: #333;
}

.color-666 {
	color: #666;
}

.color-999 {
	color: #999;
}

.color-red {
	color: rgb(250, 85, 85);
}


/* end--不同颜色文字--end */

.tranistion {
	transition: all .3s ease-in-out;
}

.tranistion-1 {
	transition: all .1s ease-in-out;
}

.tranistion-2 {
	transition: all .2s ease-in-out;
}

.font-bold {
	font-weight: 700;
}

.font-600 {
	font-weight: 600;
}

.bg-gray {
	background-color: #F9F9F9;
}

.w-full {
	width: 100%;
}

.gap-10 {
	gap: 10px;
}

.gap-20 {
	gap: 20px;
}

.color-aaa {
	color: #aaa;
}

.color-000 {
	color: #000;
}

.color-fff {
	color: #fff;
}

.bg-fff {
	background-color: #fff;
}

.bg-gray {
	background-color: #F9F9F9;
}

.overflow-hide {
	overflow: hidden;
}

.no-wrap {
	white-space: nowrap;
}

.border-r-12 {
	border-radius: 12px;
}

.border-r-18 {
	border-radius: 18px;
}

.border-top {
	border-top: 1px solid #E5E5E5;
}

.border-bottom {
	border-bottom: 1px solid #E5E5E5;
}

.scale7 {
	transform: scale(0.7);
}

.position-all {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

.lh16 {
	line-height: 16px;
}

.default-box-padding {
	padding: 16px 14px;
}

.zIndex-999 {
	z-index: 999;
}

.icon-default-size {
	width: 14px;
	height: 14px;
}

.filter-gray {
	filter: grayscale(1);
}
.youhui-tips.el-tooltip__popper {
	background: #fff;
	min-width: 150px;
	border-radius: 4px;
	border: 1px solid #ebeef5 !important;
	padding: 12px;
	color: #606266;
	line-height: 1.4;
	text-align: justify;
	font-size: 14px;
	box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
	word-break: break-all;
  }
  .youhui-tips.el-tooltip__popper[x-placement^="top"] .popper__arrow:after,
  .youhui-tips.el-tooltip__popper[x-placement^="top"] .popper__arrow {
  border-top-color: #fff;
}