/* ClearTalk 绿色主题 + 类微信布局 (overlay, phase 1) */
:root, .cpd-theme-light, .cpd-theme-light.cpd-theme-light {
  --ct-green: #07C160; --ct-green-d: #06AD56; --ct-bubble-me: #95EC69;
  --ct-nav: #2E2E2E; --ct-list: #F7F7F7; --ct-list-sel: #DCDCDC; --ct-chat: #F5F5F5; --ct-red: #FA5151;
  --cpd-color-bg-accent-rest: var(--ct-green) !important;
  --cpd-color-bg-accent-hovered: var(--ct-green-d) !important;
  --cpd-color-bg-accent-pressed: #059A4C !important;
  --cpd-color-bg-action-primary-rest: var(--ct-green) !important;
  --cpd-color-bg-action-primary-hovered: var(--ct-green-d) !important;
  --cpd-color-bg-action-primary-pressed: #059A4C !important;
  --cpd-color-text-action-accent: var(--ct-green-d) !important;
  --cpd-color-icon-accent-primary: var(--ct-green) !important;
  --cpd-color-icon-accent-tertiary: var(--ct-green) !important;
  --cpd-color-border-accent: var(--ct-green) !important;
  --cpd-color-border-focused: var(--ct-green) !important;
  --cpd-color-bg-critical-primary: var(--ct-red) !important;
  --cpd-color-bg-badge-accent: var(--ct-red) !important;
  --accent: var(--ct-green) !important;
  --cpd-color-bg-subtle-secondary: var(--ct-list) !important;
}
/* 左侧窄深色图标导航 */
.mx_SpacePanel { background: var(--ct-nav) !important; width: 64px; }
.mx_SpacePanel .mx_SpaceButton, .mx_SpacePanel .mx_AccessibleButton, .mx_SpacePanel svg { color: #aaa !important; }
.mx_SpacePanel .mx_SpaceButton_active .mx_SpaceButton_icon, .mx_SpacePanel .mx_SpaceButton_active svg { color: var(--ct-green) !important; }
.mx_SpacePanel .mx_SpaceButton_icon { background: transparent !important; }
.mx_SpacePanel .mx_SpaceButton.mx_SpaceButton_active, .mx_SpacePanel .mx_SpaceButton.mx_SpaceButton_active .mx_SpaceButton_selectionWrapper { background: transparent !important; outline: none !important; box-shadow: none !important; }
.mx_SpacePanel .mx_BaseAvatar, .mx_SpacePanel .mx_UserMenu img, .mx_SpacePanel [class*="_avatar_"] { border-radius: 6px !important; }
.mx_SpacePanel .mx_SpaceItem_new, .mx_SpacePanel .mx_SpaceButton_new { opacity: .6; }
.mx_SpacePanel_toggleCollapse { display: none !important; }
/* 会话列表 */
.mx_LeftPanel, .mx_LeftPanel_roomListContainer, .mx_RoomListPanel { background: var(--ct-list) !important; }
.mx_LeftPanel { border-right: 1px solid #ddd; }
[class*="_roomListItem_"] { padding: 0 !important; min-height: 66px !important; }
[class*="_roomListItem_"] [class*="_container_"] { margin: 0 !important; border-radius: 0 !important; padding: 10px 12px !important; }
[class*="_roomListItem_"][class*="_selected_"] [class*="_container_"], [class*="_roomListItem_"][aria-selected="true"] [class*="_container_"] { background: var(--ct-list-sel) !important; }
[class*="_roomListItem_"] [class*="_container_"]::before { display: none !important; }
[class*="_roomListItem_"]:hover [class*="_container_"] { background: #EAEAEA !important; }
[class*="_roomListItem_"] [class*="_roomName_"] { color: #111 !important; font-size: 15px; }
[class*="_roomListItem_"] [class*="_ellipsis_"] { color: #999; font-size: 12.5px; }
/* 方圆角头像（全局） */
.mx_BaseAvatar, .mx_BaseAvatar_image, span[class*="_avatar_"], img[class*="_image_"], [data-type="round"][class*="_avatar"] { border-radius: 6px !important; }
/* 红色未读角标 */
[class*="_unread-counter_"], [class*="_notificationDecoration_"] [class*="_unread"], .mx_NotificationBadge_count, [class*="_unreadCounter"] { background: var(--ct-red) !important; color: #fff !important; }
/* 聊天区 */
.mx_RoomView, .mx_RoomView_body, .mx_RoomView_messagePanel, .mx_RoomView_MessageList { background: var(--ct-chat) !important; }
.mx_RoomHeader { background: var(--ct-chat) !important; border-bottom: 1px solid #ddd !important; }
/* 气泡布局 */
.mx_EventTile[data-layout="bubble"] { --EventTile_bubble_line-bg-color: #fff; }
.mx_EventTile[data-layout="bubble"][data-self="true"] { --EventTile_bubble_line-bg-color: var(--ct-bubble-me) !important; }
.mx_EventTile[data-layout="bubble"] .mx_EventTile_line { background: var(--EventTile_bubble_line-bg-color) !important; border-radius: 6px !important; color: #111; box-shadow: none; }
.mx_EventTile[data-layout="bubble"][data-self="true"] .mx_EventTile_line { background: var(--ct-bubble-me) !important; }
.mx_EventTile[data-layout="bubble"]:hover .mx_EventTile_line { filter: brightness(.97); }
.mx_EventTile[data-layout="bubble"] .mx_EventTile_avatar .mx_BaseAvatar, .mx_EventTile[data-layout="bubble"] .mx_EventTile_avatar img { border-radius: 6px !important; }
.mx_EventTile[data-layout="bubble"] .mx_EventTile_line a.mx_Pill, .mx_Pill { background: transparent !important; color: #576B95 !important; }
.mx_DateSeparator h2, .mx_TimelineSeparator { color: #999; }
/* 输入区 + 发送(S) */
.mx_MessageComposer { background: var(--ct-chat) !important; border-top: 1px solid #ddd; }
.mx_MessageComposer_wrapper { padding-bottom: 46px !important; position: relative; }
.ct-send-btn { position: absolute; right: 22px; bottom: 9px; background: #E9E9E9; color: var(--ct-green-d); border: 0; border-radius: 4px; padding: 6px 20px; font-size: 14px; cursor: pointer; font-family: inherit; }
.ct-send-btn:hover { background: #d2d2d2; }
.ct-send-btn.ct-active { background: var(--ct-green); color: #fff; }
/* 通讯录面板 */
.ct-contacts { position: fixed; z-index: 50; top: 0; bottom: 0; background: var(--ct-list); border-right: 1px solid #ddd; overflow-y: auto; font-size: 15px; color: #111; }
.ct-contacts h3 { font-size: 13px; color: #777; font-weight: 400; padding: 14px 16px 6px; margin: 0; }
.ct-contacts .ct-title { padding: 22px 16px 10px; font-size: 17px; font-weight: 600; display: flex; }
.ct-contacts .ct-title button { margin-left: auto; border: 0; background: #E2E2E2; border-radius: 4px; cursor: pointer; }
.ct-contacts .ct-row { display: flex; align-items: center; gap: 12px; padding: 10px 16px; cursor: pointer; background: #fff; border-bottom: 1px solid #f0f0f0; }
.ct-contacts .ct-row:hover { background: #EAEAEA; }
.ct-contacts .ct-av { width: 40px; height: 40px; border-radius: 6px; color: #fff; display: flex; align-items: center; justify-content: center; flex: none; background-size: cover; }
.ct-contacts .ct-sub { font-size: 12px; color: #999; }
.ct-contacts .ct-empty { padding: 16px; color: #999; font-size: 13px; }
.ct-contacts .ct-badge { margin-left: auto; background: var(--ct-red); color: #fff; border-radius: 9px; font-size: 11px; padding: 1px 6px; }
.ct-nav-btn { width: 40px; height: 40px; margin: 6px auto; border-radius: 8px; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #aaa; position: relative; }
.ct-nav-btn:hover { background: #3a3a3a; }
.ct-nav-btn.ct-on { color: var(--ct-green); }
.ct-nav-btn .ct-dot { position: absolute; top: 4px; right: 4px; background: var(--ct-red); color: #fff; font-size: 10px; border-radius: 8px; min-width: 15px; height: 15px; line-height: 15px; text-align: center; }
/* v2: 新版 CSS-module 时间线 / 会话列表 */
li.mx_EventTile[class*="_layoutBubble_"]:has(.mx_MTextBody,.mx_MImageBody,.mx_MFileBody,.mx_MVideoBody,.mx_MVoiceMessageBody,.mx_MAudioBody,.mx_DecryptionFailureBody) .mx_EventTile_line { background: #fff !important; border-radius: 6px !important; padding: 8px 12px !important; color: #111 !important; box-shadow: none !important; }
li.mx_EventTile[class*="_layoutBubble_"][class*="_stateOwnEvent_"]:has(.mx_MTextBody,.mx_MImageBody,.mx_MFileBody,.mx_MVideoBody,.mx_MVoiceMessageBody,.mx_MAudioBody) .mx_EventTile_line { background: var(--ct-bubble-me) !important; }
li.mx_EventTile[class*="_layoutBubble_"] .mx_EventTile_body { color: #111 !important; font-size: 14.5px; }
li.mx_EventTile[class*="_layoutBubble_"] .mx_DisambiguatedProfile, li.mx_EventTile[class*="_layoutBubble_"] [class*="_slotSender_"] * { color: #888 !important; font-weight: 400 !important; font-size: 12px !important; }
.mx_RoomListItemView .mx_RoomAvatarView .mx_BaseAvatar { --cpd-avatar-size: 42px !important; border-radius: 6px !important; }
.mx_RoomListItemView [class*="_container_"] { min-height: 64px; }
.mx_RoomListItemView[aria-selected="true"] [class*="_container_"], [aria-selected="true"] > .mx_RoomListItemView [class*="_container_"] { background: var(--ct-list-sel) !important; }
.mx_RoomListItemView [class*="_roomName_"] { color: #111 !important; font-size: 15px !important; font-weight: 400 !important; }
.mx_RoomListItemView [class*="_messagePreview_"], .mx_RoomListItemView [class*="_ellipsis_"] + * { color: #999 !important; font-size: 12.5px !important; }
/* 无头像时用实色方块 + 白字（同设计稿） */
[class*="_avatar-imageless_"] { color: #fff !important; }
[class*="_avatar-imageless_"][data-color="1"] { background: #5B8FF9 !important; }
[class*="_avatar-imageless_"][data-color="2"] { background: #F6903D !important; }
[class*="_avatar-imageless_"][data-color="3"] { background: #9270CA !important; }
[class*="_avatar-imageless_"][data-color="4"] { background: #E8684A !important; }
[class*="_avatar-imageless_"][data-color="5"] { background: #269A99 !important; }
[class*="_avatar-imageless_"][data-color="6"] { background: #2BB673 !important; }
/* ===== v3: QA 修复 ===== */
/* 2 隐藏 Element 圆形发送箭头，保留 发送(S) */
.mx_MessageComposer_sendMessage, .mx_MessageComposer_sendMessageWrapper, .mx_MessageComposer button[aria-label="发送消息"] { display: none !important; }
/* 3 时间戳移到气泡外侧，悬停显示，不压文字 */
li.mx_EventTile[class*="_layoutBubble_"] .mx_EventTile_line { position: relative; overflow: visible !important; }
li.mx_EventTile[class*="_layoutBubble_"] [class*="_slotTimestamp_"] { position: absolute !important; left: calc(100% + 6px) !important; right: auto !important; bottom: 2px !important; top: auto !important; inset-inline: auto; white-space: nowrap; font-size: 11px; color: #b2b2b2; opacity: 0; transition: opacity .15s; padding: 0 !important; margin: 0 !important; width: auto !important; }
li.mx_EventTile[class*="_layoutBubble_"][class*="_stateOwnEvent_"] [class*="_slotTimestamp_"] { left: auto !important; right: calc(100% + 6px) !important; }
li.mx_EventTile[class*="_layoutBubble_"]:hover [class*="_slotTimestamp_"] { opacity: 1; }
li.mx_EventTile[class*="_layoutBubble_"] [class*="_slotTimestamp_"] a { color: #b2b2b2 !important; }
/* 4 群头部 */
.mx_RoomHeader button[aria-label="视频通话"], .mx_RoomHeader button[aria-label="消息列"], .mx_RoomHeader button[aria-label="房间信息"]._icon-button_1215g_8, .mx_RoomHeader [class*="_icon-button_"][aria-label="房间信息"], .mx_RoomHeader .mx_FacePile, .mx_RoomHeader .mx_FacePile_wrapper { display: none !important; }
.mx_RoomHeader .mx_FacePile { display: none !important; }
.mx_RoomHeader .mx_FacePile, .mx_RoomHeader div:has(> .mx_FacePile) { display: none !important; }
.ct-hdr-badge { margin-left: auto; color: #666; font-size: 13px; white-space: nowrap; display: flex; align-items: center; gap: 4px; }
.ct-hdr-more { border: 0; background: transparent; font-size: 20px; letter-spacing: 1px; color: #555; cursor: pointer; padding: 0 6px 6px; line-height: 1; }
.ct-hdr-more:hover { color: #111; }
.ct-hdr-count { color: #111; font-weight: inherit; }
/* 5 @提及 蓝色高亮 */
.mx_Pill, a.mx_Pill, .mx_UserPill, [class*="_pill_"] { background: rgba(87,107,149,.12) !important; color: #576B95 !important; border-radius: 4px !important; padding: 0 3px !important; }
.mx_Pill .mx_BaseAvatar, .mx_Pill img { display: none !important; }
.mx_EventTile_body .mx_Pill_text { color: #576B95 !important; }
/* 6 隐藏已读回执头像 */
.mx_ReadReceiptGroup, [class*="_slotReceipt_"] .mx_ReadReceiptGroup { display: none !important; }
/* 7 状态/汇总事件：居中灰色小字 */
li.mx_GenericEventListSummary, li.mx_EventTile[class*="_layoutBubble_"]:not(:has(.mx_MTextBody,.mx_MImageBody,.mx_MFileBody,.mx_MVideoBody,.mx_MVoiceMessageBody,.mx_MAudioBody,.mx_DecryptionFailureBody,.mx_MLocationBody,.mx_MPollBody)) { text-align: center !important; }
li.mx_GenericEventListSummary .mx_EventTile_line, li.mx_EventTile[class*="_layoutBubble_"]:not(:has(.mx_MTextBody,.mx_MImageBody,.mx_MFileBody,.mx_MVideoBody,.mx_MVoiceMessageBody,.mx_MAudioBody,.mx_DecryptionFailureBody,.mx_MLocationBody,.mx_MPollBody)) .mx_EventTile_line { display: flex !important; justify-content: center !important; margin: 0 auto !important; background: transparent !important; float: none !important; inset-inline-start: auto !important; }
li.mx_GenericEventListSummary .mx_TextualEvent, li.mx_GenericEventListSummary_summary, .mx_TextualEvent { font-size: 12px !important; color: #999 !important; }
li.mx_GenericEventListSummary .mx_GenericEventListSummary_avatars, li.mx_EventTile:not(:has(.mx_MTextBody)) .mx_EventTile_info .mx_BaseAvatar { display: none !important; }
li.mx_GenericEventListSummary { display: flex !important; flex-direction: column; align-items: center; }
li.mx_GenericEventListSummary .mx_GenericEventListSummary_toggle { position: static !important; float: none !important; font-size: 12px !important; color: #576B95 !important; order: 2; margin: 0 !important; }
li.mx_GenericEventListSummary[data-expanded="true"] li.mx_EventTile .mx_EventTile_line { justify-content: center; }
/* 9 桌面通知 Toast：移到左下角，不遮挡搜索/筛选 */
.mx_ToastContainer { top: auto !important; bottom: 16px !important; left: 76px !important; }
html body .mx_EventTile_body a.mx_Pill, html body .mx_EventTile_body a.mx_Pill.mx_UserPill_me, html body a.mx_Pill.mx_UserPill_me { background: rgba(87,107,149,.14) !important; background-color: rgba(87,107,149,.14) !important; color: #576B95 !important; box-shadow: none !important; }
html body a.mx_Pill .mx_Pill_text { color: #576B95 !important; }
html body a.mx_UserPill .mx_Pill_text::before { content: "@"; }
li.mx_EventTile[class*="_stateHighlighted_"], li.mx_EventTile[class*="_highlight"] { background: transparent !important; box-shadow: none !important; }
li.mx_EventTile[class*="_stateHighlighted_"]::before, li.mx_EventTile[class*="_highlight"]::before { display: none !important; }
/* ===== v4: 源码导航 / 会话行时间 / 输入区工具栏 ===== */
.mx_ClearTalkNav { display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 14px 0 8px; }
.mx_ClearTalkNav_item { width: 40px; height: 40px; border-radius: 8px; display: flex !important; align-items: center; justify-content: center; color: #9a9a9a !important; cursor: pointer; }
.mx_ClearTalkNav_item:hover { background: #3a3a3a; color: #ddd !important; }
.mx_ClearTalkNav_item_active { color: var(--ct-green) !important; }
.mx_ClearTalkNav_settings { margin: auto auto 4px; }
.mx_SpacePanel:has(.mx_ClearTalkNav) .ct-nav-btn { display: none !important; }
.mx_SpacePanel .mx_ThreadsActivityCentre_container { display: none !important; }
.mx_SpacePanel:has(.mx_ClearTalkNav) .mx_SpaceItem_new { display: none !important; }
.mx_ClearTalk_rowTime { color: #b2b2b2 !important; }
.mx_ClearTalk_rowMeta [class*="_unread-counter_"] { min-width: 18px; height: 18px; line-height: 18px; font-size: 11px; border-radius: 9px; padding: 0 5px; }
/* 输入区：工具栏在输入框上方 */
.mx_MessageComposer_row { flex-wrap: wrap !important; align-items: flex-start !important; }
.mx_MessageComposer_row > .mx_MessageComposer_actions { order: -1; flex: 0 0 100%; justify-content: flex-start !important; gap: 6px; padding: 2px 0 6px; margin: 0 !important; }
.mx_MessageComposer_row > .mx_MessageComposer_actions > * { color: #555 !important; }
.mx_MessageComposer_row > :not(.mx_MessageComposer_actions) { flex: 1 1 auto; min-height: 60px; }
.mx_MessageComposer .mx_MessageComposer_e2eIconWrapper { display: none; }
.ct-tool { width: 32px; height: 32px; border: 0; background: transparent; color: #555; cursor: pointer; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; }
.ct-tool:hover { background: #e6e6e6; }
.mx_ClearTalkNav .ct-dot { position: absolute; top: 3px; right: 3px; background: var(--ct-red); color: #fff; font-size: 10px; border-radius: 8px; min-width: 15px; height: 15px; line-height: 15px; text-align: center; padding: 0 3px; }
.mx_ClearTalkNav_item { position: relative; }
.mx_SpacePanel .mx_ClearTalkNav_item[aria-selected="true"], .mx_SpacePanel .mx_ClearTalkNav_item.mx_ClearTalkNav_item_active, .mx_SpacePanel .mx_ClearTalkNav_item[aria-selected="true"] svg { color: var(--ct-green) !important; }
/* ===== v5: 添加朋友 ===== */
.ct-contacts .ct-title .ct-add { margin-left: auto; margin-right: 8px; background: var(--ct-green); color: #fff; border: 0; border-radius: 4px; padding: 3px 10px; font-size: 13px; cursor: pointer; }
.ct-contacts .ct-title .ct-add + button { margin-left: 0; }
.ct-grow { flex: 1; min-width: 0; }
.ct-grow > div { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ct-btn { border: 0; border-radius: 4px; padding: 4px 12px; font-size: 13px; cursor: pointer; background: #EDEDED; color: #333; font-family: inherit; flex: none; }
.ct-btn:disabled { opacity: .6; cursor: default; }
.ct-btn-green { background: var(--ct-green); color: #fff; }
.ct-btn-done { background: transparent; color: #999; }
.ct-state { color: #999; font-size: 12px; flex: none; }
.ct-modal-mask { position: fixed; inset: 0; background: rgba(0,0,0,.35); z-index: 5000; display: flex; align-items: center; justify-content: center; }
.ct-modal { width: 440px; max-height: 80vh; background: #F7F7F7; border-radius: 8px; box-shadow: 0 8px 30px rgba(0,0,0,.2); display: flex; flex-direction: column; overflow: hidden; color: #111; font-size: 14px; }
.ct-modal-hd { padding: 16px 18px 10px; font-size: 16px; font-weight: 600; display: flex; }
.ct-modal-x { margin-left: auto; border: 0; background: transparent; font-size: 20px; cursor: pointer; color: #888; }
.ct-search-row { display: flex; gap: 8px; padding: 0 18px 10px; }
.ct-input { flex: 1; height: 32px; border: 1px solid #ddd; border-radius: 4px; padding: 0 10px; font-size: 13px; font-family: inherit; background: #fff; width: 100%; box-sizing: border-box; }
.ct-input:focus { outline: none; border-color: var(--ct-green); }
.ct-note { padding: 0 18px 10px; display: flex; flex-direction: column; gap: 4px; }
.ct-results { overflow-y: auto; min-height: 120px; background: #fff; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.ct-results .ct-row, .ct-contacts .ct-row { display: flex; align-items: center; gap: 12px; padding: 10px 16px; border-bottom: 1px solid #f0f0f0; background: #fff; }
.ct-modal .ct-av { width: 40px; height: 40px; border-radius: 6px; color: #fff; display: flex; align-items: center; justify-content: center; flex: none; background-size: cover; }
.ct-modal .ct-sub, .ct-hint { font-size: 12px; color: #999; }
.ct-hint { padding: 8px 18px 14px; }
.ct-modal .ct-empty { padding: 16px; color: #999; font-size: 13px; text-align: center; }
/* ===== v6: 国内聊天习惯 ===== */
.mx_ClearTalk_pinned { background: #EBEBEB !important; }
.mx_ClearTalk_mentionTag, .mx_ClearTalk_draftTag { color: #FA5151 !important; }
.mx_ClearTalk_muted [class*="_unread-counter_"] { background: #C8C8C8 !important; }
/* 引用/回复：气泡下方灰色引用块 */
li.mx_EventTile .mx_ReplyChain, li.mx_EventTile .mx_ReplyPreview, li.mx_EventTile blockquote.mx_ReplyChain { background: #EDEDED !important; border-left: 0 !important; border-radius: 4px !important; padding: 4px 8px !important; color: #777 !important; font-size: 12.5px !important; }
.mx_ReplyPreview { background: #EDEDED !important; border-radius: 6px; }
/* 文件消息卡片 */
li.mx_EventTile .mx_MFileBody { background: #fff; border-radius: 6px; padding: 10px 12px; min-width: 220px; }
li.mx_EventTile .mx_MImageBody img { border-radius: 6px; }
/* 群公告（置顶消息横幅） */
.mx_PinnedMessageBanner { background: #FFFBEA !important; border-bottom: 1px solid #F0E6B8 !important; }

/* ===== v5 ===== */
[data-ct-name] { font-size: 0 !important; }
[data-ct-name]::after { content: attr(data-ct-name); font-size: 14px; }
span[data-testid="avatar-img"][data-ct-name]::after { font-size: 15px; }
.ct-note-input { height: auto !important; min-height: 64px; padding: 8px 10px !important; resize: vertical; line-height: 1.5; }
.ct-toast { position: fixed; left: 50%; top: 40%; transform: translateX(-50%); background: rgba(0,0,0,.75); color: #fff; padding: 10px 22px; border-radius: 6px; font-size: 14px; z-index: 99999; }
.ct-btn { font-size: 13px !important; min-width: 56px; }
/* QA9: hide Element "主页" header + filter chips */
.mx_RoomListHeaderView h1, .mx_RoomListHeaderView [class*="title"], [class*="_roomListPrimaryFilters"], .mx_RoomListPrimaryFilters, [data-testid="primary-filters"] { display: none !important; }
/* QA6: no avatar/sender on recalled lines, centred gray */
.mx_EventTile:has(.mx_RedactedBody) .mx_EventTile_avatar, .mx_EventTile:has(.mx_RedactedBody) .mx_DisambiguatedProfile { display: none !important; }
.mx_EventTile:has(.mx_RedactedBody) .mx_EventTile_line { background: transparent !important; box-shadow: none !important; margin: 0 auto !important; color: #999 !important; font-size: 12px !important; }
.mx_EventTile:has(.mx_RedactedBody) .mx_RedactedBody::before { display: none !important; }
/* QA11: hide encryption system event tiles */
.mx_EventTile:has(.mx_cryptoEvent), li:has(> .mx_cryptoEvent), .mx_cryptoEvent { display: none !important; }
/* QA3/release announcement fallback */
[class*="_releaseAnnouncement"], .mx_ReleaseAnnouncement { display: none !important; }
.ct-mute { cursor: pointer; padding: 8px 16px; }
.ct-mute:hover { background: #f2f2f2; }
h1[title="主页"] { font-size: 0 !important; }
h1[title="主页"]::after { content: "消息"; font-size: 16px; }
/* v6 */
.ct-btn { font-size: 14px !important; padding: 5px 14px !important; }
.ct-reedit:hover { text-decoration: underline; }
/* v6.3 @所有人 = blue text like other mentions, no red pill */
.mx_EventTile .mx_AtRoomPill, .mx_EventTile .mx_Pill.mx_AtRoomPill, .ct-atall { background: transparent !important; color: #576B95 !important; padding: 0 !important; font-weight: normal !important; }
.mx_EventTile .mx_AtRoomPill .mx_BaseAvatar, .mx_EventTile .mx_AtRoomPill img { display: none !important; }
.mx_BasicMessageComposer_input .mx_Pill[data-ct-atall] { font-size: 0 !important; background: transparent !important; }
.mx_BasicMessageComposer_input .mx_Pill[data-ct-atall]::before { display: none !important; }
.mx_BasicMessageComposer_input .mx_Pill[data-ct-atall]::after { content: "@所有人"; font-size: 14px; color: #576B95; }
.ct-pin-sys { color: #999; font-size: 12px; }
.mx_PinnedMessageBanner_title, .ct-pin-title { color: #07C160 !important; font-weight: 600; }
.ct-pin-title { font-size: 12px !important; text-align: left !important; }
li[data-ct-red] .mx_MessageActionBar { display: none !important; }

/* v7.0.2: 设置侧栏等只在键盘导航时显示焦点框，鼠标点击不显示 */
.mx_TabbedView_tabLabel:focus:not(:focus-visible),
.mx_TabbedView_tabLabel *:focus:not(:focus-visible),
.mx_UserSettingsDialog .mx_AccessibleButton:focus:not(:focus-visible),
.mx_UserSettingsDialog [role=tab]:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
.mx_TabbedView_tabLabel:focus-visible { outline: 2px solid #07A152 !important; outline-offset: 2px; }
/* v7.1.1: 点击（鼠标/触摸）不显示焦点框，只有键盘 Tab 时显示绿色焦点框；覆盖群公告条及其他可点击的条/按钮 */
*:focus:not(:focus-visible) { outline: none !important; }
.mx_PinnedMessageBanner:focus:not(:focus-visible), .ct-ann:focus:not(:focus-visible), .mx_AccessibleButton:focus:not(:focus-visible),
[role=button]:focus:not(:focus-visible), [role=switch]:focus:not(:focus-visible), [role=menuitem]:focus:not(:focus-visible),
[role=option]:focus:not(:focus-visible), [role=treeitem]:focus:not(:focus-visible), button:focus:not(:focus-visible), a:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
.mx_PinnedMessageBanner:focus-visible, .ct-ann:focus-visible, .ct-mute-user:focus-visible, .ct-muteall-sw:focus-visible,
.mx_RoomView_messagePanel .mx_AccessibleButton:focus-visible, .mx_RoomListItemView:focus-visible { outline: 2px solid #07A152 !important; outline-offset: -2px; }
/* v7.1.2: 键盘焦点统一为绿色；群公告条及其按钮显示 2px 绿色焦点框 */
*:focus-visible { outline-color: #07A152 !important; }
.mx_PinnedMessageBanner:focus-visible, .mx_PinnedMessageBanner *:focus-visible { outline: 2px solid #07A152 !important; outline-offset: -2px; border-radius: 4px; }
/* v7.1.4: 设置窗口左侧选中项对比度（所有设置窗口的所有标签） */
.mx_TabbedView_tabLabel_active { background: #E8F7EE !important; }
.mx_TabbedView_tabLabel_active, .mx_TabbedView_tabLabel_active * { color: #07A152 !important; font-weight: 600; }
.mx_TabbedView_tabLabel_active svg, .mx_TabbedView_tabLabel_active .mx_TabbedView_maskedIcon { color: #07A152 !important; fill: currentColor; }
.mx_TabbedView_tabLabel_active .mx_TabbedView_maskedIcon::before { background-color: #07A152 !important; }
/* v7.1.4: 鼠标操作时（含打开窗口后自动聚焦）不显示焦点框；按键盘后恢复 */
html[data-ct-pointer] *:focus-visible:not(input):not(textarea):not([contenteditable=true]) { outline: none !important; box-shadow: none !important; }

/* v7.2 DM read status */
body.ct-dm .mx_RoomView_MessageList .mx_ReadReceiptGroup, body.ct-dm .mx_RoomView_MessageList .mx_EventTile_receiptSent, body.ct-dm .mx_RoomView_MessageList .mx_EventTile_receiptSending { display: none !important; }
.mx_EventTile_line:has(> .ct-rr) { position: relative; overflow: visible !important; }
.ct-rr { position: absolute; right: 100%; bottom: 2px; margin-right: 6px; white-space: nowrap; font-size: 12px; line-height: 16px; color: #6f6f6f; user-select: none; pointer-events: none; }
.ct-rr[data-read="1"] { color: #067e40; }

/* v7.2.2: ClearTalk keeps light surfaces in Element's dark theme; map dark-theme Compound colour tokens to their light values so text, icons and dialogs stay consistent (dark text on light surfaces) */
html.cpd-theme-dark, body.cpd-theme-dark, .cpd-theme-dark {
  color-scheme: light;
  --cpd-color-bg-canvas-disabled: #f7f9fa;
  --cpd-color-purple-400: #e6e2ff;
  --cpd-color-red-600: #ffafa5;
  --cpd-color-alpha-red-700: rgba(255,26,5,.5);
  --cpd-color-icon-tertiary-alpha: rgba(3,21,43,.5);
  --cpd-color-gradient-action-stop3: #007a61;
  --cpd-color-gray-900: #656d77;
  --cpd-color-red-900: #d51928;
  --cpd-color-alpha-lime-500: rgba(55,202,2,.51);
  --cpd-color-bg-badge-default: #fff;
  --cpd-color-alpha-cyan-600: rgba(1,170,193,.54);
  --cpd-color-alpha-fuchsia-900: rgba(153,0,173,.8);
  --cpd-color-bg-canvas-default-level-1: #fff;
  --cpd-color-red-1200: #850006;
  --cpd-color-alpha-yellow-900: #9e5a00;
  --cpd-color-gray-300: #f0f2f5;
  --cpd-color-fuchsia-1300: #4e0068;
  --cpd-color-gradient-subtle-stop1: rgba(4,185,106,.41);
  --cpd-color-alpha-red-1300: #610000;
  --cpd-color-bg-badge-accent: #FA5151;
  --cpd-color-border-critical-primary: #d51928;
  --cpd-color-bg-action-tertiary-selected: #e1e6ec;
  --cpd-color-alpha-pink-1000: rgba(182,2,86,.97);
  --cpd-color-gray-400: #e1e6ec;
  --cpd-color-pink-400: #ffdee5;
  --cpd-color-bg-success-subtle: #f1fbf6;
  --cpd-color-alpha-pink-100: rgba(255,5,55,.02);
  --cpd-color-alpha-lime-1400: #002400;
  --cpd-color-fuchsia-1000: #972aaa;
  --cpd-color-alpha-yellow-1100: #804000;
  --cpd-color-alpha-fuchsia-200: rgba(181,5,204,.04);
  --cpd-color-alpha-gray-600: rgba(1,29,60,.26);
  --cpd-color-alpha-lime-100: rgba(79,205,29,.04);
  --cpd-color-alpha-cyan-1200: #003f75;
  --cpd-color-orange-800: #dc6700;
  --cpd-color-alpha-blue-700: rgba(2,100,237,.51);
  --cpd-color-green-1400: #002311;
  --cpd-color-red-200: #fff7f6;
  --cpd-color-fuchsia-700: #db93e1;
  --cpd-color-pink-1000: #b80a5b;
  --cpd-color-gray-100: #fbfcfd;
  --cpd-color-alpha-cyan-1300: #002c61;
  --cpd-color-blue-800: #4088ee;
  --cpd-color-alpha-gray-400: rgba(5,46,97,.12);
  --cpd-color-alpha-purple-1100: rgba(67,3,196,.86);
  --cpd-color-lime-1100: #005f00;
  --cpd-color-alpha-fuchsia-1200: rgba(93,2,121,.93);
  --cpd-color-icon-primary-alpha: rgba(2,4,8,.9);
  --cpd-color-alpha-gray-1000: rgba(3,12,27,.66);
  --cpd-color-bg-badge-secondary: #e1e6ec;
  --cpd-color-icon-tertiary: #818a95;
  --cpd-color-pink-700: #ff88a6;
  --cpd-color-bg-decorative-1: #e0f8d9;
  --cpd-color-alpha-pink-800: rgba(245,0,82,.75);
  --cpd-color-bg-action-secondary-hovered: rgba(54,104,129,.04);
  --cpd-color-border-interactive-secondary: #bdc4cc;
  --cpd-color-green-1000: #006b52;
  --cpd-color-alpha-lime-1300: #003800;
  --cpd-color-alpha-fuchsia-500: rgba(180,7,192,.23);
  --cpd-color-pink-100: #fffafb;
  --cpd-color-bg-accent-hovered: #06AD56;
  --cpd-color-pink-1200: #7e0642;
  --cpd-color-alpha-gray-300: rgba(5,38,87,.06);
  --cpd-color-lime-1200: #004b00;
  --cpd-color-gradient-critical-stop1: #fff7f6;
  --cpd-color-separator-primary: #e1e6ec;
  --cpd-color-gradient-subtle-linear: linear-gradient(180deg,rgba(4,185,106,.41) 0%,rgba(7,182,97,.23) 20%,rgba(0,184,92,.11) 40%,rgba(22,187,105,.06) 60%,rgba(22,187,121,.03) 80%,transparent 100%);
  --cpd-color-alpha-yellow-1000: #8f4c00;
  --cpd-color-gradient-critical-stop2: #fff;
  --cpd-color-lime-1000: #006e00;
  --cpd-color-cyan-600: #76d1dd;
  --cpd-color-purple-1400: #200066;
  --cpd-color-yellow-1400: #410600;
  --cpd-color-green-400: #c6eedb;
  --cpd-color-green-500: #98e1c1;
  --cpd-color-blue-300: #e9f2ff;
  --cpd-color-bg-action-primary-pressed: #059A4C;
  --cpd-color-alpha-gray-500: rgba(5,36,72,.2);
  --cpd-color-alpha-orange-1000: #ad3400;
  --cpd-color-alpha-green-900: #007a62;
  --cpd-color-bg-critical-hovered: #bc0f22;
  --cpd-color-alpha-purple-400: rgba(47,15,255,.12);
  --cpd-color-alpha-lime-800: rgba(32,147,1,.91);
  --cpd-color-fuchsia-100: #fefafe;
  --cpd-color-orange-600: #fdb37c;
  --cpd-color-alpha-purple-800: rgba(59,1,249,.56);
  --cpd-color-alpha-gray-1400: rgba(2,4,8,.9);
  --cpd-color-purple-1300: #33008d;
  --cpd-color-text-action-success: #007a61;
  --cpd-color-alpha-gray-900: rgba(3,16,33,.61);
  --cpd-color-alpha-cyan-100: rgba(22,187,187,.03);
  --cpd-color-alpha-fuchsia-400: rgba(189,9,195,.13);
  --cpd-color-alpha-pink-1400: #420017;
  --cpd-color-text-info-primary: #064ab1;
  --cpd-color-icon-disabled: #a6adb7;
  --cpd-color-alpha-red-1200: #850007;
  --cpd-color-alpha-green-1200: #004732;
  --cpd-color-text-badge-accent: #005c45;
  --cpd-color-alpha-green-1100: #005c45;
  --cpd-color-orange-1100: #9b2200;
  --cpd-color-border-disabled: #cdd3da;
  --cpd-color-alpha-green-1000: #006b52;
  --cpd-color-bg-decorative-4: #f1efff;
  --cpd-color-alpha-pink-400: rgba(255,0,55,.13);
  --cpd-color-alpha-cyan-1100: #00568f;
  --cpd-color-alpha-lime-700: rgba(57,189,0,.86);
  --cpd-color-purple-200: #f8f7ff;
  --cpd-color-alpha-orange-800: #db6600;
  --cpd-color-alpha-purple-200: rgba(83,56,255,.04);
  --cpd-color-alpha-yellow-300: rgba(255,201,5,.25);
  --cpd-color-fuchsia-900: #ad33bd;
  --cpd-color-alpha-purple-100: rgba(56,56,255,.02);
  --cpd-color-alpha-orange-900: #bd4500;
  --cpd-color-lime-800: #359d18;
  --cpd-color-alpha-blue-1100: rgba(1,72,178,.98);
  --cpd-color-alpha-gray-1300: rgba(3,5,12,.84);
  --cpd-color-green-300: #e3f7ed;
  --cpd-color-bg-critical-subtle-hovered: #ffefec;
  --cpd-color-bg-accent-subtle: #f1fbf6;
  --cpd-color-purple-100: #fbfbff;
  --cpd-color-cyan-100: #f8fdfd;
  --cpd-color-alpha-purple-1300: #34008f;
  --cpd-color-alpha-pink-700: rgba(255,0,64,.47);
  --cpd-color-alpha-orange-300: rgba(255,108,10,.11);
  --cpd-color-gradient-action-stop4: #005c45;
  --cpd-color-lime-500: #99e57e;
  --cpd-color-gray-1300: #2b2d32;
  --cpd-color-yellow-800: #be7a00;
  --cpd-color-alpha-red-1100: rgba(162,1,28,.99);
  --cpd-color-pink-600: #ffadc0;
  --cpd-color-red-400: #ffdfda;
  --cpd-color-gradient-subtle-stop3: rgba(0,184,92,.11);
  --cpd-color-alpha-orange-100: rgba(255,129,56,.04);
  --cpd-color-blue-1400: #000e65;
  --cpd-color-border-info-subtle: #7eaff6;
  --cpd-color-alpha-red-1400: #470000;
  --cpd-color-alpha-pink-1200: rgba(121,1,61,.98);
  --cpd-color-text-decorative-6: #9b2200;
  --cpd-color-green-800: #009b78;
  --cpd-color-fuchsia-300: #faeefb;
  --cpd-color-purple-600: #c5bbff;
  --cpd-color-bg-action-primary-rest: #07C160;
  --cpd-color-purple-500: #d4cdff;
  --cpd-color-gradient-action-linear: linear-gradient(180deg,#98e1c1 0%,#0bc491 33%,#007a61 66%,#005c45 100%);
  --cpd-color-gray-200: #f7f9fa;
  --cpd-color-alpha-yellow-500: #facc00;
  --cpd-color-fuchsia-1200: #671481;
  --cpd-color-icon-warning-primary: #bc4500;
  --cpd-color-alpha-lime-400: rgba(58,206,9,.28);
  --cpd-color-yellow-1100: #803f00;
  --cpd-color-orange-700: #f89440;
  --cpd-color-text-critical-primary: #d51928;
  --cpd-color-alpha-purple-300: rgba(56,26,255,.07);
  --cpd-color-alpha-pink-900: rgba(207,2,94,.96);
  --cpd-color-bg-critical-primary: #FA5151;
  --cpd-color-alpha-fuchsia-800: rgba(171,3,186,.64);
  --cpd-color-lime-300: #e0f8d9;
  --cpd-color-icon-secondary-alpha: rgba(3,16,33,.61);
  --cpd-color-pink-800: #f7407d;
  --cpd-color-alpha-blue-1000: rgba(2,86,197,.99);
  --cpd-color-bg-decorative-3: #faeefb;
  --cpd-color-border-success-subtle: #98e1c1;
  --cpd-color-purple-1000: #6b37de;
  --cpd-color-bg-accent-selected: rgba(0,184,92,.11);
  --cpd-color-alpha-red-1000: rgba(187,2,23,.95);
  --cpd-color-cyan-1400: #00194f;
  --cpd-color-text-disabled: #818a95;
  --cpd-color-bg-success-rest: #007a61;
  --cpd-color-alpha-lime-600: rgba(64,206,3,.71);
  --cpd-color-lime-1400: #002400;
  --cpd-color-gradient-action-stop2: #0bc491;
  --cpd-color-orange-1000: #ac3300;
  --cpd-color-border-critical-hovered: #bc0f22;
  --cpd-color-alpha-pink-200: rgba(255,5,55,.04);
  --cpd-color-alpha-red-900: rgba(207,2,19,.91);
  --cpd-color-gradient-info-stop2: #fff;
  --cpd-color-green-1100: #005c45;
  --cpd-color-border-interactive-hovered: #4c5158;
  --cpd-color-text-action-accent: #06AD56;
  --cpd-color-alpha-blue-1300: #012579;
  --cpd-color-cyan-700: #15becf;
  --cpd-color-alpha-blue-300: rgba(10,112,255,.09);
  --cpd-color-blue-1100: #064ab1;
  --cpd-color-yellow-100: #fffcf0;
  --cpd-color-bg-action-secondary-pressed: rgba(5,38,87,.06);
  --cpd-color-yellow-600: #f1bd00;
  --cpd-color-icon-secondary: #656d77;
  --cpd-color-alpha-purple-600: rgba(43,5,255,.27);
  --cpd-color-gradient-info-stop1: #f4f8ff;
  --cpd-color-bg-badge-primary: #1b1d22;
  --cpd-color-alpha-purple-1400: #200066;
  --cpd-color-alpha-fuchsia-100: rgba(204,5,204,.02);
  --cpd-color-icon-info-primary: #064ab1;
  --cpd-color-alpha-green-700: rgba(1,193,138,.96);
  --cpd-color-bg-critical-subtle: #fff7f6;
  --cpd-color-fuchsia-1100: #822198;
  --cpd-color-red-100: #fffaf9;
  --cpd-color-yellow-900: #9f5b00;
  --cpd-color-pink-1300: #5f002b;
  --cpd-color-blue-200: #f4f8ff;
  --cpd-color-yellow-300: #fff2c1;
  --cpd-color-bg-action-primary-disabled: #a6adb7;
  --cpd-color-orange-200: #fff6ef;
  --cpd-color-icon-on-solid-primary: #fff;
  --cpd-color-alpha-cyan-700: rgba(1,183,203,.92);
  --cpd-color-purple-1100: #5d26cd;
  --cpd-color-border-focused: #07C160;
  --cpd-color-alpha-orange-600: rgba(252,111,3,.52);
  --cpd-color-alpha-green-100: rgba(22,187,121,.03);
  --cpd-color-pink-300: #ffecf0;
  --cpd-color-alpha-gray-1100: rgba(3,11,22,.71);
  --cpd-color-green-600: #71d7ae;
  --cpd-color-lime-200: #f1fcee;
  --cpd-color-gradient-critical-linear: linear-gradient(180deg,#fff7f6 0%,#fff 100%);
  --cpd-color-alpha-fuchsia-300: rgba(182,12,198,.07);
  --cpd-color-gradient-subtle-stop5: rgba(22,187,121,.03);
  --cpd-color-alpha-green-500: rgba(4,185,106,.41);
  --cpd-color-icon-primary: #1b1d22;
  --cpd-color-orange-300: #ffefe4;
  --cpd-color-alpha-yellow-100: rgba(255,205,5,.06);
  --cpd-color-alpha-purple-1000: rgba(69,2,212,.79);
  --cpd-color-icon-quaternary-alpha: rgba(1,21,50,.35);
  --cpd-color-alpha-yellow-400: rgba(255,201,5,.49);
  --cpd-color-bg-subtle-primary: #e1e6ec;
  --cpd-color-alpha-orange-400: rgba(255,109,5,.22);
  --cpd-color-bg-badge-critical: #ffefec;
  --cpd-color-pink-900: #d20c65;
  --cpd-color-bg-accent-rest: #07C160;
  --cpd-color-text-decorative-4: #5d26cd;
  --cpd-color-alpha-cyan-800: #0095c2;
  --cpd-color-purple-800: #9271fd;
  --cpd-color-text-secondary: #656d77;
  --cpd-color-bg-action-tertiary-rest: #fff;
  --cpd-color-bg-canvas-default: #fff;
  --cpd-color-alpha-gray-100: rgba(54,105,155,.02);
  --cpd-color-yellow-200: #fff8e0;
  --cpd-color-icon-success-primary: #007a61;
  --cpd-color-bg-decorative-2: #e3f5f8;
  --cpd-color-text-decorative-3: #822198;
  --cpd-color-gradient-action-stop1: #98e1c1;
  --cpd-color-alpha-green-1300: #00331f;
  --cpd-color-text-decorative-2: #00548c;
  --cpd-color-text-success-primary: #007a61;
  --cpd-color-alpha-blue-100: rgba(56,156,255,.03);
  --cpd-color-alpha-orange-1400: #470000;
  --cpd-color-red-1100: #a4041d;
  --cpd-color-fuchsia-200: #fcf5fd;
  --cpd-color-alpha-blue-900: rgba(1,101,223,.99);
  --cpd-color-alpha-gray-200: rgba(54,104,129,.04);
  --cpd-color-cyan-1300: #002b61;
  --cpd-color-green-700: #0bc491;
  --cpd-color-blue-400: #d8e7fe;
  --cpd-color-alpha-blue-1400: #000e66;
  --cpd-color-alpha-purple-500: rgba(38,5,255,.2);
  --cpd-color-bg-subtle-secondary-level-0: #f0f2f5;
  --cpd-color-alpha-fuchsia-1300: #4d0066;
  --cpd-color-alpha-pink-600: rgba(255,5,63,.33);
  --cpd-color-alpha-lime-300: rgba(46,207,2,.15);
  --cpd-color-orange-1300: #620000;
  --cpd-color-border-interactive-pressed: #1b1d22;
  --cpd-color-gray-800: #818a95;
  --cpd-color-alpha-blue-600: rgba(6,99,239,.37);
  --cpd-color-blue-1000: #0558c7;
  --cpd-color-alpha-red-500: rgba(255,38,5,.27);
  --cpd-color-pink-1400: #430017;
  --cpd-color-blue-700: #7eaff6;
  --cpd-color-icon-accent-tertiary: #07C160;
  --cpd-color-cyan-400: #c7ecf0;
  --cpd-color-blue-900: #0467dd;
  --cpd-color-yellow-500: #fbce00;
  --cpd-color-blue-500: #bad5fc;
  --cpd-color-lime-700: #54c424;
  --cpd-color-bg-badge-info: #d8e7fe;
  --cpd-color-blue-600: #a3c6fa;
  --cpd-color-cyan-300: #e3f5f8;
  --cpd-color-yellow-1300: #541a00;
  --cpd-color-red-700: #ff8c81;
  --cpd-color-bg-action-secondary-rest: #fff;
  --cpd-color-alpha-fuchsia-1100: rgba(115,3,140,.88);
  --cpd-color-alpha-lime-900: rgba(16,121,2,.96);
  --cpd-color-gradient-subtle-stop4: rgba(22,187,105,.06);
  --cpd-color-icon-accent-primary: #07C160;
  --cpd-color-bg-decorative-6: #ffefe4;
  --cpd-color-cyan-200: #f1fafb;
  --cpd-color-bg-decorative-5: #ffecf0;
  --cpd-color-lime-400: #c8f1ba;
  --cpd-color-orange-100: #fffaf7;
  --cpd-color-green-900: #007a61;
  --cpd-color-alpha-yellow-600: #f0bc00;
  --cpd-color-alpha-lime-1200: #004d00;
  --cpd-color-alpha-green-600: rgba(1,183,110,.56);
  --cpd-color-alpha-green-800: #009975;
  --cpd-color-alpha-pink-1300: #61002c;
  --cpd-color-yellow-1000: #8f4d00;
  --cpd-color-bg-accent-pressed: #059A4C;
  --cpd-color-alpha-green-1400: #002411;
  --cpd-color-red-1300: #620000;
  --cpd-color-lime-900: #197d0c;
  --cpd-color-alpha-gray-1200: rgba(2,7,13,.77);
  --cpd-color-green-1200: #004933;
  --cpd-color-orange-500: #ffc8a1;
  --cpd-color-text-on-solid-primary: #fff;
  --cpd-color-text-primary: #1b1d22;
  --cpd-color-alpha-blue-1200: rgba(1,54,147,.99);
  --cpd-color-bg-success-pressed: #005c45;
  --cpd-color-alpha-lime-200: rgba(56,212,12,.07);
  --cpd-color-bg-action-tertiary-hovered: #f0f2f5;
  --cpd-color-border-accent-subtle: #0bc491;
  --cpd-color-alpha-red-300: rgba(255,56,20,.08);
  --cpd-color-alpha-gray-700: rgba(1,21,50,.35);
  --cpd-color-alpha-red-200: rgba(255,57,31,.04);
  --cpd-color-alpha-blue-800: rgba(0,98,235,.75);
  --cpd-color-alpha-cyan-500: rgba(5,171,189,.4);
  --cpd-color-text-link-external: #064ab1;
  --cpd-color-alpha-fuchsia-1400: #34004d;
  --cpd-color-border-critical-subtle: #ffc5bc;
  --cpd-color-gradient-subtle-stop2: rgba(7,182,97,.23);
  --cpd-color-green-100: #f8fdfb;
  --cpd-color-lime-600: #76db4c;
  --cpd-color-alpha-cyan-200: rgba(22,171,187,.06);
  --cpd-color-gray-600: #bdc4cc;
  --cpd-color-fuchsia-1400: #34004c;
  --cpd-color-alpha-green-200: rgba(22,187,105,.06);
  --cpd-color-alpha-purple-700: rgba(51,5,255,.38);
  --cpd-color-alpha-orange-1100: #992100;
  --cpd-color-theme-bg: #fff;
  --cpd-color-alpha-orange-1300: #610000;
  --cpd-color-text-decorative-1: #005f00;
  --cpd-color-green-200: #f1fbf6;
  --cpd-color-alpha-green-400: rgba(7,182,97,.23);
  --cpd-color-gray-1000: #595e67;
  --cpd-color-purple-700: #b1a0ff;
  --cpd-color-lime-100: #f8fdf6;
  --cpd-color-red-1000: #bc0f22;
  --cpd-color-icon-quaternary: #a6adb7;
  --cpd-color-alpha-pink-300: rgba(255,20,71,.08);
  --cpd-color-text-decorative-5: #9f0850;
  --cpd-color-alpha-yellow-200: rgba(255,199,15,.13);
  --cpd-color-blue-1300: #012478;
  --cpd-color-gray-1100: #4c5158;
  --cpd-color-alpha-purple-900: rgba(73,2,237,.73);
  --cpd-color-alpha-blue-200: rgba(36,116,255,.05);
  --cpd-color-alpha-orange-700: rgba(245,110,0,.75);
  --cpd-color-purple-900: #7a47f1;
  --cpd-color-alpha-gray-800: rgba(3,21,43,.5);
  --cpd-color-fuchsia-600: #e7b2ea;
  --cpd-color-bg-success-hovered: #006b52;
  --cpd-color-orange-1200: #850000;
  --cpd-color-alpha-green-300: rgba(0,184,92,.11);
  --cpd-color-border-success-primary: #007a61;
  --cpd-color-blue-1200: #043894;
  --cpd-color-cyan-1200: #004077;
  --cpd-color-alpha-yellow-800: #bd7b00;
  --cpd-color-purple-1200: #4c05b5;
  --cpd-color-alpha-red-800: rgba(255,5,5,.77);
  --cpd-color-yellow-400: #ffe484;
  --cpd-color-alpha-blue-500: rgba(9,108,246,.28);
  --cpd-color-alpha-cyan-300: rgba(0,168,194,.11);
  --cpd-color-fuchsia-500: #edc6f0;
  --cpd-color-red-800: #ff3d3d;
  --cpd-color-red-500: #ffc5bc;
  --cpd-color-alpha-red-400: rgba(255,43,10,.15);
  --cpd-color-bg-subtle-tertiary: #fbfcfd;
  --cpd-color-orange-400: #ffdfc8;
  --cpd-color-separator-secondary: #f0f2f5;
  --cpd-color-text-action-primary: #1b1d22;
  --cpd-color-cyan-500: #9bdde5;
  --cpd-color-red-1400: #450000;
  --cpd-color-alpha-cyan-1400: #001a52;
  --cpd-color-alpha-cyan-1000: #00649e;
  --cpd-color-fuchsia-400: #f6dff7;
  --cpd-color-alpha-orange-1200: #850000;
  --cpd-color-gray-1400: #1b1d22;
  --cpd-color-alpha-yellow-1400: #420700;
  --cpd-color-yellow-700: #dea200;
  --cpd-color-orange-1400: #450000;
  --cpd-color-alpha-cyan-900: #0074ad;
  --cpd-color-alpha-yellow-700: #e0a500;
  --cpd-color-border-accent-primary: #007a61;
  --cpd-color-alpha-lime-1100: #006100;
  --cpd-color-alpha-blue-400: rgba(11,106,249,.16);
  --cpd-color-alpha-pink-500: rgba(255,0,55,.24);
  --cpd-color-lime-1300: #003600;
  --cpd-color-gradient-info-linear: linear-gradient(180deg,#f4f8ff 0%,#fff 100%);
  --cpd-color-alpha-purple-1200: rgba(74,2,182,.99);
  --cpd-color-fuchsia-800: #c85ed1;
  --cpd-color-green-1300: #003420;
  --cpd-color-purple-300: #f1efff;
  --cpd-color-alpha-red-100: rgba(255,89,56,.03);
  --cpd-color-alpha-fuchsia-1000: rgba(130,1,152,.84);
  --cpd-color-yellow-1200: #692e00;
  --cpd-color-red-300: #ffefec;
  --cpd-color-alpha-fuchsia-700: rgba(170,4,185,.43);
  --cpd-color-alpha-yellow-1300: #571b00;
  --cpd-color-gray-500: #cdd3da;
  --cpd-color-pink-500: #ffc2cf;
  --cpd-color-alpha-lime-1000: #007000;
  --cpd-color-icon-critical-primary: #d51928;
  --cpd-color-alpha-fuchsia-600: rgba(178,7,187,.31);
  --cpd-color-border-interactive-primary: #818a95;
  --cpd-color-cyan-800: #0094c0;
  --cpd-color-pink-1100: #9f0850;
  --cpd-color-pink-200: #fff5f7;
  --cpd-color-bg-subtle-secondary: #F7F7F7;
  --cpd-color-text-warning-primary: #bc4500;
  --cpd-color-blue-100: #f9fcff;
  --cpd-color-alpha-orange-200: rgba(255,125,26,.07);
  --cpd-color-orange-900: #bc4500;
  --cpd-color-alpha-cyan-400: rgba(0,170,189,.22);
  --cpd-color-gray-700: #a6adb7;
  --cpd-color-cyan-1000: #00629c;
  --cpd-color-gray-1200: #3c4045;
  --cpd-color-bg-action-primary-hovered: #06AD56;
  --cpd-color-cyan-900: #0072ac;
  --cpd-color-text-badge-info: #064ab1;
  --cpd-color-alpha-red-600: rgba(255,34,5,.36);
  --cpd-color-cyan-1100: #00548c;
  --cpd-color-alpha-orange-500: rgba(255,106,0,.37);
  --cpd-color-alpha-yellow-1200: #6b2e00;
  --cpd-color-alpha-pink-1100: rgba(158,0,76,.97);
  --cpd-color-bg-info-subtle: #f4f8ff;
}

/* v7.2.3: platform admin notices as centred grey system lines; dissolved group */
li.mx_EventTile.ct-sysnote .mx_EventTile_avatar, li.mx_EventTile.ct-sysnote .mx_DisambiguatedProfile, li.mx_EventTile.ct-sysnote .mx_EventTile_msgOption, li.mx_EventTile.ct-sysnote [data-testid=event-tile-slot-avatar], li.mx_EventTile.ct-sysnote [data-testid=event-tile-slot-sender], li.mx_EventTile.ct-sysnote .mx_EventTile_e2eIcon, li.mx_EventTile.ct-sysnote .mx_MessageTimestamp, li.mx_EventTile.ct-sysnote .ct-rr { display: none !important; }
li.mx_EventTile.ct-sysnote { text-align: center !important; padding: 0 !important; }
li.mx_EventTile.ct-sysnote .mx_EventTile_line { background: transparent !important; box-shadow: none !important; border: 0 !important; margin: 4px auto !important; float: none !important; padding: 0 !important; display: block !important; text-align: center !important; max-width: none !important; }
li.mx_EventTile.ct-sysnote .mx_EventTile_line::before, li.mx_EventTile.ct-sysnote .mx_EventTile_line::after { display: none !important; }
li.mx_EventTile.ct-sysnote .mx_EventTile_body, li.mx_EventTile.ct-sysnote .mx_MNoticeBody { color: #999 !important; font-size: 12px !important; display: inline-block !important; }
.ct-dissolved { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 24px 16px; margin: 16px auto; color: #1b1d22; }
.ct-dissolved-t { font-size: 15px; color: #6f6f6f; }
.ct-dissolved-del { background: #fa5151; color: #fff; border: 0; border-radius: 6px; padding: 8px 24px; font-size: 14px; cursor: pointer; }
.ct-dissolved-del:disabled { opacity: .6; }

li.mx_EventTile[data-ct-admdel] .mx_RedactedBody { white-space: nowrap !important; color: #999 !important; font-size: 12px !important; }
li.mx_EventTile[data-ct-admdel] .mx_EventTile_line { max-width: none !important; width: auto !important; }

/* v7.2.4: required server address on login */
body.ct-login-srv .mx_AuthBody .mx_ServerPicker { display: none !important; }
.ct-srv { margin: 0 0 12px; }
.ct-srv .mx_Field { margin-bottom: 4px; }
.ct-srv-msg { font-size: 12px; line-height: 16px; color: #6f6f6f; min-height: 16px; }
.ct-srv-msg.ct-srv-err { color: #d4380d; }
.ct-srv-msg.ct-srv-ok { color: #067e40; }
.mx_Login_submit.ct-disabled { opacity: .5 !important; cursor: not-allowed !important; }
body.ct-srv-busy .mx_Dialog_wrapper:has(.mx_ServerPickerDialog) { opacity: 0 !important; pointer-events: none !important; }
.ct-dissolved-s { font-size: 13px; color: #999; }
/* v7.2.5: the hover timestamp overlapped the bubble text; hide it inside bubbles (time is shown as a tooltip on the bubble instead) */
.mx_RoomView_MessageList li.mx_EventTile[class*="_layoutBubble_"] [class*="_slotTimestamp_"], .mx_RoomView_MessageList li.mx_EventTile[class*="_layoutBubble_"] .mx_MessageTimestamp { display: none !important; }

/* v7.2.5 */
.ct-sum { text-align: center; color: #999; font-size: 12px; line-height: 18px; margin: 6px 0; }
.mx_RoomView:has(> .ct-dissolved) { position: relative; }
.ct-dissolved { position: absolute !important; inset: 0; margin: 0 !important; justify-content: center; background: var(--cpd-color-bg-canvas-default, #f5f5f5); z-index: 5; }
.ct-dissolved-h { position: absolute; top: 0; left: 0; right: 0; height: 56px; line-height: 56px; padding: 0 20px; font-size: 16px; font-weight: 600; color: #1b1d22; border-bottom: 1px solid #e5e5e5; text-align: left; }
li.mx_EventTile[data-ct-admdel] .mx_RedactedBody, li.mx_EventTile.ct-sysnote .mx_RedactedBody { color: #999 !important; font-size: 12px !important; white-space: nowrap !important; display: inline-block !important; }
li.mx_EventTile.ct-sysnote .mx_RedactedBody svg { display: none !important; }
