/* 服务页面样式 - 按照Figma设计实现 */
page {
  width: 100%;
  overflow-x: hidden;
  background: #fff;
}

.page-container {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  width: 100%;
  overflow-x: hidden;
  background: #fff;
}

/* 顶部导航栏已移除，改用全局 unified-header */

/* 内容滚动区域 */
.content-scroll {
  flex: 1;
  width: 100%;
}

/* 搜索栏 - 常规样式 */
.search-section {
  display: flex;
  align-items: center;
  padding: 0 32rpx;
  margin-top: 16rpx;
}

.search-bar {
  flex: 1;
  display: flex;
  align-items: center;
  height: 80rpx;
  background: #F5F7FA;
  border-radius: 40rpx;
  padding: 0 24rpx;
}

.search-icon {
  width: 32rpx;
  height: 32rpx;
  flex-shrink: 0;
  opacity: 0.5;
}

.search-input-wrap {
  flex: 1;
  margin: 0 16rpx;
}

.search-input {
  width: 100%;
  height: 80rpx;
  font-size: 28rpx;
  color: #101828;
}

.placeholder {
  color: #99A1AF;
  font-size: 28rpx;
}

.search-btn {
  padding: 12rpx 32rpx;
  background: #914584;
  border-radius: 32rpx;
  color: #fff;
  font-size: 28rpx;
  font-weight: 600;
  flex-shrink: 0;
}

/* 轮播图 Banner */
.banner-section {
  padding: 24rpx 32rpx;
}

.banner-swiper {
  width: 100%;
  height: 300rpx;
  border-radius: 32rpx;
  overflow: hidden;
  box-shadow: 0 8rpx 24rpx -8rpx rgba(243, 244, 246, 1), 0 20rpx 30rpx -6rpx rgba(243, 244, 246, 1);
}

/* 防止轮播图闪烁 */
swiper-item {
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.banner-image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  /* 防止图片闪烁 */
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

/* 服务类型 6宫格 - 按Figma设计: 358.77x239.94, 3列2行 */
.service-types {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 718rpx;
  margin: 0 auto;
  padding: 24rpx 0;
  row-gap: 64rpx;
}

.service-type-item {
  width: 218rpx;
  height: 208rpx;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 24rpx;
  box-sizing: border-box;
}

.service-type-icon {
  width: 168rpx;
  height: 168rpx;
  border-radius: 9999rpx;
  flex-shrink: 0;
}

.service-type-name {
  font-family: Arial, sans-serif;
  font-size: 36rpx;
  font-weight: 700;
  color: #364153;
  line-height: 1.56;
  text-align: center;
}

/* 精选服务区域 */
.featured-section {
  background: #fff;
  border-top: 2rpx solid #F9FAFB;
  padding: 48rpx 32rpx 0;
}

.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32rpx;
}

.section-title {
  font-family: Arial, sans-serif;
  font-size: 40rpx;
  font-weight: 900;
  color: #101828;
  line-height: 1.33;
}

.view-more {
  display: flex;
  align-items: center;
  gap: 0;
}

.more-text {
  font-family: Arial, sans-serif;
  font-size: 32rpx;
  color: #6A7282;
}

.arrow-icon {
  width: 40rpx;
  height: 40rpx;
}

/* 分类标签 */
.category-tabs {
  width: 100%;
  white-space: nowrap;
  margin-bottom: 8rpx;
}

.tabs-container {
  display: inline-flex;
  gap: 64rpx;
}

.tab-item {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding-bottom: 8rpx;
}

.tab-text {
  font-family: Arial, sans-serif;
  font-size: 32rpx;
  color: #4A5565;
}

.tab-item.active .tab-text {
  color: #914584;
}

.tab-indicator {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40rpx;
  height: 4rpx;
  background: #914584;
  border-radius: 9999rpx;
}

/* 服务人员列表 */
.provider-list {
  padding: 32rpx;
}

.provider-card {
  display: flex;
  background: #fff;
  border: 2rpx solid #F3F4F6;
  border-radius: 32rpx;
  padding: 32rpx;
  margin-bottom: 32rpx;
  box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.04);
}

/* 左侧头像区域 */
.provider-left {
  width: 168rpx;
  flex-shrink: 0;
  margin-right: 32rpx;
  position: relative;
}

.provider-top-tags {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8rpx;
  margin-bottom: 16rpx;
}

.experience-tag {
  width: 100%;
  height: 40rpx;
  background: #F9FAFB;
  border-radius: 16rpx;
  font-family: Arial, sans-serif;
  font-size: 24rpx;
  font-weight: 700;
  color: #364153;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: -2.5%;
}

.rating-wrap {
  display: flex;
  align-items: center;
  gap: 8rpx;
}

.star-icon {
  width: 20rpx;
  height: 20rpx;
}

.rating-text {
  font-family: Arial, sans-serif;
  font-size: 22rpx;
  font-weight: 700;
  color: #364153;
}

.avatar-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.avatar-wrapper {
  width: 168rpx;
  height: 168rpx;
  border-radius: 32rpx;
  background: #F3F4F6;
  overflow: hidden;
}

