331 lines
6.3 KiB
Plaintext
331 lines
6.3 KiB
Plaintext
/* 助教看板页 — H5 px × 2 × 0.875 精确转换 */
|
||
|
||
/* ===== 三态 ===== */
|
||
.page-loading,
|
||
.page-empty {
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
height: 60vh;
|
||
}
|
||
|
||
/* ===== 看板 Tab py-3=12px→22rpx, text-sm=14px→26rpx(视觉校准+2) ===== */
|
||
.board-tabs {
|
||
display: flex;
|
||
background: #ffffff;
|
||
border-bottom: 2rpx solid #eeeeee;
|
||
position: sticky;
|
||
top: 0;
|
||
z-index: 20;
|
||
}
|
||
|
||
.board-tab {
|
||
flex: 1;
|
||
text-align: center;
|
||
padding: 24rpx 0;
|
||
font-size: 26rpx;
|
||
font-weight: 500;
|
||
color: #8b8b8b;
|
||
position: relative;
|
||
}
|
||
|
||
.board-tab--active {
|
||
color: #0052d9;
|
||
font-weight: 600;
|
||
}
|
||
|
||
/* w-24px→42rpx, h-3px→5rpx(H5 实际渲染偏细) */
|
||
.board-tab--active::after {
|
||
content: '';
|
||
position: absolute;
|
||
bottom: 0;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
width: 42rpx;
|
||
height: 5rpx;
|
||
background: linear-gradient(90deg, #0052d9, #5b9cf8);
|
||
border-radius: 3rpx;
|
||
}
|
||
|
||
/* ===== 筛选区域 px-4=16px→28rpx, py-2=8px→14rpx ===== */
|
||
.filter-bar {
|
||
background: #f3f3f3;
|
||
padding: 14rpx 28rpx;
|
||
position: sticky;
|
||
top: 70rpx;
|
||
z-index: 15;
|
||
border-bottom: 2rpx solid #eeeeee;
|
||
transition: transform 220ms ease, opacity 220ms ease;
|
||
}
|
||
|
||
.filter-bar--hidden {
|
||
opacity: 0;
|
||
transform: translateY(-110%);
|
||
pointer-events: none;
|
||
}
|
||
|
||
/* p-1.5=6px→10rpx, gap-2=8px→14rpx, rounded-lg=8px→14rpx */
|
||
.filter-bar-inner {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 14rpx;
|
||
background: #ffffff;
|
||
border-radius: 14rpx;
|
||
padding: 10rpx;
|
||
border: 2rpx solid #eeeeee;
|
||
box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.03);
|
||
}
|
||
|
||
.filter-item {
|
||
flex: 1;
|
||
min-width: 0;
|
||
}
|
||
|
||
.filter-item--wide {
|
||
flex: 1.8;
|
||
}
|
||
|
||
/* ===== 助教列表 p-4=16px→28rpx, space-y-3=12px→20rpx ===== */
|
||
.coach-list {
|
||
padding: 24rpx 28rpx;
|
||
}
|
||
|
||
/* ===== 助教卡片 p-4=16px→28rpx, rounded-2xl=16px→28rpx ===== */
|
||
.coach-card {
|
||
background: #ffffff;
|
||
border-radius: 28rpx;
|
||
padding: 30rpx 28rpx;
|
||
margin-bottom: 20rpx;
|
||
box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.05);
|
||
}
|
||
|
||
.coach-card:active {
|
||
opacity: 0.96;
|
||
transform: scale(0.98);
|
||
}
|
||
|
||
/* gap-3=12px→20rpx(视觉校准紧凑) */
|
||
.card-row {
|
||
display: flex;
|
||
align-items: flex-start;
|
||
gap: 20rpx;
|
||
}
|
||
|
||
/* ===== 头像 w-11 h-11=44px→78rpx, text-base=16px→28rpx ===== */
|
||
.card-avatar {
|
||
width: 78rpx;
|
||
height: 78rpx;
|
||
border-radius: 50%;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
flex-shrink: 0;
|
||
margin-top: 4rpx;
|
||
}
|
||
|
||
.avatar-text {
|
||
color: #ffffff;
|
||
font-size: 28rpx;
|
||
font-weight: 600;
|
||
}
|
||
|
||
/* 头像渐变色(忠于 H5 原型 6 种) */
|
||
.avatar--blue { background: linear-gradient(135deg, #60a5fa, #6366f1); }
|
||
.avatar--green { background: linear-gradient(135deg, #4ade80, #10b981); }
|
||
.avatar--pink { background: linear-gradient(135deg, #f472b6, #f43f5e); }
|
||
.avatar--amber { background: linear-gradient(135deg, #fbbf24, #f97316); }
|
||
.avatar--purple { background: linear-gradient(135deg, #a78bfa, #8b5cf6); }
|
||
.avatar--cyan { background: linear-gradient(135deg, #22d3ee, #14b8a6); }
|
||
|
||
/* ===== 信息区 ===== */
|
||
.card-info {
|
||
flex: 1;
|
||
min-width: 0;
|
||
}
|
||
|
||
/* gap-1.5=6px→10rpx */
|
||
.card-name-row {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 8rpx;
|
||
flex-wrap: nowrap;
|
||
}
|
||
|
||
/* text-base=16px→28rpx */
|
||
.card-name {
|
||
font-size: 28rpx;
|
||
font-weight: 600;
|
||
color: #242424;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
/* ===== 等级标签 px-1.5=6px→10rpx, py-0.5=2px→4rpx, text-xs=12px→22rpx ===== */
|
||
.level-tag {
|
||
padding: 4rpx 10rpx;
|
||
font-size: 22rpx;
|
||
border-radius: 6rpx;
|
||
flex-shrink: 0;
|
||
font-weight: 500;
|
||
}
|
||
|
||
.level--star {
|
||
background: linear-gradient(to right, #fbbf24, #f97316);
|
||
color: #ffffff;
|
||
}
|
||
|
||
.level--high {
|
||
background: linear-gradient(to right, #a78bfa, #8b5cf6);
|
||
color: #ffffff;
|
||
}
|
||
|
||
.level--mid {
|
||
background: linear-gradient(to right, #60a5fa, #6366f1);
|
||
color: #ffffff;
|
||
}
|
||
|
||
.level--low {
|
||
background: linear-gradient(to right, #9ca3af, #6b7280);
|
||
color: #ffffff;
|
||
}
|
||
|
||
/* ===== 技能标签 ===== */
|
||
.skill-tag {
|
||
padding: 4rpx 10rpx;
|
||
font-size: 22rpx;
|
||
border-radius: 6rpx;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.skill--chinese { background: rgba(0, 82, 217, 0.1); color: #0052d9; }
|
||
.skill--snooker { background: rgba(0, 168, 112, 0.1); color: #00a870; }
|
||
.skill--mahjong { background: rgba(237, 123, 47, 0.1); color: #ed7b2f; }
|
||
.skill--karaoke { background: rgba(227, 77, 89, 0.1); color: #e34d59; }
|
||
|
||
/* ===== 卡片右侧指标(ml-auto 推到右边) ===== */
|
||
.card-right {
|
||
margin-left: auto;
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 10rpx;
|
||
flex-shrink: 0;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
/* text-xs=12px→22rpx — "定档"标签文字,普通粗细 */
|
||
.right-text {
|
||
font-size: 22rpx;
|
||
color: #8b8b8b;
|
||
font-weight: 400;
|
||
}
|
||
|
||
/* text-sm=14px→24rpx — 数值加粗 */
|
||
.right-highlight {
|
||
font-size: 24rpx;
|
||
font-weight: 700;
|
||
color: #0052d9;
|
||
}
|
||
|
||
/* "折前"更淡更细 */
|
||
.right-sub {
|
||
font-size: 20rpx;
|
||
color: #c5c5c5;
|
||
font-weight: 400;
|
||
}
|
||
|
||
.right-sub-val {
|
||
color: #8b8b8b;
|
||
font-weight: 400;
|
||
}
|
||
|
||
/* 工资维度 */
|
||
.salary-tag {
|
||
padding: 4rpx 10rpx;
|
||
background: rgba(237, 123, 47, 0.1);
|
||
color: #ed7b2f;
|
||
font-size: 22rpx;
|
||
border-radius: 6rpx;
|
||
}
|
||
|
||
/* text-lg=18px→32rpx — 储值维度缩小避免挤压客户列表 */
|
||
.salary-amount {
|
||
font-size: 28rpx;
|
||
font-weight: 700;
|
||
color: #242424;
|
||
}
|
||
|
||
/* ===== 第二行 mt-1.5=6px→12rpx, text-xs=12px→22rpx ===== */
|
||
.card-bottom-row {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
margin-top: 12rpx;
|
||
}
|
||
|
||
/* gap-2=8px→12rpx */
|
||
.customer-list {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 12rpx;
|
||
overflow: hidden;
|
||
flex: 1;
|
||
min-width: 0;
|
||
}
|
||
|
||
.customer-item {
|
||
font-size: 22rpx;
|
||
color: #a6a6a6;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.bottom-right {
|
||
font-size: 22rpx;
|
||
font-weight: 500;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.bottom-right--warning {
|
||
color: #ed7b2f;
|
||
}
|
||
|
||
.bottom-right--success {
|
||
color: #00a870;
|
||
}
|
||
|
||
.bottom-right-group {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 10rpx;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.bottom-perf {
|
||
font-size: 22rpx;
|
||
color: #4b4b4b;
|
||
font-weight: 600;
|
||
}
|
||
|
||
.bottom-perf-val {
|
||
font-weight: 700;
|
||
color: #4b4b4b;
|
||
}
|
||
|
||
.bottom-sub {
|
||
font-size: 22rpx;
|
||
color: #8b8b8b;
|
||
}
|
||
|
||
.bottom-sub-val {
|
||
color: #8b8b8b;
|
||
}
|
||
|
||
.bottom-divider {
|
||
font-size: 22rpx;
|
||
color: #c5c5c5;
|
||
}
|
||
|
||
/* ===== 底部安全区(自定义导航栏高度 100rpx + safe-area) ===== */
|
||
.safe-bottom {
|
||
height: 200rpx;
|
||
padding-bottom: env(safe-area-inset-bottom);
|
||
}
|