/* 推荐技师 */
.page-module{padding:8px 13px}
.module-title-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.title-text{padding:0 12px;font-size:20px;color:#07c160;font-weight:bold}
.more-btn{padding:0 6px;font-size:14px;color:#9c9c9c}
.more-btn:hover{color:#07c160}
.more-btn i{transition:transform 0.2s}
.more-btn:hover i{transform:translateX(3px)}
/* 横向滚动滑轨 */
.horizontal-scroller{display:flex;gap:9px;overflow-x:auto;padding:4px 4px 16px 4px;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none}
.horizontal-scroller:active{cursor:grabbing}
.horizontal-scroller::-webkit-scrollbar{display:none}
/* 通过calc动态计算，在手机端（宽度较窄时）让视口初始显现为3个卡片多一点（引导滑动） */
.tech-card{flex:0 0 calc((100% - 24px) / 3.3);min-width:95px;background-color:#ffffff;padding:12px 6px;border-radius:12px;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.03)}
.tech-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.06)}
.avatar-wrapper{position:relative;width:90px;height:90px;margin:0 auto 8px auto}
.avatar-inner{width:100%;height:100%;border-radius:10px;overflow:hidden}
.avatar-inner img{width:100%;height:100%;object-fit:cover;display:block}
/* 当屏幕尺寸放大到平板、大屏或PC端测试面板时，自动缩小版面提升为一屏容纳5个卡片多一点 */
@media (min-width:500px){
.tech-card{flex:0 0 calc((100% - 36px) / 5.5)}
.avatar-wrapper{width:95px;height:95px;margin:0 auto 10px auto}
}
.badge-new{position:absolute;bottom:-2px;left:4px;background-color:#ff3b30;color:#ffffff;font-size:11px;font-weight:bold;padding:2px 6px;border-radius:5px}
.tech-name{font-size:15px;font-weight:bold;color:#2c2c2c;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tech-count{font-size:11px;color:#9e9e9e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 推荐项目 */
.project-list{display:flex;flex-direction:column;gap:16px}
.project-item{background-color:#ffffff;border-radius:16px;padding:15px;display:flex;gap:15px;box-shadow:0 4px 12px rgba(0,0,0,0.015);transition:transform 0.2s,box-shadow 0.2s}
.project-item:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,0.04)}
.item-img{width:120px;height:120px;border-radius:10px;flex-shrink:0;overflow:hidden}
.item-img img{width:100%;height:100%;object-fit:cover;display:block}
.item-details{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:2px 0}
.item-name{font-size:18px;font-weight:bold;color:#222222}
.item-desc{font-size:14px;color:#757575;margin-top:4px}
.item-stats{display:flex;gap:16px;margin-top:6px}
.stat-hot{font-size:13px;color:#ff9100}
.stat-comment{font-size:13px;color:#b0bec5}
.item-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.item-price{font-size:14px;color:#ff3b30;font-weight:bold}
.item-price span{font-size:22px}
.action-order-btn{background-color:#05c160;color:#ffffff;border:none;padding:8px 22px;border-radius:20px;font-size:14px;font-weight:bold;cursor:pointer}
.action-order-btn:hover{background-color:#04a954}
.action-order-btn:active{transform:scale(0.95)}
/* 技师与环境展示 */
.showcase-card{background-color:#ffffff;border-radius:16px;margin:10px 13px 15px 13px;padding:24px 0;box-shadow:0 4px 12px rgba(0,0,0,0.015)}
.showcase-title{font-size:20px;color:#222222;font-weight:bold;text-align:center;margin-bottom:20px}
.showcase-slider{width:100%;overflow:hidden}
.showcase-slider .swiper-slide{width:auto;height:180px;border-radius:10px;overflow:hidden;transition:transform 0.3s ease}
.showcase-slider .swiper-slide img{width:auto;height:100%;object-fit:cover;display:block}
/* 强制无缝连续滚动的CSS匀速过渡样式，防止Swiper内部计算产生动画回弹或短暂卡顿 */
.showcase-slider .showcase-linear{transition-timing-function:linear !important}