Files
wxapp_escort/pages/attendant/attendantdetail.wxss
T
2026-10-18 22:14:49 +08:00

300 lines
5.7 KiB
Plaintext

/* pages/attendant/attendantdetail.wxss
陪诊师详情:与陪诊师团队列表、陪诊指南同用一套暖橙 + 暖白令牌,
令牌唯一来源在 app.wxss,本页不复制副本 */
page {
background-color: var(--paper);
}
.page-bg {
min-height: 100vh;
background: var(--paper);
}
.container {
padding: 32rpx 32rpx 0;
}
/* ===== 加载 / 空状态 ===== */
.state {
padding: 120rpx 0;
text-align: center;
}
.state-text {
font-size: 26rpx;
color: var(--muted);
}
/* ===== 主卡:白卡 + 发丝边 + 紧阴影,居中排布 ===== */
.profile-card {
display: flex;
flex-direction: column;
align-items: center;
padding: 48rpx 32rpx 40rpx;
border-radius: 28rpx;
background: var(--white);
border: 2rpx solid var(--line);
box-shadow: var(--shadow-card);
}
.profile-avatar {
width: 144rpx;
height: 144rpx;
border-radius: 36rpx;
flex-shrink: 0;
}
/* 无头像兜底:浅橙衬底 + 姓氏首字。
box-sizing 必须显式声明,否则 2rpx 描边会把 144rpx 撑成 148rpx */
.profile-avatar-fallback {
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
background: var(--brand-soft);
border: 2rpx solid var(--brand-line);
}
.profile-avatar-text {
font-size: 52rpx;
font-weight: 700;
color: var(--brand-ink);
}
.profile-name-row {
display: flex;
align-items: center;
margin-top: 24rpx;
}
.profile-name {
font-size: 40rpx;
font-weight: 700;
color: var(--ink);
letter-spacing: 1rpx;
}
/* 资质徽标:浅橙衬底 + 暖橙图标,不引入新的色相 */
.profile-badge {
display: flex;
align-items: center;
flex-shrink: 0;
margin-left: 14rpx;
padding: 4rpx 14rpx;
border-radius: 10rpx;
background: var(--brand-soft);
border: 2rpx solid var(--brand-line);
}
.profile-badge-text {
margin-left: 4rpx;
/* 中文最小 24rpx(12px),低于此不达可读下限 */
font-size: 24rpx;
color: var(--brand-ink);
}
.profile-meta {
display: flex;
align-items: center;
margin-top: 16rpx;
}
.profile-meta-text {
font-size: 26rpx;
color: var(--muted);
}
/* 竖分隔线:与列表页、场景行同一档 --sep */
.meta-sep {
width: 2rpx;
height: 22rpx;
flex-shrink: 0;
margin: 0 16rpx;
background: var(--sep);
}
/* ===== 分区:单竖条 + 区块标题(与全站 section-bar 同构) ===== */
.section {
margin-top: 40rpx;
}
.section-head {
display: flex;
align-items: center;
margin-bottom: 20rpx;
}
.section-bar {
width: 8rpx;
height: 32rpx;
border-radius: 4rpx;
background: var(--brand-strong);
}
.section-title {
margin-left: 14rpx;
font-size: 32rpx;
font-weight: 700;
color: var(--ink);
letter-spacing: 1rpx;
}
/* ===== 擅长场景 ===== */
.tag-card {
display: flex;
flex-wrap: wrap;
/* 每个 .tag 自带 12rpx 右 / 下外边距,右侧内边距相应减到 16rpx,
否则最后一列标签会比左边多出 12rpx,看起来不居中 */
padding: 28rpx 16rpx 16rpx 28rpx;
border-radius: 24rpx;
background: var(--white);
border: 2rpx solid var(--line);
box-shadow: var(--shadow-card);
}
.tag {
margin: 0 12rpx 12rpx 0;
padding: 6rpx 14rpx;
border-radius: 10rpx;
background: var(--brand-soft);
border: 2rpx solid var(--brand-line);
font-size: 26rpx;
color: var(--brand-ink);
}
/* ===== 服务信息:标签左 --muted、值 --ink,末行去分隔线 ===== */
.info-card {
padding: 4rpx 28rpx;
border-radius: 24rpx;
background: var(--white);
border: 2rpx solid var(--line);
box-shadow: var(--shadow-card);
}
.info-row {
display: flex;
align-items: flex-start;
padding: 24rpx 0;
border-bottom: 2rpx solid var(--line);
}
.info-row:last-child {
border-bottom: none;
}
.info-label {
width: 140rpx;
flex-shrink: 0;
font-size: 26rpx;
color: var(--muted);
}
.info-value {
flex: 1;
font-size: 26rpx;
font-weight: 700;
color: var(--ink);
line-height: 1.6;
}
/* ===== 资质与培训:健康证明行 + 培训记录条目 =====
健康证明复用 .info-row;培训条目用上边线彼此分隔。
两条例外避免出现双线或顶线:
- 紧跟在健康证明行后面时,行尾那条线已由 .info-row 提供
- 作为卡片首个子元素时,不能贴着卡片上沿画线 */
.training-item {
padding: 24rpx 0;
border-top: 2rpx solid var(--line);
}
.info-row + .training-item,
.training-item:first-child {
border-top: none;
}
.training-head {
display: flex;
align-items: flex-start;
}
.training-title {
flex: 1;
font-size: 26rpx;
font-weight: 700;
color: var(--ink);
line-height: 1.6;
}
.training-date {
flex-shrink: 0;
margin-left: 20rpx;
font-size: 24rpx;
color: var(--muted);
}
.training-org {
display: block;
margin-top: 8rpx;
font-size: 24rpx;
color: var(--muted);
}
/* ===== 过往服务评价 ===== */
.review-box {
display: flex;
/* baseline 让「4.8」与「/ 5」在文字基线上对齐,而不是盒中线 */
align-items: baseline;
padding: 28rpx 0;
}
.review-score {
font-size: 48rpx;
font-weight: 700;
color: var(--ink);
line-height: 1;
}
.review-unit {
margin-left: 8rpx;
font-size: 24rpx;
color: var(--muted);
}
/* 条数推到右侧,与左边的分数形成两栏 */
.review-count {
margin-left: auto;
font-size: 24rpx;
color: var(--muted);
}
.review-empty {
display: block;
padding: 28rpx 0;
font-size: 26rpx;
color: var(--muted);
}
/* 简介与 info-row 共用 info-card,但不带标签列 */
.intro-text {
display: block;
padding: 28rpx 0;
font-size: 26rpx;
line-height: 1.8;
color: var(--ink-2);
}
/* ===== 底部说明 ===== */
.notice {
margin-top: 40rpx;
}
.notice-text {
font-size: 24rpx;
line-height: 1.6;
color: var(--muted);
}
.footer-space {
height: 48rpx;
}