.provider-avatar {
  width: 100%;
  height: 100%;
}

.verified-badge {
  margin-top: -24rpx;
  padding: 4rpx 18rpx;
  background: #FFFAF0;
  border: 2rpx solid #FFE4BA;
  border-radius: 8rpx;
  font-family: Arial, sans-serif;
  font-size: 20rpx;
  font-weight: 700;
  color: #B7791F;
  box-shadow: 0 2rpx 4rpx -2rpx rgba(0, 0, 0, 0.1), 0 2rpx 6rpx rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1;
}

/* 右侧信息区域 */
.provider-right {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24rpx;
}

.provider-header {
  display: flex;
  align-items: center;
  gap: 16rpx;
  height: 56rpx;
}

.provider-name {
  font-family: Arial, sans-serif;
  font-size: 40rpx;
  font-weight: 900;
  color: #101828;
  line-height: 1.4;
}

.provider-tag {
  padding: 4rpx 12rpx;
  background: linear-gradient(180deg, #914584 0%, #B066A3 100%);
  border-radius: 16rpx;
  font-family: Arial, sans-serif;
  font-size: 20rpx;
  color: #fff;
  letter-spacing: 2.5%;
}

.provider-desc {
  font-family: Arial, sans-serif;
  font-size: 24rpx;
  color: #6A7282;
  line-height: 1.33;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.provider-skills {
  display: flex;
  gap: 12rpx;
  flex-wrap: wrap;
}

.skill-tag {
  height: 48rpx;
  padding: 0 16rpx;
  background: #F5F7FA;
  border-radius: 12rpx;
  font-family: Arial, sans-serif;
  font-size: 24rpx;
  color: #4A5565;
  display: flex;
  align-items: center;
  justify-content: center;
}

.skill-tag.has-icon {
  gap: 8rpx;
}

.skill-icon {
  width: 24rpx;
  height: 24rpx;
}

.provider-footer {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding-top: 16rpx;
  border-top: 2rpx solid #F9FAFB;
}

.price-section {
  display: flex;
  align-items: baseline;
}

.price-symbol {
  font-family: Arial, sans-serif;
  font-size: 24rpx;
  color: #FF6B00;
}

.price-value {
  font-family: Arial, sans-serif;
  font-size: 40rpx;
  font-weight: 900;
  color: #FF6B00;
  line-height: 1.4;
}

.price-unit {
  font-family: Arial, sans-serif;
  font-size: 24rpx;
  color: #6A7282;
  margin-left: 4rpx;
}

.book-btn {
  width: 176rpx;
  height: 64rpx;
  background: linear-gradient(180deg, #FF6B6B 0%, #FF8787 100%);
  border-radius: 9999rpx;
  font-family: Arial, sans-serif;
  font-size: 28rpx;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2rpx 4rpx -2rpx #FFEDD4, 0 2rpx 6rpx #FFEDD4;
}

/* 暂无内容提示 */
.empty-tip {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 100rpx 0;
  gap: 20rpx;
}

.empty-tip image {
  width: 200rpx;
  height: 200rpx;
  opacity: 0.5;
}

.empty-tip text {
  font-size: 28rpx;
  color: #99A1AF;
}

/* 商家评分样式 */
.merchant-rating {
  display: flex;
  align-items: center;
  gap: 8rpx;
  margin-left: auto;
}

.merchant-rating .star-icon {
  width: 32rpx;
  height: 32rpx;
}

.merchant-rating .rating-value {
  font-size: 36rpx;
  font-weight: 700;
  color: #FF6B00;
}

/* 智慧康养状态标签 */
.provider-status {
  display: flex;
  margin-top: 10rpx;
}

.status-tag {
  padding: 4rpx 16rpx;
  background-color: #F3F4F6;
  color: #99A1AF;
  font-size: 22rpx;
  border-radius: 8rpx;
}

/* 底部占位 */
.bottom-placeholder {
  height: 200rpx;
}


/* 自定义底部导航栏 - 与其他页面统一 */
.custom-tabbar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 194rpx;
  background: #fff;
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  padding-top: 24rpx;
  z-index: 999;
  border-top: 2rpx solid #F3F4F6;
}

.tabbar-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12rpx;
  width: 150rpx;
  height: 120rpx;
}

.tabbar-icon {
  width: 68rpx;
  height: 68rpx;
}

.tabbar-text {
  font-family: Arial, sans-serif;
  font-size: 40rpx;
  font-weight: 700;
  color: #A58AA5;
  line-height: 1;
}

.tabbar-text.active {
  color: #B06AB3;
}

.message-icon-wrapper {
  position: relative;
  width: 68rpx;
  height: 68rpx;
}

.message-icon-wrapper .tabbar-icon {
  width: 68rpx;
  height: 68rpx;
}

.message-dot {
  position: absolute;
  top: -8rpx;
  right: -8rpx;
  width: 24rpx;
  height: 24rpx;
  background: #FB2C36;
  border: 2rpx solid #fff;
  border-radius: 50%;
}
