 * {
 	padding: 0;
 	margin: 0;
 	box-sizing: border-box;
 }

 body {
 	background-color: #f5f5f5;
 	-webkit-overflow-scrolling: touch;
 	overscroll-behavior: none;
 	-webkit-overscroll-behavior: none;
 	padding-bottom: 100px;
 	position: relative;
 }

 /* 阻止浏览器原生下拉刷新 */
 html,
 body {
 	overscroll-behavior-y: none;
 	-webkit-overscroll-behavior-y: none;
 	overscroll-behavior-x: none;
 	-webkit-overscroll-behavior-x: none;
 }



 .content {
 	background-color: #ffffff;
 	padding: 0 15px;
 	margin-bottom: 10px;
 }

 .content_title {
 	height: 60px;
 	display: flex;
 	align-items: center;
 	font-size: 20px;
 	color: #333333;
 	font-weight: bold;
 }

 .content_title_little {
 	font-weight: 600;
 	font-size: 15px;
 	color: #333333;
 	line-height: 1;
 	padding-bottom: 20px;
 }

 .price_code {
 	width: 100%;
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	padding: 16px 0 9px 0;
 }

 .price_code .price {
 	display: flex;
 	align-items: flex-end;
 }

 .price_code .number {
 	display: flex;
 	align-items: center;
 	font-size: 14px;
 	color: #999999;
 }

 .price_code .number i {
 	font-size: 14px;
 	margin-left: 4px;
 }

 .price_code .price .price_number {
 	font-size: 20px;
 	color: #E82D3E;
 	font-weight: bold;
 	margin-right: 4px;
 	line-height: 1;
 }

 .price_code .price .price_unit {
 	font-size: 12px;
 	color: #999999;
 }

 .house_info {
 	padding-bottom: 40px;
 }

 .flats_desc,
 .room_desc {
 	font-size: 14px;
 	color: #333333;
 	line-height: 22px;
 	font-weight: 400;
 }

 .property_info_list {
 	display: flex;
 	flex-wrap: wrap;
 	margin-bottom: 20px;
 }

 .property_info_list .property_info_item {
 	width: 20%;
 	aspect-ratio: 1 / 1;
 }

 .property_info_list .property_info_item .icon {
 	width: 100%;
 	aspect-ratio: 1 / 1;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 }

 .property_info_list .property_info_item .icon i {
 	color: #333333;
 	font-size: 40px;
 }

 .property_info_list .property_info_item .name {
 	width: 100%;
 	text-align: center;
 	font-size: 12px;
 	color: #333333;
 }

 .other_price .other_price_item {
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	font-size: 13px;
 	color: #333333;
 	line-height: 1;
 	padding-bottom: 14px;
 }

 .other_price .other_price_item .name {
 	color: #999999;
 	flex-shrink: 0;
 	width: 65px;
 }

 .other_price .other_price_item .price {
 	flex: 1;
 	text-align: left;
 }

 .customer-service {
 	height: 40px;
 	background: #F8F8F8;
 	border-radius: 2px;
 	margin: 20px 0 40px 0;
 	font-weight: bold;
 	font-size: 14px;
 	color: #333333;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 }

 .customer-service i {
 	font-size: 18px;
 	margin-right: 4px;
 }

 #rent_list {
 	display: flex;
 }

 #rent_list .rent_item {
 	padding: 10px 20px;
 	flex-shrink: 0;
 	font-size: 12px;
 	color: #333333;
 	background: #F8F8F8;
 	border-radius: 4px;
 	line-height: 1;
 }

 #rent_list .rent_item.active {
 	background: #FFF5F5;
 	color: #E82D3E;
 	font-weight: bold;
 }

 #rent_list .rent_item+.rent_item {
 	margin-left: 5px;
 }

 #rent_amount {
 	display: flex;
 }

 #rent_amount .rent_amount_item {
 	display: flex;
 	align-items: flex-start;
 	flex-direction: column;
 	font-size: 10px;
 	color: #333333;
 	line-height: 1;
 }

 #rent_amount .rent_amount_item .name {
 	color: #999999;
 	margin: 15px 0 10px 0;
 }

 #rent_amount .rent_amount_item .price {
 	color: #333333;
 	font-weight: bold;
 }

 #rent_amount .rent_amount_item+.rent_amount_item {
 	margin-left: 20px;
 }

 .check_in_time {
 	font-size: 12px;
 	color: #333333;
 	margin-bottom: 20px;
 }

 .check_in_time span:nth-of-type(1) {
 	color: #999999;
 	margin-right: 14px;
 }

 .apartment_info {
 	padding: 10px 0 7px 0;
 	display: flex;
 }

 .apartment_info .self_house {
 	color: #81633A;
 	font-size: 10px;
 	line-height: 1;
 	padding: 3px 6px;
 	background: url('https://file-cn.liuzhuapp.com/zufang/self_house.png');
 	background-size: 100% 100%;
 	background-repeat: no-repeat;
 	display: inline-flex;
 	align-items: center;
 	margin-right: 5px;
 	flex-shrink: 0;
 	border-radius: 2px;
 }

 .apartment_info .apartment_list {
 	flex: 1;
 	display: flex;
 	overflow-x: auto;
 	/* 隐藏滚动条但保持滚动功能 */
 	scrollbar-width: none;
 	/* Firefox */
 	-ms-overflow-style: none;
 	/* IE 10+ */
 }

 .apartment_info .apartment_list::-webkit-scrollbar {
 	display: none;
 	/* Chrome Safari */
 }

 .apartment_item+.apartment_item {
 	margin-left: 5px;
 }

 .apartment_info .apartment_list .apartment_item {
 	display: inline-flex;
 	align-items: center;
 	font-size: 10px;
 	line-height: 1;
 	padding: 3px 6px;
 	background-color: #F5F5F5;
 	color: #666666;
 	border-radius: 2px;
 	flex-shrink: 0;
 }

 #property_detail {
 	font-size: 13px;
 	color: #333333;
 	margin-top: 6px;
 }

 .address_card {
 	background: url('https://file.liuzhuapp.com/uploads/202503/31c93dcae35281aa3a8ea703e63c46ce_s20632.png');
 	background-repeat: no-repeat;
 	background-size: 100% 100%;
 	padding: 10px;
 }

 .main {
 	padding-bottom: 20px;
 }

 .address_info {
 	display: flex;
 	align-items: center;
 }

 .flats_name {
 	font-size: 12px;
 	color: #333333;
 	line-height: 1;
 	font-weight: bold;
 	margin-bottom: 5px;
 }

 .address_info .address_icon {
 	width: 12px;
 	height: 12px;
 	flex-shrink: 0;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 }

 .address_info .address_icon i {
 	font-size: 12px;
 	color: #666666;
 }

 .address_info .address_detail {
 	flex: 1;
 	font-size: 12px;
 	color: #666666;
 	line-height: 16px;
 	padding-left: 5px;
 }

 .school_info {
 	display: flex;
 	font-size: 12px;
 	line-height: 1;
 	padding: 8px 0;
 }

 .school_info .school_name {
 	color: #333333;
 	font-weight: bold;
 	margin: 0 4px;
 }

 .school_info .distance {
 	color: #E82D3E;
 }

 .commuting {
 	display: flex;
 	align-items: center;
 	justify-content: center;
 }

 .commuting .commutingItem {
 	width: 25%;
 	flex-shrink: 0;
 	font-size: 12px;
 	color: #666666;
 	line-height: 1;
 }

 .commuting .commutingItem i {
 	color: #666666;
 	font-size: 12px;
 }

 .check_commuting {
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	font-size: 12px;
 	color: #333333;
 	font-weight: bold;
 	padding: 10px 0;
 }

 .check_commuting i {
 	font-size: 10px;
 	font-weight: normal;
 	margin-left: 4px;
 }

 .reservation {
 	height: 60px;
 	width: 100%;
 	position: fixed;
 	background-color: #ffffff;
 	bottom: 0;
 	left: 0;
 	display: flex;
 	align-items: center;
 	padding-right: 15px;
 }

 .wechart_model {
 	position: fixed;
 	bottom: 0;
 	left: 0;
 	background-color: rgba(0, 0, 0, 0.4);
 	width: 100vw;
 	height: 400vh;
 	z-index: 1;
 	display: none;
 }

 .wechart_model .wechart_model_header {
 	font-size: 17px;
 	font-weight: bold;
 	color: #333333;
 	height: 60px;
 	width: 100%;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	border-bottom: 1px solid #E7E7E7;
 	position: relative;
 }

 .wechart_model .wechart_model_header .cancel {
 	position: absolute;
 	left: 20px;
 	top: 50%;
 	transform: translateY(-50%);
 	font-size: 14px;
 	color: #333333;
 }

 .wechart_model .wechart_model_main {
 	position: absolute;
 	bottom: 0;
 	width: 100%;
 	background-color: #ffffff;
 	border-radius: 20px 20px 0 0;
 }

 .wechart_model .wechart_model_content {
 	display: flex;
 	flex-direction: column;
 	align-items: center;
 	justify-content: center;
 	padding: 20px 0 50px 0;
 }

 .wechart_model .wechart_model_content .re_code {
 	width: 240px;
 	height: 240px;
 	padding: 10px;
 }

 .wechart_model .wechart_model_content .re_code img {
 	width: 100%;
 	height: 100%;
 }

 .wechart_model .wechart_model_content .re_button {
 	border-radius: 45px;
 	border: 1px solid #E7E7E7;
 	height: 40px;
 	width: 240px;
 	font-size: 15px;
 	color: #333333;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	margin: 10px 0;
 }

 .wechart_model .wechart_model_content .re_tips {
 	color: #999999;
 	font-size: 12px;
 }

 .reservation .wechart {
 	flex-shrink: 0;
 	width: 160px;
 	height: 40px;
 	font-weight: bold;
 	font-size: 14px;
 	color: #333333;
 	display: flex;
 	align-items: center;
 	justify-content: flex-start;
 }

 .reservation .wechart img {
 	width: 80px;
 	height: 80px;
 }

 .reservation .consultation {
 	flex: 1;
 	height: 40px;
 	background: linear-gradient(133deg, #E82D3E 0%, #FF6F6F 100%);
 	border-radius: 20px;
 	font-size: 15px;
 	color: #FFFFFF;
 	line-height: 14px;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	font-weight: bold;
 }

 /* 轮播图 */
 .carousel-wrapper {
 	position: relative;
 	overflow: hidden;
 	width: 100%;
 	height: 280px;
 	-webkit-overflow-scrolling: touch;
 	touch-action: pan-y;
 }

 .carousel {
 	display: flex;
 	height: 100%;
 	transition: transform 0.3s ease;
 	will-change: transform;
 }

 .carousel-item {
 	flex-shrink: 0;
 	width: 100%;
 	height: 100%;
 	position: relative;
 }

 .carousel-item img {
 	width: 100%;
 	height: 100%;
 	object-fit: cover;
 	-webkit-user-drag: none;
 	user-select: none;
 	pointer-events: none;
 }

 .type-label {
 	position: absolute;
 	top: 8px;
 	left: 8px;
 	padding: 2px 6px;
 	font-size: 12px;
 	color: #fff;
 	border-radius: 4px;
 	background-color: rgba(0, 0, 0, 0.5);
 }

 .page-indicator {
 	position: absolute;
 	bottom: 16px;
 	right: 10px;
 	color: #fff;
 	font-size: 12px;
 }

 .btn-group {
 	position: absolute;
 	bottom: 8px;
 	left: 50%;
 	transform: translateX(-50%);
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	background-color: rgba(0, 0, 0, 0.6);
 	padding: 4px;
 	border-radius: 45px;
 }

 .btn-group .btn {
 	display: none;
 	font-size: 10px;
 	color: #ffffff;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	border-radius: 45px;
 	height: 24px;
 	width: 55px;
 }

 .btn-group .btn.active {
 	background: #FFFFFF;
 	color: #333333;
 }

 .back {
 	position: fixed;
 	z-index: 1;
 	height: 48px;
 	display: flex;
 	align-items: center;
 	padding: 0 15px;
 	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0));
 	width: 100%;
 	color: #ffffff;
 }

 .back i {
 	font-size: 20px;
 	color: #FFFFFF;
 }

 .back.wirght {
 	background: #ffffff;
 	color: #000000;
 }

 .back.wirght i {
 	color: #000000;
 }

 .back .house_title {
 	position: absolute;
 	left: 50%;
 	transform: translateX(-50%);
 	font-size: 16px;
 	width: calc(100% - 80px);
 	text-align: center;
 	overflow: hidden;
 	white-space: nowrap;
 	text-overflow: ellipsis;
 }