/* H5 next visual system. This layer is intentionally UI-only. */
:root {
  --oaim-canvas: #f5f7fb;
  --oaim-surface: #ffffff;
  --oaim-surface-soft: #f8fafc;
  --oaim-text: #111827;
  --oaim-muted: #64748b;
  --oaim-faint: #94a3b8;
  --oaim-line: #dbe3ef;
  --oaim-primary: #2563eb;
  --oaim-primary-pressed: #1d4ed8;
  --oaim-danger: #ef4444;
  --oaim-online: #16a34a;
  --oaim-radius-sm: 8px;
  --oaim-radius-md: 10px;
  --oaim-radius-lg: 12px;
  --oaim-shadow-surface: 0 2px 10px rgba(15, 23, 42, .05);
  --next-bg: var(--oaim-canvas);
  --next-surface: var(--oaim-surface);
  --next-surface-soft: var(--oaim-surface-soft);
  --next-text: var(--oaim-text);
  --next-muted: var(--oaim-muted);
  --next-faint: var(--oaim-faint);
  --next-line: var(--oaim-line);
  --next-primary: var(--oaim-primary);
  --next-primary-pressed: var(--oaim-primary-pressed);
  --next-danger: var(--oaim-danger);
  --next-radius-sm: var(--oaim-radius-sm);
  --next-radius-md: var(--oaim-radius-md);
  --next-radius-lg: var(--oaim-radius-lg);
  --next-shadow: var(--oaim-shadow-surface);
  --oaim-tabbar-visual-height: 66px;
  --oaim-tabbar-total-height: calc(var(--oaim-tabbar-visual-height) + env(safe-area-inset-bottom));
  --next-tabbar-height: var(--oaim-tabbar-visual-height);
  --next-tabbar-total-height: var(--oaim-tabbar-total-height);
}

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 {
  height: var(--next-tabbar-total-height) !important;
  min-height: var(--next-tabbar-total-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(37, 99, 235, .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(37, 99, 235, .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(20px + var(--next-tabbar-total-height)) !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;
  border: 1px solid var(--next-line) !important;
  box-shadow: none !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: 44px !important;
  height: 44px !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;
  border: 1px solid var(--next-line) !important;
  box-shadow: none !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: visible !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-total-height)) !important;
  height: calc(100dvh - var(--window-top, 44px) - var(--next-tabbar-total-height)) !important;
}

uni-page[data-page="pages/friend/index"] .friend-list {
  padding-bottom: calc(20px + var(--next-tabbar-total-height)) !important;
}

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

uni-page[data-page="pages/friend/index"] .friend-search {
  height: 44px !important;
  padding: 0 12px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  border: 1px solid var(--next-line) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/friend/index"] .friend-search-input {
  height: 44px !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;
  border: 1px solid var(--next-line) !important;
  box-shadow: none !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: visible !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 {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--next-line) !important;
  border-radius: 8px !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/friend/index"] .h5-friend-add-button:active {
  border-color: #93c5fd !important;
  background: #eff6ff !important;
}

uni-page[data-page="pages/friend/index"] .h5-friend-add-icon {
  position: relative !important;
  width: 20px !important;
  height: 20px !important;
  display: block !important;
}

uni-page[data-page="pages/friend/index"] .h5-friend-add-icon::before,
uni-page[data-page="pages/friend/index"] .h5-friend-add-icon::after {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 20px !important;
  height: 2px !important;
  border-radius: 1px !important;
  background: var(--next-primary) !important;
  content: '' !important;
  transform: translate(-50%, -50%) !important;
}

uni-page[data-page="pages/friend/index"] .h5-friend-add-icon::after {
  transform: translate(-50%, -50%) rotate(90deg) !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 {
  /* The final H5 layer owns chat spacing; height remains controlled by page logic. */
  padding: 12px 14px 14px !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"] .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(37, 99, 235, .22) !important;
}

/* Chat controls use visual icons with a stable 44px touch target. */
uni-page[data-page="pages/chat/message"] .h5-chat-more {
  position: fixed !important;
  top: max(0px, env(safe-area-inset-top)) !important;
  right: max(6px, env(safe-area-inset-right)) !important;
  z-index: 10030 !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--next-text) !important;
  background: transparent !important;
}

uni-page[data-page="pages/chat/message"] .h5-chat-more-icon {
  width: 20px !important;
  height: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  transform: translateY(-1px) !important;
}

uni-page[data-page="pages/chat/message"] .h5-chat-more-icon text {
  width: 4px !important;
  height: 4px !important;
  border-radius: 50% !important;
  background: var(--next-text) !important;
}

uni-page[data-page="pages/chat/message"] .chat-drawer-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10040 !important;
  background: rgba(15, 23, 42, .12) !important;
}

uni-page[data-page="pages/chat/message"] .popup-layer {
  z-index: 10050 !important;
}

uni-page[data-page="pages/chat/message"] .chat-new-message-indicator {
  position: fixed !important;
  right: 16px !important;
  bottom: calc(84px + env(safe-area-inset-bottom)) !important;
  z-index: 19 !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: 1px solid rgba(37, 99, 235, .18) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .14) !important;
  color: var(--next-primary) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
}

