@charset "UTF-8";
wx-image{
	height: auto;
}
.padding20 {
	padding: 20rpx
}
.paddingTB20 {
	padding: 20rpx 0
}
.paddingTB30 {
	padding: 30rpx 0
}
.paddingTB10 {
	padding: 10rpx 0
}

.pad20 {
	padding: 0 20rpx
}

.padding15 {
	padding: 15rpx
}
.padding30 {
	padding: 30rpx
}

.pad30 {
	padding: 0 30rpx
}
.pt20 {
	padding-top: 20rpx
}
.pb15 {
	padding-bottom: 15rpx
}
.pb20 {
	padding-bottom: 20rpx
}
.pb30 {
	padding-bottom: 30rpx
}

.mb30 {
	margin-bottom: 30rpx;
}
.mr20 {
	margin-right: 20rpx;
}
.mr10 {
	margin-right: 10rpx;
}
.ml20 {
	margin-left: 20rpx;
}
.mt20 {
	margin-top: 20rpx;
}
.mt30 {
	margin-top: 30rpx;
}
.mt10 {
	margin-top: 10rpx;
}
.mb20 {
	margin-bottom: 20rpx;
}

page, view, text, image, button, input, scroll-view, swiper{
	box-sizing: border-box
}

page {
	font-size: 28rpx;
	background-color: #f5f5f5 !important;
	/* background-color: #ffffff !important; */
	color: #333;
	/* height: 100%; */
}

body,html {
	background-color: #f5f5f5 !important;
	/* background-color: #ffffff !important; */
/* 	height: unset */
}

button {
	padding: 0;
	margin: 0;
	line-height: normal;
	background-color: #fff
}

button::after {
	border: 0
}



radio .wx-radio-input.wx-radio-input-checked {
	border: 1px solid #E93323 !important;
	background-color: #E93323 !important
}

radio .uni-radio-input {
	border-radius: 50%;
	width: 38rpx;
	height: 38rpx
}

radio .uni-radio-input.uni-radio-input-checked {
	border: 1px solid #E93323 !important;
	background-color: #E93323 !important
}

checkbox .wx-checkbox-input {
	border-radius: 50%;
	width: 38rpx;
	height: 38rpx;
	margin-right: 0 !important;
}

checkbox .wx-checkbox-input.wx-checkbox-input-checked {
	border: 1px solid #E93323 !important;
	background-color: #E93323 !important;
	color: #fff!important;
	margin-right: 0 !important;
}

checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
	font-size: 35rpx
}

checkbox .uni-checkbox-input {
	border-radius: 50%;
	width: 38rpx;
	height: 38rpx
}

checkbox .uni-checkbox-input.uni-checkbox-input-checked {
	border: 1px solid #E93323 !important;
	background-color: #E93323 !important;
	color: #fff!important
}

checkbox .uni-checkbox-input.uni-checkbox-input-checked::before {
	font-size: 35rpx
}

.line1 {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap
}

.line2 {
	word-break: break-all;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	/* height: 84rpx; */
}

.mask {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #000;
	opacity: .5;
	z-index: 5
}

@keyframes load {
	from {
		transform: rotate(0)
	}

	to {
		transform: rotate(360deg)
	}
}

@-webkit-keyframes load {
	from {
		transform: rotate(0)
	}

	to {
		transform: rotate(360deg)
	}
}

.loadingpic {
	animation: load 3s linear 1s infinite;
	--webkit-animation: load 3s linear 1s infinite
}

.loading-list {
	animation: load linear 1s infinite;
	-webkit-animation: load linear 1s infinite;
	font-size: 40rpx;
	margin-right: 22rpx
}

.loading {
	width: 100%;
	height: 100rpx;
	line-height: 100rpx;
	align-items: center;
	justify-content: center;
	position: relative;
	text-align: center
}

.loading .line {
	position: absolute;
	width: 450rpx;
	left: 150rpx;
	top: 50rpx;
	height: 1px;
	border-top: 1px solid #eee
}

.loading .text {
	position: relative;
	display: inline-block;
	padding: 0 20rpx;
	background: #fff;
	z-index: 2;
	color: #777
}

.loadingicon .loading {
	animation: load linear 1s infinite;
	font-size: 45rpx;
	color: #000
}

