/* 动态 TAB · 店员列表：略放大，语音在头像下方，右侧信息舒展。只作用于 .staff-grid */
.staff-grid .service-panel {
  display: none !important;
}

.staff-grid .card.staff-card-enhanced,
.staff-grid .card {
  padding: 1.1875rem 1.25rem !important;
  margin-bottom: 1rem !important;
  border-radius: 1.125rem !important;
}

.staff-grid .staff-main {
  min-height: 0 !important;
  gap: 1rem !important;
  align-items: flex-start !important;
}

.staff-grid .avatar-wrap.staff-avatar-col,
.staff-grid .avatar-wrap {
  width: 6.25rem !important;
  height: auto !important;
  min-height: 0 !important;
  flex-shrink: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.5rem !important;
  border-radius: 0 !important;
  background: transparent !important;
  position: relative !important;
}

.staff-grid .avatar-wrap .avatar,
.staff-grid .staff-main .avatar,
.staff-grid .avatar-wrap uni-image.avatar,
.staff-grid .staff-main uni-image.avatar {
  width: 6.25rem !important;
  height: 6.25rem !important;
  border-radius: 1.0625rem !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}

.staff-grid .avatar-wrap .online-tag,
.staff-grid .avatar-wrap [class*="online-tag"] {
  z-index: 2;
}

/* Vue 原生语音条：从头像底部 overlay 改为头像下方独立一行 */
.staff-grid .avatar-voice-bar {
  display: flex !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.5rem 0.5625rem !important;
  min-height: 2.75rem !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.375rem !important;
  border-radius: 0.6875rem !important;
  background: linear-gradient(90deg, rgba(91, 140, 255, 0.14), rgba(91, 140, 255, 0.06)) !important;
  border: 1px solid rgba(91, 140, 255, 0.2) !important;
  cursor: pointer !important;
}

.staff-grid .avatar-voice-bar::before {
  content: '▶' !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.625rem !important;
  height: 1.625rem !important;
  border-radius: 50% !important;
  background: #5b8cff !important;
  color: #fff !important;
  font-size: 0.5625rem !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
  padding-left: 0.0625rem !important;
}

.staff-grid .avatar-voice-wave {
  flex: 1 !important;
  min-width: 0 !important;
  justify-content: center !important;
  height: 0.875rem !important;
}

.staff-grid .avatar-voice-dur {
  font-size: 0.75rem !important;
  color: #475569 !important;
  font-weight: 600 !important;
  flex-shrink: 0 !important;
}

.staff-grid .c-body {
  flex: 1 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 0.5rem !important;
}

.staff-grid .c-row {
  flex: 1 !important;
  align-items: flex-end !important;
  gap: 0.625rem !important;
}

.staff-grid .name-stack {
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.375rem !important;
}

.staff-grid .c-body .name,
.staff-grid .name {
  font-size: 1.1875rem !important;
  line-height: 1.4 !important;
  max-width: none !important;
}

.staff-grid .intro {
  font-size: 0.9375rem !important;
  line-height: 1.6 !important;
  -webkit-line-clamp: 2 !important;
  flex: 0 0 auto !important;
  min-height: 0 !important;
}

.staff-grid .serv-wrap {
  flex-shrink: 0 !important;
  align-self: stretch !important;
  margin-top: auto !important;
  justify-content: flex-end !important;
}

.staff-grid .serv-text,
.staff-grid .num,
.staff-grid .staff-score {
  font-size: 0.8125rem !important;
}

.staff-grid .tags-line {
  height: auto !important;
  overflow: visible !important;
  margin-top: 0.5rem !important;
  justify-content: flex-start !important;
}

/* 段位勋章图：接口有 level.image 就放大展示；没有则保持文字徽章 */
.staff-grid .badge-image,
.staff-grid uni-image.badge-image {
  width: 6rem !important;
  height: 2.5rem !important;
  max-width: 100% !important;
  background: transparent !important;
  border-radius: 0.375rem !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
}

.staff-grid .badge-image img,
.staff-grid .badge-image div,
.staff-grid uni-image.badge-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background-size: contain !important;
}