uni-page[data-page="pages/chat/message"] .chat-new-message-indicator__arrow {
  font-size: 18px !important;
  line-height: 1 !important;
}

uni-page[data-page="pages/chat/message"] .input-symbol {
  width: 44px !important;
  height: 44px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn {
  min-height: 44px !important;
}

/* Layer 3: keep chat controls visually quiet while preserving existing behavior. */
uni-page[data-page="pages/chat/message"] .input-box {
  box-shadow: 0 -2px 10px rgba(15, 23, 42, .05) !important;
}

uni-page[data-page="pages/chat/message"] .input-symbol {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: var(--next-radius-sm) !important;
  background: transparent !important;
  color: var(--next-primary) !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode {
  border-color: var(--next-line) !important;
  background: var(--next-surface-soft) !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn,
uni-page[data-page="pages/chat/message"] .chat-new-message-indicator {
  box-shadow: none !important;
}

uni-page[data-page="pages/friend/index"] .friend-search-feedback {
  min-height: 36px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--next-muted);
  background: var(--next-surface-soft);
  box-sizing: border-box;
  font-size: 13px;
}

uni-page[data-page="pages/friend/index"] .friend-search-retry {
  min-width: 44px;
  min-height: 36px;
  margin-left: 12px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  color: var(--next-primary);
  font-weight: 650;
}

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;
  min-height: 44px !important;
  height: 44px !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: none !important;
}

uni-page[data-page="pages/friend/chat-group-apply"] .apply-action {
  border-radius: var(--next-radius-md) !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: 44px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  color: #fff !important;
  font-weight: 750 !important;
  box-shadow: none !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: 44px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-danger) !important;
  font-weight: 750 !important;
  box-shadow: none !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: 44px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  box-shadow: none !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: 44px !important;
  margin: 0 !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  font-size: 16px !important;
  font-weight: 750 !important;
  line-height: 44px !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/message/more"] .group-button-danger {
  background: var(--next-danger) !important;
  box-shadow: none !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;
}

