/* H5 next visual system. This layer is intentionally UI-only. */
:root {
  --next-bg: #f4f6fb;
  --next-surface: #ffffff;
  --next-surface-soft: #f8fafc;
  --next-text: #111827;
  --next-muted: #667085;
  --next-faint: #98a2b3;
  --next-line: #e5eaf2;
  --next-primary: #4f46e5;
  --next-primary-pressed: #4338ca;
  --next-danger: #ef4444;
  --next-radius-sm: 8px;
  --next-radius-md: 12px;
  --next-radius-lg: 16px;
  --next-shadow: 0 10px 28px rgba(15, 23, 42, .06);
  --next-tabbar-height: 66px;
}

uni-page-body,
page {
  color: var(--next-text);
  background: var(--next-bg);
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", sans-serif;
}

uni-page-head .uni-page-head {
  border-bottom: 1px solid rgba(229, 234, 242, .85) !important;
  background: rgba(255, 255, 255, .96) !important;
  backdrop-filter: saturate(160%) blur(16px);
}

uni-page-head .uni-page-head__title {
  color: var(--next-text) !important;
  font-size: 17px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
}

uni-page-head .uni-page-head-btn {
  color: var(--next-text) !important;
}

uni-page-head .uni-page-head-hd .uni-page-head-btn {
  position: relative !important;
  width: 52px !important;
  min-width: 52px !important;
  height: var(--window-top, 44px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

uni-page-head .uni-page-head-hd .uni-page-head-btn .uni-btn-icon {
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
}

uni-page-head .uni-page-head-hd .uni-page-head-btn::before {
  content: "" !important;
  width: 14px !important;
  height: 14px !important;
  border-left: 2px solid var(--next-text) !important;
  border-bottom: 2px solid var(--next-text) !important;
  transform: rotate(45deg) !important;
  margin-left: 6px !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/chat/index"] uni-page-head .uni-page-head-ft .uni-page-head-btn .uni-btn-icon {
  font-size: 0 !important;
  color: transparent !important;
}

uni-page[data-page="pages/chat/index"] uni-page-head .uni-page-head-hd,
uni-page[data-page="pages/friend/index"] uni-page-head .uni-page-head-hd {
  visibility: hidden !important;
  pointer-events: none !important;
}

uni-page[data-page="pages/chat/index"] uni-page-head .uni-page-head-hd .uni-page-head-btn::before,
uni-page[data-page="pages/friend/index"] uni-page-head .uni-page-head-hd .uni-page-head-btn::before {
  content: none !important;
}

uni-tabbar .uni-tabbar {
  min-height: var(--next-tabbar-height) !important;
  padding: 6px 0 calc(5px + env(safe-area-inset-bottom)) !important;
  border-top: 1px solid rgba(229, 234, 242, .95) !important;
  background: rgba(255, 255, 255, .97) !important;
  box-shadow: 0 -10px 28px rgba(15, 23, 42, .06) !important;
  backdrop-filter: saturate(160%) blur(16px);
}

uni-tabbar .uni-tabbar__icon {
  width: 25px !important;
  height: 25px !important;
}

uni-tabbar .uni-tabbar__label {
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 15px !important;
  font-weight: 600 !important;
}

button::after {
  border: 0;
}

.customer-name {
  color: #dc2626 !important;
}

.customer-badge {
  display: inline-flex !important;
  align-items: center;
  height: 18px;
  margin-left: 6px;
  padding: 0 6px;
  border-radius: 6px;
  background: rgba(79, 70, 229, .10) !important;
  color: var(--next-primary) !important;
  font-size: 11px;
  font-weight: 700 !important;
  line-height: 18px;
  vertical-align: middle;
}

uni-page .customer-name,
uni-page .chat-title-name.customer-name,
uni-page .friend-name.customer-name,
uni-page .profile-name.customer-name,
uni-page .member-name.customer-name,
uni-page .result-name.customer-name,
uni-page .name_class.customer-name {
  color: #dc2626 !important;
}

uni-page .customer-name * {
  color: #dc2626 !important;
}

uni-page .customer-badge {
  background: rgba(79, 70, 229, .10) !important;
  color: var(--next-primary) !important;
}

/* Chat list */
uni-page[data-page="pages/chat/index"] uni-page-body,
uni-page[data-page="pages/chat/index"] .page {
  min-height: 100vh !important;
  background: var(--next-bg) !important;
  overflow-x: hidden !important;
}

uni-page[data-page="pages/chat/index"] .page {
  padding: 12px 12px calc(86px + env(safe-area-inset-bottom)) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/chat/index"] .uni-list {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/chat/index"] .h5-page-action-hit {
  top: calc(var(--window-top, 44px) + 8px) !important;
  right: 12px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
}

uni-page[data-page="pages/chat/index"] .search,
uni-page[data-page="pages/chat/index"] .uni-searchbar,
uni-page[data-page="pages/chat/index"] .mehaotian-search {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border-radius: var(--next-radius-lg) !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/chat/index"] .uni-searchbar__box,
uni-page[data-page="pages/chat/index"] .search-box,
uni-page[data-page="pages/chat/index"] .mehaotian-search .content {
  height: 46px !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/chat/index"] .uni-list-cell {
  min-height: 76px !important;
  background: transparent !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list {
  position: relative !important;
  min-height: 76px !important;
  padding: 10px 12px !important;
  display: flex !important;
  align-items: center !important;
  border-bottom: 1px solid var(--next-line) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/chat/index"] .uni-list-cell:last-child .uni-media-list {
  border-bottom: 0 !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-logo {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 52px !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #eef2f7 !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-logo image,
uni-page[data-page="pages/chat/index"] .uni-media-list-logo img {
  width: 52px !important;
  height: 52px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-body {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-text-top {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

uni-page[data-page="pages/chat/index"] .chat-title-left {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
}

uni-page[data-page="pages/chat/index"] .chat-title-name {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: var(--next-text) !important;
  font-size: 17px !important;
  font-weight: 750 !important;
  line-height: 22px !important;
}

uni-page[data-page="pages/chat/index"] .chat-time {
  flex: 0 0 auto !important;
  color: var(--next-faint) !important;
  font-size: 12px !important;
  line-height: 18px !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-text-bottom {
  margin-top: 4px !important;
  color: var(--next-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

uni-page[data-page="pages/chat/index"] .red_num {
  position: absolute !important;
  left: 52px !important;
  top: 9px !important;
  z-index: 3 !important;
  min-width: 18px !important;
  height: 18px !important;
}

/* Friend list */
uni-page[data-page="pages/friend/index"] uni-page-body,
uni-page[data-page="pages/friend/index"] .page {
  min-height: 100vh !important;
  background: var(--next-bg) !important;
  overflow-x: hidden !important;
}

uni-page[data-page="pages/friend/index"] .scrollList {
  height: calc(100vh - var(--window-top, 44px) - var(--next-tabbar-height)) !important;
}

uni-page[data-page="pages/friend/index"] .friend-header {
  padding: 12px 12px 8px !important;
  background: transparent !important;
}

uni-page[data-page="pages/friend/index"] .friend-search {
  height: 46px !important;
  padding: 0 66px 0 14px !important;
  border-radius: 14px !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/friend/index"] .friend-search-input {
  height: 46px !important;
  color: var(--next-text) !important;
  font-size: 16px !important;
}

uni-page[data-page="pages/friend/index"] .friend-list {
  margin: 0 12px 16px !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-row,
uni-page[data-page="pages/friend/index"] .friend-row {
  min-height: 62px !important;
  padding: 8px 12px !important;
  display: flex !important;
  align-items: center !important;
  background: var(--next-surface) !important;
  border-bottom: 1px solid var(--next-line) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-icon,
uni-page[data-page="pages/friend/index"] .friend-avatar {
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  margin-right: 12px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/friend/index"] .friend-avatar image,
uni-page[data-page="pages/friend/index"] .friend-avatar img {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover !important;
}

uni-page[data-page="pages/friend/index"] .friend-section-title {
  height: 28px !important;
  padding: 0 12px !important;
  display: flex !important;
  align-items: center !important;
  background: var(--next-bg) !important;
  color: var(--next-muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

uni-page[data-page="pages/friend/index"] .friend-row-title,
uni-page[data-page="pages/friend/index"] .friend-name {
  color: var(--next-text) !important;
  font-size: 15px !important;
  line-height: 22px !important;
  font-weight: 700 !important;
}

uni-page[data-page="pages/friend/index"] .friend-name.customer-name,
uni-page[data-page="pages/friend/index"] .friend-name.customer-name * {
  color: #dc2626 !important;
}

uni-page[data-page="pages/friend/index"] .h5-friend-add-button {
  top: calc(var(--window-top, 44px) + 9px) !important;
  right: 24px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  background: var(--next-primary) !important;
  color: #fff !important;
  font-size: 24px !important;
  line-height: 32px !important;
  box-shadow: 0 10px 24px rgba(79, 70, 229, .28) !important;
}

/* Message page */
uni-page[data-page="pages/chat/message"] {
  width: 100% !important;
  max-width: 100vw !important;
  overflow: hidden !important;
  background: var(--next-bg) !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

uni-page[data-page="pages/chat/message"] uni-page-body,
uni-page[data-page="pages/chat/message"] .page,
uni-page[data-page="pages/chat/message"] .page-content,
uni-page[data-page="pages/chat/message"] .content {
  background: var(--next-bg) !important;
  max-width: 100vw !important;
  min-height: 0 !important;
  overflow: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

uni-page[data-page="pages/chat/message"]::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] uni-page-body::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .page::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .page-content::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .content::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .content .msg-list::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .content .msg-list .uni-scroll-view::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .content .msg-list *::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list {
  padding: 12px 14px calc(86px + env(safe-area-inset-bottom)) !important;
  max-width: 100vw !important;
  overflow-x: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .uni-scroll-view {
  overflow-x: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row {
  padding: 4px 0 !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .system view,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .system .text {
  min-height: 24px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(152, 162, 179, .58) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other {
  padding: 6px 0 !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .left {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .right,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other .left {
  width: 40px !important;
  height: 40px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .right image,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other .left image {
  width: 40px !important;
  height: 40px !important;
  border-radius: 12px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble {
  max-width: 70vw !important;
  padding: 10px 13px !important;
  border-radius: 14px !important;
  font-size: 16px !important;
  line-height: 23px !important;
  box-shadow: 0 3px 10px rgba(15, 23, 42, .05) !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble {
  background: var(--next-primary) !important;
  border-top-right-radius: 6px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .other .bubble {
  background: var(--next-surface) !important;
  border-top-left-radius: 6px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .read-receipt {
  margin: 3px 2px 0 0 !important;
  padding: 0 !important;
  color: var(--next-faint) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 13px !important;
  text-align: right !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .read-receipt-unread {
  color: #f04438 !important;
}

uni-page[data-page="pages/chat/message"] .input-box {
  min-height: 68px !important;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
  gap: 8px !important;
  background: rgba(255, 255, 255, .98) !important;
  border-top: 1px solid var(--next-line) !important;
  box-shadow: 0 -10px 28px rgba(15, 23, 42, .06) !important;
}

uni-page[data-page="pages/chat/message"] .input-symbol {
  width: 38px !important;
  height: 38px !important;
  border: 1.5px solid #111827 !important;
  font-size: 27px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode {
  min-height: 42px !important;
  border: 1px solid #d9e0ea !important;
  border-radius: 999px !important;
  background: #fbfcfe !important;
}

uni-page[data-page="pages/chat/message"] .input-box textarea,
uni-page[data-page="pages/chat/message"] .input-box uni-textarea {
  max-height: 112px !important;
  padding: 9px 12px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn {
  height: 40px !important;
  border-radius: 12px !important;
  background: var(--next-primary) !important;
  box-shadow: 0 8px 20px rgba(79, 70, 229, .22) !important;
}

uni-page[data-page="pages/chat/message"] .showVedio {
  top: var(--window-top, 44px) !important;
  height: calc(100vh - var(--window-top, 44px) - var(--window-bottom, 0px)) !important;
}

uni-page[data-page="pages/chat/message"] .video-close-button {
  position: fixed !important;
  top: max(58px, calc(var(--window-top, 44px) + 10px + env(safe-area-inset-top))) !important;
  left: max(12px, env(safe-area-inset-left)) !important;
  min-width: 74px !important;
  height: 40px !important;
  padding: 0 13px 0 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  background: rgba(15, 23, 42, .78) !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 40px !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/chat/message"] .video-close-icon {
  margin-right: 4px !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

uni-page[data-page="pages/chat/message"] .video-close-text {
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

/* Shared cards/lists for secondary IM pages */
uni-page[data-page="pages/friend/add"] uni-page-body,
uni-page[data-page="pages/friend/apply"] uni-page-body,
uni-page[data-page="pages/friend/apply-list"] uni-page-body,
uni-page[data-page="pages/friend/chat-group-apply"] uni-page-body,
uni-page[data-page="pages/friend/group_chat"] uni-page-body,
uni-page[data-page="pages/details/index"] uni-page-body,
uni-page[data-page="pages/my/details"] uni-page-body,
uni-page[data-page="pages/set/index"] uni-page-body,
uni-page[data-page="pages/set/password"] uni-page-body {
  background: var(--next-bg) !important;
  color: var(--next-text) !important;
  overflow-x: hidden !important;
}

uni-page[data-page="pages/friend/add"] .friend-add-page,
uni-page[data-page="pages/friend/apply"] .friend-apply-page,
uni-page[data-page="pages/friend/apply-list"] .apply-page,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-page,
uni-page[data-page="pages/friend/group_chat"] .group-page,
uni-page[data-page="pages/details/index"] .page,
uni-page[data-page="pages/my/details"] .profile-page,
uni-page[data-page="pages/set/index"] .settings-page,
uni-page[data-page="pages/set/password"] .password-page {
  min-height: 100vh !important;
  padding: 12px 12px calc(86px + env(safe-area-inset-bottom)) !important;
  background: var(--next-bg) !important;
  box-sizing: border-box !important;
}

/* Add friend */
uni-page[data-page="pages/friend/add"] .header {
  margin: 0 0 12px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

uni-page[data-page="pages/friend/add"] .input-view {
  height: 48px !important;
  padding: 0 14px !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/friend/add"] .input {
  height: 48px !important;
  line-height: 48px !important;
}

uni-page[data-page="pages/friend/add"] .search-main {
  padding: 0 !important;
  background: transparent !important;
}

uni-page[data-page="pages/friend/add"] .result-list,
uni-page[data-page="pages/friend/add"] .search-main-errtitle,
uni-page[data-page="pages/friend/add"] .add-empty,
uni-page[data-page="pages/friend/group_chat"] .group-empty {
  margin-top: 0 !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/friend/add"] .add-empty,
uni-page[data-page="pages/friend/group_chat"] .group-empty {
  margin: 0 !important;
  padding: 38px 18px !important;
}

uni-page[data-page="pages/friend/add"] .result-row {
  min-height: 68px !important;
  padding: 10px 12px !important;
  border-bottom: 1px solid var(--next-line) !important;
}

uni-page[data-page="pages/friend/add"] .result-avatar {
  width: 48px !important;
  height: 48px !important;
  flex-basis: 48px !important;
  border-radius: 13px !important;
}

uni-page[data-page="pages/friend/add"] .result-name {
  color: var(--next-text) !important;
  font-weight: 750 !important;
}

uni-page[data-page="pages/friend/add"] .result-meta,
uni-page[data-page="pages/friend/add"] .search-main-errtitle {
  color: var(--next-muted) !important;
}

/* Verification lists */
uni-page[data-page="pages/friend/apply-list"] .apply-list,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-list,
uni-page[data-page="pages/friend/group_chat"] .group-list {
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-row,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-row,
uni-page[data-page="pages/friend/group_chat"] .group-row {
  min-height: 70px !important;
  padding: 10px 12px !important;
  border-bottom: 1px solid var(--next-line) !important;
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-avatar,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-avatar,
uni-page[data-page="pages/friend/group_chat"] .group-avatar {
  width: 48px !important;
  height: 48px !important;
  flex-basis: 48px !important;
  border-radius: 13px !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-title,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-title,
uni-page[data-page="pages/friend/group_chat"] .group-title {
  color: var(--next-text) !important;
  font-size: 16px !important;
  font-weight: 750 !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-content,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-content,
uni-page[data-page="pages/friend/group_chat"] .group-desc {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-status,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-action {
  min-width: 64px !important;
  height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
}

uni-page[data-page="pages/friend/chat-group-apply"] .apply-action-primary {
  background: var(--next-primary) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(79, 70, 229, .2) !important;
}

uni-page[data-page="pages/friend/apply-list"] .apply-empty,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-empty {
  margin: 0 !important;
  padding: 34px 16px !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  color: var(--next-muted) !important;
  box-shadow: var(--next-shadow) !important;
}

/* Send friend request */
uni-page[data-page="pages/friend/apply"] .apply-card,
uni-page[data-page="pages/set/password"] .password-card,
uni-page[data-page="pages/set/index"] .settings-group,
uni-page[data-page="pages/my/details"] .profile-section,
uni-page[data-page="pages/details/index"] .profile-section {
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/friend/apply"] .apply-card {
  padding: 18px !important;
}

uni-page[data-page="pages/friend/apply"] .apply-title {
  color: var(--next-text) !important;
  font-size: 19px !important;
  font-weight: 800 !important;
}

uni-page[data-page="pages/friend/apply"] .apply-subtitle {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/friend/apply"] .apply-textarea {
  min-height: 118px !important;
  border: 1px solid #d9e0ea !important;
  border-radius: 13px !important;
  background: #fbfcfe !important;
}

uni-page[data-page="pages/friend/apply"] .send_button,
uni-page[data-page="pages/set/password"] .save-button {
  height: 46px !important;
  border-radius: 13px !important;
  background: var(--next-primary) !important;
  color: #fff !important;
  font-weight: 750 !important;
  box-shadow: 0 10px 22px rgba(79, 70, 229, .22) !important;
}

/* Profile and settings */
uni-page[data-page="pages/my/details"] .profile-row,
uni-page[data-page="pages/set/index"] .settings-row,
uni-page[data-page="pages/set/password"] .form-field,
uni-page[data-page="pages/details/index"] .detail-row {
  min-height: 62px !important;
  padding: 10px 14px !important;
  border-bottom: 1px solid var(--next-line) !important;
}

uni-page[data-page="pages/my/details"] .profile-label,
uni-page[data-page="pages/set/index"] .settings-title,
uni-page[data-page="pages/set/password"] .field-label,
uni-page[data-page="pages/details/index"] .detail-label {
  color: var(--next-text) !important;
  font-size: 15px !important;
  font-weight: 750 !important;
}

uni-page[data-page="pages/my/details"] .profile-value,
uni-page[data-page="pages/set/index"] .settings-note,
uni-page[data-page="pages/set/password"] .field-input,
uni-page[data-page="pages/details/index"] .detail-value {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/set/index"] .logout-button {
  height: 46px !important;
  border-radius: 13px !important;
  background: var(--next-danger) !important;
  font-weight: 750 !important;
  box-shadow: 0 10px 22px rgba(239, 68, 68, .18) !important;
}

uni-page[data-page="pages/details/index"] .profile-header {
  margin-bottom: 12px !important;
  padding: 16px !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/details/index"] .profile-avatar {
  width: 72px !important;
  height: 72px !important;
  flex-basis: 72px !important;
  border-radius: 16px !important;
}

uni-page[data-page="pages/details/index"] .profile-name {
  color: var(--next-text) !important;
  font-size: 21px !important;
  font-weight: 800 !important;
}

uni-page[data-page="pages/details/index"] .profile-meta,
uni-page[data-page="pages/details/index"] .profile-level {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/details/index"] .profile-action-section {
  margin: 16px 0 0 !important;
}

uni-page[data-page="pages/details/index"] .profile-action {
  height: 48px !important;
  border-radius: 13px !important;
  background: var(--next-primary) !important;
  box-shadow: 0 10px 22px rgba(79, 70, 229, .22) !important;
}

/* Chat info page cleanup */
uni-page[data-page="pages/chat/message/more"] .title,
uni-page[data-page="pages/chat/message/more"] .photos,
uni-page[data-page="pages/chat/message/more"] .group-section,
uni-page[data-page="pages/chat/message/more"] .settings-section,
uni-page[data-page="pages/chat/message/more"] .list-footer {
  margin: 10px 12px 0 !important;
  border: 0 !important;
  border-radius: var(--next-radius-lg) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/chat/message/more"] .title {
  min-height: 56px !important;
  padding: 0 14px !important;
}

uni-page[data-page="pages/chat/message/more"] .photos {
  padding: 14px 12px 12px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-section-gap {
  height: 8px !important;
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row,
uni-page[data-page="pages/chat/message/more"] .setting-row,
uni-page[data-page="pages/chat/message/more"] .member-item {
  min-height: 54px !important;
  padding: 10px 14px !important;
  display: flex !important;
  align-items: center !important;
  border-bottom: 1px solid var(--next-line) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row-label,
uni-page[data-page="pages/chat/message/more"] .setting-row-label,
uni-page[data-page="pages/chat/message/more"] .title_val,
uni-page[data-page="pages/chat/message/more"] .member-name {
  color: var(--next-text) !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 21px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row-value,
uni-page[data-page="pages/chat/message/more"] .title_num,
uni-page[data-page="pages/chat/message/more"] .item-right-text {
  color: var(--next-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row-right {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row-id,
uni-page[data-page="pages/chat/message/more"] .group-row-right .group-row-value {
  max-width: 52vw !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: right !important;
}

uni-page[data-page="pages/chat/message/more"] .group-row-avatar {
  min-height: 70px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-avatar,
uni-page[data-page="pages/chat/message/more"] .photo,
uni-page[data-page="pages/chat/message/more"] .item-left-img,
uni-page[data-page="pages/chat/message/more"] .item-left-img image,
uni-page[data-page="pages/chat/message/more"] .item-left-img img {
  width: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
}

uni-page[data-page="pages/chat/message/more"] .list-member-count {
  margin: 14px 16px 8px !important;
  color: var(--next-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

uni-page[data-page="pages/chat/message/more"] .yaoqing-menber {
  min-height: 54px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border-bottom: 1px solid var(--next-line) !important;
}

uni-page[data-page="pages/chat/message/more"] .yaoqing,
uni-page[data-page="pages/chat/message/more"] .icon-add {
  color: var(--next-text) !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
}

uni-page[data-page="pages/chat/message/more"] .item-left,
uni-page[data-page="pages/chat/message/more"] .item-text {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
}

uni-page[data-page="pages/chat/message/more"] .item-left {
  flex: 1 1 auto !important;
  gap: 10px !important;
}

uni-page[data-page="pages/chat/message/more"] .item-text {
  gap: 6px !important;
  overflow: hidden !important;
}

uni-page[data-page="pages/chat/message/more"] .member-name {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

uni-page[data-page="pages/chat/message/more"] .doButton {
  padding: 16px 12px 24px !important;
}

uni-page[data-page="pages/chat/message/more"] .group-button {
  width: 100% !important;
  height: 46px !important;
  margin: 0 !important;
  border-radius: 13px !important;
  background: var(--next-primary) !important;
  font-size: 16px !important;
  font-weight: 750 !important;
  line-height: 46px !important;
  box-shadow: 0 10px 22px rgba(79, 70, 229, .22) !important;
}

uni-page[data-page="pages/chat/message/more"] .group-button-danger {
  background: var(--next-danger) !important;
  box-shadow: 0 10px 22px rgba(239, 68, 68, .18) !important;
}

/* Chat media final overrides: keep avatar, emoji, image and video sizing independent. */
uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble.media-bubble,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble.img {
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
  line-height: 0 !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .media-bubble .chat-media-image,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .media-bubble .chat-media-image img,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .media-bubble uni-image,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .media-bubble image {
  border-radius: 14px !important;
  background: #e5e7eb !important;
  object-fit: cover !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .video-bubble {
  position: relative !important;
  background: #020617 !important;
  border-radius: 14px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .video-play-icon,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .video-bubble .video-play-icon,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .video-bubble .bubble-bofang,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .video-bubble .bubble-bofang-left {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  border-radius: 999px !important;
  object-fit: contain !important;
  opacity: .94 !important;
  filter: drop-shadow(0 3px 8px rgba(0, 0, 0, .32)) !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble img[src*="/static/img/emoji/"],
uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble image[src*="/static/img/emoji/"] {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  margin: 0 1px !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-fit: contain !important;
  vertical-align: -8px !important;
  display: inline-block !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble.emoji-only-bubble,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other .bubble.emoji-only-bubble,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble.emoji-only-bubble {
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: 1 !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble.emoji-only-bubble img[src*="/static/img/emoji/"] {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
}
/* ── UX polish 20260719 ── */

/* 1.1 聊天气泡微交互：按压缩放 + 过渡 */
uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble {
  transition: transform 120ms ease, box-shadow 120ms ease, background 120ms ease !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble:active,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other .bubble:active {
  transform: scale(.97) !important;
}

/* 己方气泡微妙渐变 */
uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble:not(.img):not(.media-bubble):not(.emoji-only-bubble) {
  background: linear-gradient(135deg, #635bff 0%, #7c6cff 100%) !important;
}

/* 1.2 会话列表交互反馈 */
uni-page[data-page="pages/chat/index"] .uni-media-list {
  transition: background 100ms ease !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list:active {
  background: rgba(79, 70, 229, .06) !important;
}

/* 未读角标脉冲动画 */
@keyframes unreadPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.15); }
}

uni-page[data-page="pages/chat/index"] .red_num uni-badge .uni-badge--error {
  animation: unreadPulse 2s ease-in-out infinite !important;
}

/* 1.3 发送按钮过渡增强 */
.input-box .send {
  transition: opacity 150ms ease, transform 150ms ease !important;
}

.input-box .send .btn:active {
  transform: scale(.93) !important;
}

.input-box .more:active .input-symbol,
.input-box .em:active .input-symbol {
  transform: scale(.9) !important;
  background: rgba(17, 24, 39, .06) !important;
  border-radius: 50% !important;
}

.input-symbol {
  transition: transform 100ms ease, background 100ms ease !important;
}

/* 1.4 系统消息和时间戳胶囊升级 */
uni-page[data-page="pages/chat/message"] .content .msg-list .row .system view,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .system .text {
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

/* 1.5 输入框焦点态 */
.text-mode {
  transition: border-color 200ms ease, box-shadow 200ms ease !important;
}

.text-mode:focus-within {
  border-color: var(--next-primary, #4f46e5) !important;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, .12) !important;
}

/* 2.1 语音消息播放波纹动画 */
@keyframes voiceWave {
  0%, 100% { opacity: .4; }
  50% { opacity: 1; }
}

.bubble.voice.play .icon {
  position: relative !important;
}

.bubble.voice.play .icon::before,
.bubble.voice.play .icon::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  width: 3px !important;
  border-radius: 2px !important;
  background: currentColor !important;
  transform: translateY(-50%) !important;
}

.bubble.voice.play .icon::before {
  right: -6px !important;
  height: 10px !important;
  animation: voiceWave .8s ease-in-out infinite !important;
}

.bubble.voice.play .icon::after {
  right: -12px !important;
  height: 14px !important;
  animation: voiceWave .8s ease-in-out .2s infinite !important;
}

/* 2.2 图片/视频加载骨架占位 */
.chat-media-image {
  background: linear-gradient(90deg, #eef1f6 0%, #f7f8fb 50%, #eef1f6 100%) !important;
  background-size: 200% 100% !important;
  animation: messageSkeletonPulse 1.2s ease-in-out infinite !important;
}

.chat-media-image[src]:not([src=""]) {
  animation: none !important;
  background: #e5e7eb !important;
  background-size: auto !important;
}

/* 2.3 长按视觉反馈 */
.bubble-pressing {
  transform: scale(.96) !important;
  filter: brightness(.97) !important;
  transition: transform 120ms ease, filter 120ms ease !important;
}

/* ── END UX polish 20260719 ── */