.loadingicon {
	width: 100%;
	height: 80rpx;
	overflow: hidden
}
.bg-color-huic{
	background: #F1F1F1!important;
	border: 1px solid #ccc!important;
	color: #ccc!important;
}
.nowrap{
	white-space: nowrap;
}
/*flex样式*/
.flex_1{
  flex:1;
}
.flex{
  display: flex;
}
.flex_2{
  flex: 2;
}
.flex-between{/*两边对齐*/
  display: flex;
  justify-content: space-between;
}
.flex-align-center{/*垂直居中*/
  display: flex !important;
  align-items: center;
}
.flex-center{/*水平垂直居中*/
  display: flex;
  justify-content: center;
  align-items: center;
}
.flex-center-flex-end{/*水平垂直居中-尾部对齐*/
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.flex-center-box-end{/*水平垂直居中-铺满盒内*/
  display: -webkit-inline-box;
  justify-content: flex-end;
  align-items: center;
}
.flex-center-flex-start{/*水平垂直居中-首部对齐*/
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.flex-center-around{/*水平垂直居中-平均对齐*/
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.flex-center-between{/*水平垂直居中-两边对齐*/
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.flex-column{/*竖直方向*/
  display: flex;
  flex-direction: column;
}
.flex-column-center{/*竖直方向水平居中 两端对齐*/
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.flex-column-start{/*竖直方向水平居中 首部对齐*/
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: self-start;
}
.flex-column-end{/*竖直方向水平居中 尾部部对齐*/
  display: flex;
  flex-direction: column;
	align-items: flex-end;
}
.flex-column-start-between{/*竖直方向-首部对齐-两端对齐*/
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: self-start;
}
.flex-column-align{/*竖直方向水平居中*/
  display: flex;
  flex-direction: column;
  align-items: center;
}
.flex-center-flex-start-warp{/*水平垂直居中-首部对齐*/
  display: flex;
  justify-content: flex-start;
  align-items: center;
   flex-wrap:wrap ;
}
.grid-container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30rpx;
}
.grid-container3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30rpx;
}
.order_btn{
	font-size: 25rpx;
	color: #ffffff;
	border-radius:10rpx;
	background-color: $theme-color;
	&.error{
		background-color: #E93323;
	}
	&.plain{
		border:1px solid #cccccc;
		color: #000000;
		background-color: #ffffff;
	}
}
.border{
	border: 1px solid #eeeeee;
}
.border-bottom{
	border-bottom: 1px solid #eeeeee;
}
.gray{
	color: #666666;
}
.link{
	color: #007aff;
}
.bg_color_f5{
	background-color: #f5f5f5;
}
.bg_color_fff{
	background-color: #ffffff;
}
.bg_color_primary{
	background-color: $theme-color;
}
.border_radius_10{
	border-radius: 10rpx;
}
.border_radius_20{
	border-radius: 20rpx;
}
.border_radius_30{
	border-radius: 30rpx;
}
.bold{
	font-weight: bold;
}
.font_size60{
	font-size: 60rpx;
}
.font_size40{
	font-size: 40rpx;
}
.font_size35{
	font-size: 36rpx;
}
.font_size30{
	font-size: 30rpx;
}
.font_size32{
	font-size: 32rpx;
}
.font_size20{
	font-size: 20rpx;
}
.font_size24{
	font-size: 24rpx;
}
.font_size28{
	font-size: 28rpx;
}
.font_size25{
	font-size: 25rpx;
}
.line_vertical{
	width: 8rpx;
	height: 30rpx;
	background-color: $theme-color;
	border-radius: 4rpx;
}
.color_price{
	color: #fc4f1d;
}
.color_vip{
	color: #fee189;
}
.color_fff{
	color: #333;
}
.color_000{
	color: #000000;
}
.color_theme{
	color: $theme-color;
}

.text_align_center{
	text-align: center;
}
.text_align_right{
	text-align: right;
}
.foot{
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1);
	z-index: 10;
	padding: 20rpx 30rpx;
}
.footplaceholder{
	height: 100rpx;
}
.ellipsis{
	overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bg_img{
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;;
	z-index: -1;
}
.line_through{
	text-decoration: line-through;
}

.required{
	color: #E93323;
}
.u_popup_bottom{
	border-radius: 30rpx 30rpx 0 0;
}
.overflow_hidden{
	overflow: hidden;
}


.payment-radio {
  width: 40rpx;
  height: 40rpx;

  .radio-circle {
    width: 100%;
    height: 100%;
    border: 3rpx solid #ddd;
    border-radius: 50%;
    position: relative;
    transition: all 0.3s;

    &.checked {
      border-color: $theme-color;

      &::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 20rpx;
        height: 20rpx;
        background: $theme-color;
        border-radius: 50%;
      }
    }
  }
}
.noData{
	text-align: center;
	padding: 30rpx 0;
	color: #c8c7cc;
}
.serviceLabel{
	background-color: #ffe8e6;
	font-size: 25rpx;
	color: #E93323;
	border-radius: 10rpx;
	padding: 5rpx 10rpx;
	display: inline-block;
	// margin-top: 20rpx;
	&:not(:last-child){ 
		margin-right: 10rpx;
	}
}