/* 己方气泡使用全站统一的 OAIM 蓝色。 */
uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble:not(.img):not(.media-bubble):not(.emoji-only-bubble) {
  background: var(--next-primary) !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(37, 99, 235, .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, #2563eb) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .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 ── */

/* ── H5 CSP amap rich text classes 20260719 ── */
.amap-result-name {
  color: #333 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.amap-result-highlight {
  color: #66ccff !important;
}

.amap-line-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
}

.amap-line-badge {
  margin: 5px 5px 5px 0 !important;
  padding: 0 5px !important;
  border-radius: 3px !important;
  background: #ccc !important;
  color: #fff !important;
  font-size: 12px !important;
}

.amap-line-bus { background: #4075cb !important; }
.amap-line-1 { background: #C43B33 !important; }
.amap-line-2 { background: #016299 !important; }
.amap-line-4 { background: #008E9C !important; }
.amap-line-5 { background: #A42380 !important; }
.amap-line-6 { background: #D09900 !important; }
.amap-line-7 { background: #F2C172 !important; }
.amap-line-8 { background: #009D6A !important; }
.amap-line-9 { background: #8FC41E !important; }
.amap-line-10 { background: #009DBE !important; }
.amap-line-13 { background: #F9E701 !important; }
.amap-line-14-east,
.amap-line-14-west { background: #D4A7A2 !important; }
.amap-line-15 { background: #5D2D69 !important; }
.amap-line-batong { background: #C33A32 !important; }
.amap-line-changping { background: #DE82B1 !important; }
.amap-line-yizhuang { background: #E40177 !important; }
.amap-line-fangshan { background: #E66021 !important; }
.amap-line-airport { background: #A29BBC !important; }
/* ── END H5 CSP amap rich text classes 20260719 ── */

/* ── H5 CSP uni-load-more classes 20260719 ── */
.uni-load-more {
  display: flex !important;
  flex-direction: row !important;
  height: 25px !important;
  align-items: center !important;
  justify-content: center !important;
}

.uni-load-more__img {
  position: relative !important;
  height: 24px !important;
  width: 24px !important;
  margin-right: 10px !important;
}

.uni-load-more__img > view {
  position: absolute !important;
}

.uni-load-more__img .load-dot {
  width: 6px !important;
  height: 2px !important;
  border-top-left-radius: 1px !important;
  border-bottom-left-radius: 1px !important;
  background: #777777 !important;
  position: absolute !important;
  opacity: .2 !important;
  transform-origin: 50% !important;
  animation: loadMoreDot 1.56s ease infinite !important;
}

.uni-load-more__img > view view:nth-child(1) {
  transform: rotate(90deg) !important;
  top: 2px !important;
  left: 9px !important;
}

.uni-load-more__img > view view:nth-child(2) {
  transform: rotate(180deg) !important;
  top: 2px !important;
  right: 0 !important;
}

.uni-load-more__img > view view:nth-child(3) {
  transform: rotate(270deg) !important;
  bottom: 2px !important;
  left: 9px !important;
}

.uni-load-more__img > view view:nth-child(4) {
  top: 2px !important;
  left: 0 !important;
}

.load1,
.load2,
.load3 {
  height: 24px !important;
  width: 24px !important;
}

.load2 { transform: rotate(30deg) !important; }
.load3 { transform: rotate(60deg) !important; }
.load1 view:nth-child(1) { animation-delay: 0s !important; }
.load2 view:nth-child(1) { animation-delay: .13s !important; }
.load3 view:nth-child(1) { animation-delay: .26s !important; }
.load1 view:nth-child(2) { animation-delay: .39s !important; }
.load2 view:nth-child(2) { animation-delay: .52s !important; }
.load3 view:nth-child(2) { animation-delay: .65s !important; }
.load1 view:nth-child(3) { animation-delay: .78s !important; }
.load2 view:nth-child(3) { animation-delay: .91s !important; }
.load3 view:nth-child(3) { animation-delay: 1.04s !important; }
.load1 view:nth-child(4) { animation-delay: 1.17s !important; }
.load2 view:nth-child(4) { animation-delay: 1.3s !important; }
.load3 view:nth-child(4) { animation-delay: 1.43s !important; }

@keyframes loadMoreDot {
  0% { opacity: 1; }
  100% { opacity: .2; }
}
/* ── END H5 CSP uni-load-more classes 20260719 ── */

/* Layer 2: secondary pages share the same form and list grammar. */
uni-page[data-page^="pages/in/"] uni-page-body,
uni-page[data-page="pages/friend/remarks"] uni-page-body,
uni-page[data-page="pages/friend/phone-search-list"] uni-page-body,
uni-page[data-page="pages/friend/index_list"] uni-page-body,
uni-page[data-page^="pages/details/more"] uni-page-body,
uni-page[data-page="pages/set/user"] uni-page-body,
uni-page[data-page="pages/set/photo"] uni-page-body,
uni-page[data-page="pages/set/group_photo"] uni-page-body,
uni-page[data-page="pages/set/message_more"] uni-page-body {
  background: var(--next-bg) !important;
  color: var(--next-text) !important;
  overflow-x: hidden !important;
}

uni-page[data-page^="pages/in/"] .zai-box,
uni-page[data-page="pages/friend/remarks"] .remarks-page,
uni-page[data-page="pages/friend/phone-search-list"] .search-page,
uni-page[data-page="pages/friend/index_list"] .select-page,
uni-page[data-page^="pages/details/more"] .page,
uni-page[data-page="pages/set/user"] .edit-page,
uni-page[data-page="pages/set/photo"] .photo-page,
uni-page[data-page="pages/set/group_photo"] .group-photo-page,
uni-page[data-page="pages/set/message_more"] .message-more-page {
  min-height: 100vh !important;
  padding: 16px 12px calc(86px + env(safe-area-inset-bottom)) !important;
  background: var(--next-bg) !important;
  box-sizing: border-box !important;
}

/* This page already owns a fixed search header and an internal scroll-view. */
uni-page[data-page="pages/friend/index_list"] .select-page {
  padding: 0 !important;
}

uni-page[data-page="pages/friend/index_list"] .scroll-list {
  height: calc(100vh - 62px - 64px - env(safe-area-inset-bottom)) !important;
  height: calc(100dvh - 62px - 64px - env(safe-area-inset-bottom)) !important;
}

uni-page[data-page="pages/friend/index_list"] .indexed-bar {
  top: 62px !important;
  bottom: calc(64px + env(safe-area-inset-bottom)) !important;
  z-index: 11 !important;
  height: auto !important;
  min-height: 0 !important;
}

uni-page[data-page="pages/friend/index_list"] .indexed-alert {
  z-index: 13 !important;
}

uni-page[data-page="pages/chat/message/reduce"] .scrollList {
  height: calc(100vh - var(--window-top, 44px) - 126px - env(safe-area-inset-bottom)) !important;
  height: calc(100dvh - var(--window-top, 44px) - 126px - env(safe-area-inset-bottom)) !important;
}

uni-page .h5-page-submit-bar {
  position: fixed !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 12 !important;
  padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
  border-top: 1px solid var(--next-line) !important;
  background: rgba(255, 255, 255, .97) !important;
  box-shadow: 0 -2px 10px rgba(15, 23, 42, .05) !important;
  box-sizing: border-box !important;
}

uni-page .h5-page-submit-button {
  width: 100% !important;
  min-height: 44px !important;
  border: 0 !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 44px !important;
}

uni-page .h5-page-submit-button[disabled] {
  background: #93c5fd !important;
  color: rgba(255, 255, 255, .92) !important;
}

/* Group pages use the same quiet list and form surfaces as the rest of H5. */
uni-page[data-page="pages/chat/message/qun_manage"] uni-page-body,
uni-page[data-page="pages/chat/message/reduce"] uni-page-body,
uni-page[data-page="pages/chat/message/group_nickname"] uni-page-body,
uni-page[data-page="pages/details/more_group"] uni-page-body {
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/chat/message/qun_manage"] .group-manage-page,
uni-page[data-page="pages/chat/message/reduce"] .reduce-page,
uni-page[data-page="pages/chat/message/group_nickname"] .group-nickname-page,
uni-page[data-page="pages/details/more_group"] .page {
  min-height: 100vh !important;
  min-height: 100dvh !important;
  padding: 12px 12px calc(20px + env(safe-area-inset-bottom)) !important;
  background: var(--next-bg) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/details/more_group"] .page {
  padding: 0 !important;
}

uni-page[data-page="pages/chat/message/qun_manage"] .setting-card,
uni-page[data-page="pages/chat/message/qun_manage"] .danger-card,
uni-page[data-page="pages/chat/message/reduce"] .reduce-summary,
uni-page[data-page="pages/chat/message/reduce"] .member-card,
uni-page[data-page="pages/chat/message/reduce"] .empty-card,
uni-page[data-page="pages/chat/message/group_nickname"] .edit-card,
uni-page[data-page="pages/details/more_group"] .group-list {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/message/qun_manage"] .setting-row,
uni-page[data-page="pages/chat/message/qun_manage"] .action-row,
uni-page[data-page="pages/chat/message/reduce"] .member-row,
uni-page[data-page="pages/details/more_group"] .group-row {
  border-color: var(--next-line) !important;
}

uni-page[data-page="pages/chat/message/qun_manage"] .setting-desc,
uni-page[data-page="pages/chat/message/reduce"] .summary-desc,
uni-page[data-page="pages/chat/message/reduce"] .member-id,
uni-page[data-page="pages/chat/message/group_nickname"] .edit-desc,
uni-page[data-page="pages/details/more_group"] .group-meta,
uni-page[data-page="pages/details/more_group"] .empty-desc {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/chat/message/reduce"] .member-avatar,
uni-page[data-page="pages/details/more_group"] .group-avatar-wrap,
uni-page[data-page="pages/details/more_group"] .group-avatar {
  border-radius: var(--next-radius-md) !important;
}

uni-page[data-page="pages/chat/message/group_nickname"] .nickname-input {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface-soft) !important;
}

uni-page[data-page="pages/chat/message/group_nickname"] .nickname-input:focus {
  border-color: var(--next-primary) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
}

uni-page[data-page="pages/chat/message/reduce"] .empty-icon,
uni-page[data-page="pages/details/more_group"] .empty-icon,
uni-page[data-page="pages/details/more_group"] .uni-indexed-list-text.active,
uni-page[data-page="pages/details/more_group"] .uni-indexed-list-bar.active .uni-indexed-list-text.active {
  color: var(--next-primary) !important;
  background-color: rgba(37, 99, 235, .10) !important;
}

uni-page[data-page="pages/details/more_group"] .scrollList {
  height: 100vh !important;
  height: 100dvh !important;
  padding: 12px 12px calc(12px + env(safe-area-inset-bottom)) !important;
  box-sizing: border-box !important;
}

uni-page[data-page="pages/details/more_group"] .group-list {
  margin: 0 !important;
}

uni-page[data-page^="pages/in/"] .zai-form,
uni-page[data-page="pages/friend/remarks"] .remarks-card,
uni-page[data-page="pages/friend/phone-search-list"] .result-card,
uni-page[data-page^="pages/details/more"] .detail-card,
uni-page[data-page^="pages/details/more"] .more-card,
uni-page[data-page="pages/set/user"] .edit-card,
uni-page[data-page="pages/set/photo"] .photo-card,
uni-page[data-page="pages/set/group_photo"] .group-photo-card,
uni-page[data-page="pages/set/message_more"] .editor-card,
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,
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,
uni-page[data-page="pages/friend/apply-list"] .apply-empty,
uni-page[data-page="pages/friend/chat-group-apply"] .apply-empty,
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,
uni-page[data-page="pages/details/index"] .profile-header {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  box-shadow: none !important;
}

uni-page[data-page^="pages/in/"] .zai-input,
uni-page[data-page^="pages/in/"] .code-input,
uni-page[data-page="pages/friend/remarks"] .remarks-textarea,
uni-page[data-page="pages/friend/apply"] .apply-textarea,
uni-page[data-page="pages/set/user"] .edit-textarea,
uni-page[data-page="pages/set/message_more"] .editor-textarea {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface-soft) !important;
  color: var(--next-text) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

uni-page[data-page^="pages/in/"] .zai-input:focus,
uni-page[data-page^="pages/in/"] .code-input:focus,
uni-page[data-page="pages/friend/remarks"] .remarks-textarea:focus,
uni-page[data-page="pages/friend/apply"] .apply-textarea:focus,
uni-page[data-page="pages/set/user"] .edit-textarea:focus,
uni-page[data-page="pages/set/message_more"] .editor-textarea:focus {
  border-color: var(--next-primary) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
}

uni-page[data-page^="pages/in/"] .zai-btn,
uni-page[data-page^="pages/in/"] .landing,
uni-page[data-page="pages/friend/remarks"] .send_button,
uni-page[data-page="pages/set/user"] .save-button,
uni-page[data-page="pages/set/message_more"] .save-button {
  min-height: 46px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  box-shadow: none !important;
  font-weight: 750 !important;
}

uni-page[data-page^="pages/in/"] .zai-btn.zai-btn-disabled,
uni-page[data-page^="pages/in/"] .landing.landing_false,
uni-page[data-page^="pages/in/"] .zai-btn[disabled],
uni-page[data-page^="pages/in/"] .landing[disabled] {
  background: #bfdbfe !important;
  color: rgba(255, 255, 255, .92) !important;
}

uni-page[data-page^="pages/in/"] .code,
uni-page[data-page="pages/set/password"] .field-action,
uni-page[data-page="pages/in/"] .password-toggle {
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--next-primary) !important;
}

uni-page[data-page^="pages/in/"] .code {
  padding: 0 12px !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-primary) !important;
  color: #fff !important;
  font-size: 14px !important;
  white-space: nowrap !important;
}

uni-page[data-page^="pages/in/"] .zai-form .zai-label:not(.zai-label-spacer) {
  display: block !important;
  margin-top: 16px !important;
  text-align: center !important;
}

uni-page[data-page^="pages/in/"] .zai-form .zai-label-spacer {
  margin-top: 0 !important;
}

uni-page[data-page^="pages/in/"] .zai-title {
  min-height: 30px !important;
  margin: 16px 0 20px !important;
  color: var(--next-text) !important;
  font-size: 22px !important;
  font-weight: 750 !important;
  line-height: 30px !important;
  text-align: center !important;
}

uni-page[data-page="pages/friend/index_list"] .search-box,
uni-page[data-page="pages/friend/phone-search-list"] .search-box {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/friend/index_list"] .friend-list,
uni-page[data-page="pages/friend/phone-search-list"] .result-list {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

/* My page: use the same quiet list rhythm as conversations and contacts. */
uni-page[data-page="pages/my/index"] uni-page-body,
uni-page[data-page="pages/my/index"] .my-page {
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/my/index"] .my-page {
  padding: 12px 12px calc(20px + var(--next-tabbar-total-height)) !important;
}

uni-page[data-page="pages/my/index"] .profile-card,
uni-page[data-page="pages/my/index"] .profile-state,
uni-page[data-page="pages/my/index"] .my-group {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

/* H5 IM client shell: hierarchy comes from space and dividers, not stacked cards. */
uni-page[data-page="pages/chat/index"] .client-tab-page,
uni-page[data-page="pages/friend/index"] .client-tab-page {
  min-height: 100vh !important;
  padding: 0 0 calc(10px + var(--next-tabbar-total-height)) !important;
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/chat/index"] .uni-searchbar,
uni-page[data-page="pages/chat/index"] .search,
uni-page[data-page="pages/chat/index"] .mehaotian-search {
  margin: 0 !important;
  padding: 8px 12px !important;
  background: var(--next-surface) !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: 38px !important;
  border: 0 !important;
  border-radius: var(--next-radius-sm) !important;
  background: #f1f4f8 !important;
}

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

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

uni-page[data-page="pages/chat/index"] .uni-media-list {
  padding: 10px 14px !important;
  border-bottom-color: #e9eef5 !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-logo,
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: 48px !important;
  height: 48px !important;
  flex-basis: 48px !important;
  border-radius: var(--next-radius-md) !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-logo {
  margin-right: 12px !important;
}

uni-page[data-page="pages/chat/index"] .chat-title-name {
  font-size: 16px !important;
  font-weight: 700 !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-text-bottom {
  margin-top: 3px !important;
  color: #778399 !important;
  font-size: 13px !important;
}

uni-page[data-page="pages/chat/index"] .h5-chat-action-button {
  border-radius: var(--next-radius-sm) !important;
  color: var(--next-primary) !important;
  font-size: 27px !important;
  font-weight: 400 !important;
}

uni-page[data-page="pages/chat/index"] .red_num uni-badge .uni-badge--error {
  animation: none !important;
}

uni-page[data-page="pages/friend/index"] .scrollList,
uni-page[data-page="pages/friend/index"] .friend-list,
uni-page[data-page="pages/friend/index"] .friend-header {
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/friend/index"] .friend-header {
  padding: 8px 12px !important;
  border-bottom: 1px solid #e9eef5 !important;
}

uni-page[data-page="pages/friend/index"] .friend-search {
  height: 38px !important;
  min-height: 38px !important;
  border: 0 !important;
  border-radius: var(--next-radius-sm) !important;
  background: #f1f4f8 !important;
}

uni-page[data-page="pages/friend/index"] .friend-search-input {
  height: 38px !important;
  font-size: 15px !important;
}

uni-page[data-page="pages/friend/index"] .friend-list {
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-row,
uni-page[data-page="pages/friend/index"] .friend-row {
  min-height: 64px !important;
  padding: 8px 14px !important;
  border-bottom-color: #e9eef5 !important;
}

uni-page[data-page="pages/friend/index"] .friend-section-title {
  height: 30px !important;
  padding: 0 14px !important;
  background: #f6f8fb !important;
  color: #7b8799 !important;
  font-size: 11px !important;
  letter-spacing: 0 !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-icon,
uni-page[data-page="pages/friend/index"] .friend-avatar,
uni-page[data-page="pages/friend/index"] .friend-avatar image,
uni-page[data-page="pages/friend/index"] .friend-avatar img {
  width: 42px !important;
  height: 42px !important;
  flex-basis: 42px !important;
  border-radius: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-icon,
uni-page[data-page="pages/friend/index"] .friend-avatar {
  margin-right: 12px !important;
}

uni-page[data-page="pages/my/index"] .client-profile-page {
  min-height: 100vh !important;
  padding: 12px 12px calc(18px + var(--next-tabbar-total-height)) !important;
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/my/index"] .profile-card {
  min-height: 96px !important;
  margin: 0 0 12px !important;
  padding: 16px !important;
  border: 0 !important;
  border-radius: var(--next-radius-md) !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/my/index"] .profile-avatar,
uni-page[data-page="pages/my/index"] .profile-avatar image,
uni-page[data-page="pages/my/index"] .profile-avatar img {
  width: 62px !important;
  height: 62px !important;
  border-radius: var(--next-radius-md) !important;
}

uni-page[data-page="pages/my/index"] .profile-main {
  padding-left: 14px !important;
}

uni-page[data-page="pages/my/index"] .profile-name {
  font-size: 19px !important;
  font-weight: 750 !important;
}

uni-page[data-page="pages/my/index"] .profile-code {
  margin-top: 5px !important;
  color: var(--next-muted) !important;
  font-size: 13px !important;
}

uni-page[data-page="pages/my/index"] .my-group {
  overflow: hidden !important;
  border: 0 !important;
  border-radius: var(--next-radius-md) !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/my/index"] .my-row {
  min-height: 56px !important;
  padding: 8px 14px !important;
  border-bottom-color: #e9eef5 !important;
}

uni-page[data-page="pages/my/index"] .my-row-icon {
  width: 30px !important;
  height: 30px !important;
  margin-right: 12px !important;
  border-radius: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/my/index"] .my-row-title {
  font-size: 16px !important;
  font-weight: 600 !important;
}

uni-page[data-page="pages/my/index"] .profile-state {
  margin: 0 !important;
  border: 0 !important;
  box-shadow: var(--next-shadow) !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list {
  padding: 10px 12px 14px !important;
  background: #f6f8fb !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 .my,
uni-page[data-page="pages/chat/message"] .content .msg-list .row .other {
  padding: 5px 2px !important;
}

uni-page[data-page="pages/chat/message"] .input-box {
  min-height: 62px !important;
  padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
  background: rgba(255, 255, 255, .98) !important;
}

uni-page[data-page="pages/chat/message"] .input-symbol {
  border: 0 !important;
  background: transparent !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode {
  border: 0 !important;
  border-radius: var(--next-radius-sm) !important;
  background: #f1f4f8 !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode:focus-within {
  box-shadow: 0 0 0 2px rgba(37, 99, 235, .14) !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn {
  border-radius: var(--next-radius-sm) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

uni-page[data-page^="pages/friend/"] .h5-page-submit-bar,
uni-page[data-page^="pages/set/"] .h5-page-submit-bar,
uni-page[data-page^="pages/details/"] .h5-page-submit-bar {
  border-top-color: #e9eef5 !important;
  box-shadow: none !important;
}

/* Internal-page QA refinement: remove remaining legacy pills and warning-red names. */
uni-page[data-page="pages/chat/index"] .search .content,
uni-page[data-page="pages/chat/index"] .search .content-box {
  height: 40px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/index"] .uni-list,
uni-page[data-page="pages/friend/index"] .friend-list {
  border-radius: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/chat/index"] .chat-title-name.customer-name,
uni-page[data-page="pages/chat/index"] .chat-title-name.customer-name *,
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/my/index"] .profile-card,
uni-page[data-page="pages/my/index"] .profile-state {
  min-height: 96px !important;
}

uni-page[data-page="pages/my/index"] .profile-avatar {
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface-soft) !important;
}

uni-page[data-page="pages/my/index"] .profile-name,
uni-page[data-page="pages/my/index"] .my-row-title,
uni-page[data-page="pages/my/index"] .profile-state-title {
  color: var(--next-text) !important;
}

uni-page[data-page="pages/my/index"] .profile-code,
uni-page[data-page="pages/my/index"] .profile-state-desc,
uni-page[data-page="pages/my/index"] .profile-refresh-note {
  color: var(--next-muted) !important;
}

uni-page[data-page="pages/my/index"] .my-row {
  min-height: 60px !important;
  border-bottom-color: var(--next-line) !important;
}

uni-page[data-page="pages/my/index"] .my-row-icon {
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface-soft) !important;
}

/* H5 Widget-aligned visual system: this is the final H5 UI layer. */
:root {
  --next-bg: var(--oaim-workspace-canvas, #f6f8fb);
  --next-surface: var(--oaim-surface, #ffffff);
  --next-surface-soft: var(--oaim-surface-soft, #f8fafc);
  --next-text: var(--oaim-text, #172033);
  --next-muted: var(--oaim-muted, #72809a);
  --next-line: var(--oaim-line, #dbe4f0);
  --next-primary: var(--oaim-primary, #2d66df);
  --next-primary-pressed: var(--oaim-primary-hover, #2458c8);
  --next-radius-sm: var(--oaim-radius-sm, 8px);
  --next-radius-md: var(--oaim-radius-md, 10px);
  --next-radius-lg: var(--oaim-radius-lg, 12px);
  --next-shadow: 0 2px 10px rgba(28, 47, 83, .06);
}

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

/* Keep chrome quiet and rectangular like the Widget rather than card-like. */
uni-page-head .uni-page-head,
uni-tabbar .uni-tabbar {
  border-color: var(--next-line) !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

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

uni-tabbar .uni-tabbar {
  padding-top: 5px !important;
}

uni-tabbar .uni-tabbar__label {
  color: var(--next-muted) !important;
  font-weight: 500 !important;
}

/* Conversation list: one continuous workspace, compact rows and clear metadata. */
uni-page[data-page="pages/chat/index"] uni-page-body,
uni-page[data-page="pages/chat/index"] .page,
uni-page[data-page="pages/chat/index"] .uni-list {
  background: var(--next-bg) !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 {
  padding: 10px 12px 8px !important;
  background: var(--next-bg) !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 {
  min-height: 38px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/index"] .uni-list-cell,
uni-page[data-page="pages/chat/index"] .uni-media-list {
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list {
  min-height: 72px !important;
  padding: 10px 12px !important;
  border-bottom: 1px solid var(--next-line) !important;
}

uni-page[data-page="pages/chat/index"] .uni-list-cell:first-child .uni-media-list {
  border-top: 1px solid var(--next-line) !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-logo,
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: 44px !important;
  height: 44px !important;
  border-radius: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-text-top,
uni-page[data-page="pages/chat/index"] .chat-title-name {
  color: var(--next-text) !important;
  font-size: 16px !important;
  font-weight: 650 !important;
}

uni-page[data-page="pages/chat/index"] .uni-media-list-text-bottom,
uni-page[data-page="pages/chat/index"] .chat-time {
  color: var(--next-muted) !important;
  font-size: 13px !important;
}

uni-page[data-page="pages/chat/index"] .red_num,
uni-page[data-page="pages/chat/index"] .red_num uni-badge .uni-badge--error {
  border-radius: 9px !important;
  background: var(--oaim-danger, #e5484d) !important;
  animation: none !important;
}

/* Chat: preserve all existing behavior while using the Widget's message rhythm. */
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,
uni-page[data-page="pages/chat/message"] .content .msg-list {
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row {
  padding: 5px 0 !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: 5px 12px !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,
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: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble {
  max-width: min(72vw, 420px) !important;
  padding: 9px 11px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  box-shadow: none !important;
  font-size: 16px !important;
  line-height: 23px !important;
}

uni-page[data-page="pages/chat/message"] .content .msg-list .row .my .bubble:not(.img):not(.media-bubble):not(.emoji-only-bubble) {
  border-color: var(--next-primary) !important;
  border-top-right-radius: 4px !important;
  background: var(--next-primary) !important;
  color: #fff !important;
}

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

uni-page[data-page="pages/chat/message"] .content .msg-list .row .bubble.emoji-only-bubble,
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 {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !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;
}

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: 22px !important;
  padding: 0 9px !important;
  border-radius: 4px !important;
  background: #dce3ec !important;
  color: #536177 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 22px !important;
}

uni-page[data-page="pages/chat/message"] .message-send-state {
  color: var(--next-muted) !important;
  font-size: 12px !important;
}

uni-page[data-page="pages/chat/message"] .input-box {
  min-height: 64px !important;
  padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
  gap: 8px !important;
  border-top: 1px solid var(--next-line) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/message"] .input-symbol {
  width: 38px !important;
  height: 38px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
  color: #526176 !important;
  font-size: 25px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode {
  min-height: 40px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}

uni-page[data-page="pages/chat/message"] .input-box .text-mode:focus-within {
  border-color: var(--next-primary) !important;
  box-shadow: 0 0 0 2px rgba(45, 102, 223, .16) !important;
}

uni-page[data-page="pages/chat/message"] .input-box textarea,
uni-page[data-page="pages/chat/message"] .input-box uni-textarea {
  color: var(--next-text) !important;
  font-size: 16px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send {
  flex-basis: 58px !important;
  width: 58px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn {
  min-height: 40px !important;
  height: 40px !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-primary) !important;
  box-shadow: none !important;
  font-weight: 650 !important;
}

/* Composer: typing keeps the text field wide while preserving 44px touch targets. */
uni-page[data-page="pages/chat/message"] .input-box.has-text > .more {
  display: none !important;
}

uni-page[data-page="pages/chat/message"] .input-box .more,
uni-page[data-page="pages/chat/message"] .input-box .text-mode .em {
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 44px !important;
  margin-left: 0 !important;
}

uni-page[data-page="pages/chat/message"] .input-box .send .btn {
  width: 100% !important;
  min-height: 44px !important;
  height: 44px !important;
  line-height: 44px !important;
}

@media (max-width: 340px) {
  uni-page[data-page="pages/chat/message"] .input-box .send {
    flex-basis: 48px !important;
    width: 48px !important;
  }
}

/* iOS keeps the layout viewport while its keyboard is open; Android remains at zero offset. */
uni-page[data-page="pages/chat/message"] .page {
  min-height: 100vh !important;
  min-height: 100dvh !important;
}

uni-page[data-page="pages/chat/message"] .input-box,
uni-page[data-page="pages/chat/message"] .popup-layer {
  bottom: var(--oaim-h5-keyboard-offset, 0px) !important;
}

uni-page[data-page="pages/chat/message"] .chat-new-message-indicator {
  bottom: calc(78px + env(safe-area-inset-bottom) + var(--oaim-h5-keyboard-offset, 0px)) !important;
}

/* Long text grows upward, keeps controls aligned, and never scrolls the chat behind it. */
uni-page[data-page="pages/chat/message"] .input-box,
uni-page[data-page="pages/chat/message"] .input-box .text-mode {
  align-items: flex-end !important;
}

uni-page[data-page="pages/chat/message"] .input-box .box textarea {
  max-height: 112px !important;
  overflow-y: auto !important;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
}

/* uni-app wraps textarea on H5; only the native textarea may scroll on iOS. */
uni-page[data-page="pages/chat/message"] .input-box .box uni-textarea {
  overflow: hidden !important;
}

/* H5 renders the actual control as .uni-textarea-textarea; keep long-text scrolling without an iOS scroll track. */
uni-page[data-page="pages/chat/message"] .input-box .box .chat-textarea,
uni-page[data-page="pages/chat/message"] .input-box .box .chat-textarea .uni-textarea-wrapper,
uni-page[data-page="pages/chat/message"] .input-box .box .chat-textarea .uni-textarea-textarea {
  max-height: 112px !important;
}

uni-page[data-page="pages/chat/message"] .input-box .box .chat-textarea .uni-textarea-textarea,
uni-page[data-page="pages/chat/message"] .input-box .box textarea {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

uni-page[data-page="pages/chat/message"] .input-box .box .chat-textarea .uni-textarea-textarea::-webkit-scrollbar,
uni-page[data-page="pages/chat/message"] .input-box .box textarea::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

uni-page[data-page="pages/chat/message"] .my .message-send-state {
  margin-left: auto !important;
  text-align: right !important;
}

uni-page[data-page="pages/chat/message"] .message-send-state.is-pending {
  opacity: .82;
}

uni-page[data-page="pages/chat/message"] .message-send-state.is-failed {
  font-weight: 650 !important;
}

uni-page[data-page="pages/chat/message"] .chat-new-message-indicator {
  min-height: 38px !important;
  padding: 0 11px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
  box-shadow: var(--next-shadow) !important;
  color: var(--next-primary) !important;
}

/* Contacts and account retain the same restrained list surfaces. */
uni-page[data-page="pages/friend/index"] uni-page-body,
uni-page[data-page="pages/friend/index"] .page,
uni-page[data-page="pages/my/index"] uni-page-body,
uni-page[data-page="pages/my/index"] .my-page {
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/friend/index"] .friend-header,
uni-page[data-page="pages/friend/index"] .friend-list {
  background: var(--next-bg) !important;
}

uni-page[data-page="pages/friend/index"] .friend-search {
  min-height: 38px !important;
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-sm) !important;
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-row,
uni-page[data-page="pages/friend/index"] .friend-row {
  min-height: 64px !important;
  padding: 8px 12px !important;
  border-bottom-color: var(--next-line) !important;
  background: var(--next-surface) !important;
}

uni-page[data-page="pages/friend/index"] .friend-action-icon,
uni-page[data-page="pages/friend/index"] .friend-avatar,
uni-page[data-page="pages/my/index"] .profile-avatar,
uni-page[data-page="pages/my/index"] .my-row-icon {
  border-radius: var(--next-radius-sm) !important;
}

uni-page[data-page="pages/my/index"] .my-page {
  padding: 12px 12px calc(20px + var(--next-tabbar-total-height)) !important;
}

uni-page[data-page="pages/my/index"] .profile-card,
uni-page[data-page="pages/my/index"] .profile-state,
uni-page[data-page="pages/my/index"] .my-group {
  border: 1px solid var(--next-line) !important;
  border-radius: var(--next-radius-md) !important;
  background: var(--next-surface) !important;
  box-shadow: none !important;
}
