* { box-sizing: border-box; }
:root {
  color-scheme: dark;
  --page-bg: #0c0c0e;
}
:root[data-theme="light"] {
  color-scheme: light;
  --page-bg: #eef1f5;
}
html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  background: var(--page-bg, #0c0c0e);
  color: #f0f0f4;
  font-family: "Microsoft YaHei UI", "Segoe UI", -apple-system, system-ui, "PingFang SC", "Helvetica Neue", sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  overflow: hidden;
}

body {
  --page-bg: #0c0c0e;
  --fg: #f0f0f4;
  --fg-muted: #b3b3bd;
  --fg-dim: #8a8a92;
  --card-bg: #121214;
  --card-border: #2a2a30;
  --embed-bg: #1a1a1e;
  --embed-border: #2e2e34;
  --bar-bg: #0a0a0c;
  --bar-border: #1f1f24;
  --link: #8fb8ff;
  --mention: #9fd2ff;
  --soft-shadow: none;
  --accent: #daa528;
  display: flex;
  flex-direction: column;
}
body.theme-light {
  --page-bg: #eef1f5;
  --fg: #182033;
  --fg-muted: #475467;
  --fg-dim: #667085;
  --card-bg: #f8fafc;
  --card-border: #d5dde8;
  --embed-bg: #eef3f8;
  --embed-border: #d4deea;
  --bar-bg: rgba(246, 248, 251, 0.96);
  --bar-border: #d8e1ec;
  --link: #2563eb;
  --mention: #0f63c7;
  --soft-shadow: 0 8px 22px rgba(15, 23, 42, 0.08);
  --accent: #b7791f;
  color: var(--fg);
}
#version-update-banner {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 9px 14px;
  background: linear-gradient(90deg, #7c2d12, #9a3412);
  color: #fff7ed;
  border-bottom: 1px solid rgba(255,255,255,0.18);
  font-size: 14px;
  font-weight: 800;
  -webkit-app-region: no-drag;
  app-region: no-drag;
  z-index: 20000;
}
#version-update-banner.show { display: flex; }
#version-update-banner .version-update-text {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
}
#version-update-banner .version-update-detail {
  font-size: 12px;
  font-weight: 700;
  opacity: .88;
}
#version-update-banner button {
  border: 1px solid rgba(255,255,255,0.35);
  background: #fff7ed;
  color: #7c2d12;
  border-radius: 999px;
  padding: 4px 12px;
  cursor: pointer;
  font-weight: 900;
}
#version-update-banner button:hover { filter: brightness(0.95); }
#chrome-local-translate-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 42px;
  padding: 8px 14px;
  background: linear-gradient(90deg, #991b1b, #dc2626);
  color: #fff7ed;
  border-bottom: 1px solid rgba(255,255,255,0.22);
  font-size: 14px;
  font-weight: 800;
  -webkit-app-region: no-drag;
  app-region: no-drag;
  z-index: 19999;
}
#chrome-local-translate-banner[hidden] { display: none; }
#chrome-local-translate-banner .chrome-local-translate-banner-copy {
  line-height: 1.35;
}
#chrome-local-translate-banner .chrome-local-translate-banner-status {
  min-width: 1px;
  font-size: 12px;
  font-weight: 700;
  opacity: .9;
}
#chrome-local-translate-banner button {
  border: 1px solid rgba(255,255,255,0.5);
  background: #fff7ed;
  color: #991b1b;
  border-radius: 999px;
  padding: 5px 14px;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  white-space: nowrap;
}
#chrome-local-translate-banner button:hover { filter: brightness(.95); }
#chrome-local-translate-banner button:disabled { opacity: .7; cursor: wait; }
main#feed { flex: 1; min-height: 0; }

#top-actions-bar,
#health-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 8px 18px;
  background: var(--bar-bg);
  font-size: 13px;
  -webkit-app-region: drag;
  app-region: drag;
  z-index: 100;
}
#top-actions-bar {
  border-bottom: 1px solid var(--bar-border);
  min-height: 64px;
  justify-content: flex-end;
  padding-top: 5px;
  padding-bottom: 5px;
}
#top-actions-bar .site-logo-link {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-start;
  flex: 0 0 auto;
  order: 0;
  height: 56px;
  width: 334px;
  margin-right: 14px;
  padding: 0 4px;
  color: oklch(74% .18 126);
  font-family: "JetBrains Mono", "IBM Plex Mono", "Cascadia Mono", "SF Mono", Consolas, "Courier New", monospace;
  font-size: 0;
  line-height: .82;
  font-weight: 950;
  letter-spacing: -.18em;
  text-shadow: 0 0 18px oklch(74% .18 126 / .28);
  text-decoration: none;
  -webkit-app-region: no-drag;
  app-region: no-drag;
  transition: filter .16s ease-out, transform .16s ease-out;
}
#top-actions-bar .site-logo-link:hover {
  filter: brightness(1.18) drop-shadow(0 0 22px oklch(78% .18 126 / .45));
  transform: translateY(-1px);
}
#top-actions-bar .site-logo-link::before {
  content: "985";
  font-size: 64px;
  letter-spacing: -.14em;
}
#top-actions-bar .site-logo-link::after {
  content: "monitor";
  margin-left: 10px;
  font-size: 52px;
  letter-spacing: -.12em;
}
#health-bar {
  border-top: 1px solid var(--bar-border);
  padding: 6px 18px;
  min-height: 32px;
  z-index: 90;
}
#top-actions-bar .item,
#health-bar .item { display: flex; align-items: center; gap: 6px; }
#top-actions-bar .spacer,
#health-bar .spacer { flex: 1; }
#top-actions-bar .spacer { order: 10; min-width: 16px; }
#top-actions-bar .push-channels { order: 20; }
#top-actions-bar .user-actions { order: 30; }
#top-actions-bar .admin-actions { order: 40; }
#top-actions-bar .language-actions { order: 80; margin-left: 4px; }
#top-actions-bar .theme-actions { order: 90; margin-left: 4px; }
#top-actions-bar .wallet-actions { order: 100; }
#health-bar .dot {
  width: 10px; height: 10px; border-radius: 50%;
  background: #484850;
}
#health-bar .dot.green { background: #3ca073; }
#health-bar .dot.yellow { background: #daa528; }
#health-bar .dot.red { background: #c44040; }
#health-bar .label {
  color: #e8e8ee; font-weight: 700;
  -webkit-app-region: no-drag; app-region: no-drag;
  user-select: text;
}
#health-bar .time {
  color: #8a8a92;
  font-variant-numeric: tabular-nums;
  font-size: 12px;
}
#health-bar .item[data-key="sse"] .time {
  color: #a8b3c7;
  font-weight: 650;
}

main#feed {
  overflow-y: auto;
  overflow-x: hidden;
  padding: 14px 16px 40px;
  -webkit-app-region: drag;
  app-region: drag;
}

main#feed .card,
main#feed .card * {
  -webkit-app-region: no-drag;
  app-region: no-drag;
  cursor: auto;
}
main#feed .card a,
main#feed .card button,
main#feed .card .footer a {
  cursor: pointer;
}
main#feed .card .body,
main#feed .card .translation,
main#feed .card .em-body,
main#feed .card .em-header,
main#feed .card .em-handle,
main#feed .card .handle,
main#feed .card .header .name,
main#feed .card .header .time,
main#feed .card .target-name,
main#feed .card .target-handle,
main#feed .card .verb {
  cursor: text;
}
main#feed .card a.profile-link,
main#feed .card a.text-link,
main#feed .card a.mention-link,
main#feed .card .body a,
main#feed .card .translation a,
main#feed .card .em-body a,
main#feed .card .target-name.profile-link,
main#feed .card .target-handle.profile-link {
  cursor: pointer;
}

.card a.text-link,
.card a.mention-link {
  color: #8fb8ff;
  text-decoration: none;
  border-bottom: 1px solid rgba(143, 184, 255, 0.42);
  overflow-wrap: anywhere;
}
.card a.mention-link {
  color: #9fd2ff;
  font-weight: 750;
}
.card a.text-link:hover,
.card a.mention-link:hover {
  color: #cfe2ff;
  border-bottom-color: #cfe2ff;
}
.card a.profile-link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.card a.profile-link:hover {
  color: #ffffff;
  border-bottom-color: rgba(255,255,255,0.45);
}
.card .handle a.profile-link,
.card .embed .em-handle a.profile-link,
.follow-row a.target-handle.profile-link {
  color: #9a9aa3;
}
.follow-row a.target-name.profile-link:hover,
.follow-row a.target-handle.profile-link:hover {
  color: #cfe2ff;
}

main#feed::-webkit-scrollbar {
  width: 10px;
}
main#feed::-webkit-scrollbar-thumb {
  background: #3a3a42;
  border-radius: 10px;
}
main#feed::-webkit-scrollbar-thumb:hover {
  background: #50505a;
}

.feed-history-hint {
  display: block;
  width: min(360px, calc(100% - 28px));
  margin: 14px auto 22px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(96, 165, 250, 0.32);
  background: rgba(15, 23, 42, 0.78);
  color: #bfdbfe;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
}
.feed-history-hint:hover { filter: brightness(1.08); }
body.theme-light .feed-history-hint,
html[data-theme="light"] .feed-history-hint {
  background: rgba(226, 237, 248, 0.92);
  border-color: rgba(96, 139, 185, 0.35);
  color: #31506f;
  box-shadow: 0 8px 20px rgba(101, 126, 151, 0.16);
}

main#feed::-webkit-scrollbar-track {
  background: transparent;
}

.empty {
  padding: 80px 24px;
  text-align: center;
  color: var(--fg-dim);
  font-size: 16px;
}

.card {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 16px;
  padding: 16px 20px 18px;
  margin-bottom: 14px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  grid-template-areas:
    "avatar header chip"
    "avatar handle chip"
    "body   body   body"
    "narrative narrative narrative"
    "media  media  media"
    "embed  embed  embed"
    "imagectx imagectx imagectx"
    "footer footer footer"
    "comments comments comments";
  gap: 3px 10px;
  align-items: start;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

/* Flap 底池卡片不是推文卡片，避免继承头像/正文/操作位的三列 Grid。 */
.pump-holder-filter-settings { margin: 8px 0 10px; border-top: 1px solid var(--card-border,#2a2a30); padding-top: 8px; }
.pump-holder-filter-settings summary { cursor: pointer; color: var(--fg,#f0f0f4); font-size: 12px; }
.pump-holder-filter-settings p { margin: 8px 0; color: var(--fg-dim,#8a8a92); font-size: 11px; }
.pump-holder-filter-settings fieldset { border: 0; padding: 0; margin: 10px 0; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; min-width: 0; }
.pump-holder-filter-settings legend { padding: 0; margin-bottom: 5px; color: var(--fg,#f0f0f4); }
.pump-holder-filter-settings label { display: flex; gap: 6px; align-items: center; min-width: 0; font-size: 11px; }
.pump-holder-filter-settings input[type=number] { width: 0; flex: 1; min-width: 0; padding: 5px 6px; border: 1px solid var(--card-border,#2a2a30); border-radius: 4px; background: var(--bg,#0c0c0e); color: var(--fg,#f0f0f4); font: inherit; }
.pump-holder-filter-settings input:focus-visible, .pump-holder-filter-settings summary:focus-visible, .pump-holder-filter-settings button:focus-visible { outline: 2px solid var(--accent,#daa528); outline-offset: 2px; }
.pump-holder-filter-settings .holder-sound-toggle { margin-top: 10px; }
.holder-filter-actions { display: flex; gap: 8px; margin-top: 10px; }
.holder-filter-actions button { padding: 5px 9px; cursor: pointer; font: inherit; border: 1px solid var(--card-border,#2a2a30); border-radius: 4px; color: var(--fg,#f0f0f4); background: transparent; }
.holder-filter-actions button[type=submit] { border-color: #63dba1; color: #63dba1; }

.card.flap-rwa-event,
.card.pump-holder-upgrade-event {
  display: block;
  padding: 16px 18px 18px;
}
.card.flap-rwa-event > *,
.card.pump-holder-upgrade-event > * {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.card.flap-rwa-event.pinned > div:first-child,
.card.pump-holder-upgrade-event.pinned > div:first-child {
  padding-top: 20px;
}

.card.highlight {
  border-color: var(--accent);
  box-shadow: 0 0 0 1px rgba(218, 165, 40, 0.25);
}

/* ===== 关键账号状态事件：置顶 / 资料更新 / 视觉更新 ===== */
.card.spotlight-event-card {
  position: relative;
  border-width: 2px;
  overflow: hidden;
}
.card.spotlight-event-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 34px rgba(255,255,255,.035);
}
.card.spotlight-pin-event {
  border-color: rgba(251, 191, 36, .72);
  background:
    radial-gradient(circle at top right, rgba(251, 191, 36, .22), transparent 42%),
    linear-gradient(180deg, rgba(69, 45, 8, .44), var(--card-bg) 54%);
  box-shadow: 0 0 0 1px rgba(251, 191, 36, .24), 0 0 24px rgba(251, 191, 36, .18);
}
.card.spotlight-name-event {
  border-color: rgba(251, 146, 60, .68);
  background:
    radial-gradient(circle at top right, rgba(251, 146, 60, .20), transparent 42%),
    linear-gradient(180deg, rgba(67, 35, 13, .38), var(--card-bg) 54%);
}
.card.spotlight-bio-event {
  border-color: rgba(96, 165, 250, .68);
  background:
    radial-gradient(circle at top right, rgba(96, 165, 250, .20), transparent 42%),
    linear-gradient(180deg, rgba(15, 38, 73, .38), var(--card-bg) 54%);
}
.card.spotlight-avatar-event,
.card.spotlight-banner-event {
  border-color: rgba(167, 139, 250, .72);
  background:
    radial-gradient(circle at top right, rgba(167, 139, 250, .22), transparent 42%),
    linear-gradient(180deg, rgba(45, 28, 88, .40), var(--card-bg) 54%);
  box-shadow: 0 0 0 1px rgba(167, 139, 250, .20), 0 0 24px rgba(167, 139, 250, .16);
}
.card .event-spotlight {
  grid-column: 1 / -1;
  min-width: 0;
  margin-top: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(10, 12, 18, .72);
  box-shadow: 0 12px 26px rgba(0,0,0,.22);
}
.event-spotlight-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.event-spotlight-icon {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.13);
  font-size: 17px;
  flex: 0 0 auto;
}
.event-spotlight-title {
  color: #fff7ed;
  font-size: 18px;
  font-weight: 950;
  letter-spacing: .2px;
}
.event-spotlight-value {
  color: #f8fafc;
  font-size: 18px;
  font-weight: 850;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.event-spotlight-value-label {
  color: #fde68a;
  font-weight: 950;
}
.event-spotlight-hint {
  margin-top: 8px;
  color: #cbd5e1;
  font-size: 13px;
  line-height: 1.45;
}
.event-spotlight-pin { border-color: rgba(251,191,36,.38); }
.event-spotlight-name { border-color: rgba(251,146,60,.34); }
.event-spotlight-bio { border-color: rgba(96,165,250,.34); }
.event-spotlight-avatar,
.event-spotlight-banner { border-color: rgba(167,139,250,.38); }

body.theme-light .card.spotlight-pin-event,
html[data-theme="light"] .card.spotlight-pin-event {
  border-color: rgba(202, 138, 4, .55);
  background:
    radial-gradient(circle at top right, rgba(250, 204, 21, .26), transparent 42%),
    linear-gradient(180deg, #fff8df, var(--card-bg) 58%);
  box-shadow: 0 10px 26px rgba(146, 64, 14, .10);
}
body.theme-light .card.spotlight-name-event,
html[data-theme="light"] .card.spotlight-name-event {
  border-color: rgba(234, 88, 12, .42);
  background:
    radial-gradient(circle at top right, rgba(251, 146, 60, .24), transparent 42%),
    linear-gradient(180deg, #fff3e9, var(--card-bg) 58%);
}
body.theme-light .card.spotlight-bio-event,
html[data-theme="light"] .card.spotlight-bio-event {
  border-color: rgba(37, 99, 235, .38);
  background:
    radial-gradient(circle at top right, rgba(96, 165, 250, .24), transparent 42%),
    linear-gradient(180deg, #edf5ff, var(--card-bg) 58%);
}
body.theme-light .card.spotlight-avatar-event,
body.theme-light .card.spotlight-banner-event,
html[data-theme="light"] .card.spotlight-avatar-event,
html[data-theme="light"] .card.spotlight-banner-event {
  border-color: rgba(124, 58, 237, .36);
  background:
    radial-gradient(circle at top right, rgba(167, 139, 250, .24), transparent 42%),
    linear-gradient(180deg, #f4efff, var(--card-bg) 58%);
}
body.theme-light .card .event-spotlight,
html[data-theme="light"] .card .event-spotlight {
  background: rgba(255,255,255,.76);
  border-color: rgba(100, 116, 139, .22);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
}
body.theme-light .event-spotlight-icon,
html[data-theme="light"] .event-spotlight-icon { background: rgba(15, 23, 42, .07); }
body.theme-light .event-spotlight-title,
html[data-theme="light"] .event-spotlight-title { color: #172033; }
body.theme-light .event-spotlight-value,
html[data-theme="light"] .event-spotlight-value { color: #1f2937; }
body.theme-light .event-spotlight-value-label,
html[data-theme="light"] .event-spotlight-value-label { color: #a16207; }
body.theme-light .event-spotlight-hint,
html[data-theme="light"] .event-spotlight-hint { color: #64748b; }

/* ===== 置顶 3 分钟（特别关注/Alpha 消息）===== */
.card.pinned {
  border-color: #e58036;
  box-shadow: 0 0 0 1px rgba(229, 128, 54, 0.4), 0 0 18px rgba(229, 128, 54, 0.25);
  position: relative;
}
.card .pin-badge {
  position: absolute;
  top: 8px;
  right: -6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #e58036;
  color: #1e1d20;
  font-size: 11px;
  font-weight: 900;
  padding: 3px 4px 3px 10px;
  border-radius: 999px;
  z-index: 3;
  box-shadow: 0 2px 6px rgba(0,0,0,0.4);
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .pin-badge .pin-text {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.card .pin-badge .pin-unpin {
  background: rgba(0,0,0,0.28);
  color: #1e1d20;
  border: 0;
  padding: 1px 7px;
  margin-left: 2px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  line-height: 1;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .pin-badge .pin-unpin:hover { background: rgba(0,0,0,0.5); }

/* ===== Alpha 首发卡片 ===== */
.card.alpha-signal {
  display: block;
  padding: 14px 18px 16px;
  background: #0d1412;
  border: 1px solid #2a4038;
}
.card.alpha-signal.tier-s {
  background: linear-gradient(180deg, #0e2418 0%, #0d1412 50%);
  border: 2px solid #3ca073;
  box-shadow: 0 0 0 1px rgba(60, 160, 115, 0.3), 0 0 20px rgba(60, 160, 115, 0.3);
}
.card.alpha-signal.tier-a {
  border-color: #daa528;
  box-shadow: 0 0 0 1px rgba(218, 165, 40, 0.3);
}
.card.alpha-signal.tier-b { border-color: #e58036; }
.card.alpha-signal.tier-c { border-color: #5a6a80; }
.card.alpha-signal.highlight {
  box-shadow: 0 0 0 2px #3ca073, 0 0 28px rgba(60, 160, 115, 0.55);
}
.card.alpha-signal .alpha-header {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  margin-bottom: 10px;
}
.card.alpha-signal .alpha-title {
  font-size: 15px; font-weight: 800; color: #a0f0c0;
  letter-spacing: 0.3px;
}
.card.alpha-signal.tier-a .alpha-title { color: #f0d080; }
.card.alpha-signal.tier-b .alpha-title { color: #ffb088; }
.card.alpha-signal.tier-c .alpha-title { color: #c0c8d0; }
.card.alpha-signal .alpha-symbol {
  font-size: 22px; font-weight: 900; color: var(--fg);
  letter-spacing: 0.5px;
}
.card.alpha-signal .alpha-kind {
  font-size: 11px; color: var(--fg-dim);
  padding: 1px 8px; background: #1a2028; border-radius: 999px;
  font-weight: 700;
}
.card.alpha-signal .alpha-time {
  font-size: 12px; color: var(--fg-dim); margin-left: auto;
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
.card.alpha-signal .alpha-body {
  font-family: "Microsoft YaHei UI", "Segoe UI", -apple-system, system-ui, sans-serif;
  font-size: 14px; color: var(--fg); line-height: 1.55;
  white-space: pre-wrap; word-break: break-word;
  margin: 0;
  user-select: text;
}

/* 特别关注 —— 永久金色边框 + 内发光 */
.card.favorite {
  border: 2px solid #daa528;
  box-shadow: 0 0 0 1px rgba(218, 165, 40, 0.22), 0 0 16px rgba(218, 165, 40, 0.32);
  background:
    linear-gradient(180deg, #241a0c 0%, var(--card-bg) 35%);
}
.card.favorite.highlight {
  box-shadow: 0 0 0 2px #daa528, 0 0 28px rgba(218, 165, 40, 0.55);
}
.card.favorite .header .name {
  color: #f0d080;
}
.card.favorite::before {
  content: "★";
  position: absolute;
  top: 10px;
  right: -4px;
  background: #daa528;
  color: #1e1d20;
  font-size: 14px;
  font-weight: 900;
  padding: 2px 8px;
  border-radius: 999px;
  line-height: 1;
  box-shadow: 0 2px 6px rgba(0,0,0,0.35);
  z-index: 2;
}
.card.favorite { position: relative; }

.card.chinese-tweet-alert-card {
  border-color: rgba(34, 211, 238, .82);
  box-shadow: 0 0 0 1px rgba(34, 211, 238, .20), 0 14px 34px rgba(34, 211, 238, .10);
  background:
    linear-gradient(180deg, rgba(8, 47, 73, .56) 0%, var(--card-bg) 38%);
}
.card.chinese-tweet-alert-card.highlight {
  box-shadow: 0 0 0 2px rgba(34, 211, 238, .72), 0 0 30px rgba(34, 211, 238, .28);
}
.card.chinese-tweet-alert-card .header .name {
  color: #a5f3fc;
}
.card.chinese-tweet-alert-card::after {
  content: "中文";
  position: absolute;
  top: 10px;
  right: 36px;
  background: #22d3ee;
  color: #082f49;
  font-size: 12px;
  font-weight: 900;
  padding: 2px 8px;
  border-radius: 999px;
  line-height: 1;
  box-shadow: 0 2px 6px rgba(0,0,0,0.30);
  z-index: 2;
}

.card.historical-ref {
  position: relative;
  border: 2px solid #f59e0b;
  background:
    radial-gradient(circle at top right, rgba(245, 158, 11, 0.20), transparent 38%),
    linear-gradient(180deg, rgba(69, 45, 8, 0.36) 0%, var(--card-bg) 48%);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.24), 0 0 22px rgba(245, 158, 11, 0.22);
}
.card.historical-ref::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 34px rgba(245, 158, 11, 0.08);
}

.card.historical-ref .historical-ref-emoji {
  position: absolute;
  top: 8px;
  right: 34px;
  z-index: 3;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(245, 158, 11, 0.82);
  border-radius: 999px;
  background: linear-gradient(180deg, #fde68a, #f59e0b);
  color: #271900;
  font-size: 22px;
  line-height: 1;
  box-shadow: 0 4px 14px rgba(0,0,0,.38), 0 0 18px rgba(245,158,11,.46);
}
.card.historical-ref.favorite .historical-ref-emoji {
  right: 48px;
}
.card .historical-ref-banner {
  grid-column: 1 / -1;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-top: 6px;
  padding: 5px 10px;
  border: 1px solid rgba(245, 158, 11, 0.46);
  border-radius: 999px;
  background: rgba(69, 45, 8, 0.78);
  color: #fde68a;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.card .admin-translation-route {
  grid-column: 1 / -1;
  justify-self: start;
  max-width: 100%;
  margin-top: 4px;
  padding: 4px 9px;
  border: 1px solid rgba(96, 165, 250, .42);
  border-radius: 999px;
  background: rgba(30, 64, 175, .16);
  color: #bfdbfe;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.card .admin-translation-route[data-state="missing"] {
  border-color: rgba(148, 163, 184, .34);
  background: rgba(71, 85, 105, .14);
  color: #cbd5e1;
}
body.theme-light .card .admin-translation-route,
html[data-theme="light"] .card .admin-translation-route {
  border-color: rgba(37, 99, 235, .34);
  background: rgba(219, 234, 254, .72);
  color: #1e40af;
}
body.theme-light .card .admin-translation-route[data-state="missing"],
html[data-theme="light"] .card .admin-translation-route[data-state="missing"] {
  border-color: rgba(100, 116, 139, .35);
  background: rgba(226, 232, 240, .72);
  color: #475569;
}
.card.historical-ref .embed {
  border-color: rgba(245, 158, 11, 0.46);
  background: rgba(35, 27, 14, 0.78);
}

.card .avatar {
  grid-area: avatar;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  background: #1a1a1e;
  border: 1px solid #3a3a42;
}

.card .header {
  grid-area: header;
  display: flex;
  /* 之前是 wrap + baseline:22px 的名字一宽,认证徽章就被挤到下一行,
     一个表头能摊成四五行。改成不折行,名字自己省略号收缩,徽章永远跟在同一行。 */
  align-items: center;
  gap: 5px;
  flex-wrap: nowrap;
  min-width: 0;
  max-width: 100%;
}
.card .header .name {
  font-size: 17px;
  font-weight: 700;
  color: var(--fg);
  line-height: 1.25;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* 徽章不参与压缩,只压名字 */
.card .header > *:not(.name) { flex: 0 0 auto; }
.card .header .time {
  font-size: 14px;
  color: var(--fg-dim);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.card .handle {
  grid-area: handle;
  font-size: 13px;
  color: var(--fg-dim);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  min-width: 0;
  max-width: 100%;
}
.card .account-remark {
  display: inline-flex;
  align-items: center;
  max-width: min(520px, 100%);
  padding: 2px 8px;
  border: 1px solid rgba(96, 165, 250, 0.28);
  border-radius: 999px;
  background: rgba(37, 99, 235, 0.12);
  color: #bfdbfe;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card .profile-summary {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  max-width: min(620px, 100%);
  color: #9ca3af;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card .profile-summary::before {
  content: "·";
  margin-right: 6px;
  color: #4b5563;
  font-weight: 900;
}
.card .embed .embed-profile-summary {
  max-width: min(520px, 100%);
  font-size: 11px;
}
.follow-row .target-profile-summary {
  max-width: min(520px, 100%);
  font-size: 12px;
}

.card .chip {
  grid-area: chip;
  align-self: start;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}
.chip.reply   { background: #e58036; }
.chip.retweet { background: #daa528; }
.chip.quote   { background: #9370db; }
.chip.tweet   { background: #3ca073; }
.chip.pin     { background: #62a37a; }
.chip.unpin   { background: #6f7382; }
.chip.delete  { background: #9b3d3d; }
.chip.follow  { background: #4f95d8; }
.chip.unfollow{ background: #787880; }
.chip.square  { background: #f0b90b; color: #1e1d20; }
.chip.truth   { background: #c4302b; }
.chip.instagram { background: linear-gradient(135deg, #833ab4, #fd1d1d, #fcb045); }
.chip.news    { background: #ff6c4a; }
.chip.okx-boost { background: #111827; color: #f0b90b; border: 1px solid #f0b90b; }
.chip.profile-bio    { background: #4a82d4; }
.chip.profile-avatar { background: #9c5ec8; }
.chip.profile-banner { background: #7060d8; }
.chip.profile-name   { background: #d87a4a; }
.chip.profile-meta   { background: #5a6a80; }
.chip.ca             { background: #2f8f83; }
.chip.news.signal-bullish { background: #3ca073; }
.chip.news.signal-bearish { background: #c4302b; }
.chip.news.signal-neutral { background: #ff6c4a; }

.card .body {
  grid-area: body;
  margin-top: 10px;
  font-size: 17px;
  line-height: 1.5;
  color: var(--fg);
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
  min-width: 0;
  max-width: 100%;
}

.card .body .translation {
  margin-top: 6px;
  font-size: 15px;
  color: var(--fg-muted);
}

.card .media {
  grid-area: media;
  margin-top: 10px;
  position: relative;
}
.card .media img, .card .media video {
  max-width: 100%;
  max-height: 420px;
  border-radius: 12px;
  border: 1px solid var(--embed-border);
  display: block;
}
.card.instagram-card .instagram-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}
.card.instagram-card .instagram-media-grid.instagram-media-count-1 {
  grid-template-columns: minmax(0, 1fr);
}
.card.instagram-card .instagram-media-tile {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #0b0b0e;
}
.card.instagram-card .instagram-media-tile img,
.card.instagram-card .instagram-media-tile video {
  width: 100%;
  height: auto;
  object-fit: contain;
  background: #0b0b0e;
}
.card .media.has-video-badge::before,
.card .em-media.has-video-badge::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 12px;
  background: rgba(0,0,0,0.10);
  pointer-events: none;
}
.video-badge {
  position: absolute;
  right: 10px;
  bottom: 10px;
  background: rgba(0,0,0,0.78);
  color: #fff;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  pointer-events: none;
  -webkit-app-region: no-drag;
  app-region: no-drag;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.12);
}

/* 回复与引用共用外层插槽，内部逐行排列；单条引用保持原布局。 */
.card .embed-stack {
  grid-area: embed;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}
.card .embed-stack > .embed { grid-area: auto; }

.card .embed {
  grid-area: embed;
  margin-top: 12px;
  background: var(--embed-bg);
  border: 1px solid var(--embed-border);
  border-radius: 12px;
  padding: 12px 14px;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 6px 10px;
  grid-template-areas:
    "em-avatar em-header"
    "em-avatar em-handle"
    "em-body   em-body"
    "em-media  em-media";
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
.card .embed .em-avatar { grid-area: em-avatar; width: 36px; height: 36px; border-radius: 50%; object-fit: cover; background: #1a1a1e; border: 1px solid #3a3a42; }
.card .embed .em-header { grid-area: em-header; font-size: 15px; font-weight: 700; color: var(--fg); min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.card .embed .em-handle { grid-area: em-handle; font-size: 13px; color: var(--fg-dim); display: flex; align-items: center; gap: 6px; flex-wrap: wrap; min-width: 0; max-width: 100%; overflow: hidden; }
.card .embed .em-handle .account-remark { font-size: 11px; padding: 1px 7px; max-width: min(420px, 100%); }
.card .embed .em-handle .embed-profile-summary { flex: 1 1 160px; max-width: 100%; }
.card .embed .em-time {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  color: #fbbf24;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card .embed .em-header a,
.card .embed .em-handle a { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card .embed .em-body   { grid-area: em-body; font-size: 15px; color: var(--fg); white-space: pre-wrap; word-break: normal; overflow-wrap: break-word; min-width: 0; max-width: 100%; }
.card .embed .em-body .translation { margin-top: 4px; font-size: 14px; color: var(--fg-muted); overflow-wrap: break-word; word-break: normal; }
.card .embed .em-media  { grid-area: em-media; min-width: 0; max-width: 100%; overflow: hidden; }
.card .embed .em-media img { max-width: 100%; height: auto; max-height: 280px; border-radius: 8px; border: 1px solid var(--embed-border); display: block; }
.event-comments {
  grid-area: comments;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 12px;
  background: rgba(15, 23, 42, .24);
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.event-comments-title {
  margin-bottom: 7px;
  color: var(--fg-muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
}
.event-comments-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.event-comment {
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(0, 1fr);
  gap: 8px;
  align-items: baseline;
  min-width: 0;
}
.event-comment-meta {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  white-space: nowrap;
}
.event-comment-author {
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #bfdbfe;
  font-size: 12px;
  font-weight: 900;
}
.event-comment-time {
  color: var(--fg-dim);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
.event-comment.mine .event-comment-author::after {
  content: " · 我";
  color: var(--accent);
  font-weight: 800;
}
.event-comment-text {
  color: var(--fg);
  font-size: 13px;
  line-height: 1.45;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.event-comments-empty {
  color: var(--fg-dim);
  font-size: 12px;
}
.event-comment-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  margin-top: 8px;
}
.event-comment-form input {
  min-width: 0;
  padding: 7px 10px;
  border: 1px solid var(--embed-border);
  border-radius: 999px;
  background: rgba(2, 6, 23, .30);
  color: var(--fg);
  outline: none;
}
.event-comment-form input:focus {
  border-color: rgba(96, 165, 250, .58);
  box-shadow: 0 0 0 2px rgba(96, 165, 250, .12);
}
.event-comment-count {
  color: var(--fg-dim);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
.event-comment-form button {
  padding: 7px 12px;
  border: 1px solid rgba(96, 165, 250, .34);
  border-radius: 999px;
  background: rgba(30, 64, 175, .38);
  color: #dbeafe;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}
.event-comment-form button:disabled,
.event-comment-form input:disabled {
  opacity: .58;
  cursor: wait;
}
.openable-image { cursor: zoom-in; }
.image-fullsize-viewer {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  grid-template-rows: auto 1fr;
  background: rgba(2, 6, 23, .88);
  backdrop-filter: blur(10px);
}
.image-fullsize-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  color: #eef4ff;
  font-size: 14px;
  font-weight: 800;
  background: rgba(15, 23, 42, .72);
  border-bottom: 1px solid rgba(148, 163, 184, .22);
}
.image-fullsize-toolbar span { margin-right: auto; }
.image-fullsize-open,
.image-fullsize-close {
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 999px;
  background: rgba(30, 41, 59, .82);
  color: #dbeafe;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .24);
}
.image-fullsize-open { padding: 7px 12px; font-size: 13px; }
.image-fullsize-close {
  width: 34px;
  height: 34px;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}
.image-fullsize-stage {
  min-width: 0;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  overflow: auto;
  cursor: zoom-out;
}
.image-fullsize-stage img {
  display: block;
  width: auto;
  height: auto;
  max-width: 96vw;
  max-height: calc(100vh - 78px);
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 0 18px 80px rgba(0, 0, 0, .45);
  cursor: default;
}
body.image-viewer-open { overflow: hidden; }
.card.retweet-only {
  grid-template-areas:
    "avatar header chip"
    "avatar handle chip"
    "embed embed embed"
    "narrative narrative narrative"
    "imagectx imagectx imagectx"
    "footer footer footer"
    "comments comments comments";
}
.card.retweet-only .embed { margin-top: 10px; }

/* ===== DEX Signals 专用紧凑卡片 ===== */
.card.dex-signal {
  display: flex;
  gap: 12px;
  padding: 12px 16px 14px;
  background: #101418;
  border-color: #1e3240;
  align-items: flex-start;
}
.card.dex-signal.highlight {
  border-color: #4ecdc4;
  box-shadow: 0 0 0 1px rgba(78, 205, 196, 0.3);
}
.card.dex-signal .dex-icon {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1e3240, #2a4a5a);
  display: flex; align-items: center; justify-content: center;
  flex: 0 0 48px;
  overflow: hidden;
  border: 1px solid #2a4048;
  position: relative;
}
.card.dex-signal .dex-icon img { width: 100%; height: 100%; object-fit: cover; }
.card.dex-signal .dex-icon-letter {
  font-size: 20px; font-weight: 800; color: #4ecdc4;
  font-family: system-ui, sans-serif;
}
.card.dex-signal .dex-body {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column;
}
.card.dex-signal .dex-header {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  margin-bottom: 6px;
}
.card.dex-signal .dex-title {
  font-size: 14px; font-weight: 700; color: #4ecdc4;
  letter-spacing: 0.3px;
}
.card.dex-signal .dex-meta {
  font-size: 12px; color: #8a9aa8; font-weight: 600;
  padding: 1px 8px; background: #1a2830; border-radius: 999px;
}
.card.dex-signal .dex-time {
  font-size: 12px; color: #5a6a78; margin-left: auto;
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
.card.dex-signal .dex-main {
  display: flex; align-items: baseline; gap: 10px; margin: 4px 0 8px;
  flex-wrap: wrap;
}
.card.dex-signal .dex-symbol {
  font-size: 22px; font-weight: 800; color: #f0d080;
  letter-spacing: 0.5px;
}
.card.dex-signal .dex-name {
  font-size: 14px; color: #a0b0bc;
  font-weight: 500;
}
.card.dex-signal .dex-name:empty { display: none; }
.card.dex-signal .dex-mc {
  font-size: 18px; font-weight: 700; color: #a0f0c0;
  font-variant-numeric: tabular-nums;
  margin-left: auto;
}
.card.dex-signal .dex-mc:empty { display: none; }
.card.dex-signal .dex-raw {
  font-size: 14px; color: #ff9a9a;
}
.card.dex-signal .dex-stats {
  display: flex; gap: 6px; margin-bottom: 8px;
  flex-wrap: wrap;
}
.card.dex-signal .dex-stat {
  display: inline-flex; align-items: baseline; gap: 4px;
  padding: 3px 10px;
  background: #0a1418;
  border: 1px solid #1a2830;
  border-radius: 6px;
  font-size: 12px;
}
.card.dex-signal .dex-stat-label {
  color: #6a7a88; font-weight: 600;
}
.card.dex-signal .dex-stat-val {
  color: #d0e0ec; font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.card.dex-signal .dex-ca-row {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  background: #0a0d10; padding: 8px 10px; border-radius: 8px;
  border: 1px solid #1a2028;
}
.card.dex-signal .dex-ca {
  flex: 1; min-width: 200px;
  font-family: Consolas, "Courier New", monospace;
  font-size: 13px; color: #b0c0d0;
  word-break: break-all;
  user-select: text; cursor: text;
}
.card.dex-signal .dex-copy {
  padding: 4px 10px; background: #1a2830; color: #c0d8e0;
  border: 1px solid #2a4048; border-radius: 6px;
  font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap;
}
.card.dex-signal .dex-copy:hover { background: #234050; }
.card.dex-signal .dex-link {
  padding: 4px 10px; background: #1a2830; color: #a0e8d0;
  border: 1px solid #2a4048; border-radius: 6px;
  font-size: 12px; font-weight: 700; text-decoration: none; white-space: nowrap;
}
.card.dex-signal .dex-link:hover { background: #234050; }
.card.dex-signal .footer {
  margin-top: 10px; display: flex; gap: 8px; flex-wrap: wrap;
}

/* 链接 pills */
.card.dex-signal .dex-links {
  display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px;
}
.card.dex-signal .dex-link-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 4px 10px;
  background: #0e1820; color: #a0c8e0;
  border: 1px solid #1e3240;
  border-radius: 999px;
  font-size: 12px; font-weight: 600;
  text-decoration: none; white-space: nowrap;
  cursor: pointer;
}
.card.dex-signal .dex-link-pill:hover { background: #1a2a36; border-color: #2a4a60; }
.card.dex-signal .dex-link-pill .pill-icon {
  font-weight: 800; font-size: 13px;
}
.card.dex-signal .dex-link-pill.website { color: #9adcff; }
.card.dex-signal .dex-link-pill.social-twitter,
.card.dex-signal .dex-link-pill.social-x { color: #e8e8ee; border-color: #3a3a42; }
.card.dex-signal .dex-link-pill.social-telegram,
.card.dex-signal .dex-link-pill.social-tg { color: #88c8f0; }
.card.dex-signal .dex-link-pill.social-discord { color: #c0a8ff; }
.card.dex-signal .dex-link-pill.social-github { color: #c8c8d0; }

.card.dex-signal .dex-tweets-btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px;
  background: #1a2830; color: #a0e8d0;
  border: 1px solid #2a4a4a;
  border-radius: 999px;
  font-size: 12px; font-weight: 700;
  cursor: pointer;
}
.card.dex-signal .dex-tweets-btn:hover:not(:disabled) { background: #234040; }
.card.dex-signal .dex-tweets-btn:disabled { opacity: 0.5; cursor: default; }

.card.dex-signal .dex-tweets {
  margin-top: 8px;
}
.card.dex-signal .dex-tweets:empty { display: none; }
.card.dex-signal .dex-tweets iframe,
.card.dex-signal .dex-tweets .twitter-tweet,
.card.dex-signal .dex-tweets .twitter-timeline {
  max-width: 100% !important;
}

/* 自抓推文（用引用推文风格）*/
.card.dex-signal .dex-tweets-loading {
  color: var(--fg-dim); font-size: 12px;
  padding: 8px 12px; margin-top: 8px;
  background: var(--embed-bg);
  border: 1px dashed var(--embed-border);
  border-radius: 10px;
}
.card.dex-signal .dex-tweets-err {
  color: #ff9a9a; font-size: 12px;
  padding: 6px 10px;
}

/* Twitter Profile 卡 */
.card.dex-signal .tw-profile-card {
  display: flex; gap: 12px;
  margin-top: 10px;
  background: var(--embed-bg);
  border: 1px solid var(--embed-border);
  border-radius: 12px;
  padding: 12px 14px;
  align-items: flex-start;
}
.card.dex-signal .tw-profile-avatar {
  width: 44px; height: 44px; border-radius: 50%;
  object-fit: cover; flex: 0 0 44px;
  border: 1px solid #3a3a42;
  background: #0c0c0e;
}
.card.dex-signal .tw-profile-right { flex: 1; min-width: 0; }
.card.dex-signal .tw-profile-name-row {
  display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap;
  margin-bottom: 4px;
}
.card.dex-signal .tw-profile-name {
  font-size: 15px; font-weight: 700; color: var(--fg);
  line-height: 1.2;
}
.card.dex-signal .tw-verified {
  color: #1da1f2; font-weight: 900; font-size: 12px;
}
.card.dex-signal .tw-profile-handle {
  font-size: 13px; color: var(--fg-dim);
  text-decoration: none;
}
.card.dex-signal .tw-profile-handle:hover { color: var(--fg-muted); }
.card.dex-signal .tw-profile-stats {
  display: flex; gap: 14px; margin-bottom: 6px;
  font-size: 12px;
}
.card.dex-signal .tw-profile-stat { color: var(--fg-dim); display: inline-flex; gap: 3px; align-items: baseline; }
.card.dex-signal .tw-profile-stat .v {
  color: var(--fg); font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.card.dex-signal .tw-profile-stat .l { color: var(--fg-dim); }
.card.dex-signal .tw-profile-desc {
  font-size: 13px; color: var(--fg); line-height: 1.45;
  white-space: pre-wrap; word-break: break-word;
  user-select: text;
}
.card.dex-signal .tw-profile-desc-zh {
  margin-top: 4px;
  font-size: 12px; color: var(--fg-muted); line-height: 1.5;
  padding-top: 4px;
  border-top: 1px dashed #2a2a30;
  white-space: pre-wrap; word-break: break-word;
  user-select: text;
}

/* 推文 —— 引用推文嵌套风格 */
.card.dex-signal .dex-tweets-head {
  font-size: 11px; color: var(--fg-dim); font-weight: 600;
  margin: 10px 0 4px 4px;
  text-transform: uppercase; letter-spacing: 0.5px;
}
.card.dex-signal .dex-tweet-item {
  background: var(--embed-bg);
  border: 1px solid var(--embed-border);
  border-radius: 12px;
  padding: 10px 14px 12px;
  margin-bottom: 8px;
}
.card.dex-signal .dex-tweet-item:last-child { margin-bottom: 0; }
.card.dex-signal .dex-tweet-meta {
  display: flex; justify-content: flex-end; margin-bottom: 4px;
}
.card.dex-signal .dex-tweet-link {
  font-size: 11px; color: var(--fg-dim); text-decoration: none;
}
.card.dex-signal .dex-tweet-link:hover { color: var(--fg-muted); }
.card.dex-signal .dex-tweet-text {
  font-size: 14px; color: var(--fg); line-height: 1.5;
  white-space: pre-wrap; word-break: break-word;
  user-select: text;
}
.card.dex-signal .dex-tweet-zh {
  margin-top: 5px;
  font-size: 13px; color: var(--fg-muted); line-height: 1.5;
  padding-top: 5px;
  border-top: 1px dashed #2a2a30;
  white-space: pre-wrap; word-break: break-word;
  user-select: text;
}
.card.dex-signal .dex-tweet-media {
  margin-top: 8px;
  position: relative;
  display: inline-block;
  max-width: 100%;
}
.card.dex-signal .dex-tweet-media.has-video::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.12);
  pointer-events: none;
}
.card.dex-signal .dex-tweet-img {
  max-width: 100%; max-height: 260px;
  border-radius: 8px;
  border: 1px solid var(--embed-border);
  display: block;
}

/* Follow event row */
.follow-row {
  grid-area: body;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  flex-wrap: wrap;
}
.follow-row .verb {
  font-size: 19px;
  font-weight: 700;
  color: #d8d8e0;
}
.follow-row .target-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid #3a3a42;
  background: #1a1a1e;
}
.follow-row .target-name {
  font-size: 19px;
  font-weight: 700;
  color: var(--fg);
}
.follow-row .target-handle {
  font-size: 16px;
  color: var(--fg-dim);
}
.follow-row .target-remark {
  font-size: 12px;
  max-width: min(480px, 100%);
}
.card.follow .body {
  grid-area: media;
  margin-top: 10px;
}

.card .footer {
  grid-area: footer;
  margin-top: 10px;
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  min-width: 0;
}
.card .footer a {
  display: inline-block;
  padding: 6px 14px;
  background: #26262c;
  color: #d8d8e0;
  border-radius: 999px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  border: 1px solid #3a3a42;
}
.card .footer a:hover {
  background: #32323a;
}
.card .footer .unfollow-btn {
  padding: 6px 14px;
  background: #3a1e20;
  color: #ff9a9a;
  border: 1px solid #6a3030;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .footer .unfollow-btn:hover:not(:disabled) { background: #5a2828; }
.card .footer .unfollow-btn:disabled { opacity: 0.6; cursor: default; }

.card .footer .admin-remove-default-btn {
  padding: 6px 14px;
  background: #3a2615;
  color: #ffc182;
  border: 1px solid #7a4a1f;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .footer .admin-remove-default-btn:hover:not(:disabled) {
  background: #53341b;
  border-color: #9a6028;
}
.card .footer .admin-remove-default-btn:disabled { opacity: 0.66; cursor: default; }
.card.admin-removed-default { opacity: 0.42; }

.card .footer .fav-btn {
  padding: 6px 14px;
  background: #26262c;
  color: #c8c8d0;
  border: 1px solid #3a3a42;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .footer .fav-btn:hover:not(:disabled) { background: #32323a; border-color: #4a4a52; }
.card .footer .fav-btn.is-fav {
  background: #3a2d10;
  color: #f0c050;
  border-color: #6a4e20;
}
.card .footer .fav-btn.is-fav:hover:not(:disabled) { background: #4e3c18; border-color: #806020; }
.card .footer .fav-btn:disabled { opacity: 0.6; cursor: default; }

/* 分析叙事按钮 */
.card .footer .narrative-btn {
  padding: 6px 14px;
  background: #2a1e3a;
  color: #d0b0f0;
  border: 1px solid #4a3060;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .footer .narrative-btn:hover:not(:disabled) { background: #3a2850; }
.card .footer .narrative-btn:disabled { opacity: 0.7; cursor: default; }

/* meme 词高亮（原文 + 翻译里都会出现）*/
.card mark.meme-highlight {
  background: linear-gradient(180deg, transparent 48%, rgba(218, 165, 40, 0.55) 48%);
  color: #f0d080;
  font-weight: 700;
  padding: 0 2px;
  border-radius: 2px;
  cursor: help;
}
.card mark.smart-highlight {
  padding: 0 3px;
  border-radius: 4px;
  font-weight: 800;
  color: inherit;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.card mark.token-ca-highlight {
  background: rgba(45, 212, 191, 0.18);
  color: #99f6e4;
  border: 1px solid rgba(45, 212, 191, 0.32);
}
.card mark.token-symbol-highlight {
  background: rgba(96, 165, 250, 0.18);
  color: #bfdbfe;
  border: 1px solid rgba(96, 165, 250, 0.30);
}
.card mark.quote-content-highlight {
  background: linear-gradient(180deg, transparent 45%, rgba(168, 85, 247, 0.40) 45%);
  color: #e9d5ff;
}

/* 典故/出处框 */
.card .narrative-allusions {
  grid-area: narrative;
  margin-top: 10px;
  padding: 10px 14px;
  background: linear-gradient(180deg, #1e1810 0%, #14100a 100%);
  border: 1px solid #3a3020;
  border-radius: 10px;
}

.card .narrative-allusions {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow-wrap: break-word;
  word-break: normal;
}
.card .embed > .narrative-allusions {
  grid-area: auto;
  grid-column: 1 / -1;
  width: 100%;
}
.card .narrative-line,
.card .narrative-exp {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

.card .narrative-title {
  font-size: 12px; color: #daa528; font-weight: 700;
  margin-bottom: 6px;
  letter-spacing: 0.3px;
}
.card .narrative-item {
  font-size: 13px; line-height: 1.55;
  padding: 3px 0;
  color: var(--fg-muted);
}
.card .narrative-phrase {
  color: #f0d080; font-weight: 700;
}
.card .narrative-exp {
  color: var(--fg);
}

.card .narrative-brief {
  background: linear-gradient(180deg, rgba(30, 40, 70, 0.92) 0%, rgba(18, 24, 42, 0.96) 100%);
  border-color: rgba(105, 155, 255, 0.28);
}
.card .narrative-brief .narrative-title { color: #9fc0ff; }
.card .narrative-line { padding: 2px 0; }
.card .narrative-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 5px 0 4px;
}
.card .narrative-tag {
  font-size: 11px;
  line-height: 1.2;
  padding: 3px 7px;
  border-radius: 999px;
  color: #cfe0ff;
  background: rgba(80, 130, 230, 0.16);
  border: 1px solid rgba(120, 170, 255, 0.28);
}

/* 图片出处标注 */
.card .narrative-image-context {
  grid-area: imagectx;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  margin-top: 8px;
  padding: 8px 12px;
  background: rgba(218, 165, 40, 0.08);
  border-left: 3px solid #daa528;
  border-radius: 6px;
  font-size: 13px; color: var(--fg);
  line-height: 1.55;
  overflow-wrap: break-word;
  word-break: normal;
  user-select: text;
}

/* ===== User config modal ===== */
#top-actions-bar .user-actions { gap: 8px; -webkit-app-region: no-drag; app-region: no-drag; }
#top-actions-bar .wallet-actions { gap: 8px; -webkit-app-region: no-drag; app-region: no-drag; }
#top-actions-bar .language-actions { gap: 8px; -webkit-app-region: no-drag; app-region: no-drag; }
#top-actions-bar .theme-actions { gap: 8px; -webkit-app-region: no-drag; app-region: no-drag; }
.wallet-login-btn.wallet-connected { border-color: #2f7b5a; background: #10251d; color: #bbf7d0; }
.wallet-login-btn.wallet-connected:hover { background: #143326; }
.wallet-menu-wrap {
  position: relative;
  z-index: 20010;
}
#wallet-menu.hidden { display: none; }
#wallet-menu {
  position: fixed;
  top: var(--wallet-menu-top, 68px);
  right: var(--wallet-menu-right, 18px);
  z-index: 2147483600 !important;
  display: grid;
  gap: 7px;
  min-width: 136px;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, .26);
  border-radius: 12px;
  background: rgba(15, 23, 42, .98);
  box-shadow: 0 18px 44px rgba(0, 0, 0, .34);
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.wallet-menu-btn {
  border: 1px solid rgba(148, 163, 184, .26);
  border-radius: 9px;
  background: rgba(30, 41, 59, .92);
  color: #e5e7eb;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.wallet-menu-btn:hover { background: rgba(51, 65, 85, .96); }
.wallet-menu-btn.danger {
  border-color: rgba(248, 113, 113, .38);
  background: rgba(69, 10, 10, .72);
  color: #fecaca;
}
.wallet-menu-btn.danger:hover { background: rgba(127, 29, 29, .78); }

.top-config-btn { font-size: 12px; border: 1px solid #334155; background: #111827; color: #e5e7eb; border-radius: 8px; padding: 3px 8px; cursor: pointer; -webkit-app-region: no-drag; app-region: no-drag; }
.top-config-btn:hover { background: #1f2937; border-color: #4b5563; }
.top-config-btn:disabled { opacity: .55; cursor: wait; }
.theme-toggle-btn {
  min-width: 34px;
  width: 34px;
  padding-left: 0;
  padding-right: 0;
  text-align: center;
  border-color: rgba(218,165,40,.45);
  background: linear-gradient(180deg, rgba(33, 38, 52, .96), rgba(17, 24, 39, .96));
  color: #fde68a;
}
.theme-toggle-btn:hover { border-color: rgba(250,204,21,.65); }
.language-toggle-btn {
  min-width: 34px;
  padding-left: 10px;
  padding-right: 10px;
  border-color: rgba(45, 212, 191, .42);
  color: #99f6e4;
}
.language-toggle-btn:hover { border-color: rgba(94, 234, 212, .65); }
.keyword-monitor-btn {
  min-width: 34px;
  padding-left: 10px;
  padding-right: 10px;
  border-color: rgba(96, 165, 250, .44);
  background: linear-gradient(180deg, rgba(30, 41, 59, .96), rgba(15, 23, 42, .96));
  color: #bfdbfe;
  font-weight: 900;
}
.keyword-monitor-btn:hover { border-color: rgba(147, 197, 253, .68); background: #1e293b; }
.user-config-modal.hidden { display: none; }
.user-config-modal { position: fixed; inset: 0; z-index: 10000; -webkit-app-region: no-drag; app-region: no-drag; }
.uc-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.66); backdrop-filter: blur(4px); }
.uc-panel { position: absolute; top: 44px; left: 50%; transform: translateX(-50%); width: min(1040px, calc(100vw - 32px)); max-height: calc(100vh - 76px); overflow: hidden; display: flex; flex-direction: column; background: #111216; border: 1px solid #2d2f38; border-radius: 18px; box-shadow: 0 24px 80px rgba(0,0,0,.55); color: var(--fg); }
.uc-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 16px 18px 12px; border-bottom: 1px solid #252731; background: linear-gradient(180deg, #171922, #111216); }
.uc-head h2 { margin: 0; font-size: 18px; }
.uc-muted, .uc-sub { color: var(--fg-dim); font-size: 12px; }
.uc-icon-btn { border: 0; background: #23252d; color: #e8e8ee; border-radius: 10px; width: 34px; height: 34px; font-size: 24px; line-height: 1; cursor: pointer; }
.uc-tabs, .uc-add, .uc-search, .uc-highlight { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; padding: 10px 18px; border-bottom: 1px solid #252731; }
.uc-highlight { background: #10131b; }
.uc-highlight-title { color: #bfc2ce; font-size: 13px; font-weight: 900; margin-right: 4px; }
.uc-highlight label { display: inline-flex; align-items: center; gap: 5px; color: #d8d8e0; font-size: 13px; background: #171b25; border: 1px solid #2d3442; border-radius: 999px; padding: 5px 9px; cursor: pointer; }
.uc-highlight label:hover { border-color: #4b5563; background: #1d2330; }
.uc-tab, .uc-add button, .uc-small { border: 1px solid #334155; background: #1a1d27; color: #e8e8ee; border-radius: 10px; padding: 7px 10px; cursor: pointer; font-weight: 700; }
.uc-tab.active { background: #263655; border-color: #4b6aa6; color: #dbeafe; }
.uc-add input, .uc-add select, .uc-search input, .uc-table select { background: #0d0f14; color: #e8e8ee; border: 1px solid #343743; border-radius: 10px; padding: 7px 9px; outline: none; }
.uc-add input { min-width: 150px; }
.uc-search input { width: 100%; }
.uc-add label { color: #c7c7d0; font-size: 13px; }
.uc-add button { background: #1f513c; border-color: #2f7b5a; color: #dcfce7; }
.uc-content { padding: 14px 18px 18px; overflow: auto; }
.uc-summary { margin-bottom: 10px; color: #b3b3bd; font-size: 13px; }
.uc-bulk-sound { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 0 0 10px; padding: 10px 12px; background: #121722; border: 1px solid #273142; border-radius: 12px; }
.uc-bulk-title { font-size: 13px; font-weight: 900; color: #dbeafe; }
.uc-bulk-sound select { background: #0d0f14; color: #e8e8ee; border: 1px solid #343743; border-radius: 10px; padding: 7px 9px; outline: none; }
.uc-bulk-sound button:disabled { opacity: .55; cursor: not-allowed; }
.uc-local-translate-settings { align-items: flex-start; }
.uc-local-translate-settings .uc-muted { line-height: 1.5; }
.uc-local-translate-settings #uc-chrome-local-translate-status[data-state="ready"] { color: #86efac; }
.uc-local-translate-settings #uc-chrome-local-translate-status[data-state="failed"] { color: #fca5a5; }
.uc-local-translate-settings #uc-chrome-local-translate-status[data-state="unsupported"] { color: #fbbf24; }

.uc-pin-settings input {
  width: 86px;
  background: #0d0f14;
  color: #e8e8ee;
  border: 1px solid #343743;
  border-radius: 10px;
  padding: 7px 9px;
  outline: none;
}
body.theme-light .uc-pin-settings input,
html[data-theme="light"] .uc-pin-settings input {
  background: #ffffff;
  color: #182033;
  border-color: #c8d4e2;
}
body.theme-light .uc-bulk-sound,
html[data-theme="light"] .uc-bulk-sound { background: #eef4fb; border-color: #d5dde8; }
body.theme-light .uc-bulk-title,
html[data-theme="light"] .uc-bulk-title { color: #25466d; }
body.theme-light .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="ready"],
html[data-theme="light"] .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="ready"] { color: #166534; }
body.theme-light .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="failed"],
html[data-theme="light"] .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="failed"] { color: #b42318; }
body.theme-light .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="unsupported"],
html[data-theme="light"] .uc-local-translate-settings #uc-chrome-local-translate-status[data-state="unsupported"] { color: #9a6700; }
body.theme-light .uc-bulk-sound select,
html[data-theme="light"] .uc-bulk-sound select { background: #ffffff; color: #182033; border-color: #c8d4e2; }

.uc-table-wrap { border: 1px solid #2a2d37; border-radius: 14px; overflow: auto; }
.uc-table { width: 100%; border-collapse: collapse; min-width: 940px; }
.uc-table th, .uc-table td { border-bottom: 1px solid #242731; padding: 9px 10px; text-align: left; vertical-align: middle; }
.uc-table th { position: sticky; top: 0; background: #171922; color: #bfc2ce; font-size: 12px; z-index: 1; }
.uc-row-av {
  display: inline-block;
  width: 32px;
  height: 32px;
  min-width: 32px;
  max-width: 32px;
  min-height: 32px;
  max-height: 32px;
  border: 1px solid #343a46;
  border-radius: 50%;
  background: #1f2430;
  object-fit: cover;
  vertical-align: middle;
  box-sizing: border-box;
}
.uc-row-av-ph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #bfdbfe;
  font-size: 12px;
  font-weight: 900;
}
body.theme-light .uc-row-av,
html[data-theme="light"] .uc-row-av {
  border-color: #cad5e2;
  background: #e5ebf3;
}
.uc-tg-item {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #2a3140;
  border-radius: 10px;
  background: #0d1119;
  cursor: pointer;
}
.uc-channel-settings { display: block; width: 100%; }
.uc-tg-item.off { opacity: .55; }
.uc-tg-item > input { flex: 0 0 auto; margin: 0; }
.uc-tg-av {
  display: inline-block;
  width: 32px;
  height: 32px;
  min-width: 32px;
  max-width: 32px;
  min-height: 32px;
  max-height: 32px;
  border: 1px solid #343a46;
  border-radius: 50%;
  background: #1f2430;
  object-fit: cover;
  box-sizing: border-box;
}
.uc-tg-av-ph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #bfdbfe;
  font-size: 12px;
  font-weight: 900;
}
.uc-tg-meta { display: flex; min-width: 0; flex: 1; flex-direction: column; line-height: 1.25; }
.uc-tg-name, .uc-tg-sub { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uc-tg-name { color: #e8e8ee; font-size: 13px; font-weight: 800; }
.uc-tg-sub { color: #8b93a4; font-size: 11px; }
.uc-pump-settings .uc-tg-item { cursor: default; }
.uc-pump-settings .uc-pump-rank {
  min-width: 26px;
  color: #8b93a4;
  font-size: 12px;
  text-align: right;
}
body.theme-light .uc-tg-item,
html[data-theme="light"] .uc-tg-item {
  border-color: #d5dde8;
  background: #ffffff;
}
body.theme-light .uc-tg-av,
html[data-theme="light"] .uc-tg-av {
  border-color: #cad5e2;
  background: #e5ebf3;
}
body.theme-light .uc-tg-name,
html[data-theme="light"] .uc-tg-name { color: #182033; }
body.theme-light .uc-tg-sub,
html[data-theme="light"] .uc-tg-sub { color: #64748b; }
body.theme-light .uc-pump-settings .uc-pump-rank,
html[data-theme="light"] .uc-pump-settings .uc-pump-rank { color: #64748b; }
.uc-main { font-weight: 800; color: #f0f0f4; }
.uc-remark { max-width: 360px; color: #bfdbfe; font-size: 12px; line-height: 1.4; }
.uc-badge { display: inline-flex; align-items: center; border: 1px solid #334155; border-radius: 999px; padding: 2px 8px; font-size: 12px; color: #cbd5e1; background: #111827; white-space: nowrap; }
.uc-badge.extra { border-color: #2f7b5a; color: #bbf7d0; background: #10251d; }
.uc-small { padding: 5px 8px; font-size: 12px; }
.uc-small.ghost { background: #111827; }
.uc-small.ok { background: #1f513c; border-color: #2f7b5a; color: #dcfce7; }
.uc-zh-alert { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; color: #a5f3fc; font-size: 12px; font-weight: 800; }
.uc-zh-alert input { margin: 0; }
.uc-list { display: grid; gap: 8px; }
.uc-list-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; background: #151821; border: 1px solid #292c36; border-radius: 12px; }
.uc-empty { padding: 18px; color: var(--fg-dim); text-align: center; }
@media (max-width: 720px) {
  .uc-panel { top: 20px; width: calc(100vw - 18px); max-height: calc(100vh - 40px); }
  .uc-add input, .uc-add select, .uc-add button { width: 100%; }
  .uc-list-row { align-items: flex-start; flex-direction: column; }
  .uc-pump-settings .uc-tg-item { flex-wrap: wrap; }
  .uc-pump-settings .uc-tg-meta { min-width: 150px; }
}

@media (max-width: 560px) {
  .card {
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 3px 8px;
    padding: 12px 14px 14px;
  }
  .card .avatar {
    width: 34px;
    height: 34px;
  }
  .card .header .name {
    font-size: 15px;
  }
  .card .body {
    font-size: 16px;
  }
  .card .embed {
    grid-template-columns: 32px minmax(0, 1fr);
    padding: 10px 12px;
    gap: 5px 8px;
  }
  .card .embed .em-avatar {
    width: 32px;
    height: 32px;
  }
  .card .embed .em-body {
    font-size: 14px;
  }
  .card .embed .em-body .translation {
    font-size: 13px;
  }
  .card .historical-ref-banner {
    width: 100%;
    font-size: 11px;
    border-radius: 12px;
  }
  .card .embed .em-time {
    flex-basis: 100%;
    white-space: normal;
  }
}

/* test append marker */


/* ===== Top push channel switches ===== */
#top-actions-bar .push-channels {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-wrap: nowrap;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#top-actions-bar .push-title {
  color: #8a8a92;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
#top-actions-bar .push-chip {
  border: 1px solid rgba(143,184,255,.30);
  background: rgba(20,31,48,.92);
  color: #d7e7ff;
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 12px;
  line-height: 1.15;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#top-actions-bar .push-chip:hover { filter: brightness(1.12); }
#top-actions-bar .push-chip.off {
  opacity: .46;
  color: #8a8a92;
  background: #17171b;
  border-color: #34343b;
  text-decoration: line-through;
}


/* Keep top actions and bottom status usable on narrow widget widths. */
#top-actions-bar,
#health-bar {
  gap: 10px;
  overflow-x: auto;
  overflow-y: hidden;
}
#top-actions-bar .item,
#health-bar .item {
  flex: 0 0 auto;
  white-space: nowrap;
}
#top-actions-bar .spacer,
#health-bar .spacer {
  flex: 1 0 10px;
  min-width: 10px;
}
#top-actions-bar .push-channels,
#top-actions-bar .user-actions,
#top-actions-bar .theme-actions,
#top-actions-bar .wallet-actions {
  flex: 0 0 auto;
}

/* Push menu variant: compact top button + dropdown switches. */
#top-actions-bar { overflow: visible; }
#top-actions-bar .push-channels {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  z-index: 20000;
}

@media (max-width: 640px) {
  #top-actions-bar {
    min-height: 48px;
    padding-left: 10px;
    padding-right: 10px;
    gap: 8px;
  }
  #top-actions-bar .site-logo-link {
    width: 222px;
    height: 38px;
    margin-right: 4px;
  }
  #top-actions-bar .site-logo-link::before { font-size: 48px; }
  #top-actions-bar .site-logo-link::after { font-size: 36px; }
}
#push-menu-toggle {
  border: 1px solid rgba(143,184,255,.36);
  background: rgba(20,31,48,.95);
  color: #d7e7ff;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  line-height: 1.1;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#push-menu-toggle.off {
  border-color: rgba(245,158,11,.55);
  color: #fde68a;
  background: rgba(69,45,8,.88);
}
#push-channel-controls .push-panel.hidden { display: none; }
#push-channel-controls .push-panel {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(92px, 1fr));
  gap: 7px;
  width: 220px;
  padding: 10px;
  border: 1px solid #303544;
  border-radius: 14px;
  background: rgba(17,18,24,.98);
  box-shadow: 0 18px 46px rgba(0,0,0,.52);
  z-index: 30000;
}
#push-channel-controls .push-panel .push-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 6px 8px;
}
#push-channel-controls .auto-image-analysis-chip {
  grid-column: 1 / -1;
  border-color: rgba(168,85,247,.45);
  background: rgba(42,30,58,.94);
}
#push-channel-controls .auto-image-analysis-chip.off {
  border-color: #34343b;
  background: #17171b;
}

/* ===== Inline playable videos ===== */
.card .media.has-inline-video,
.card .embed .em-media.has-inline-video,
.card.dex-signal .dex-tweet-media.has-video {
  position: relative;
  width: fit-content;
  max-width: 100%;
}
.card .media video.inline-video,
.card .embed .em-media video.inline-video,
.card.dex-signal .dex-tweet-video {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 420px;
  border-radius: 12px;
  border: 1px solid var(--embed-border);
  background: #000;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
.card .embed .em-media video.inline-video {
  max-height: 360px;
  border-radius: 10px;
}
.card.dex-signal .dex-tweet-video {
  max-height: 280px;
  border-radius: 8px;
}
.card .media.has-inline-video::before,
.card .embed .em-media.has-inline-video::before,
.card.dex-signal .dex-tweet-media:has(video)::before {
  display: none;
}


#push-channel-controls .push-chip.has-side-filter {
  position: relative;
}
#push-channel-controls .push-chip.has-side-filter::after {
  content: "细分";
  position: absolute;
  right: 6px;
  top: -7px;
  padding: 1px 5px;
  border: 1px solid rgba(96,165,250,.42);
  border-radius: 999px;
  background: rgba(15,23,42,.96);
  color: #93c5fd;
  font-size: 9px;
  line-height: 1.1;
  font-weight: 900;
}
#push-channel-controls .push-news-filters {
  position: absolute;
  left: calc(100% + 8px);
  top: 8px;
  width: 338px;
  max-width: min(338px, calc(100vw - 260px));
  margin: 0;
  padding: 0;
  border: 0;
  display: flex;
  align-items: stretch;
  z-index: 30001;
}
#push-channel-controls .push-news-filters.disabled {
  opacity: .58;
}
#push-channel-controls .news-filter-side-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: .08em;
  min-width: 28px;
  padding: 10px 5px;
  border: 1px solid rgba(96,165,250,.42);
  border-right: 0;
  border-radius: 13px 0 0 13px;
  background: linear-gradient(180deg, rgba(37,99,235,.30), rgba(15,23,42,.98));
  color: #dbeafe;
  font-size: 11px;
  font-weight: 900;
  box-shadow: -6px 14px 34px rgba(0,0,0,.32);
}
#push-channel-controls .news-filter-card {
  flex: 1 1 auto;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(96,165,250,.30);
  border-radius: 0 14px 14px 14px;
  background: rgba(12,18,29,.985);
  box-shadow: 0 18px 46px rgba(0,0,0,.52);
}
#push-channel-controls .news-filter-title {
  font-size: 12px;
  font-weight: 900;
  color: #dbeafe;
  margin-bottom: 7px;
}
#push-channel-controls .news-filter-subtitle {
  font-size: 11px;
  color: #93a8c8;
  margin: 8px 0 5px;
}
#push-channel-controls .news-filter-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#push-channel-controls .news-filter-grid.types {
  max-height: min(260px, calc(100vh - 260px));
  overflow: auto;
  padding-right: 3px;
}
#push-channel-controls .news-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  padding: 4px 7px;
  border: 1px solid rgba(143,184,255,.22);
  border-radius: 999px;
  background: rgba(10,16,28,.92);
  color: #d7e3f8;
  font-size: 11px;
  line-height: 1.2;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}
#push-channel-controls .news-filter-chip input {
  margin: 0;
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  accent-color: #60a5fa;
}
#push-channel-controls .news-filter-chip span {
  color: #8ea3c2;
  font-variant-numeric: tabular-nums;
}
#push-channel-controls .news-filter-empty {
  color: #8ea3c2;
  font-size: 11px;
}

/* ===== Soft light theme ===== */
body.theme-light,
html[data-theme="light"] body {
  background:
    radial-gradient(circle at 18% 0%, rgba(219, 234, 254, .85) 0, transparent 32%),
    linear-gradient(180deg, #f4f6fa 0%, #eef1f5 100%);
  color: var(--fg);
}
body.theme-light #top-actions-bar,
body.theme-light #health-bar {
  color: var(--fg-muted);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}
body.theme-light #health-bar .label { color: #253041; }
body.theme-light #health-bar .time { color: #697586; }
body.theme-light #health-bar .item[data-key="sse"] .time { color: #2563eb; }
body.theme-light main#feed::-webkit-scrollbar-thumb { background: #c8d2df; }
body.theme-light main#feed::-webkit-scrollbar-thumb:hover { background: #aebbc9; }

body.theme-light .card {
  box-shadow: var(--soft-shadow);
}
body.theme-light .card.highlight {
  box-shadow: 0 0 0 1px rgba(183, 121, 31, .18), 0 10px 26px rgba(183, 121, 31, .10);
}
body.theme-light .card a.text-link {
  color: var(--link);
  border-bottom-color: rgba(37, 99, 235, .30);
}
body.theme-light .card a.mention-link {
  color: var(--mention);
}
body.theme-light .card a.text-link:hover,
body.theme-light .card a.mention-link:hover,
body.theme-light .follow-row a.target-name.profile-link:hover,
body.theme-light .follow-row a.target-handle.profile-link:hover {
  color: #1d4ed8;
  border-bottom-color: rgba(29, 78, 216, .45);
}
body.theme-light .card a.profile-link:hover {
  color: #111827;
  border-bottom-color: rgba(17, 24, 39, .26);
}
body.theme-light .card .handle a.profile-link,
body.theme-light .card .embed .em-handle a.profile-link,
body.theme-light .follow-row a.target-handle.profile-link {
  color: #667085;
}
body.theme-light .card .avatar,
body.theme-light .card .embed .em-avatar,
body.theme-light .follow-row .target-avatar {
  background: #e5ebf3;
  border-color: #cad5e2;
}
body.theme-light .card .media img,
body.theme-light .card .media video,
body.theme-light .card .embed .em-media img,
body.theme-light .card .embed .em-media video.inline-video,
body.theme-light .card.dex-signal .dex-tweet-video,
body.theme-light .card.dex-signal .dex-tweet-media img {
  border-color: #ccd7e4;
  background: #eef3f8;
}
body.theme-light .event-comments,
html[data-theme="light"] .event-comments {
  background: rgba(241, 246, 251, .74);
  border-color: rgba(148, 163, 184, .28);
}
body.theme-light .event-comment-author,
html[data-theme="light"] .event-comment-author {
  color: #1d4ed8;
}
body.theme-light .event-comment-form input,
html[data-theme="light"] .event-comment-form input {
  background: rgba(255, 255, 255, .72);
  border-color: #cbd5e1;
  color: #172033;
}
body.theme-light .event-comment-form button,
html[data-theme="light"] .event-comment-form button {
  background: #e7f0ff;
  border-color: #bfd2ee;
  color: #23405f;
}
body.theme-light .image-fullsize-viewer,
html[data-theme="light"] .image-fullsize-viewer {
  background: rgba(219, 228, 238, .88);
}
body.theme-light .image-fullsize-toolbar,
html[data-theme="light"] .image-fullsize-toolbar {
  color: #172033;
  background: rgba(241, 246, 251, .84);
  border-bottom-color: rgba(100, 116, 139, .22);
}
body.theme-light .image-fullsize-open,
body.theme-light .image-fullsize-close,
html[data-theme="light"] .image-fullsize-open,
html[data-theme="light"] .image-fullsize-close {
  color: #23405f;
  background: rgba(255, 255, 255, .86);
  border-color: rgba(148, 163, 184, .42);
}
body.theme-light .card .body .translation,
body.theme-light .card .embed .em-body .translation {
  color: #46566b;
}
body.theme-light .card.alpha-signal {
  background: linear-gradient(180deg, #eefaf3 0%, var(--card-bg) 52%);
  border-color: #badfca;
}
body.theme-light .card.alpha-signal.highlight {
  background: linear-gradient(180deg, #fff7df 0%, var(--card-bg) 46%);
}
body.theme-light .card.favorite {
  background: linear-gradient(180deg, rgba(255, 248, 220, .82) 0%, var(--card-bg) 42%);
}
body.theme-light .card.chinese-tweet-alert-card,
html[data-theme="light"] .card.chinese-tweet-alert-card {
  border-color: rgba(8, 145, 178, .48);
  background: linear-gradient(180deg, rgba(224, 247, 250, .92) 0%, var(--card-bg) 42%);
  box-shadow: 0 0 0 1px rgba(8, 145, 178, .12), 0 12px 28px rgba(8, 90, 110, .08);
}
body.theme-light .card.chinese-tweet-alert-card .header .name,
html[data-theme="light"] .card.chinese-tweet-alert-card .header .name {
  color: #0e7490;
}
body.theme-light .card.chinese-tweet-alert-card::after,
html[data-theme="light"] .card.chinese-tweet-alert-card::after {
  background: #0891b2;
  color: #ecfeff;
}
body.theme-light .card.historical-ref .embed {
  background: #fff7e6;
  border-color: rgba(217, 119, 6, .30);
}
body.theme-light .card .pin-badge {
  box-shadow: 0 2px 8px rgba(15, 23, 42, .18);
}

body.theme-light .card .footer a,
body.theme-light .card .footer .fav-btn {
  background: #eef2f7;
  color: #344054;
  border-color: #cfd8e5;
}
body.theme-light .card .footer a:hover,
body.theme-light .card .footer .fav-btn:hover:not(:disabled) {
  background: #e3eaf3;
  border-color: #bdc9d8;
}
body.theme-light .card .footer .fav-btn.is-fav {
  background: #fff4d6;
  color: #9a5a00;
  border-color: #f4c56a;
}
body.theme-light .card .footer .unfollow-btn {
  background: #fff1f2;
  color: #b42318;
  border-color: #f4b4b4;
}
body.theme-light .card .footer .unfollow-btn:hover:not(:disabled) { background: #ffe4e6; }
body.theme-light .card .footer .admin-remove-default-btn {
  background: #fff7ed;
  color: #9a4b0b;
  border-color: #f2bd87;
}
body.theme-light .card .footer .admin-remove-default-btn:hover:not(:disabled) {
  background: #ffedd5;
  border-color: #e59a53;
}
body.theme-light .card .footer .narrative-btn {
  background: #f1e8ff;
  color: #6d28d9;
  border-color: #ccb3f3;
}
body.theme-light .card .footer .narrative-btn:hover:not(:disabled) { background: #e9d8ff; }

body.theme-light .card mark.meme-highlight {
  color: #8a4b00;
  background: linear-gradient(180deg, transparent 48%, rgba(245, 158, 11, .32) 48%);
}
body.theme-light .card mark.token-ca-highlight {
  color: #0f766e;
  background: rgba(20, 184, 166, .14);
  border-color: rgba(15, 118, 110, .22);
}
body.theme-light .card mark.token-symbol-highlight {
  color: #1d4ed8;
  background: rgba(59, 130, 246, .13);
  border-color: rgba(37, 99, 235, .20);
}
body.theme-light .card mark.quote-content-highlight {
  color: #7e22ce;
  background: linear-gradient(180deg, transparent 45%, rgba(168, 85, 247, .22) 45%);
}
body.theme-light .card .narrative-allusions {
  background: linear-gradient(180deg, #fff8ea 0%, #fffdf7 100%);
  border-color: #ead8aa;
}
body.theme-light .card .narrative-brief {
  background: linear-gradient(180deg, #eef4ff 0%, #f8fbff 100%);
  border-color: #bdd1f2;
}
body.theme-light .card .narrative-title { color: #b7791f; }
body.theme-light .card .narrative-brief .narrative-title { color: #2563eb; }
body.theme-light .card .narrative-phrase { color: #9a5a00; }
body.theme-light .card .narrative-tag {
  background: #e7effc;
  color: #244d86;
  border-color: #bfd2ee;
}

body.theme-light .card.dex-signal .dex-meta,
body.theme-light .card.dex-signal .dex-copy,
body.theme-light .card.dex-signal .dex-link {
  background: #eef5f8;
  border-color: #c7d7df;
}
body.theme-light .card.dex-signal .dex-title { color: #0f766e; }
body.theme-light .card.dex-signal .dex-symbol { color: #9a5a00; }
body.theme-light .card.dex-signal .dex-name { color: #526273; }
body.theme-light .card.dex-signal .dex-stat {
  background: #f2f6fa;
  border-color: #d3dde8;
}
body.theme-light .card.dex-signal .dex-stat-val { color: #344054; }
body.theme-light .card.dex-signal {
  background: linear-gradient(180deg, #f7fbfd 0%, #edf4f8 100%);
  border-color: #bfd3df;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
  color: #182033;
}
body.theme-light .card.dex-signal.highlight {
  border-color: #80c7c1;
  box-shadow: 0 0 0 1px rgba(15, 118, 110, .16), 0 12px 28px rgba(15, 118, 110, .10);
}
body.theme-light .card.dex-signal .dex-icon {
  background: linear-gradient(135deg, #e7f1f6, #dceaf1);
  border-color: #b9ccd8;
}
body.theme-light .card.dex-signal .dex-icon-letter { color: #0f766e; }
body.theme-light .card.dex-signal .dex-meta {
  color: #5c6f80;
  border: 1px solid #c7d7df;
}
body.theme-light .card.dex-signal .dex-time { color: #667085; }
body.theme-light .card.dex-signal .dex-mc { color: #15803d; }
body.theme-light .card.dex-signal .dex-stat-label { color: #6b7c8f; }
body.theme-light .card.dex-signal .dex-ca-row {
  background: #edf4f8;
  border-color: #cbd9e4;
}
body.theme-light .card.dex-signal .dex-ca { color: #334155; }
body.theme-light .card.dex-signal .dex-copy {
  background: #e7eef4;
  color: #526172;
  border-color: #c2d1dc;
}
body.theme-light .card.dex-signal .dex-copy:hover { background: #dce7ef; }
body.theme-light .card.dex-signal .dex-link {
  background: #e6f6ef;
  color: #16845b;
  border-color: #b8dbc9;
}
body.theme-light .card.dex-signal .dex-link:hover { background: #d9f0e6; }
body.theme-light .card.dex-signal .dex-link-pill,
body.theme-light .card.dex-signal .dex-tweets-btn {
  background: #edf4f8;
  color: #35627c;
  border-color: #c6d6e0;
}
body.theme-light .card.dex-signal .dex-link-pill:hover,
body.theme-light .card.dex-signal .dex-tweets-btn:hover:not(:disabled) {
  background: #e2edf4;
  border-color: #aec7d6;
}
body.theme-light .card.dex-signal .dex-link-pill.website { color: #1d5f8f; }
body.theme-light .card.dex-signal .dex-link-pill.social-twitter,
body.theme-light .card.dex-signal .dex-link-pill.social-x { color: #334155; border-color: #c6d6e0; }
body.theme-light .card.dex-signal .dex-link-pill.social-telegram,
body.theme-light .card.dex-signal .dex-link-pill.social-tg { color: #1473a6; }
body.theme-light .card.dex-signal .dex-link-pill.social-discord { color: #5b4bb2; }
body.theme-light .card.dex-signal .dex-link-pill.social-github { color: #475467; }
body.theme-light .card.dex-signal .tw-profile-card,
body.theme-light .card.dex-signal .dex-tweet-item,
body.theme-light .card.dex-signal .dex-tweets-loading {
  background: #f7fbfe;
  border-color: #c9d8e4;
}
body.theme-light .card.dex-signal .tw-profile-avatar { border-color: #b8c7d6; background: #e7eef4; }
body.theme-light .card.dex-signal .tw-profile-desc-zh,
body.theme-light .card.dex-signal .dex-tweet-zh { border-top-color: #c9d8e4; }

body.theme-light .top-config-btn,
body.theme-light #push-menu-toggle {
  background: #f8fafc;
  color: #334155;
  border-color: #cbd5e1;
}
body.theme-light .top-config-btn:hover,
body.theme-light #push-menu-toggle:hover {
  background: #eef2f7;
  border-color: #b6c2d1;
}
body.theme-light .theme-toggle-btn {
  background: linear-gradient(180deg, #fff7da, #f7e9b7);
  color: #7c4a00;
  border-color: #e6bf55;
}
body.theme-light .wallet-login-btn.wallet-connected {
  background: #e7f8ee;
  color: #166534;
  border-color: #93d6aa;
}
body.theme-light #wallet-menu {
  background: rgba(248, 250, 252, .98);
  border-color: #cbd5e1;
  box-shadow: 0 18px 44px rgba(15, 23, 42, .15);
}
body.theme-light .wallet-menu-btn {
  background: #f8fafc;
  color: #334155;
  border-color: #cbd5e1;
}
body.theme-light .wallet-menu-btn:hover { background: #eef2f7; }
body.theme-light .wallet-menu-btn.danger {
  background: #fff1f2;
  color: #991b1b;
  border-color: #fecdd3;
}
body.theme-light .wallet-menu-btn.danger:hover { background: #ffe4e6; }
body.theme-light #push-menu-toggle.off {
  background: #fff7e6;
  color: #9a5a00;
  border-color: #e8c275;
}
body.theme-light #push-channel-controls .push-panel {
  background: rgba(248, 250, 252, .98);
  border-color: #c9d5e3;
  box-shadow: 0 18px 44px rgba(15, 23, 42, .15);
}
body.theme-light #top-actions-bar .push-chip,
body.theme-light #push-channel-controls .push-panel .push-chip {
  background: #eef4ff;
  color: #24508c;
  border-color: #c4d7f3;
}
body.theme-light #top-actions-bar .push-chip.off,
body.theme-light #push-channel-controls .push-panel .push-chip.off,
body.theme-light #push-channel-controls .auto-image-analysis-chip.off {
  background: #f1f3f6;
  color: #7a8695;
  border-color: #d6dde6;
}
body.theme-light #push-channel-controls .auto-image-analysis-chip {
  background: #f4edff;
  border-color: #d8c4f2;
  color: #6d28d9;
}
body.theme-light #push-channel-controls .news-filter-side-tab {
  background: linear-gradient(180deg, #dbeafe, #eff6ff);
  color: #1d4ed8;
  border-color: #b8cdf0;
  box-shadow: -4px 12px 24px rgba(15, 23, 42, .10);
}
body.theme-light #push-channel-controls .news-filter-card {
  background: rgba(248, 250, 252, .99);
  border-color: #c9d5e3;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .14);
}
body.theme-light #push-channel-controls .news-filter-title { color: #1e3a8a; }
body.theme-light #push-channel-controls .news-filter-subtitle,
body.theme-light #push-channel-controls .news-filter-chip span,
body.theme-light #push-channel-controls .news-filter-empty { color: #667085; }
body.theme-light #push-channel-controls .news-filter-chip {
  background: #f2f6fb;
  color: #334155;
  border-color: #d1dbe8;
}


body.theme-light .keyword-monitor-btn,
html[data-theme="light"] .keyword-monitor-btn {
  background: #eaf2ff;
  color: #1d4ed8;
  border-color: #bdd3f4;
}
body.theme-light .keyword-monitor-btn:hover,
html[data-theme="light"] .keyword-monitor-btn:hover { background: #dfeaff; }
body.theme-light .theme-toggle-btn,
html[data-theme="light"] .theme-toggle-btn {
  background: #fff7ed;
  color: #a16207;
  border-color: #f3d09a;
}

/* ===== Unified top action buttons ===== */
#top-actions-bar .user-actions,
#top-actions-bar .admin-actions,
#top-actions-bar .theme-actions,
#top-actions-bar .wallet-actions,
#top-actions-bar .push-channels {
  gap: 8px;
}
#top-actions-bar .top-config-btn,
#top-actions-bar #push-menu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  min-width: 34px;
  padding: 0 12px;
  border: 1px solid rgba(127, 158, 203, .32);
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(27, 37, 55, .96), rgba(15, 23, 42, .96));
  color: #dbeafe;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055), 0 6px 16px rgba(0,0,0,.24);
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .01em;
  white-space: nowrap;
  cursor: pointer;
  transition: background .16s ease-out, border-color .16s ease-out, color .16s ease-out, transform .16s ease-out, box-shadow .16s ease-out, opacity .16s ease-out;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#top-actions-bar .top-config-btn:hover,
#top-actions-bar #push-menu-toggle:hover {
  border-color: rgba(147, 197, 253, .62);
  background: linear-gradient(180deg, rgba(33, 48, 72, .98), rgba(19, 32, 52, .98));
  color: #eff6ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.075), 0 8px 18px rgba(0,0,0,.30);
  transform: translateY(-1px);
}
#top-actions-bar .top-config-btn:active,
#top-actions-bar #push-menu-toggle:active { transform: translateY(0); }
#top-actions-bar .top-config-btn:focus-visible,
#top-actions-bar #push-menu-toggle:focus-visible {
  outline: 2px solid rgba(96, 165, 250, .82);
  outline-offset: 2px;
}
#top-actions-bar .top-config-btn:disabled,
#top-actions-bar #push-menu-toggle:disabled { opacity: .58; cursor: wait; transform: none; }
#top-actions-bar .theme-toggle-btn,
#top-actions-bar .language-toggle-btn,
#top-actions-bar .keyword-monitor-btn {
  width: 34px;
  padding: 0;
}
#top-actions-bar .language-toggle-btn {
  color: #99f6e4;
  border-color: rgba(45, 212, 191, .42);
}
#top-actions-bar .theme-toggle-btn {
  color: #fde68a;
  border-color: rgba(245, 158, 11, .38);
}
#top-actions-bar .keyword-monitor-btn {
  color: #bfdbfe;
  border-color: rgba(96, 165, 250, .40);
}
#top-actions-bar .wallet-login-btn.wallet-connected {
  background: linear-gradient(180deg, rgba(17, 54, 40, .96), rgba(11, 38, 29, .96));
  color: #bbf7d0;
  border-color: rgba(74, 222, 128, .42);
}
#top-actions-bar .wallet-login-btn.wallet-connected:hover {
  background: linear-gradient(180deg, rgba(21, 73, 52, .98), rgba(13, 52, 38, .98));
  border-color: rgba(134, 239, 172, .58);
}
#top-actions-bar #push-menu-toggle.off {
  background: linear-gradient(180deg, rgba(78, 50, 18, .96), rgba(55, 36, 15, .96));
  color: #fde68a;
  border-color: rgba(245, 158, 11, .50);
}
#top-actions-bar .admin-panel-btn,
#top-actions-bar .admin-quick-add-btn { color: #d8b4fe; border-color: rgba(168, 85, 247, .36); }

body.theme-light #top-actions-bar .top-config-btn,
body.theme-light #top-actions-bar #push-menu-toggle,
html[data-theme="light"] #top-actions-bar .top-config-btn,
html[data-theme="light"] #top-actions-bar #push-menu-toggle {
  background: linear-gradient(180deg, #f8fbff, #edf3fa);
  color: #314158;
  border-color: #c5d3e4;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 5px 14px rgba(30, 48, 78, .10);
}
body.theme-light #top-actions-bar .top-config-btn:hover,
body.theme-light #top-actions-bar #push-menu-toggle:hover,
html[data-theme="light"] #top-actions-bar .top-config-btn:hover,
html[data-theme="light"] #top-actions-bar #push-menu-toggle:hover {
  background: linear-gradient(180deg, #ffffff, #e8f0f8);
  color: #1f2937;
  border-color: #aebfd2;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 7px 16px rgba(30, 48, 78, .14);
}
body.theme-light #top-actions-bar .theme-toggle-btn,
html[data-theme="light"] #top-actions-bar .theme-toggle-btn {
  background: linear-gradient(180deg, #fff7e8, #f6e6bd);
  color: #8a4f00;
  border-color: #e6c56f;
}
body.theme-light #top-actions-bar .language-toggle-btn,
html[data-theme="light"] #top-actions-bar .language-toggle-btn {
  background: linear-gradient(180deg, #e9fbf8, #dff5f0);
  color: #0f766e;
  border-color: #93d7cf;
}
body.theme-light #top-actions-bar .keyword-monitor-btn,
html[data-theme="light"] #top-actions-bar .keyword-monitor-btn {
  background: linear-gradient(180deg, #eef6ff, #e3edf9);
  color: #1d4ed8;
  border-color: #bdd3f4;
}
body.theme-light #top-actions-bar .wallet-login-btn.wallet-connected,
html[data-theme="light"] #top-actions-bar .wallet-login-btn.wallet-connected {
  background: linear-gradient(180deg, #e9f8ef, #dff2e8);
  color: #166534;
  border-color: #91d6aa;
}
body.theme-light #top-actions-bar #push-menu-toggle.off,
html[data-theme="light"] #top-actions-bar #push-menu-toggle.off {
  background: linear-gradient(180deg, #fff7e8, #f6e6bd);
  color: #92400e;
  border-color: #e6c56f;
}
body.theme-light #top-actions-bar .admin-panel-btn,
body.theme-light #top-actions-bar .admin-quick-add-btn,
html[data-theme="light"] #top-actions-bar .admin-panel-btn,
html[data-theme="light"] #top-actions-bar .admin-quick-add-btn {
  background: linear-gradient(180deg, #f7f0ff, #eee3fb);
  color: #6d28d9;
  border-color: #d7c3f2;
}
@media (max-width: 640px) {
  #top-actions-bar .top-config-btn,
  #top-actions-bar #push-menu-toggle {
    height: 28px;
    min-width: 32px;
    padding-left: 9px;
    padding-right: 9px;
    font-size: 11px;
  }
  #top-actions-bar .theme-toggle-btn,
  #top-actions-bar .language-toggle-btn,
  #top-actions-bar .keyword-monitor-btn { width: 32px; padding: 0; }
}

html[data-lang="en"] .translation { display: none !important; }

body.theme-light .user-config-modal .uc-panel {
  background: #f8fafc;
  color: #182033;
  border-color: #d5dde8;
}
body.theme-light .uc-backdrop { background: rgba(15, 23, 42, .38); }
body.theme-light .uc-icon-btn,
body.theme-light .uc-tab,
body.theme-light .uc-add button,
body.theme-light .uc-small {
  background: #eef2f7;
  color: #344054;
  border-color: #ccd6e3;
}
body.theme-light .uc-tab.active {
  background: #e8f0ff;
  color: #1d4ed8;
  border-color: #b8cdf0;
}
body.theme-light .uc-add input,
body.theme-light .uc-add select,
body.theme-light .uc-search input,
body.theme-light .uc-table select {
  background: #ffffff;
  color: #182033;
  border-color: #cfd8e5;
}
body.theme-light .uc-tabs,
body.theme-light .uc-add,
body.theme-light .uc-search,
body.theme-light .uc-highlight {
  border-bottom-color: #d5dde8;
}
body.theme-light .uc-highlight { background: #f1f5fa; }
body.theme-light .uc-highlight label {
  background: #ffffff;
  color: #344054;
  border-color: #d5dde8;
}

@media (max-width: 640px) {
  #push-channel-controls .push-news-filters {
    left: auto;
    right: 0;
    top: calc(100% + 8px);
    width: min(340px, calc(100vw - 24px));
    max-width: min(340px, calc(100vw - 24px));
  }
}

/* ===== Soft light narrative allusions v7 ===== */
html[data-theme="light"] .card .narrative-allusions,
body.theme-light .card .narrative-allusions {
  background: linear-gradient(180deg, #f5f7fa 0%, #eef3f8 100%) !important;
  border: 1px solid #bfccdc !important;
  border-left: 3px solid #86a9c9 !important;
  color: #203047 !important;
  box-shadow: 0 6px 16px rgba(41, 58, 78, .10) !important;
}
html[data-theme="light"] .card .narrative-brief,
body.theme-light .card .narrative-brief {
  background: linear-gradient(180deg, #f6f8fb 0%, #edf3f8 100%) !important;
  border-color: #b9c8da !important;
  border-left-color: #7fa4c8 !important;
}
html[data-theme="light"] .card .narrative-allusions .narrative-title,
html[data-theme="light"] .card .narrative-brief .narrative-title,
body.theme-light .card .narrative-allusions .narrative-title,
body.theme-light .card .narrative-brief .narrative-title {
  color: #3a658d !important;
  text-shadow: none !important;
}
html[data-theme="light"] .card .narrative-allusions .narrative-item,
html[data-theme="light"] .card .narrative-allusions .narrative-line,
html[data-theme="light"] .card .narrative-allusions .narrative-exp,
body.theme-light .card .narrative-allusions .narrative-item,
body.theme-light .card .narrative-allusions .narrative-line,
body.theme-light .card .narrative-allusions .narrative-exp {
  color: #24344a !important;
}
html[data-theme="light"] .card .narrative-allusions .narrative-phrase,
html[data-theme="light"] .card .narrative-allusions b,
html[data-theme="light"] .card .narrative-allusions strong,
body.theme-light .card .narrative-allusions .narrative-phrase,
body.theme-light .card .narrative-allusions b,
body.theme-light .card .narrative-allusions strong {
  color: #8a5f14 !important;
}
html[data-theme="light"] .card .narrative-allusions .narrative-tag,
body.theme-light .card .narrative-allusions .narrative-tag {
  background: #e3edf6 !important;
  border: 1px solid #b3c5d8 !important;
  color: #31557d !important;
  box-shadow: none !important;
}
html[data-theme="light"] .card .narrative-image-context,
body.theme-light .card .narrative-image-context {
  background: linear-gradient(180deg, #f8f6ee 0%, #f0eadf 100%) !important;
  border-left-color: #c89534 !important;
  color: #253246 !important;
  box-shadow: 0 4px 12px rgba(86, 65, 35, .08) !important;
}
/* ===== End soft light narrative allusions v7 ===== */

/* ===== Soft light translation inline v8 ===== */
html[data-theme="light"] .card .translation,
html[data-theme="light"] .card .body .translation,
html[data-theme="light"] .card .embed .em-body .translation,
body.theme-light .card .translation,
body.theme-light .card .body .translation,
body.theme-light .card .embed .em-body .translation {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #627086 !important;
  padding: 0 !important;
}
html[data-theme="light"] .card .body .translation,
body.theme-light .card .body .translation {
  margin-top: 6px !important;
}
html[data-theme="light"] .card .embed .em-body .translation,
body.theme-light .card .embed .em-body .translation {
  margin-top: 4px !important;
}
/* ===== End soft light translation inline v8 ===== */

/* ===== Admin wallet panel button ===== */
.admin-actions.hidden { display: none !important; }
.admin-actions { gap: 8px; -webkit-app-region: no-drag; app-region: no-drag; }
/* Admin buttons intentionally inherit the unified top action button style. */
/* ===== End admin wallet panel button ===== */

/* ===== Deleted tweet warning card ===== */
.card.tweet-delete-event {
  position: relative;
  border-color: rgba(255, 92, 92, .88) !important;
  box-shadow:
    0 0 0 1px rgba(255, 92, 92, .72),
    0 0 28px rgba(204, 42, 42, .26),
    var(--card-shadow, 0 12px 28px rgba(0,0,0,.18));
}
.card.tweet-delete-event::after {
  content: "×";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none;
  z-index: 1;
  color: rgba(255, 55, 55, .20);
  font-size: clamp(150px, 34vw, 360px);
  line-height: .8;
  font-weight: 950;
  font-family: Arial Black, Impact, system-ui, sans-serif;
  transform: rotate(-10deg);
  text-shadow: 0 0 18px rgba(255, 0, 0, .12);
}
.card.tweet-delete-event > * {
  position: relative;
  z-index: 2;
}
.card.tweet-delete-event .chip.delete {
  background: linear-gradient(180deg, #ef4444, #991b1b) !important;
  color: #fff7f7;
  box-shadow: 0 0 0 1px rgba(255,255,255,.20), 0 8px 18px rgba(185,28,28,.28);
}
html[data-theme="light"] .card.tweet-delete-event,
body.theme-light .card.tweet-delete-event {
  border-color: rgba(220, 38, 38, .82) !important;
  box-shadow:
    0 0 0 1px rgba(220, 38, 38, .50),
    0 0 26px rgba(220, 38, 38, .18),
    0 9px 22px rgba(33, 48, 66, .12) !important;
}
html[data-theme="light"] .card.tweet-delete-event::after,
body.theme-light .card.tweet-delete-event::after {
  color: rgba(220, 38, 38, .16);
}
/* ===== End deleted tweet warning card ===== */


/* ===== Narrative depth badge ===== */
.card .narrative-depth-badge {
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
  padding: 1px 7px 2px;
  border-radius: 999px;
  border: 1px solid rgba(125, 211, 252, 0.45);
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.24), rgba(168, 85, 247, 0.20));
  color: #c7ddff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  vertical-align: middle;
}
.card .narrative-brief.narrative-deep {
  border-color: rgba(96, 165, 250, 0.56);
  box-shadow: 0 0 0 1px rgba(96, 165, 250, 0.14) inset, 0 12px 26px rgba(15, 23, 42, 0.18);
}
html[data-theme="light"] .card .narrative-depth-badge,
body.theme-light .card .narrative-depth-badge {
  border-color: rgba(37, 99, 235, 0.22);
  background: linear-gradient(135deg, rgba(219, 234, 254, 0.95), rgba(237, 233, 254, 0.92));
  color: #1d4ed8;
}
html[data-theme="light"] .card .narrative-brief.narrative-deep,
body.theme-light .card .narrative-brief.narrative-deep {
  border-color: rgba(37, 99, 235, 0.24);
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.06) inset, 0 10px 22px rgba(100, 116, 139, 0.12);
}
/* ===== End narrative depth badge ===== */



/* ===== Profile banner/avatar change compare ===== */
.card .profile-image-change {
  grid-column: 1 / -1;
  margin-top: 6px;
  min-width: 0;
}
.profile-image-change-title {
  color: #d8d8e0;
  font-size: 13px;
  font-weight: 900;
  margin: 0 0 8px;
}
.profile-image-change-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.profile-image-change-item,
.profile-image-change-missing {
  display: block;
  min-width: 0;
  border: 1px solid #2f3340;
  border-radius: 14px;
  background: #151821;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}
.profile-image-change-item.is-new { border-color: rgba(74, 222, 128, .40); }
.profile-image-change-item.is-old { border-color: rgba(148, 163, 184, .34); }
.profile-image-change-label {
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 900;
  color: #e8e8ee;
  background: rgba(255,255,255,.03);
}
.profile-image-change-item.is-new .profile-image-change-label { color: #bbf7d0; }
.profile-image-change-item.is-old .profile-image-change-label { color: #cbd5e1; }
.profile-image-change-item img {
  display: block;
  width: 100%;
  height: 170px;
  object-fit: cover;
  background: #090a0d;
}
.profile-image-change-url {
  padding: 7px 10px 9px;
  color: #8fb8ff;
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
  border-top: 1px solid rgba(255,255,255,.06);
}
.profile-image-change-missing {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 214px;
  color: #8a8a92;
  font-size: 13px;
}
.profile-image-change-item.image-load-failed img { display: none; }
.profile-image-change-item.image-load-failed::after {
  content: "图片加载失败，点击打开原图";
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 170px;
  color: #fca5a5;
  background: #1b1010;
  font-size: 13px;
}
body.theme-light .profile-image-change-title,
html[data-theme="light"] .profile-image-change-title { color: #344054; }
body.theme-light .profile-image-change-item,
body.theme-light .profile-image-change-missing,
html[data-theme="light"] .profile-image-change-item,
html[data-theme="light"] .profile-image-change-missing {
  background: #f6f8fb;
  border-color: #ccd6e3;
}
body.theme-light .profile-image-change-label,
html[data-theme="light"] .profile-image-change-label {
  color: #263243;
  background: rgba(15, 23, 42, .035);
}
body.theme-light .profile-image-change-item.is-new,
html[data-theme="light"] .profile-image-change-item.is-new { border-color: rgba(22, 163, 74, .30); }
body.theme-light .profile-image-change-item.is-old,
html[data-theme="light"] .profile-image-change-item.is-old { border-color: rgba(100, 116, 139, .26); }
body.theme-light .profile-image-change-item.is-new .profile-image-change-label,
html[data-theme="light"] .profile-image-change-item.is-new .profile-image-change-label { color: #15803d; }
body.theme-light .profile-image-change-item.is-old .profile-image-change-label,
html[data-theme="light"] .profile-image-change-item.is-old .profile-image-change-label { color: #475467; }
body.theme-light .profile-image-change-url,
html[data-theme="light"] .profile-image-change-url {
  color: #2563eb;
  border-top-color: #dce4ee;
}
body.theme-light .profile-image-change-missing,
html[data-theme="light"] .profile-image-change-missing { color: #667085; }
body.theme-light .profile-image-change-item.image-load-failed::after,
html[data-theme="light"] .profile-image-change-item.image-load-failed::after {
  color: #b42318;
  background: #fff1f2;
}
@media (max-width: 720px) {
  .card .event-spotlight { padding: 10px 11px; border-radius: 13px; }
  .event-spotlight-title { font-size: 16px; }
  .event-spotlight-value { font-size: 15px; line-height: 1.48; }
  .event-spotlight-hint { font-size: 12px; }
  .profile-image-change-grid { grid-template-columns: 1fr; }
  .profile-image-change-item img { height: 145px; }
}
/* ===== End profile banner/avatar change compare ===== */

/* ===== Keyword alert monitor ===== */
@keyframes keyword-alert-flash {
  0%, 100% {
    box-shadow: 0 0 0 rgba(251, 191, 36, 0);
    filter: brightness(1);
  }
  45% {
    box-shadow: 0 0 0 3px rgba(251, 191, 36, .24), 0 0 18px rgba(251, 191, 36, .42);
    filter: brightness(1.16);
  }
}
mark.keyword-alert-highlight {
  display: inline;
  padding: 0 4px;
  border-radius: 5px;
  background: linear-gradient(180deg, rgba(251, 191, 36, .18), rgba(251, 191, 36, .42));
  color: #fde68a;
  border: 1px solid rgba(251, 191, 36, .42);
  font-weight: 900;
  animation: keyword-alert-flash 1.05s ease-in-out infinite;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
mark.keyword-alert-highlight.static { animation: none; }
a.keyword-alert-link {
  display: inline;
  padding: 0 4px;
  border-radius: 5px;
  background: linear-gradient(180deg, rgba(251, 191, 36, .18), rgba(251, 191, 36, .42));
  color: #fde68a !important;
  border: 1px solid rgba(251, 191, 36, .42);
  font-weight: 900;
  animation: keyword-alert-flash 1.05s ease-in-out infinite;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.card.keyword-alert-card {
  border-color: rgba(251, 191, 36, .70);
  box-shadow: 0 0 0 1px rgba(251, 191, 36, .16), 0 14px 36px rgba(251, 191, 36, .07);
}
.uc-keyword-add {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 10px;
}
.uc-keyword-add input,
.uc-keyword-add select,
.uc-keyword-row select {
  background: #0d0f14;
  color: #e8e8ee;
  border: 1px solid #343743;
  border-radius: 10px;
  padding: 7px 9px;
  outline: none;
}
.uc-keyword-add input { min-width: 190px; }
.uc-keyword-list { display: grid; gap: 8px; }
.uc-keyword-row {
  display: grid;
  grid-template-columns: auto minmax(220px, 1fr) 130px auto auto;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  background: #151821;
  border: 1px solid #292c36;
  border-radius: 12px;
}
.uc-keyword-main {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}
.uc-keyword-enabled { color: #d8d8e0; font-size: 13px; }
.uc-small.danger { background: #451a1a; border-color: #7f1d1d; color: #fecaca; }
.uc-small.danger:hover { background: #5f1f1f; }
body.theme-light mark.keyword-alert-highlight,
html[data-theme="light"] mark.keyword-alert-highlight,
body.theme-light a.keyword-alert-link,
html[data-theme="light"] a.keyword-alert-link {
  color: #8a4b00;
  background: linear-gradient(180deg, rgba(250, 204, 21, .18), rgba(245, 158, 11, .34));
  border-color: rgba(180, 83, 9, .28);
}
body.theme-light .card.keyword-alert-card,
html[data-theme="light"] .card.keyword-alert-card {
  border-color: rgba(217, 119, 6, .38);
  box-shadow: 0 0 0 1px rgba(217, 119, 6, .12), 0 12px 28px rgba(120, 72, 12, .06);
}
body.theme-light .uc-keyword-add input,
body.theme-light .uc-keyword-add select,
body.theme-light .uc-keyword-row select,
html[data-theme="light"] .uc-keyword-add input,
html[data-theme="light"] .uc-keyword-add select,
html[data-theme="light"] .uc-keyword-row select {
  background: #ffffff;
  color: #182033;
  border-color: #cfd8e5;
}
body.theme-light .uc-keyword-row,
html[data-theme="light"] .uc-keyword-row {
  background: #ffffff;
  border-color: #d5dde8;
}
body.theme-light .uc-keyword-enabled,
html[data-theme="light"] .uc-keyword-enabled { color: #344054; }
body.theme-light .uc-small.danger,
html[data-theme="light"] .uc-small.danger {
  background: #fff1f2;
  border-color: #f4b4b4;
  color: #b42318;
}
@media (max-width: 720px) {
  .uc-keyword-row { grid-template-columns: 1fr; align-items: stretch; }
  .uc-keyword-add input,
  .uc-keyword-add select,
  .uc-keyword-add button { width: 100%; }
}
/* ===== End keyword alert monitor ===== */

 .card .media.has-inline-video::before,
.card .embed .em-media.has-inline-video::before,
.card.dex-signal .dex-tweet-media:has(video)::before {
  display: none;
}
.video-proxy-play {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  z-index: 2;
  border: 1px solid rgba(147,197,253,.45);
  border-radius: 999px;
  padding: 7px 12px;
  background: rgba(15,23,42,.88);
  color: #dbeafe;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
body.theme-light .video-proxy-play {
  background: rgba(239,246,255,.94);
  color: #1e3a8a;
  border-color: rgba(96,165,250,.48);
  box-shadow: 0 8px 20px rgba(30,64,175,.15);
}

/* Flat underlined controls in the main top bar. */
#top-actions-bar .top-config-btn,
#top-actions-bar .push-chip,
#top-actions-bar .top-flat-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0 !important;
  width: auto !important;
  min-height: 0;
  padding: 0 2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--fg-dim,#8a8a92) !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 18px;
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  cursor: pointer;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#top-actions-bar .top-config-btn:hover,
#top-actions-bar .push-chip:hover,
#top-actions-bar .top-flat-link:hover {
  color: var(--fg,#f0f0f4) !important;
  filter: none !important;
  background: transparent !important;
}
#top-actions-bar .top-config-btn:disabled {
  opacity: .55;
  cursor: wait;
}
#top-actions-bar .push-chip.off {
  opacity: .50;
  color: var(--fg-dim,#8a8a92) !important;
  background: transparent !important;
  border: 0 !important;
  text-decoration-line: underline line-through;
}

/* ===== Safe top layout override 20260515 ===== */
#top-actions-bar {
  justify-content: flex-start !important;
  gap: 10px !important;
  overflow-x: auto;
  overflow-y: visible;
}
#top-actions-bar .site-logo-link {
  order: 0 !important;
  flex: 0 1 clamp(118px, 26vw, 334px) !important;
  width: clamp(118px, 26vw, 334px) !important;
  min-width: 118px !important;
  max-width: 334px !important;
  margin-right: 0 !important;
}
#top-actions-bar .push-channels { order: 10 !important; }
#top-actions-bar .user-actions { order: 20 !important; }
#top-actions-bar .spacer { order: 60 !important; flex: 1 1 auto !important; min-width: 12px !important; }
#top-actions-bar .home-nav-actions { order: 70 !important; }
#top-actions-bar .interface-switch-actions { order: 80 !important; }
#top-actions-bar .language-actions { order: 90 !important; }
#top-actions-bar .theme-actions { order: 100 !important; }
#top-actions-bar .wallet-actions { order: 110 !important; }
#top-actions-bar .admin-actions { order: 120 !important; }
#top-actions-bar .user-actions,
#top-actions-bar .admin-actions,
#top-actions-bar .theme-actions,
#top-actions-bar .language-actions,
#top-actions-bar .wallet-actions,
#top-actions-bar .home-nav-actions,
#top-actions-bar .interface-switch-actions,
#top-actions-bar .push-channels {
  flex: 0 0 auto;
  gap: 8px;
  -webkit-app-region: no-drag;
  app-region: no-drag;
}
#top-actions-bar .top-config-btn,
#top-actions-bar #push-menu-toggle,
#top-actions-bar .top-flat-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 32px !important;
  min-width: 34px !important;
  padding: 0 11px !important;
  border: 1px solid var(--card-border,#2a2a30) !important;
  border-radius: 12px !important;
  background: var(--card-bg,#121214) !important;
  color: var(--fg,#f0f0f4) !important;
  box-shadow: var(--soft-shadow, none) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  cursor: pointer;
}
#top-actions-bar .top-config-btn:hover,
#top-actions-bar #push-menu-toggle:hover,
#top-actions-bar .top-flat-link:hover {
  background: var(--embed-bg,#1a1a1e) !important;
  border-color: rgba(143,184,255,.50) !important;
  transform: translateY(-1px);
}
#top-actions-bar .theme-toggle-btn,
#top-actions-bar .language-toggle-btn,
#top-actions-bar .keyword-monitor-btn {
  width: 34px !important;
  padding: 0 !important;
}
@media (max-width: 640px) {
  #top-actions-bar { padding-left: 10px !important; padding-right: 10px !important; gap: 8px !important; }
  #top-actions-bar .site-logo-link {
    width: 138px !important;
    min-width: 138px !important;
    height: 38px !important;
  }
  #top-actions-bar .site-logo-link::before { font-size: 48px !important; }
  #top-actions-bar .site-logo-link::after { font-size: 36px !important; }
  #top-actions-bar .top-config-btn,
  #top-actions-bar #push-menu-toggle,
  #top-actions-bar .top-flat-link {
    height: 30px !important;
    min-width: 30px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 11px !important;
  }
  #top-actions-bar .theme-toggle-btn,
  #top-actions-bar .language-toggle-btn,
  #top-actions-bar .keyword-monitor-btn { width: 30px !important; padding: 0 !important; }
}
@media (max-width: 420px) {
  #top-actions-bar .site-logo-link {
    width: 114px !important;
    min-width: 114px !important;
    height: 32px !important;
  }
  #top-actions-bar .site-logo-link::before { font-size: 34px !important; }
  #top-actions-bar .site-logo-link::after { margin-left: 7px !important; font-size: 26px !important; }
}
/* ===== End safe top layout override 20260515 ===== */

/* ===== Hide top bar scrollbar 20260515 ===== */
#top-actions-bar {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
#top-actions-bar::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
/* ===== End hide top bar scrollbar 20260515 ===== */

/* ===== Push panel top layer fix 20260515 ===== */
#push-channel-controls .push-panel {
  position: fixed !important;
  top: var(--push-panel-top, 68px) !important;
  left: var(--push-panel-left, 12px) !important;
  z-index: 2147483000 !important;
  max-width: min(260px, calc(100vw - 20px));
}
/* ===== End push panel top layer fix 20260515 ===== */


/* ===== Admin global feed + wallet menu layer fix 20260516 ===== */
#top-actions-bar .wallet-menu-wrap {
  z-index: 2147483400 !important;
}
#top-actions-bar .admin-global-feed-btn.active {
  border-color: rgba(34, 197, 94, .55) !important;
  background: linear-gradient(180deg, rgba(20, 83, 45, .88), rgba(22, 101, 52, .78)) !important;
  color: #dcfce7 !important;
}
/* ===== End admin global feed + wallet menu layer fix 20260516 ===== */


.card.news-ai-highlight {
  border-color: rgba(96, 165, 250, 0.72);
  box-shadow: 0 0 0 1px rgba(96, 165, 250, 0.18), 0 0 22px rgba(96, 165, 250, 0.14);
}
.card.news-ai-pin {
  border-color: rgba(245, 158, 11, 0.82);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.24), 0 0 26px rgba(245, 158, 11, 0.16);
}
.card .news-ai-analysis {
  grid-area: narrative;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  margin: 10px 0 0;
  padding: 10px 12px;
  border: 1px solid rgba(96, 165, 250, 0.32);
  background: linear-gradient(135deg, rgba(30, 41, 59, 0.76), rgba(15, 23, 42, 0.72));
  color: var(--fg, #f4f4f5);
  font-size: 13px;
  line-height: 1.55;
}
.card .news-ai-analysis.should-highlight { border-color: rgba(96, 165, 250, 0.66); }
.card .news-ai-analysis.should-pin { border-color: rgba(245, 158, 11, 0.7); }
.card .news-ai-title {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  color: #93c5fd;
  margin-bottom: 5px;
}
.card .news-ai-summary { font-weight: 700; }
.card .news-ai-why { color: var(--fg-muted, #a1a1aa); margin-top: 4px; }
.card .news-ai-meta {
  color: #bfdbfe;
  font-size: 12px;
  margin-top: 6px;
}

/* Telegram schema v2: only affects .tg-card / .tg-embed. */
.card.tg-card .tg-extras,
.card .tg-embed .tg-extras {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.card.tg-card .tg-media-grid,
.card .tg-embed .tg-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: start;
  min-width: 0;
}
.card.tg-card .tg-media-grid.tg-media-count-1,
.card .tg-embed .tg-media-grid.tg-media-count-1 {
  grid-template-columns: minmax(0, 1fr);
}
.card.tg-card .tg-media-tile,
.card .tg-embed .tg-media-tile {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--embed-border);
  border-radius: 12px;
  background: #0b0b0e;
}
.card.tg-card .tg-media-tile img,
.card.tg-card .tg-media-tile video,
.card .tg-embed .tg-media-tile img,
.card .tg-embed .tg-media-tile video {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 520px;
  margin: 0;
  border: 0;
  border-radius: 11px;
  object-fit: contain;
  background: #0b0b0e;
}
.card .tg-embed .tg-media-tile img,
.card .tg-embed .tg-media-tile video {
  max-height: 360px;
}
.card.tg-card .tg-media-fallback,
.card .tg-embed .tg-media-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 12px;
  color: #bfdbfe;
  background: rgba(15, 23, 42, .88);
  font-size: 12px;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}
.card.tg-card .tg-media-tile img + .tg-media-fallback,
.card .tg-embed .tg-media-tile img + .tg-media-fallback {
  position: absolute;
  inset: auto 8px 8px 8px;
  min-height: 0;
  padding: 6px 9px;
  border-radius: 8px;
  background: rgba(3, 7, 18, .82);
  color: #fff;
}
.card.tg-card .tg-attachments,
.card .tg-embed .tg-attachments {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}
.card.tg-card .tg-attachment,
.card .tg-embed .tg-attachment {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid var(--embed-border);
  border-radius: 10px;
  background: rgba(30, 41, 59, .42);
}
.card.tg-card .tg-attachment-icon,
.card .tg-embed .tg-attachment-icon {
  font-size: 18px;
}
.card.tg-card .tg-attachment-info,
.card .tg-embed .tg-attachment-info {
  min-width: 0;
}
.card.tg-card .tg-attachment-name,
.card .tg-embed .tg-attachment-name {
  display: block;
  overflow: hidden;
  color: var(--fg);
  font-size: 13px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}
.card.tg-card .tg-attachment-meta,
.card .tg-embed .tg-attachment-meta {
  margin-top: 2px;
  color: var(--fg-dim);
  font-size: 11px;
  overflow-wrap: anywhere;
}
.card.tg-card .tg-attachment audio,
.card .tg-embed .tg-attachment audio {
  grid-column: 2 / -1;
  width: 100%;
  height: 34px;
}
.card.tg-card .tg-attachment-open,
.card .tg-embed .tg-attachment-open {
  color: var(--link);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.card.tg-card .tg-web-preview,
.card .tg-embed .tg-web-preview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "copy image";
  gap: 10px;
  min-width: 0;
  overflow: hidden;
  padding: 10px;
  border: 1px solid var(--embed-border);
  border-left: 3px solid #229ed9;
  border-radius: 10px;
  background: rgba(30, 41, 59, .36);
  color: inherit;
  text-decoration: none;
}
.card.tg-card .tg-web-preview-copy,
.card .tg-embed .tg-web-preview-copy {
  grid-area: copy;
  align-self: center;
  min-width: 0;
}
.card.tg-card .tg-web-preview-site,
.card .tg-embed .tg-web-preview-site {
  overflow: hidden;
  color: #7dd3fc;
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card.tg-card .tg-web-preview-title,
.card .tg-embed .tg-web-preview-title {
  margin-top: 3px;
  color: var(--fg);
  font-size: 14px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.card.tg-card .tg-web-preview-description,
.card .tg-embed .tg-web-preview-description {
  display: -webkit-box;
  margin-top: 4px;
  overflow: hidden;
  color: var(--fg-muted);
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.card.tg-card .tg-web-preview-image,
.card .tg-embed .tg-web-preview-image {
  grid-area: image;
  width: 112px;
  height: 88px;
  max-width: 24vw;
  object-fit: cover;
  border: 0;
  border-radius: 8px;
}
.card.tg-card .tg-poll,
.card .tg-embed .tg-poll {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px;
  border: 1px solid var(--embed-border);
  border-radius: 10px;
  background: rgba(30, 41, 59, .36);
}
.card.tg-card .tg-poll-question,
.card .tg-embed .tg-poll-question {
  margin-bottom: 2px;
  color: var(--fg);
  font-size: 14px;
  font-weight: 850;
}
.card.tg-card .tg-poll-answer,
.card .tg-embed .tg-poll-answer {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  overflow: hidden;
  padding: 7px 9px;
  border: 1px solid rgba(148, 163, 184, .20);
  border-radius: 8px;
  color: var(--fg-muted);
  font-size: 12px;
}
.card.tg-card .tg-poll-answer-bar,
.card .tg-embed .tg-poll-answer-bar {
  position: absolute;
  inset: 0 auto 0 0;
  background: rgba(34, 158, 217, .20);
  pointer-events: none;
}
.card.tg-card .tg-poll-answer-label,
.card.tg-card .tg-poll-answer-count,
.card .tg-embed .tg-poll-answer-label,
.card .tg-embed .tg-poll-answer-count {
  position: relative;
  z-index: 1;
}
.card.tg-card .tg-poll-answer.chosen,
.card .tg-embed .tg-poll-answer.chosen {
  border-color: rgba(34, 158, 217, .66);
}
.card.tg-card .tg-poll-answer.correct,
.card .tg-embed .tg-poll-answer.correct {
  border-color: rgba(52, 211, 153, .66);
}
.card.tg-card .tg-poll-meta,
.card .tg-embed .tg-poll-meta {
  color: var(--fg-dim);
  font-size: 11px;
}
.card.tg-card .tg-hidden-links,
.card .tg-embed .tg-hidden-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.card.tg-card .tg-hidden-links a,
.card .tg-embed .tg-hidden-links a {
  max-width: 100%;
  overflow: hidden;
  padding: 4px 8px;
  border: 1px solid rgba(34, 158, 217, .36);
  border-radius: 999px;
  color: #7dd3fc;
  font-size: 11px;
  font-weight: 750;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.theme-light .card.tg-card .tg-media-tile,
body.theme-light .card .tg-embed .tg-media-tile {
  background: #eef3f8;
}
body.theme-light .card.tg-card .tg-attachment,
body.theme-light .card .tg-embed .tg-attachment,
body.theme-light .card.tg-card .tg-web-preview,
body.theme-light .card .tg-embed .tg-web-preview,
body.theme-light .card.tg-card .tg-poll,
body.theme-light .card .tg-embed .tg-poll {
  background: rgba(255, 255, 255, .68);
}
@media (max-width: 560px) {
  .card.tg-card .tg-media-grid,
  .card .tg-embed .tg-media-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .card.tg-card .tg-web-preview-image,
  .card .tg-embed .tg-web-preview-image {
    width: 82px;
    height: 72px;
  }
  .card.tg-card .tg-attachment,
  .card .tg-embed .tg-attachment {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .card.tg-card .tg-attachment-open,
  .card .tg-embed .tg-attachment-open {
    grid-column: 2;
  }
}


.global-mute-btn { border-color: rgba(248,113,113,.35) !important; background: rgba(127,29,29,.22) !important; }
.global-mute-btn:hover { background: rgba(153,27,27,.4) !important; }

/* ===== Binance Web3 板块变更卡片 =====
   必须显式脱离 .card 的 grid：否则子元素会被塞进 avatar 那 40px 的列里，
   标题竖排断行、指标徽章互相重叠（2026-07-31 修）。 */
.card.binance-web3-event {
  display: block;
  padding: 13px 16px 14px;
  background: linear-gradient(180deg, rgba(34, 197, 94, .05), var(--card-bg) 60%);
  border-color: #23402f;
}
.card.binance-web3-event.highlight {
  border-color: #22c55e;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, .26), 0 0 18px rgba(34, 197, 94, .14);
}
.card.binance-web3-event .w3-head {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: nowrap;
  margin-bottom: 9px;
  min-width: 0;
}
.card.binance-web3-event .w3-kind {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(34, 197, 94, .12);
  border: 1px solid rgba(34, 197, 94, .3);
  white-space: nowrap;
}
.card.binance-web3-event .w3-board {
  font-weight: 700;
  color: var(--fg);
  font-size: 13px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card.binance-web3-event .w3-time {
  flex: 0 0 auto;
  margin-left: auto;
  color: var(--fg-dim);
  font-size: 12px;
  white-space: nowrap;
}
/* 代币主行：符号是主角，名称退让并可截断 */
.card.binance-web3-event .w3-token {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
  min-width: 0;
}
.card.binance-web3-event .w3-symbol {
  flex: 0 0 auto;
  font-size: 20px;
  font-weight: 800;
  color: var(--fg);
  line-height: 1.15;
}
.card.binance-web3-event .w3-name {
  color: var(--fg-dim);
  font-size: 13px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card.binance-web3-event .w3-chain {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 1px 7px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 5px;
  font-size: 11px;
  color: var(--fg-dim);
  white-space: nowrap;
}
/* 指标：窄栏下自动换行成两列，不再互相压 */
.card.binance-web3-event .w3-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 5px;
  margin-bottom: 8px;
}
.card.binance-web3-event .w3-metric {
  display: flex;
  align-items: baseline;
  gap: 5px;
  padding: 4px 8px;
  background: rgba(255, 255, 255, .045);
  border-radius: 6px;
  font-size: 12px;
  min-width: 0;
}
.card.binance-web3-event .w3-metric i {
  font-style: normal;
  color: var(--fg-dim);
  flex: 0 0 auto;
}
.card.binance-web3-event .w3-metric b {
  font-weight: 700;
  color: var(--fg);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card.binance-web3-event .w3-ca {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: ui-monospace, Menlo, Consolas, monospace;
  font-size: 11px;
  margin-bottom: 7px;
  min-width: 0;
}
.card.binance-web3-event .w3-ca > i {
  font-style: normal;
  color: var(--fg-dim);
  flex: 0 0 auto;
}
/* 地址单行截断，不再竖成一条 */
.card.binance-web3-event .w3-ca .token-ca-highlight {
  color: #60a5fa;
  background: rgba(96, 165, 250, .1);
  padding: 2px 6px;
  border-radius: 5px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card.binance-web3-event .w3-tags {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.card.binance-web3-event .w3-tag {
  font-size: 11px;
  padding: 2px 7px;
  border-radius: 5px;
  background: rgba(245, 158, 11, .12);
  border: 1px solid rgba(245, 158, 11, .28);
  color: #fbbf24;
  white-space: nowrap;
}
.card.binance-web3-event .w3-link {
  display: inline-block;
  color: #f0b90b;
  font-size: 12px;
  text-decoration: none;
}
.card.binance-web3-event .w3-link:hover { text-decoration: underline; }


/* ===== fomo KOL 事件卡片 v2 ===== */
.card.fomo-event { display: block; padding: 12px 15px 12px; background: linear-gradient(180deg, rgba(139,146,166,.05), var(--card-bg) 55%); border-color: #2a2f3a; }
.card.fomo-event .fomo-head { display: flex; align-items: center; gap: 7px; min-width: 0; }
.card.fomo-event .fomo-av { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%; overflow: hidden; background: #2a2f3a; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; color: #cbd5e1; }
.card.fomo-event .fomo-av img { width: 100%; height: 100%; object-fit: cover; }
.card.fomo-event .fomo-name { font-weight: 800; font-size: 15px; color: var(--fg); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.card.fomo-event .fomo-tag { flex: 0 0 auto; font-size: 11px; font-weight: 800; padding: 2px 8px; border-radius: 6px; white-space: nowrap; }
.card.fomo-event .fomo-followers { flex: 0 0 auto; font-size: 11px; color: var(--fg-dim); background: rgba(255,255,255,.05); padding: 2px 7px; border-radius: 6px; white-space: nowrap; }
.card.fomo-event .fomo-handle { font-size: 12px; color: var(--fg-dim); margin: 1px 0 8px 37px; }
.card.fomo-event .fomo-post { font-size: 14px; line-height: 1.5; color: var(--fg); margin: 0 0 9px; white-space: pre-wrap; word-break: break-word; }
.card.fomo-event .fomo-main { display: flex; align-items: baseline; gap: 7px; flex-wrap: wrap; margin-bottom: 3px; }
.card.fomo-event .fomo-usd { font-size: 18px; font-weight: 800; }
.card.fomo-event .fomo-dot { color: var(--fg-dim); }
.card.fomo-event .fomo-symbol { font-size: 16px; font-weight: 800; color: #f0b90b; }
.card.fomo-event .fomo-price { font-size: 13px; color: var(--fg-dim); font-family: ui-monospace, Menlo, Consolas, monospace; }
.card.fomo-event .fomo-chain { font-size: 12px; color: var(--fg-dim); margin-bottom: 8px; }
.card.fomo-event .fomo-actions { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; margin-bottom: 7px; }
.card.fomo-event .fomo-ca { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; color: #cbd5e1; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); padding: 3px 9px; border-radius: 7px; cursor: pointer; white-space: nowrap; }
.card.fomo-event .fomo-ca:hover { filter: brightness(1.3); }
.card.fomo-event .fomo-trade-btn, .card.fomo-event .token-history-btn { font-size: 11px; color: #93c5fd; background: rgba(59,130,246,.12); border: 1px solid rgba(59,130,246,.3); padding: 3px 10px; border-radius: 7px; text-decoration: none; white-space: nowrap; }
.card.fomo-event .fomo-trade-btn:hover, .card.fomo-event .token-history-btn:hover { background: rgba(59,130,246,.2); }
.card.fomo-event .fomo-stats { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; color: #7d8694;
  display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.card.fomo-event .fomo-age,
.card.pump-callout-event .fomo-age {
  margin-left: auto;
  margin-right: 48px;
  color: var(--fg-dim);
  font: 500 10px/1.3 ui-monospace, Menlo, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  cursor: help;
  opacity: .68;
  transition: opacity .12s ease, color .12s ease;
}
.card.fomo-event .fomo-age:hover,
.card.pump-callout-event .fomo-age:hover { color: var(--fg-muted); opacity: 1; }
.card.pump-callout-event > .fomo-age { display: block; width: fit-content; margin-top: 8px; }
/* MC 跟金额一个量级 —— 市值是判断的第一眼信息,不该缩在角落 */
.card.fomo-event .fomo-mc { font-size: 16px; font-weight: 800; color: #c9d3e0; letter-spacing: -.2px; }


.card.fomo-event .fomo-trans { margin: 6px 0 9px; padding: 7px 10px; background: rgba(255,255,255,.04); border-left: 2px solid rgba(148,163,184,.45); border-radius: 0 7px 7px 0; font-size: 13px; line-height: 1.5; color: #cbd5e1; white-space: pre-wrap; word-break: break-word; }
.card.fomo-event .fomo-token-icon { width: 18px; height: 18px; border-radius: 50%; object-fit: cover; background: #2a2f3a; flex: 0 0 auto; vertical-align: middle; }

.card.fomo-event .fomo-holding { display: flex; align-items: baseline; gap: 7px; margin: -4px 0 8px; }
.card.fomo-event .fomo-hold-label { font-size: 11px; color: var(--fg-dim); }
.card.fomo-event .fomo-hold-val { font-size: 15px; font-weight: 800; color: #e6e8ee; }
.card.fomo-event .fomo-hold-pnl { font-size: 11px; font-weight: 700; }

/* fomo 每人设置面板 */
.fomo-popover .fomo-sec-title { font-size: 11px; color: var(--fg-dim); margin: 0 0 6px; letter-spacing: .04em; }
.fomo-popover .fomo-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 11px; }
.fomo-popover .fomo-chip { font-size: 12px; padding: 4px 12px; border-radius: 999px; cursor: pointer; background: transparent; border: 1px solid var(--card-border, #2a2a30); color: var(--fg-dim, #8a8a92); font-family: inherit; }
.fomo-popover .fomo-chip.on { background: rgba(99,102,241,.16); border-color: rgba(129,140,248,.6); color: #c7d2fe; font-weight: 700; }
.fomo-popover .fomo-mini { font-size: 12px; padding: 4px 12px; border-radius: 7px; cursor: pointer; background: var(--embed-bg,#1a1a1e); border: 1px solid var(--card-border,#2a2a30); color: var(--fg-dim,#8a8a92); font-family: inherit; }
.fomo-popover .fomo-mini.primary { background: var(--accent,#daa528); border: 0; color: #0c0c0e; font-weight: 700; }
.fomo-popover .fomo-mini.danger { color: #ff9a9a; border-color: #6a3030; }
.card.fomo-event .fomo-remark { margin-left: 7px; font-size: 11px; padding: 1px 7px; border-radius: 5px; background: rgba(37,99,235,.12); border: 1px solid rgba(96,165,250,.28); color: #bfdbfe; }

/* FOMO 人物详情：设置列表和推送卡片共用的轻量检查器。 */
.fomo-profile-trigger { cursor: pointer; outline: none; }
.fomo-profile-trigger:hover { border-color: #60a5fa; filter: brightness(1.08); }
.fomo-profile-trigger:focus-visible { box-shadow: 0 0 0 3px rgba(96,165,250,.28); }
.fomo-profile-modal { position: fixed; inset: 0; z-index: 10000; color: var(--fg); -webkit-app-region: no-drag; app-region: no-drag; }
.fomo-profile-backdrop { position: absolute; inset: 0; background: rgba(3,6,12,.72); backdrop-filter: blur(4px); }
.fomo-profile-dialog {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
  width: min(720px, calc(100vw - 28px)); max-height: min(780px, calc(100vh - 42px));
  display: flex; flex-direction: column; overflow: hidden;
  background: #11151d; border: 1px solid #303847; border-radius: 16px;
  box-shadow: 0 28px 90px rgba(0,0,0,.62);
}
.fomo-profile-head { display: flex; align-items: center; gap: 12px; padding: 15px 16px; border-bottom: 1px solid #252d3a; background: #151a23; }
.fomo-profile-avatar { flex: 0 0 auto; width: 48px; height: 48px; overflow: hidden; display: grid; place-items: center; border: 1px solid #394458; border-radius: 50%; background: #222a36; color: #bfdbfe; font-size: 18px; font-weight: 900; }
.fomo-profile-avatar img { width: 100%; height: 100%; object-fit: cover; }
.fomo-profile-avatar-ph { display: grid; width: 100%; height: 100%; place-items: center; }
.fomo-profile-identity { min-width: 0; flex: 1; }
.fomo-profile-kicker { margin-bottom: 2px; color: #7f8ca2; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fomo-profile-identity h2 { margin: 0; overflow: hidden; color: #f3f6fb; font-size: 18px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.fomo-profile-handle { margin-top: 3px; overflow: hidden; color: var(--fg-dim); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.fomo-profile-head-actions { display: flex; align-items: center; gap: 7px; }
.fomo-profile-head-actions a { text-decoration: none; white-space: nowrap; }
.fomo-profile-body { min-height: 250px; padding: 16px; overflow: auto; overscroll-behavior: contain; }
.fomo-profile-desc { margin: 0 0 16px; padding: 10px 12px; color: #c8d1df; border-left: 2px solid #475569; background: rgba(148,163,184,.06); font-size: 13px; line-height: 1.55; white-space: pre-wrap; }
.fomo-profile-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 2px 0 8px; }
.fomo-profile-section-head h3 { margin: 0; color: #e8edf5; font-size: 13px; }
.fomo-profile-section-head span { color: var(--fg-dim); font-size: 10.5px; }
.fomo-profile-wallet-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-bottom: 18px; }
.fomo-profile-wallet-group { min-width: 0; padding: 10px; border: 1px solid #2c3543; border-radius: 10px; background: #0d1118; }
.fomo-profile-section-label { display: flex; align-items: center; gap: 7px; margin-bottom: 8px; color: #dbe4f0; font-size: 12px; font-weight: 800; }
.fomo-profile-chain-dot { width: 7px; height: 7px; border-radius: 50%; background: #8b5cf6; box-shadow: 0 0 0 3px rgba(139,92,246,.13); }
.fomo-profile-chain-dot.sol { background: #14f195; box-shadow: 0 0 0 3px rgba(20,241,149,.12); }
.fomo-profile-wallet-row { display: flex; min-width: 0; align-items: center; gap: 7px; }
.fomo-profile-wallet-row + .fomo-profile-wallet-row { margin-top: 6px; }
.fomo-profile-wallet-row code { min-width: 0; flex: 1; overflow: hidden; color: #aebbd0; font: 10.5px/1.45 ui-monospace,Menlo,Consolas,monospace; text-overflow: ellipsis; white-space: nowrap; }
.fomo-profile-copy { flex: 0 0 auto; padding: 3px 7px; border: 1px solid #344157; border-radius: 6px; background: #151c27; color: #a9c8f5; font: 700 10.5px/1.3 inherit; cursor: pointer; }
.fomo-profile-copy:hover { border-color: #5373a4; background: #1b2636; }
.fomo-profile-trades { border-top: 1px solid #29313d; }
.fomo-profile-trade-row { display: flex; min-width: 0; align-items: center; gap: 10px; padding: 10px 4px; border-bottom: 1px solid #242c37; color: inherit; text-decoration: none; }
a.fomo-profile-trade-row:hover { background: rgba(96,165,250,.055); }
.fomo-profile-trade-side { flex: 0 0 auto; min-width: 52px; padding: 3px 7px; border-radius: 6px; color: #86efac; background: rgba(34,197,94,.12); font-size: 11px; font-weight: 800; text-align: center; }
.fomo-profile-trade-side.sell { color: #fca5a5; background: rgba(248,113,113,.12); }
.fomo-profile-trade-side.cash { color: #7dd3fc; background: rgba(56,189,248,.12); }
.fomo-profile-trade-main { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 2px; }
.fomo-profile-trade-main b { overflow: hidden; color: #f0b90b; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.fomo-profile-trade-main small { overflow: hidden; color: var(--fg-dim); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.fomo-profile-trade-value { display: flex; flex: 0 0 auto; flex-direction: column; align-items: flex-end; gap: 2px; }
.fomo-profile-trade-value b { color: #e7edf7; font-size: 13px; font-variant-numeric: tabular-nums; }
.fomo-profile-trade-value time { color: var(--fg-dim); font: 10px/1.3 ui-monospace,Menlo,Consolas,monospace; white-space: nowrap; cursor: help; }
.fomo-profile-empty { display: flex; min-height: 90px; align-items: center; justify-content: center; gap: 10px; color: var(--fg-dim); font-size: 12px; text-align: center; }
.fomo-profile-empty.compact { min-height: 35px; justify-content: flex-start; }
.fomo-profile-loading { display: flex; min-height: 220px; align-items: center; justify-content: center; gap: 10px; color: var(--fg-dim); font-size: 12px; }
.fomo-profile-loading span { width: 14px; height: 14px; border: 2px solid #3b4658; border-top-color: #60a5fa; border-radius: 50%; animation: fomo-profile-spin .7s linear infinite; }
@keyframes fomo-profile-spin { to { transform: rotate(360deg); } }

body.theme-light .fomo-profile-dialog, html[data-theme="light"] .fomo-profile-dialog { background: #fff; border-color: #cbd5e1; box-shadow: 0 28px 80px rgba(16,24,40,.22); }
body.theme-light .fomo-profile-head, html[data-theme="light"] .fomo-profile-head { background: #f7f9fc; border-bottom-color: #d8e0ea; }
body.theme-light .fomo-profile-avatar, html[data-theme="light"] .fomo-profile-avatar { background: #e9eef5; border-color: #cbd5e1; color: #245a9a; }
body.theme-light .fomo-profile-identity h2, html[data-theme="light"] .fomo-profile-identity h2,
body.theme-light .fomo-profile-section-head h3, html[data-theme="light"] .fomo-profile-section-head h3 { color: #101828; }
body.theme-light .fomo-profile-desc, html[data-theme="light"] .fomo-profile-desc { background: #f5f8fc; color: #344054; border-left-color: #9db4d8; }
body.theme-light .fomo-profile-wallet-group, html[data-theme="light"] .fomo-profile-wallet-group { background: #f8fafc; border-color: #d7e0eb; }
body.theme-light .fomo-profile-section-label, html[data-theme="light"] .fomo-profile-section-label,
body.theme-light .fomo-profile-trade-value b, html[data-theme="light"] .fomo-profile-trade-value b { color: #1d2939; }
body.theme-light .fomo-profile-wallet-row code, html[data-theme="light"] .fomo-profile-wallet-row code { color: #475467; }
body.theme-light .fomo-profile-copy, html[data-theme="light"] .fomo-profile-copy { background: #fff; color: #175cd3; border-color: #b8c8dc; }
body.theme-light .fomo-profile-trades, html[data-theme="light"] .fomo-profile-trades { border-top-color: #d8e0ea; }
body.theme-light .fomo-profile-trade-row, html[data-theme="light"] .fomo-profile-trade-row { border-bottom-color: #e2e8f0; }
body.theme-light .fomo-profile-modal .uc-small, body.theme-light .fomo-profile-modal .uc-icon-btn,
html[data-theme="light"] .fomo-profile-modal .uc-small, html[data-theme="light"] .fomo-profile-modal .uc-icon-btn { background: #fff; color: #344054; border-color: #c7d2e0; }

@media (max-width: 620px) {
  .fomo-profile-dialog { width: calc(100vw - 16px); max-height: calc(100vh - 18px); border-radius: 13px; }
  .fomo-profile-head { align-items: flex-start; flex-wrap: wrap; padding: 12px; }
  .fomo-profile-avatar { width: 42px; height: 42px; }
  .fomo-profile-head-actions { width: 100%; padding-left: 54px; }
  .fomo-profile-head-actions .uc-icon-btn { margin-left: auto; }
  .fomo-profile-body { padding: 12px; }
  .fomo-profile-wallet-grid { grid-template-columns: 1fr; }
  .fomo-profile-section-head { align-items: flex-start; flex-direction: column; gap: 2px; }
  .fomo-profile-trade-row { gap: 7px; }
  .fomo-profile-trade-side { min-width: 44px; padding-inline: 5px; }
}

/* 设置页子标签(默认列表下的 X/广场/Truth/资讯/TG/fomo)——比主标签轻一级 */
.uc-subtabs { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; padding: 9px 18px; border-bottom: 1px solid #252731; background: #10131b; }
.uc-subtab { border: 1px solid #2d3442; background: #171b25; color: #aeb4c2; border-radius: 999px; padding: 4px 13px; cursor: pointer; font-size: 13px; font-weight: 700; font-family: inherit; line-height: 1.5; }
.uc-subtab:hover { border-color: #4b5563; background: #1d2330; color: #d8d8e0; }
.uc-subtab.active { background: #263655; border-color: #4b6aa6; color: #dbeafe; }

/* 健康灯详情弹窗 */
#health-bar .item[data-key] { cursor: pointer; }
#health-bar .item[data-key="sse"], #health-bar .item[data-key="wss"] { cursor: default; }
.health-detail-pop { position: fixed; z-index: 100002; min-width: 210px; max-width: 300px; background: #12141b; border: 1px solid #2c3240; border-radius: 11px; padding: 11px 13px; box-shadow: 0 14px 40px rgba(0,0,0,.6); font-size: 12px; color: #e6e8ee; }
.health-detail-pop .hd-title { font-weight: 800; font-size: 13px; margin-bottom: 8px; color: #dbeafe; }
.health-detail-pop .hd-row { display: flex; justify-content: space-between; gap: 12px; padding: 3px 0; }
.health-detail-pop .hd-row span { color: #8a93a6; }
.health-detail-pop .hd-row b { font-weight: 700; font-variant-numeric: tabular-nums; }
.health-detail-pop .hd-sep { margin: 8px 0 5px; padding-top: 7px; border-top: 1px solid #252a35; color: #8a93a6; font-size: 11px; }

/* ===== 设置页信息架构与资讯筛选 ===== */
.user-config-modal .uc-tabs {
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: thin;
}
.user-config-modal .uc-tab { flex: 0 0 auto; white-space: nowrap; }
.uc-add-title { color: #dbeafe; font-size: 13px; font-weight: 900; white-space: nowrap; }
.uc-settings-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 10px; }
.uc-setting-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid #273142;
  border-radius: 12px;
  background: #121722;
}
.uc-setting-card:first-child { grid-column: 1 / -1; }
.uc-setting-card-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.uc-setting-card p { margin: 7px 0 12px; line-height: 1.55; }
.uc-setting-actions { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.uc-setting-actions input {
  width: 86px;
  box-sizing: border-box;
  background: #0d0f14;
  color: #e8e8ee;
  border: 1px solid #343743;
  border-radius: 10px;
  padding: 7px 9px;
  outline: none;
}
.uc-source-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding: 13px 14px;
  border: 1px solid #273142;
  border-radius: 12px;
  background: #121722;
}
.uc-source-status-copy { min-width: 0; }
.uc-source-status-title { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #f0f4fb; font-size: 15px; font-weight: 900; }
.uc-source-status p { margin: 5px 0 0; color: #8f98aa; font-size: 12px; line-height: 1.5; }
.uc-status-pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 2px 8px; font-size: 11px; font-weight: 800; }
.uc-status-pill.on { border: 1px solid #2f7b5a; background: #123323; color: #bbf7d0; }
.uc-status-pill.off { border: 1px solid #5d3640; background: #2a171c; color: #fda4af; }
.uc-source-status > button { flex: 0 0 auto; }
.uc-news-filter-embedded.disabled { opacity: .58; }
.uc-news-filter-embedded .news-filter-side-tab { display: none; }
.uc-news-filter-embedded .news-filter-card {
  padding: 14px;
  border: 1px solid #273142;
  border-radius: 12px;
  background: #10151f;
}
.uc-news-filter-embedded .news-filter-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 13px;
}
.uc-news-filter-embedded .news-filter-title { color: #e7eef9; font-size: 14px; font-weight: 900; }
.uc-news-filter-embedded .news-filter-hint { margin-top: 3px; color: #7f899b; font-size: 11px; line-height: 1.45; }
.uc-news-filter-embedded .news-filter-section + .news-filter-section { margin-top: 15px; padding-top: 15px; border-top: 1px solid #252d3a; }
.uc-news-filter-embedded .news-filter-subtitle {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 8px;
  color: #d8e3f3;
  font-size: 12px;
}
.uc-news-filter-embedded .news-filter-subtitle span { color: #7f8ca1; font-size: 11px; font-weight: 400; text-align: right; }
.uc-news-filter-embedded .news-filter-grid { display: grid; gap: 7px; }
.uc-news-filter-embedded .news-filter-grid.grades { grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)); }
.uc-news-filter-embedded .news-filter-grid.types { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.uc-news-filter-embedded .news-filter-chip {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  padding: 8px 9px;
  border: 1px solid #2c3442;
  border-radius: 9px;
  background: #0c1119;
  color: #a9b2c1;
  font-size: 12px;
  line-height: 1.25;
  cursor: pointer;
  user-select: none;
}
.uc-news-filter-embedded .news-filter-chip:hover { border-color: #44536a; background: #111824; }
.uc-news-filter-embedded .news-filter-chip:has(input:checked) { border-color: #315d51; background: #10231d; color: #e1f5ec; }
.uc-news-filter-embedded .news-filter-chip input { flex: 0 0 auto; width: 13px; height: 13px; margin: 0; accent-color: #4ade80; }
.uc-news-filter-embedded .news-filter-chip-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uc-news-filter-embedded .news-filter-count { margin-left: auto; color: #718096; font-size: 11px; font-variant-numeric: tabular-nums; }
.uc-news-filter-embedded .news-filter-chip:has(input:checked) .news-filter-count { color: #86bda8; }
.uc-news-filter-embedded .news-filter-empty { color: #7f899b; font-size: 12px; }

body.theme-light .uc-setting-card,
html[data-theme="light"] .uc-setting-card,
body.theme-light .uc-source-status,
html[data-theme="light"] .uc-source-status,
body.theme-light .uc-news-filter-embedded .news-filter-card,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-card { background: #ffffff; border-color: #d5dde8; }
body.theme-light .uc-setting-actions input,
html[data-theme="light"] .uc-setting-actions input { background: #ffffff; color: #182033; border-color: #c8d4e2; }
body.theme-light .uc-source-status-title,
html[data-theme="light"] .uc-source-status-title,
body.theme-light .uc-news-filter-embedded .news-filter-title,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-title { color: #1f3553; }
body.theme-light .uc-source-status p,
html[data-theme="light"] .uc-source-status p,
body.theme-light .uc-news-filter-embedded .news-filter-hint,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-hint,
body.theme-light .uc-news-filter-embedded .news-filter-subtitle span,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-subtitle span { color: #667085; }
body.theme-light .uc-news-filter-embedded .news-filter-subtitle,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-subtitle { color: #344054; }
body.theme-light .uc-news-filter-embedded .news-filter-section + .news-filter-section,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-section + .news-filter-section { border-top-color: #e2e8f0; }
body.theme-light .uc-news-filter-embedded .news-filter-chip,
html[data-theme="light"] .uc-news-filter-embedded .news-filter-chip { background: #f8fafc; border-color: #d9e1ec; color: #475467; }
body.theme-light .uc-news-filter-embedded .news-filter-chip:has(input:checked),
html[data-theme="light"] .uc-news-filter-embedded .news-filter-chip:has(input:checked) { background: #ecfdf3; border-color: #98d5ae; color: #166534; }

@media (max-width: 720px) {
  .uc-settings-grid { grid-template-columns: 1fr; }
  .uc-setting-card:first-child { grid-column: auto; }
  .uc-source-status { align-items: flex-start; flex-direction: column; }
  .uc-source-status > button { width: 100%; }
  .uc-news-filter-embedded .news-filter-subtitle { align-items: flex-start; flex-direction: column; gap: 3px; }
  .uc-news-filter-embedded .news-filter-subtitle span { text-align: left; }
  .uc-news-filter-embedded .news-filter-grid.types { grid-template-columns: 1fr; }
}

/* CA 旁的 gmgn 交易按钮(X/资讯等卡片) */
.ca-trade-btn { display: inline-flex; align-items: center; margin-left: 5px; padding: 1px 7px; font-size: 11px; font-weight: 700; line-height: 1.6; color: #93c5fd; background: rgba(59,130,246,.12); border: 1px solid rgba(59,130,246,.32); border-radius: 6px; text-decoration: none; white-space: nowrap; vertical-align: middle; }
.ca-trade-btn:hover { background: rgba(59,130,246,.24); color: #dbeafe; }

/* 设置页里每个对象的语音播报选择器 */
.uc-tts-sel { max-width: 104px; background: var(--embed-bg, #1a1a1e); color: var(--fg, #f0f0f4); border: 1px solid var(--card-border, #2a2a30); border-radius: 6px; padding: 3px 5px; font-family: inherit; font-size: 11px; cursor: pointer; }
.uc-tg-item .uc-tts-sel { flex: 0 0 auto; margin-left: auto; max-width: 92px; }

/* 设置面板 · 语音播报板块 */
.uc-tts-settings .uc-tts-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 10px; }
.uc-tts-chip { padding: 4px 12px; border-radius: 20px; border: 1px solid var(--card-border, #2a2a30); background: transparent; font-family: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.uc-tts-chip:hover { filter: brightness(1.25); }
.uc-tts-accs { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.uc-tts-acc { display: inline-flex; align-items: center; gap: 5px; padding: 3px 6px 3px 9px; border: 1px solid var(--card-border, #2a2a30); border-radius: 14px; font-size: 11.5px; color: var(--fg-dim, #8a8a92); }
.uc-tts-acc-x { background: transparent; border: 0; color: #8a8a92; cursor: pointer; font-size: 14px; line-height: 1; padding: 0 2px; }
.uc-tts-acc-x:hover { color: #ff9a9a; }

/* Flap FAC 新认证卡片 */
.card.fac-event { display: block; border-left: 3px solid #f5b301; }
.fac-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.fac-icon { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; }
.fac-namebox { display: flex; align-items: baseline; gap: 6px; min-width: 0; }
.fac-name { font-size: 14px; font-weight: 800; }
.fac-symbol { font-size: 12px; color: #f5b301; font-weight: 700; }
.fac-badge { font-size: 11px; font-weight: 700; color: #f5b301; background: rgba(245,179,1,.14); border: 1px solid rgba(245,179,1,.3); border-radius: 20px; padding: 1px 8px; }
.fac-time { margin-left: auto; font-size: 11px; color: var(--fg-dim, #8a8a92); }
.fac-metrics { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 7px; }
.fac-metric { display: inline-flex; align-items: center; gap: 5px; background: rgba(255,255,255,.04); border: 1px solid var(--card-border, #2a2a30); border-radius: 6px; padding: 2px 7px; }
.fac-metric i { font-style: normal; font-size: 10.5px; color: var(--fg-dim, #8a8a92); }
.fac-metric b { font-size: 12px; font-variant-numeric: tabular-nums; }
.fac-changes { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 7px; font-size: 11.5px; }
.fac-chg { font-variant-numeric: tabular-nums; color: var(--fg-dim, #8a8a92); }
.fac-chg.up { color: #16c784; } .fac-chg.down { color: #ea3943; }
.fac-tax { color: #fbbf24; font-size: 11px; }
.fac-ca { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; }

/* FAC 卡片:底池 + 币龄 */
.fac-vault { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 7px; font-size: 11.5px; }
.fac-vault-tag { color: #a78bfa; background: rgba(167,139,250,.13); border: 1px solid rgba(167,139,250,.3); border-radius: 6px; padding: 1px 8px; font-weight: 700; }
.fac-vault-tag.none { color: var(--fg-dim, #8a8a92); background: transparent; border-color: var(--card-border, #2a2a30); font-weight: 400; }
.fac-age { color: var(--fg-dim, #8a8a92); }

/* 关注了但不在总列表的警告条 */
.dir-warn-banner { position: fixed; left: 50%; bottom: 110px; transform: translateX(-50%); z-index: 100001;
  max-width: 520px; width: calc(100vw - 32px); display: flex; flex-direction: column; gap: 6px;
  background: #2a1f08; border: 1px solid #7a5a12; border-left: 4px solid #f5b301; border-radius: 10px;
  padding: 12px 14px; color: #f3e7c8; font-size: 13px; line-height: 1.55; box-shadow: 0 14px 40px rgba(0,0,0,.6); }
.dir-warn-banner b { color: #f5b301; }
.dir-warn-banner span b { color: #ffd970; }
.dir-warn-banner button { align-self: flex-end; margin-top: 2px; padding: 3px 12px; background: transparent;
  border: 1px solid #7a5a12; color: #f5b301; border-radius: 6px; cursor: pointer; font-family: inherit; font-size: 12px; }
.dir-warn-banner button:hover { background: rgba(245,179,1,.14); }

/* 微信并卡:同一个人连着说的几句在一张卡里，每条自己的时间平时藏着，扫到才露 */
.wechat-msg-row { position: relative; padding-right: 62px; }
.wechat-msg-row + .wechat-msg-row { margin-top: 7px; padding-top: 7px; border-top: 1px dashed var(--card-border, #2a2a30); }
.wechat-msg-time {
  position: absolute; right: 0; top: 0;
  font-size: 11px; color: var(--fg-dim, #8a8a92);
  opacity: 0; transition: opacity .12s ease; pointer-events: none; white-space: nowrap;
}
.wechat-msg-row:hover .wechat-msg-time { opacity: .85; }

/* 卡片一键分享:平时藏着,鼠标移到卡片上才露出来,不抢版面 */
.card-share-btn {
  position: absolute; right: 27px; bottom: 4px;
  width: 21px; height: 21px; padding: 0; border: 0; border-radius: 5px;
  background: transparent; color: inherit; cursor: pointer;
  font-size: 12px; line-height: 1; z-index: 3;
  opacity: 0; transition: opacity .12s ease, background .12s ease;
}
.card:hover .card-share-btn { opacity: .5; }
.card-share-btn:hover { opacity: 1; background: var(--embed-bg, #1a1a1e); }
.card-share-btn:disabled { cursor: default; opacity: .9; }

/* 正文里的推文链接 -> X 官方嵌入卡 */
.tweet-embed { margin: 8px 0 2px; max-width: 100%; min-height: 26px; grid-column: 1 / -1;
  /* grid/flex 子项默认 min-width:auto,内容(550px 的 iframe)会把整列顶宽,
     旁边的文字就被压成一列一个字。必须显式放开。 */
  min-width: 0; width: 100%; overflow: hidden; }
/* 空容器不能设 display:none —— IntersectionObserver 不观察它,懒加载就永远不触发。
   用一行浅色占位撑着,渲染成功后被 iframe 顶掉,失败则由 JS remove()。 */
.tweet-embed:empty::before {
  content: "载入推文…";
  display: block; font-size: 11.5px; color: var(--fg-dim, #8a8a92);
  padding: 4px 0; opacity: .65;
}

/* 「N 条新消息」:粘在所在列的顶部,点了才回顶 */
.feed-new-badge {
  position: sticky; top: 6px; z-index: 30;
  display: block; width: fit-content; max-width: 90%;
  margin: 0 auto 8px; padding: 5px 15px;
  border: 0; border-radius: 999px;
  background: var(--accent, #2f7ef7); color: #fff;
  font-size: 12.5px; font-weight: 600; line-height: 1.5;
  font-family: inherit; cursor: pointer; white-space: nowrap;
  box-shadow: 0 4px 16px rgba(0,0,0,.45);
  animation: feedNewBadgeIn .18s ease-out;
}
.feed-new-badge:hover { filter: brightness(1.12); }
@keyframes feedNewBadgeIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

/* 别人账号旁的快捷关注:小圆点按钮,不抢正文视线 */
.acct-follow-chip {
  display: inline-flex; align-items: center; justify-content: center;
  width: 16px; height: 16px; margin-left: 4px; padding: 0;
  border: 1px solid var(--card-border, #2a2a30); border-radius: 50%;
  background: transparent; color: var(--fg-dim, #8a8a92);
  font-size: 12px; line-height: 1; cursor: pointer; vertical-align: middle;
  opacity: .55; transition: opacity .12s ease, color .12s ease, border-color .12s ease;
}
.acct-follow-chip:hover {
  opacity: 1; color: var(--accent, #daa528); border-color: var(--accent, #daa528);
}

/* ===== 985-autohide-bars:顶部/底部条默认收起,鼠标靠边滑出 ===== */
/* 两条原本 static 占文档流,改 fixed 后收起时空间还给 feed,页面不跳。
   留 4px 在视口内当"把手"——伪元素热区会被上层内容盖住,鼠标碰不到,试过不行。 */
/* 2026-08-24:改成按钮开关,默认不隐藏。以下规则只在 body.bars-autohide 时生效。 */
body.bars-autohide #top-actions-bar {
  position: fixed !important; top: 0; left: 0; right: 0;
  z-index: 100;
  background: var(--bg, #0e0e12);
  border-bottom: 1px solid var(--card-border, #2a2a30);
  transform: translateY(calc(-100% + 4px));
  transition: transform .18s ease;
  will-change: transform;
}
body.bars-autohide #top-actions-bar:hover,
body.bars-autohide #top-actions-bar:focus-within,
body.bars-autohide #top-actions-bar.bar-pinned { transform: translateY(0); }

body.bars-autohide #health-bar {
  position: fixed !important; bottom: 0; left: 0; right: 0;
  z-index: 90;
  background: var(--bg, #0e0e12);
  border-top: 1px solid var(--card-border, #2a2a30);
  transform: translateY(calc(100% - 4px));
  transition: transform .18s ease;
  will-change: transform;
}
body.bars-autohide #health-bar:hover,
body.bars-autohide #health-bar:focus-within,
body.bars-autohide #health-bar.bar-pinned { transform: translateY(0); }

/* 收起时那 4px 上给个小横条,提示这儿能拉出来;展开后淡出 */
body.bars-autohide #top-actions-bar::before,
body.bars-autohide #health-bar::before {
  content: ""; position: absolute; left: 50%; transform: translateX(-50%);
  width: 44px; height: 3px; border-radius: 2px;
  background: var(--fg-dim, #8a8a92); opacity: .45;
  pointer-events: none; transition: opacity .18s ease;
}
body.bars-autohide #top-actions-bar::before { bottom: 1px; }
body.bars-autohide #health-bar::before { top: 1px; }
body.bars-autohide #top-actions-bar:hover::before,
body.bars-autohide #health-bar:hover::before { opacity: 0; }

/* 状态条改 fixed 后不再占文档流,原来留给它的 40px 底部间距就成了黑条 */
body.bars-autohide main#feed { padding-bottom: 12px; }

/* 分栏的列按内容算高,撑不满 feed,底部会露出一条背景(状态条改浮层后尤其明显) */
#feed { align-items: stretch; }
#feed > .feed-col { align-self: stretch; min-height: 100%; }

/* 超长正文折叠:收起时限高 + 底部渐隐,点按钮就地展开 */
.long-text-inner.long-text-folded {
  max-height: 16em;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(180deg, #000 62%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 62%, transparent 100%);
}
.long-text-toggle {
  display: inline-block;
  margin-top: 6px;
  padding: 3px 12px;
  border: 1px solid var(--embed-border, #2e2e34);
  border-radius: 999px;
  background: transparent;
  color: var(--info, #7CD6FF);
  font-family: inherit;
  font-size: 12.5px;
  line-height: 1.6;
  cursor: pointer;
}
.long-text-toggle:hover { background: rgba(124, 214, 255, .10); }

/* ===== 设置面板 · 交互反馈 =====
   改前:uc-* 只有 3 条 :hover(subtab / tts-chip / tts-acc-x),:focus-visible 0 条。
   7 个主 tab、表格里每个按钮、每一行,鼠标移上去都没反应,键盘更是看不出焦点在哪。 */
.uc-tab, .uc-small, .uc-icon-btn, .uc-table tbody tr { transition: background .12s ease, border-color .12s ease; }
.uc-tab:hover, .uc-icon-btn:hover { background: #222736; border-color: #4b6aa6; }
.uc-tab.active:hover { background: #2c4067; }
.uc-small:hover:not(:disabled) { background: #1f2534; border-color: #4b6aa6; }
.uc-small.ok:hover:not(:disabled) { background: #276448; border-color: #3d9670; }
.uc-table tbody tr:hover { background: #1b2130; }
.uc-tab:focus-visible, .uc-small:focus-visible, .uc-icon-btn:focus-visible, .uc-subtab:focus-visible,
.uc-tts-chip:focus-visible, .uc-table select:focus-visible, .uc-table input:focus-visible,
.uc-search input:focus-visible, .uc-add input:focus-visible, .uc-add select:focus-visible,
.uc-setting-actions input:focus-visible, .uc-setting-actions select:focus-visible,
.uc-keyword-add input:focus-visible, .uc-keyword-add select:focus-visible,
.uc-keyword-row select:focus-visible, .uc-highlight input:focus-visible {
  outline: 2px solid #6d8fd0;
  outline-offset: 1px;
}
body.theme-light .uc-tab:hover, html[data-theme="light"] .uc-tab:hover,
body.theme-light .uc-icon-btn:hover, html[data-theme="light"] .uc-icon-btn:hover { background: #e2e9f4; border-color: #9db4d8; }
body.theme-light .uc-tab.active:hover, html[data-theme="light"] .uc-tab.active:hover { background: #d8e5fb; }
body.theme-light .uc-small:hover:not(:disabled), html[data-theme="light"] .uc-small:hover:not(:disabled) { background: #e2e9f4; border-color: #9db4d8; }
body.theme-light .uc-table tbody tr:hover, html[data-theme="light"] .uc-table tbody tr:hover { background: #eef3fa; }

/* 显示与提醒:语音播报卡的内容量是另外三张的 5 倍,占满整行(列数改在上面原定义里) */
.uc-tts-settings { grid-column: 1 / -1; }

/* ===== 设置面板 · 表格瘦身(10 列 -> 6 列) ===== */
.uc-table { min-width: 620px; }
.uc-remark { max-width: 460px; }
.uc-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.uc-tag { padding: 1px 7px; border: 1px solid #24384f; border-radius: 999px; background: #152232; color: #93b4d8; font-size: 11px; white-space: nowrap; }
.uc-group-chip {
  max-width: 150px; padding: 1px 7px; border: 1px solid #334155; border-radius: 999px;
  background: #111827; color: #aab4c8; font: inherit; font-size: 11px; line-height: 1.45;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer;
}
.uc-group-chip:hover, .uc-group-chip:focus-visible { color: #dcfce7; border-color: #2f7b5a; background: #173126; }
.uc-group-chip:focus-visible { outline: 2px solid #6d8fd0; outline-offset: 1px; }
.uc-group-chip.on { color: #86efac; border-color: #2f7b5a; background: #173126; }
.uc-sound-btn { min-width: 76px; text-align: left; }
.uc-sound-btn.on { color: #c8dcff; border-color: #3c5a86; }
.uc-more.marked { color: #fbbf24; border-color: #6b5424; }
.uc-ops { white-space: nowrap; }
/* 个人额外关注:原来单独占一列显示徽章,现在收成账号名左边一条线 */
.uc-row-extra .uc-main { border-left: 2px solid #3d9670; padding-left: 6px; }
body.theme-light .uc-tag, html[data-theme="light"] .uc-tag { background: #eaf1fa; border-color: #cbd9ea; color: #35618f; }
body.theme-light .uc-group-chip, html[data-theme="light"] .uc-group-chip { background: #f3f6fa; border-color: #cbd5e1; color: #526274; }
body.theme-light .uc-group-chip.on, html[data-theme="light"] .uc-group-chip.on { background: #e8f7ef; border-color: #83c5a1; color: #17633b; }

/* 链上腿抢先播报的卡:标出"数据待确认",fomo 完整数据到了会替换掉整张卡 */
.fomo-pending-chain {
  display: inline-flex;
  align-items: center;
  margin-left: 4px;
  padding: 0 6px;
  border: 1px solid #6b5424;
  border-radius: 999px;
  background: #2a2214;
  color: #fbbf24;
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
  vertical-align: middle;
}
body.theme-light .fomo-pending-chain,
html[data-theme="light"] .fomo-pending-chain {
  border-color: #e0c68a; background: #fdf6e3; color: #9a6700;
}

.fomo-revoked-chain {
  display: inline-flex; align-items: center; margin-left: 4px; padding: 0 6px;
  border: 1px solid #7f1d1d; border-radius: 999px; background: #2b1216;
  color: #fca5a5; font-size: 10.5px; font-weight: 700; white-space: nowrap; vertical-align: middle;
}
body.theme-light .fomo-revoked-chain, html[data-theme="light"] .fomo-revoked-chain {
  border-color: #fecaca; background: #fef2f2; color: #b91c1c;
}

/* 链上腿:交易已确认上链(logs 只在成功时产生)。中性色,区别于待确认的琥珀色 */
.fomo-chain-tag {
  display: inline-flex; align-items: center; margin-left: 4px; padding: 0 6px;
  border: 1px solid #2f5d4a; border-radius: 999px; background: #16241d;
  color: #6ee7b7; font-size: 10.5px; font-weight: 700; white-space: nowrap; vertical-align: middle;
}
body.theme-light .fomo-chain-tag, html[data-theme="light"] .fomo-chain-tag {
  border-color: #a7d9c2; background: #ecfdf5; color: #12694a;
}

.card.fomo-event .fomo-lat { flex: 0 0 auto; font-size: 10px; opacity: .55; font-variant-numeric: tabular-nums; margin-left: 2px; }
.card.fomo-event .fomo-lat.slow { opacity: .8; color: #f59e0b; }

.card .src-tag { flex: 0 0 auto; font-size: 10px; line-height: 1.4; padding: 0 5px; border: 1px solid currentColor; border-radius: 4px; opacity: .75; margin-left: 4px; white-space: nowrap; }

.src-pop { position: fixed; z-index: 9999; min-width: 300px; max-width: 420px;
  background: var(--card-bg, #12161c); border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px; padding: 8px 10px; box-shadow: 0 8px 28px rgba(0,0,0,.5); font-size: 12px; }
.src-pop-h { font-weight: 700; margin-bottom: 6px; opacity: .9; }
.src-pop-row { display: grid; grid-template-columns: 72px 92px 66px 1fr; gap: 6px;
  align-items: baseline; padding: 2px 0; font-variant-numeric: tabular-nums; }
.src-pop-row b { font-weight: 600; }
.src-pop-row i { font-style: normal; opacity: .7; }
.src-pop-row em { font-style: normal; opacity: .85; text-align: right; }
.src-pop-row.cur { background: rgba(56,189,248,.12); border-radius: 4px; }
.src-pop-f { margin-top: 6px; padding-top: 6px; border-top: 1px solid rgba(255,255,255,.1);
  opacity: .6; font-size: 10px; word-break: break-all; }


/* ===== 985 main logo brand-main-20260829a ===== */
#top-actions-bar .site-logo-link {
  background-image: url("/assets/brand/985monitor-primary-dark.svg?v=brand-main-20260829a") !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;
  color: transparent !important;
  text-shadow: none !important;
}

#top-actions-bar .site-logo-link::before,
#top-actions-bar .site-logo-link::after,
#top-actions-bar .site-logo-link .site-logo {
  content: none !important;
  display: none !important;
}
/* ===== End 985 main logo brand-main-20260829a ===== */

/* ===== English-ready light mode polish · 20260831 =====
   Visual thesis: a dense professional monitoring desk in daylight — cool white
   surfaces, dark ink, one blue interaction accent, with trading red/green intact. */
body.theme-light,
html[data-theme="light"] body {
  --page-bg: #e9eef4;
  --fg: #101828;
  --fg-muted: #475467;
  --fg-dim: #667085;
  --card-bg: #ffffff;
  --card-border: #cbd5e1;
  --embed-bg: #f4f7fb;
  --embed-border: #d6dee9;
  --bar-bg: rgba(255, 255, 255, .96);
  --bar-border: #d4dce7;
  --link: #175cd3;
  --mention: #026aa2;
  --soft-shadow: 0 2px 8px rgba(16, 24, 40, .06), 0 12px 28px rgba(16, 24, 40, .055);
  --accent: #2563eb;
  background: linear-gradient(180deg, #f8fafc 0, #eef2f7 32%, #e9eef4 100%);
}

body.theme-light #top-actions-bar,
html[data-theme="light"] #top-actions-bar {
  background: rgba(255, 255, 255, .97);
  border-bottom-color: #d4dce7;
  box-shadow: 0 1px 0 rgba(16, 24, 40, .04), 0 6px 20px rgba(16, 24, 40, .055);
  backdrop-filter: blur(16px) saturate(1.12);
}
body.theme-light #health-bar,
html[data-theme="light"] #health-bar {
  background: rgba(248, 250, 252, .97);
  border-top-color: #d4dce7;
  box-shadow: 0 -1px 0 rgba(16, 24, 40, .035);
  backdrop-filter: blur(14px);
}
body.theme-light #top-actions-bar .site-logo-link,
html[data-theme="light"] #top-actions-bar .site-logo-link {
  filter: brightness(.30) saturate(1.25) contrast(1.25);
  opacity: .96;
}
body.theme-light #health-bar .item,
html[data-theme="light"] #health-bar .item {
  color: #475467;
}
body.theme-light #health-bar .label,
html[data-theme="light"] #health-bar .label {
  color: #344054;
  font-weight: 750;
}
body.theme-light #health-bar .time,
html[data-theme="light"] #health-bar .time { color: #667085; }

body.theme-light main#feed,
html[data-theme="light"] main#feed {
  scrollbar-color: #b8c4d3 transparent;
}
body.theme-light .feed-col,
html[data-theme="light"] .feed-col {
  border-color: rgba(148, 163, 184, .38);
}
body.theme-light .card,
html[data-theme="light"] .card {
  background-color: var(--card-bg);
  border-color: var(--card-border);
  box-shadow: var(--soft-shadow);
  color: var(--fg);
  /* 卡片滚动经过固定鼠标位置时会连续切换 :hover。
     阴影/位移过渡会让每张经过的卡参与重绘；只保留便宜的边框反馈。 */
  transition: border-color .14s ease-out;
}
body.theme-light .card:hover,
html[data-theme="light"] .card:hover {
  border-color: #aebdce;
  transform: none;
}
body.theme-light .card .header .name,
body.theme-light .card .target-name,
html[data-theme="light"] .card .header .name,
html[data-theme="light"] .card .target-name { color: #101828; }
body.theme-light .card .handle,
body.theme-light .card .time,
body.theme-light .card .meta,
html[data-theme="light"] .card .handle,
html[data-theme="light"] .card .time,
html[data-theme="light"] .card .meta { color: #667085; }
body.theme-light .card .embed,
html[data-theme="light"] .card .embed {
  background: #f6f8fb;
  border-color: #d8e0ea;
}
body.theme-light .card.fomo-event .fomo-remark,
html[data-theme="light"] .card.fomo-event .fomo-remark {
  background: #eaf2ff;
  color: #245b91;
  border-color: #b9cdea;
}
body.theme-light .card.fomo-event .fomo-trade-btn, body.theme-light .card.fomo-event .token-history-btn,
html[data-theme="light"] .card.fomo-event .fomo-trade-btn, html[data-theme="light"] .card.fomo-event .token-history-btn {
  background: #eaf2ff;
  color: #174ea6;
  border-color: #afc7e9;
}
body.theme-light .card.fomo-event .fomo-trade-btn:hover, body.theme-light .card.fomo-event .token-history-btn:hover,
html[data-theme="light"] .card.fomo-event .fomo-trade-btn:hover, html[data-theme="light"] .card.fomo-event .token-history-btn:hover { background: #dceaff; }
body.theme-light .card.fomo-event .fomo-trans,
html[data-theme="light"] .card.fomo-event .fomo-trans {
  background: #f4f7fb;
  color: #475467;
  border-left-color: #94a3b8;
}

body.theme-light #top-actions-bar .top-config-btn,
body.theme-light #top-actions-bar #push-menu-toggle,
body.theme-light #top-actions-bar .top-flat-link,
html[data-theme="light"] #top-actions-bar .top-config-btn,
html[data-theme="light"] #top-actions-bar #push-menu-toggle,
html[data-theme="light"] #top-actions-bar .top-flat-link {
  background: #ffffff;
  color: #344054;
  border-color: #c7d2e0;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 3px 8px rgba(16, 24, 40, .04);
}
body.theme-light #top-actions-bar .top-config-btn:hover,
body.theme-light #top-actions-bar #push-menu-toggle:hover,
body.theme-light #top-actions-bar .top-flat-link:hover,
html[data-theme="light"] #top-actions-bar .top-config-btn:hover,
html[data-theme="light"] #top-actions-bar #push-menu-toggle:hover,
html[data-theme="light"] #top-actions-bar .top-flat-link:hover {
  background: #f5f8fc;
  color: #175cd3;
  border-color: #9db7dc;
  box-shadow: 0 4px 12px rgba(23, 92, 211, .10);
}

body.theme-light .user-config-modal .uc-panel,
html[data-theme="light"] .user-config-modal .uc-panel {
  background: #ffffff;
  color: #101828;
  border-color: #cbd5e1;
  box-shadow: 0 28px 80px rgba(16, 24, 40, .20), 0 2px 8px rgba(16, 24, 40, .08);
}
body.theme-light .user-config-modal .uc-head,
html[data-theme="light"] .user-config-modal .uc-head {
  background: linear-gradient(180deg, #ffffff, #f7f9fc);
  border-bottom-color: #d8e0ea;
}
body.theme-light .user-config-modal .uc-head h2,
html[data-theme="light"] .user-config-modal .uc-head h2 { color: #101828; }
body.theme-light .user-config-modal .uc-tabs,
body.theme-light .user-config-modal .uc-subtabs,
body.theme-light .user-config-modal .uc-add,
body.theme-light .user-config-modal .uc-search,
html[data-theme="light"] .user-config-modal .uc-tabs,
html[data-theme="light"] .user-config-modal .uc-subtabs,
html[data-theme="light"] .user-config-modal .uc-add,
html[data-theme="light"] .user-config-modal .uc-search {
  background: #f7f9fc;
  border-bottom-color: #d8e0ea;
}
body.theme-light .user-config-modal .uc-highlight,
html[data-theme="light"] .user-config-modal .uc-highlight {
  background: #f1f5fa;
  border-bottom-color: #d8e0ea;
}
body.theme-light .user-config-modal .uc-highlight-title,
html[data-theme="light"] .user-config-modal .uc-highlight-title { color: #344054; }
body.theme-light .user-config-modal .uc-highlight label,
html[data-theme="light"] .user-config-modal .uc-highlight label {
  background: #ffffff;
  color: #344054;
  border-color: #cbd5e1;
}
body.theme-light .user-config-modal .uc-content,
html[data-theme="light"] .user-config-modal .uc-content { background: #ffffff; }
body.theme-light .user-config-modal .uc-tab,
body.theme-light .user-config-modal .uc-subtab,
body.theme-light .user-config-modal .uc-small,
body.theme-light .user-config-modal .uc-icon-btn,
html[data-theme="light"] .user-config-modal .uc-tab,
html[data-theme="light"] .user-config-modal .uc-subtab,
html[data-theme="light"] .user-config-modal .uc-small,
html[data-theme="light"] .user-config-modal .uc-icon-btn {
  background: #ffffff;
  color: #344054;
  border-color: #c7d2e0;
}
body.theme-light .user-config-modal .uc-tab.active,
body.theme-light .user-config-modal .uc-subtab.active,
html[data-theme="light"] .user-config-modal .uc-tab.active,
html[data-theme="light"] .user-config-modal .uc-subtab.active {
  background: #eaf2ff;
  color: #174ea6;
  border-color: #9db7dc;
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, .06);
}
body.theme-light .user-config-modal .uc-add button,
body.theme-light .user-config-modal .uc-small.ok,
html[data-theme="light"] .user-config-modal .uc-add button,
html[data-theme="light"] .user-config-modal .uc-small.ok {
  background: #157347;
  color: #ffffff;
  border-color: #11643d;
}
body.theme-light .user-config-modal .uc-add input,
body.theme-light .user-config-modal .uc-add select,
body.theme-light .user-config-modal .uc-search input,
body.theme-light .user-config-modal .uc-table input,
body.theme-light .user-config-modal .uc-table select,
body.theme-light .user-config-modal .uc-setting-actions input,
body.theme-light .user-config-modal .uc-setting-actions select,
html[data-theme="light"] .user-config-modal .uc-add input,
html[data-theme="light"] .user-config-modal .uc-add select,
html[data-theme="light"] .user-config-modal .uc-search input,
html[data-theme="light"] .user-config-modal .uc-table input,
html[data-theme="light"] .user-config-modal .uc-table select,
html[data-theme="light"] .user-config-modal .uc-setting-actions input,
html[data-theme="light"] .user-config-modal .uc-setting-actions select {
  background: #ffffff;
  color: #101828;
  border-color: #bfcbd9;
  box-shadow: inset 0 1px 2px rgba(16, 24, 40, .035);
}
body.theme-light .user-config-modal input::placeholder,
html[data-theme="light"] .user-config-modal input::placeholder { color: #98a2b3; }
body.theme-light .user-config-modal .uc-summary,
body.theme-light .user-config-modal .uc-muted,
body.theme-light .user-config-modal .uc-sub,
html[data-theme="light"] .user-config-modal .uc-summary,
html[data-theme="light"] .user-config-modal .uc-muted,
html[data-theme="light"] .user-config-modal .uc-sub { color: #667085; }
body.theme-light .user-config-modal .uc-table-wrap,
html[data-theme="light"] .user-config-modal .uc-table-wrap {
  background: #ffffff;
  border-color: #cbd5e1;
  box-shadow: 0 1px 3px rgba(16, 24, 40, .04);
}
body.theme-light .user-config-modal .uc-table th,
html[data-theme="light"] .user-config-modal .uc-table th {
  background: #eef3f8;
  color: #344054;
  border-bottom-color: #cbd5e1;
}
body.theme-light .user-config-modal .uc-table td,
html[data-theme="light"] .user-config-modal .uc-table td {
  color: #344054;
  border-bottom-color: #e2e8f0;
}
body.theme-light .user-config-modal .uc-table tbody tr:nth-child(even),
html[data-theme="light"] .user-config-modal .uc-table tbody tr:nth-child(even) { background: #fbfcfe; }
body.theme-light .user-config-modal .uc-table tbody tr:hover,
html[data-theme="light"] .user-config-modal .uc-table tbody tr:hover { background: #eef5ff; }
body.theme-light .user-config-modal .uc-main,
body.theme-light .user-config-modal .uc-tg-name,
html[data-theme="light"] .user-config-modal .uc-main,
html[data-theme="light"] .user-config-modal .uc-tg-name { color: #101828; }
body.theme-light .user-config-modal .uc-remark,
html[data-theme="light"] .user-config-modal .uc-remark { color: #365f91; }
body.theme-light .user-config-modal .uc-list-row,
body.theme-light .user-config-modal .uc-tg-item,
body.theme-light .user-config-modal .uc-setting-card,
body.theme-light .user-config-modal .uc-source-status,
html[data-theme="light"] .user-config-modal .uc-list-row,
html[data-theme="light"] .user-config-modal .uc-tg-item,
html[data-theme="light"] .user-config-modal .uc-setting-card,
html[data-theme="light"] .user-config-modal .uc-source-status {
  background: #f9fbfd;
  color: #344054;
  border-color: #d6dee9;
}
body.theme-light .user-config-modal .uc-badge,
html[data-theme="light"] .user-config-modal .uc-badge {
  background: #eef3f8;
  color: #475467;
  border-color: #cbd5e1;
}

body.theme-light .follow-popover,
body.theme-light .event-filter-popover,
body.theme-light .event-mute-menu,
body.theme-light .uc-row-popover,
body.theme-light .split-config-popover,
body.theme-light .health-detail-pop,
body.theme-light .src-pop,
body.theme-light #interface-menu-pop,
html[data-theme="light"] .follow-popover,
html[data-theme="light"] .event-filter-popover,
html[data-theme="light"] .event-mute-menu,
html[data-theme="light"] .uc-row-popover,
html[data-theme="light"] .split-config-popover,
html[data-theme="light"] .health-detail-pop,
html[data-theme="light"] .src-pop,
html[data-theme="light"] #interface-menu-pop {
  background: #ffffff;
  color: #344054;
  border-color: #c7d2e0;
  box-shadow: 0 18px 46px rgba(16, 24, 40, .18), 0 2px 6px rgba(16, 24, 40, .06);
}
body.theme-light .src-pop-f,
html[data-theme="light"] .src-pop-f { border-top-color: #d8e0ea; }

body.theme-light button:focus-visible,
body.theme-light a:focus-visible,
body.theme-light input:focus-visible,
body.theme-light select:focus-visible,
html[data-theme="light"] button:focus-visible,
html[data-theme="light"] a:focus-visible,
html[data-theme="light"] input:focus-visible,
html[data-theme="light"] select:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  body.theme-light .card,
  html[data-theme="light"] .card,
  body.theme-light #top-actions-bar .top-config-btn,
  html[data-theme="light"] #top-actions-bar .top-config-btn { transition: none; }
  body.theme-light .card:hover,
  html[data-theme="light"] .card:hover { transform: none; }
}
/* ===== End English-ready light mode polish ===== */

/* FOMO leaderboard avatar frames: no animation, no card rebuild. */
.card.fomo-event .fomo-av.fomo-ranked { position:relative; overflow:visible; --rank-color:#94a3b8; box-shadow:0 0 0 2px var(--rank-color); }
.card.fomo-event .fomo-av.fomo-ranked img { border-radius:inherit; }
.card.fomo-event .fomo-av[data-rank-board="all"] { --rank-color:#facc15; box-shadow:0 0 0 2px var(--rank-color),0 0 0 4px rgba(250,204,21,.16); }
.card.fomo-event .fomo-av[data-rank-board="30d"] { --rank-color:#a78bfa; }
.card.fomo-event .fomo-av[data-rank-board="7d"] { --rank-color:#60a5fa; }
.card.fomo-event .fomo-av[data-rank-board="24h"] { --rank-color:#2dd4bf; }
.card.fomo-event .fomo-rank-badge { position:absolute; left:50%; bottom:-5px; transform:translateX(-50%); z-index:1; min-width:24px; box-sizing:border-box; padding:1px 3px; border:1px solid var(--rank-color); border-radius:4px; background:#101318; color:var(--rank-color); font:800 9px/10px ui-monospace,monospace; text-align:center; white-space:nowrap; pointer-events:none; }
.chat-private-toggle { display:flex; align-items:center; gap:5px; margin:0 0 8px; font-size:11px; cursor:pointer; }
.chat-private-toggle input { margin:0; accent-color:#a78bfa; }
#chat-panel-private-hint { color:var(--fg-dim,#8a8a92); font-size:10px; }
.chat-private-badge { color:#c4b5fd; background:rgba(167,139,250,.12); border:1px solid rgba(167,139,250,.35); border-radius:3px; padding:0 4px; font-size:9px; white-space:nowrap; }

/* Light-mode readability repair: keep existing layout and semantic color roles. */
body.theme-light,
html[data-theme="light"] body {
  --feed-positive: #137344;
  --feed-negative: #b42332;
  --feed-warning: #855409;
  --feed-info: #086b98;
  --feed-purple: #7442a5;
  --feed-orange: #a34b13;
  --feed-neutral: #526079;
}

:is(body.theme-light, html[data-theme="light"] body) .card .account-remark {
  color: #24528d;
  background: #e8f0fc;
  border-color: #b7cbe6;
}
:is(body.theme-light, html[data-theme="light"] body) .card .profile-summary { color: #526079; }
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-symbol { color: #855409; }
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-mc,
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-hold-val { color: #334155; }
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-stats { color: #526079; }
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-ca {
  color: #334b6c;
  background: #edf2f8;
  border-color: #bdcadb;
}
:is(body.theme-light, html[data-theme="light"] body) .card.fomo-event .fomo-ca:hover {
  color: #1e40af;
  background: #e2eafa;
  filter: none;
}
:is(body.theme-light, html[data-theme="light"] body) .card :is(.fomo-age, .fomo-lat) {
  color: #526079;
  opacity: 1;
}
:is(body.theme-light, html[data-theme="light"] body) .card .fomo-lat.slow { color: var(--feed-warning); }
:is(body.theme-light, html[data-theme="light"] body) .card .src-tag { opacity: 1; }
:is(body.theme-light, html[data-theme="light"] body) .card-source-badge { color: #526079; opacity: .85 !important; }
:is(body.theme-light, html[data-theme="light"] body) .card-source-badge svg { fill: currentColor; }

:is(body.theme-light, html[data-theme="light"] body) .long-text-toggle {
  color: #155e95;
  border-color: #aebfd6;
  background: #f2f6fc;
}
:is(body.theme-light, html[data-theme="light"] body) .long-text-toggle:hover { background: #e3edfa; }
:is(body.theme-light, html[data-theme="light"] body) .long-text-inner.long-text-folded {
  -webkit-mask-image: linear-gradient(180deg, #000 92%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 92%, transparent 100%);
}

/* Small white-on-color X/news chips need a darker fill on the pale cards. */
:is(body.theme-light, html[data-theme="light"] body) .chip.reply { background: #994813; }
:is(body.theme-light, html[data-theme="light"] body) .chip.retweet { background: #856009; }
:is(body.theme-light, html[data-theme="light"] body) .chip.quote { background: #71509f; }
:is(body.theme-light, html[data-theme="light"] body) .chip.tweet,
:is(body.theme-light, html[data-theme="light"] body) .chip.news.signal-bullish { background: #23704f; }
:is(body.theme-light, html[data-theme="light"] body) .chip.pin { background: #326d47; }
:is(body.theme-light, html[data-theme="light"] body) .chip.follow,
:is(body.theme-light, html[data-theme="light"] body) .chip.profile-bio { background: #2863a0; }
:is(body.theme-light, html[data-theme="light"] body) .chip.news,
:is(body.theme-light, html[data-theme="light"] body) .chip.news.signal-neutral { background: #b44226; }
:is(body.theme-light, html[data-theme="light"] body) .chip.news.signal-bearish { background: #b42332; }
:is(body.theme-light, html[data-theme="light"] body) .chip.profile-avatar { background: #774299; }
:is(body.theme-light, html[data-theme="light"] body) .chip.profile-banner { background: #5f4b9e; }
:is(body.theme-light, html[data-theme="light"] body) .chip.profile-name { background: #9b4b24; }
:is(body.theme-light, html[data-theme="light"] body) .chip.ca { background: #246d64; }

:is(body.theme-light, html[data-theme="light"] body) .fomo-popover .fomo-chip.on {
  color: #373a91;
  background: #e8eafd;
  border-color: #9ca5dc;
}
:is(body.theme-light, html[data-theme="light"] body) .fomo-popover .fomo-mini.danger { color: #a32631; border-color: #cf8e96; }

/* Appearance controls: opt-in palette/reading overrides; default layouts stay intact. */
html[data-appearance-active] { --page-bg: var(--appearance-page-bg); }
html[data-appearance-active] body {
  --page-bg: var(--appearance-page-bg) !important;
  --card-bg: var(--appearance-card-bg) !important;
  --embed-bg: var(--appearance-embed-bg) !important;
  --bar-bg: var(--appearance-bar-bg) !important;
  --card-border: var(--appearance-card-border) !important;
  --bar-border: var(--appearance-card-border) !important;
  --embed-border: var(--appearance-card-border) !important;
  --fg: var(--appearance-fg) !important;
  --fg-muted: var(--appearance-fg-muted) !important;
  --fg-dim: var(--appearance-fg-dim) !important;
  --accent: var(--appearance-accent) !important;
  --link: var(--appearance-link) !important;
  --mention: var(--appearance-link) !important;
  background: var(--page-bg) !important;
  color: var(--fg);
}
html[data-appearance-active] body .card .embed,
html[data-appearance-active] body .card.fomo-event .fomo-trans {
  background: var(--embed-bg); border-color: var(--embed-border); color: var(--fg-muted);
}
html[data-appearance-active] body .card .header .name,
html[data-appearance-active] body .card .target-name { color: var(--fg); }
html[data-appearance-active] body .card :is(.handle, .time, .meta, .fomo-handle, .fomo-chain) { color: var(--fg-dim); }
html[data-appearance-active] body .card :is(a.text-link, a.mention-link) { color: var(--link); }
html[data-appearance-active] body #interface-menu-pop { background: var(--card-bg); color: var(--fg); border-color: var(--card-border); }
html[data-appearance-active] body .feed-col { border-color: var(--card-border); }
html[data-appearance-active] body #top-actions-bar .top-config-btn:not(.active):not(.wallet-connected):not(.off):not(.danger):not([aria-pressed="true"]) {
  background: var(--card-bg) !important; color: var(--fg) !important; border-color: var(--card-border) !important;
}

html[data-reader-font="system"] :is(body, .card, .card .body, .card .em-body, button, input, select, textarea, .appearance-reader-sample) {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei UI", sans-serif !important;
}
html[data-reader-font="mono"] :is(body, .card, .card .body, .card .em-body, button, input, select, textarea, .appearance-reader-sample) {
  font-family: "Cascadia Mono", Consolas, "Microsoft YaHei UI", "PingFang SC", monospace !important;
}
html[data-reader-scale] .card .body { font-size: calc(17px * var(--reader-scale)) !important; }
html[data-reader-scale] .card :is(.body .translation, .em-body) { font-size: calc(15px * var(--reader-scale)) !important; }
html[data-reader-scale] .card :is(.em-body .translation, .fomo-post, .wechat-text, .pump-callout-body) { font-size: calc(14px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .fomo-trans { font-size: calc(13px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .fomo-name { font-size: calc(15px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .handle { font-size: calc(13px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .time { font-size: calc(14px * var(--reader-scale)) !important; }
html[data-reader-scale] .card :is(.fomo-handle, .fomo-chain) { font-size: max(11px, calc(12px * var(--reader-scale))) !important; }
html[data-reader-scale] .card :is(.fomo-ca, .fomo-stats, .fomo-followers) { font-size: max(10px, calc(11px * var(--reader-scale))) !important; }
html[data-reader-scale] .card :is(.fomo-age, .fomo-lat) { font-size: max(10px, calc(10px * var(--reader-scale))) !important; }
html[data-reader-scale] .card .fomo-symbol { font-size: calc(16px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .fomo-usd { font-size: calc(18px * var(--reader-scale)) !important; }
html[data-reader-scale] .card .fomo-mc { font-size: calc(16px * var(--reader-scale)) !important; }
html[data-reader-line="compact"] { --reader-line: 1.35; }
html[data-reader-line="relaxed"] { --reader-line: 1.8; }
html[data-reader-line]:not([data-reader-line="default"]) .card :is(.body, .translation, .em-body, .fomo-post, .fomo-trans, .wechat-text, .pump-callout-body),
html[data-reader-line]:not([data-reader-line="default"]) .appearance-sample-text { line-height: var(--reader-line) !important; }
@media (max-width: 560px) {
  html[data-reader-scale] .card .body { font-size: calc(16px * var(--reader-scale)) !important; }
  html[data-reader-scale] .card .embed .em-body { font-size: calc(14px * var(--reader-scale)) !important; }
  html[data-reader-scale] .card .em-body .translation { font-size: calc(13px * var(--reader-scale)) !important; }
}
html[data-reader-scale][data-ui-mode="terminal"]:not([data-theme="light"]) main#feed .card .body { font-size: calc(15.5px * var(--reader-scale)) !important; }

.appearance-launch { padding: 7px 10px; border: 1px solid var(--card-border); border-radius: 6px; background: var(--embed-bg); color: var(--fg); cursor: pointer; font: inherit; font-size: 12px; font-weight: 600; line-height: 1.4; }
.appearance-dialog {
  width: min(392px, calc(100vw - 24px)); height: min(840px, calc(100dvh - 24px)); max-height: calc(100dvh - 24px);
  position: fixed; inset: 12px 12px auto auto; margin: 0; padding: 0;
  border: 1px solid var(--appearance-card-border); border-radius: 14px;
  background: var(--appearance-card-bg); color: var(--appearance-fg);
  box-shadow: 0 20px 70px rgba(0,0,0,.3); overflow: hidden; font-size: 13px;
  -webkit-app-region: no-drag; app-region: no-drag;
}
.appearance-dialog[open] { display: flex; flex-direction: column; animation: appearance-enter .14s ease-out; }
.appearance-dialog::backdrop { background: rgba(8,12,20,.36); }
.appearance-dialog *, .appearance-dialog *::before, .appearance-dialog *::after { box-sizing: border-box; }
.appearance-dialog button, .appearance-dialog input, .appearance-dialog select { font-family: inherit; }
.appearance-dialog button { cursor: pointer; }
.appearance-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 18px 14px; border-bottom: 1px solid var(--appearance-card-border); flex: 0 0 auto; }
.appearance-head h2 { margin: 0; font-size: 16px; line-height: 1.4; font-weight: 700; }
.appearance-close { border: 0; background: transparent; color: var(--appearance-fg-muted); width: 28px; height: 28px; font-size: 24px; line-height: 1; border-radius: 5px; }
.appearance-close:hover { background: var(--appearance-embed-bg); color: var(--appearance-fg); }
.appearance-content { overflow-y: auto; overscroll-behavior: contain; padding: 12px 18px 18px; min-height: 0; scrollbar-width: thin; scrollbar-color: var(--appearance-card-border) transparent; }
.appearance-hint { color: var(--appearance-fg-muted); font-size: 11px; line-height: 1.6; margin: 0 0 14px; }
.appearance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 12px; margin-bottom: 23px; }
.appearance-preset { padding: 0; min-width: 0; background: none; border: 0; color: var(--appearance-fg-muted); text-align: center; font-size: 12px; }
.appearance-swatch { display: flex; align-items: center; gap: 10px; height: 49px; padding: 11px; border: 1px solid var(--appearance-card-border); border-radius: 10px; background: var(--sample-card-bg); transition: border-color .12s ease, box-shadow .12s ease; }
.appearance-swatch-dot { flex: 0 0 19px; width: 19px; height: 19px; border-radius: 50%; background: var(--sample-accent); }
.appearance-swatch-lines { flex: 1; min-width: 0; display: grid; grid-template-columns: 1.2fr 1fr .8fr; gap: 5px 4px; }
.appearance-swatch-lines i { height: 5px; border-radius: 3px; background: var(--sample-fg-dim); }
.appearance-swatch-lines .main { background: var(--sample-fg); }
.appearance-swatch-lines .buy { background: #36ba82; }
.appearance-swatch-lines .sell { background: #ed617a; }
.appearance-swatch-lines .accent { background: var(--sample-accent); }
.appearance-swatch-lines .muted { opacity: .4; }
.appearance-preset-name { display: block; margin-top: 7px; line-height: 1.4; }
.appearance-preset[aria-pressed="true"] { color: var(--appearance-fg); font-weight: 700; }
.appearance-preset[aria-pressed="true"] .appearance-swatch { border-color: var(--appearance-accent); box-shadow: 0 0 0 1px var(--appearance-accent); }
.appearance-preset[aria-pressed="true"] .appearance-preset-name::before { content: "✓ "; }
.appearance-preset:hover .appearance-swatch { border-color: var(--appearance-fg-dim); }
.appearance-dialog :is(button, input, select):focus-visible { outline: 2px solid var(--appearance-accent); outline-offset: 3px; }
.appearance-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0; min-height: 32px; }
.appearance-row[hidden] { display: none; }
.appearance-row label { font-weight: 600; flex: 0 0 auto; }
.appearance-row select { max-width: 194px; min-width: 138px; padding: 8px 26px 8px 10px; background: var(--appearance-embed-bg); color: var(--appearance-fg); border: 1px solid var(--appearance-card-border); border-radius: 7px; font-size: 12px; }
.appearance-size-row { border-block: 1px solid var(--appearance-card-border); padding: 2px 0 5px; margin: 17px 0; }
.appearance-size-row output { font-variant-numeric: tabular-nums; color: var(--appearance-fg); font-weight: 600; }
.appearance-size-row input { width: 100%; margin: 2px 0 9px; accent-color: var(--appearance-accent); cursor: pointer; }
.appearance-size-row .appearance-hint { margin-bottom: 6px; }
.appearance-color-fields { display: inline-flex; align-items: center; gap: 9px; }
.appearance-color-value { color: var(--appearance-fg-muted); font: 11px ui-monospace, Consolas, monospace; }
.appearance-accent-row input { width: 34px; height: 29px; padding: 2px; border: 1px solid var(--appearance-card-border); border-radius: 5px; background: var(--appearance-embed-bg); cursor: pointer; }
.appearance-status { min-height: 0; font-size: 11px; line-height: 1.55; color: var(--appearance-fg-muted); margin: 9px 0; }
.appearance-status:empty { display: none; }
.appearance-reader-sample { background: var(--appearance-embed-bg); border: 1px solid var(--appearance-card-border); border-radius: 9px; padding: 13px; margin-top: 18px; overflow-wrap: anywhere; }
.appearance-reader-sample b { font-size: 10px; color: var(--appearance-fg-muted); letter-spacing: .08em; }
.appearance-reader-sample p { margin: 8px 0; font-size: calc(15px * var(--reader-scale, 1)); line-height: 1.5; }
.appearance-reader-sample small { font-size: 10px; color: var(--appearance-fg-muted); line-height: 1.5; }
.appearance-foot { flex: 0 0 auto; display: flex; justify-content: flex-end; gap: 9px; padding: 13px 18px; border-top: 1px solid var(--appearance-card-border); background: var(--appearance-card-bg); }
.appearance-foot button { min-width: 72px; padding: 8px 16px; border-radius: 7px; font-size: 12px; font-weight: 700; line-height: 1.5; }
.appearance-reset { border: 1px solid var(--appearance-card-border); color: var(--appearance-fg-muted); background: var(--appearance-embed-bg); }
.appearance-done { border: 1px solid transparent; color: var(--appearance-on-accent); background: var(--appearance-accent); }
@keyframes appearance-enter { from { opacity: 0; transform: translateX(8px); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .appearance-dialog[open] { animation: none; } .appearance-swatch { transition: none; } }
@media (max-width: 420px) {
  .appearance-dialog { inset: 8px; width: calc(100vw - 16px); height: calc(100dvh - 16px); max-height: calc(100dvh - 16px); }
  .appearance-content { padding-inline: 14px; }
}

/* Unified directory / FOMO profit snapshots — directory-profits-20260907c */
.directory-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0 0 12px; }
.directory-tabs { display:flex; flex-wrap:wrap; gap:6px; margin:0 0 10px; }
.directory-tab { display:inline-flex; align-items:center; gap:7px; padding:8px 12px; border:1px solid var(--border,#303746); border-radius:7px; background:var(--card-bg,#151922); color:var(--fg-dim,#b1bbcc); font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.directory-tab:hover { color:var(--fg,#edf2fa); border-color:var(--accent,#93b4fc); }
.directory-tab.active { color:var(--accent,#93b4fc); border-color:var(--accent,#93b4fc); background:color-mix(in srgb,var(--accent,#93b4fc) 12%,var(--card-bg,#151922)); box-shadow:inset 0 -2px 0 var(--accent,#93b4fc); }
.directory-tab-count { color:var(--fg-dim,#b1bbcc); font-size:11px; font-weight:500; font-variant-numeric:tabular-nums; }
html[data-theme="light"] .directory-tab { color:#475569; }
html[data-theme="light"] .directory-tab.active { color:#1d4ed8; border-color:#1d4ed8; box-shadow:inset 0 -2px 0 #1d4ed8; }
html[data-theme="light"] .directory-tab-count { color:#475569; }
.directory-import { padding:9px 0; }
.directory-import summary { cursor:pointer; font-weight:700; margin-bottom:8px; }
.directory-account { display:flex; align-items:center; gap:12px; padding:13px 12px; border:1px solid var(--border,#303746); border-radius:10px; background:var(--card-bg,#151922); }
.directory-account-main { flex:1; min-width:0; }
.directory-identity { display:flex; align-items:center; gap:9px; border:0; padding:0; color:inherit; background:transparent; font:inherit; font-weight:700; text-align:left; max-width:100%; }
button.directory-identity { cursor:pointer; }
.directory-identity span:not(.uc-tg-av) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.directory-identity .uc-tg-av { flex:none; }
.directory-account-meta { display:flex; flex-wrap:wrap; align-items:center; gap:4px 9px; padding-left:41px; color:var(--fg-dim,#b1bbcc); font-size:12px; }
.directory-account-meta span { max-width:100%; overflow:hidden; text-overflow:ellipsis; }
.directory-platform { color:var(--accent,#93b4fc); font-weight:700; }
.directory-account-desc { padding:5px 0 0 41px; color:var(--fg-dim,#b1bbcc); font-size:12px; line-height:1.5; white-space:pre-line; overflow-wrap:anywhere; max-height:4.5em; overflow:hidden; }
.directory-account-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:7px; flex:none; }
.directory-account-actions button { white-space:nowrap; }
.directory-account button:focus-visible, .directory-tab:focus-visible, .directory-import summary:focus-visible { outline:2px solid var(--accent,#93b4fc); outline-offset:3px; }
.fomo-profit-section { margin:0 0 20px; }
.fomo-profile-dialog:has(.fomo-profit-section) { width:min(920px,calc(100vw - 24px)); }
.fomo-profit-note, .fomo-profit-status { color:var(--fg-dim,#b1bbcc); font-size:11px; line-height:1.6; margin-bottom:8px; }
.fomo-profit-status { color:#e8bb63; }
.fomo-profit-grid { display:grid; grid-template-columns:repeat(5,minmax(148px,1fr)); gap:8px; overflow-x:auto; padding:2px 0 8px; }
.fomo-profit-card { display:flex; flex-direction:column; gap:6px; padding:11px; border-radius:9px; background:var(--card-bg,#191e29); border:1px solid var(--border,#303746); min-width:0; }
.fomo-profit-rank { align-self:flex-start; color:var(--fg-dim,#b1bbcc); font-size:10px; font-weight:700; }
.fomo-profit-card:first-child .fomo-profit-rank { color:#f3c642; }
.fomo-profit-token { display:flex; align-items:center; gap:6px; min-width:0; font-size:12px; }
.fomo-profit-token b { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fomo-profit-token img, .fomo-profit-icon { width:20px; height:20px; border-radius:50%; object-fit:cover; flex:none; }
.fomo-profit-icon { display:grid; place-items:center; background:var(--border,#354154); font-size:11px; }
.fomo-profit-card strong { color:#42dc8e; font-size:14px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.fomo-profit-percent { color:var(--fg-dim,#b1bbcc); font-size:11px; font-variant-numeric:tabular-nums; }
html[data-theme="light"] .directory-account, html[data-theme="light"] .fomo-profit-card { background:var(--appearance-card,#f5f7fb); border-color:#c8d2e1; }
html[data-theme="light"] .directory-account-meta, html[data-theme="light"] .directory-account-desc,
html[data-theme="light"] .fomo-profit-note, html[data-theme="light"] .fomo-profit-percent,
html[data-theme="light"] .fomo-profit-rank { color:#475569; }
html[data-theme="light"] .directory-platform { color:#1d4ed8; }
html[data-theme="light"] .fomo-profit-card strong { color:#08773e; }
html[data-theme="light"] .fomo-profit-status, html[data-theme="light"] .fomo-profit-card:first-child .fomo-profit-rank { color:#805400; }
@media (max-width:560px) {
  .directory-account { align-items:flex-start; flex-wrap:wrap; padding:11px; }
  .directory-account-main { min-width:100%; }
  .directory-account-actions { width:100%; justify-content:flex-end; }
  .directory-account-meta, .directory-account-desc { padding-left:0; padding-top:7px; }
  .fomo-profit-grid { grid-template-columns:repeat(5,160px); }
  .fomo-profit-section .fomo-profile-section-head { flex-wrap:wrap; gap:4px; }
}

/* Crowd entry alerts share the existing arrival stack, not a competing overlay. */
#arrival-popup-host.monitor-alert-host { position:fixed;top:60px;right:16px;z-index:9500;display:flex;flex-direction:column;gap:9px;pointer-events:none;width:min(330px,calc(100vw - 24px));max-width:330px;max-height:calc(100dvh - 90px);overflow-y:auto;scrollbar-width:thin; }
.crowd-entry-popup { position:relative;flex-shrink:0;pointer-events:auto;background:var(--card-bg,#121214);color:var(--fg,#f0f0f4);border:1px solid var(--card-border,#2a2a30);border-left:3px solid var(--accent,#daa528);border-radius:12px;box-shadow:0 10px 30px #0003;animation:crowd-entry-in .24s ease-out; }
.crowd-entry-popup-main { display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;border:0;background:none;color:inherit;padding:12px 32px 12px 14px;cursor:pointer;font:inherit; }
.crowd-entry-popup-main strong { font-size:13px;line-height:1.5;overflow-wrap:anywhere; }
.crowd-entry-eyebrow { display:flex;gap:12px;align-items:center;color:var(--accent,#daa528);font-size:11px;font-weight:700; }
.crowd-entry-eyebrow span,.crowd-entry-popup-meta { color:var(--fg-dim,#8a8a92);font-size:11px;font-weight:400; }
.crowd-entry-dismiss { position:absolute;right:3px;top:5px;width:28px;height:28px;border:0;background:none;color:var(--fg-dim,#8a8a92);cursor:pointer;font-size:18px; }
.crowd-entry-popup button:focus-visible,.crowd-entry-panel button:focus-visible { outline:2px solid var(--accent,#daa528);outline-offset:2px; }
.crowd-entry-fields { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0; }
.crowd-entry-fields label { display:flex;flex-direction:column;gap:5px;font-size:12px;min-width:0; }
.crowd-entry-fields input,.crowd-entry-fields select { width:100%;min-width:0;box-sizing:border-box; }
.crowd-entry-mode { grid-column:1 / -1; }
.crowd-entry-overlay { position:fixed;inset:0;z-index:100020;display:flex;align-items:center;justify-content:center;background:#0008;padding:16px; }
.crowd-entry-panel { width:640px;max-width:100%;max-height:85dvh;display:flex;flex-direction:column;background:var(--card-bg,#121214);color:var(--fg,#f0f0f4);border:1px solid var(--card-border,#2a2a30);border-radius:14px;box-shadow:0 20px 60px #0005;overflow:hidden;animation:crowd-entry-in .18s ease-out; }
.crowd-entry-panel header { display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--card-border,#2a2a30); }
.crowd-entry-panel h2 { font-size:16px;margin:0;line-height:1.5;overflow-wrap:anywhere; }
.crowd-entry-panel header button { background:none;border:0;font-size:24px;color:var(--fg-dim,#8a8a92);cursor:pointer; }
.crowd-entry-body { padding:16px 18px;overflow:auto;overscroll-behavior:contain; }
.crowd-entry-meta,.crowd-entry-note { font-size:12px;line-height:1.6;color:var(--fg-dim,#8a8a92); }
.crowd-entry-ca { display:flex;gap:8px;align-items:center;margin:10px 0; }
.crowd-entry-ca code { font-size:11px;overflow-wrap:anywhere;flex:1;min-width:0; }
.crowd-entry-ca button { white-space:nowrap; }
.crowd-entry-total { padding:10px 0;font-size:12px; }
.crowd-entry-member { display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--card-border,#2a2a30); }
.crowd-entry-person { display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:none;border:0;color:inherit;cursor:pointer;text-align:left;padding:0;font:inherit; }
.crowd-entry-person>span:last-child { min-width:0; }
.crowd-entry-person b { display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.crowd-entry-person small { display:block;max-width:270px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:var(--fg-dim,#8a8a92);margin-top:4px; }
.crowd-entry-avatar { position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--card-border,#2a2a30);overflow:hidden; }
.crowd-entry-avatar img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
.crowd-entry-member-trade { flex-shrink:0;text-align:right;font-size:13px; }
.crowd-entry-member-trade small { display:block;font-size:11px;color:var(--fg-dim,#8a8a92);margin-top:4px; }
.crowd-entry-recent button { display:flex;flex-direction:column;gap:7px;background:none;color:inherit;border:0;border-bottom:1px solid var(--card-border,#2a2a30);width:100%;padding:13px 0;text-align:left;cursor:pointer; }
.crowd-entry-recent small { color:var(--fg-dim,#8a8a92); }
@keyframes crowd-entry-in { from { opacity:0;transform:translateY(-5px); } to { opacity:1;transform:translateY(0); } }
@media (max-width:480px) { #arrival-popup-host.monitor-alert-host { right:12px; } .crowd-entry-overlay { padding:10px; } .crowd-entry-body { padding:12px; } .crowd-entry-member { gap:6px; } .crowd-entry-person small { max-width:140px; } .crowd-entry-member-trade small { font-size:10px; } }
@media (prefers-reduced-motion:reduce) { .crowd-entry-popup,.crowd-entry-panel { animation:none; } }

/* crowd-faces-20260907a: compact token and buyer identity, shared alert host. */
.crowd-entry-token-line { display:flex;align-items:center;gap:10px;margin:2px 0;min-width:0; }
.crowd-entry-token-avatar { position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;overflow:hidden;border-radius:10px;background:var(--card-border,#303642);color:var(--fg,#eef2f8);font-size:17px;font-weight:700; }
.crowd-entry-token-avatar img,.crowd-entry-face img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
.crowd-entry-token-copy { display:flex;flex-direction:column;gap:3px;min-width:0; }
.crowd-entry-popup .crowd-entry-token-copy strong { display:block;margin:0;font-size:14px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.crowd-entry-popup-count { display:block;font-size:12px;line-height:1.4;color:var(--fg,#edf2fa); }
.crowd-entry-buyers { display:flex;align-items:center;gap:8px;margin:0;min-width:0; }
.crowd-entry-faces { display:flex;align-items:center;flex-shrink:0;padding-left:3px; }
.crowd-entry-face,.crowd-entry-face-more { position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px;margin-left:-3px;overflow:hidden;border-radius:50%;border:2px solid var(--card-bg,#121214);background:var(--card-border,#303642);color:var(--fg,#edf2fa);font-size:11px;font-weight:650;box-sizing:content-box; }
.crowd-entry-face-more { min-width:26px;width:auto;padding:0 3px;flex-basis:auto; }
.crowd-entry-buyers-label { font-size:11px;color:var(--fg-dim,#939bab);white-space:nowrap; }
.crowd-entry-detail-token { display:flex;align-items:center;gap:10px;margin:0 0 12px; }
.crowd-entry-detail-token strong { font-size:16px;line-height:1.5;overflow-wrap:anywhere; }
.crowd-entry-popup-main:focus-visible { outline:2px solid var(--accent,#e6b93f);outline-offset:-3px;border-radius:10px; }
@media (max-width:380px) { .crowd-entry-face,.crowd-entry-face-more { width:23px;height:23px;flex-basis:23px; } .crowd-entry-face-more { min-width:23px;flex-basis:auto;width:auto; } }

/* X push CA palette only; other feeds retain their original CA styles. */
.card[data-source="twitter"] .token-ca-highlight,
body.theme-light .card[data-source="twitter"] .token-ca-highlight,
.ca-highlight-preview {
  color: var(--ca-highlight-text, #000000) !important;
  background: var(--ca-highlight-color, #facc15) !important;
  border-color: var(--ca-highlight-color, #facc15) !important;
}
.ca-highlight-preview { padding: 2px 6px; border-radius: 4px; }
#uc-ca-highlight-color { width: 52px; min-width: 52px; height: 32px; flex: none; padding: 2px; cursor: pointer; }
.ca-token-meta { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; vertical-align: middle; margin: 1px 4px; padding: 2px 5px; border: 1px solid var(--card-border, #454550); border-radius: 5px; color: var(--fg, #eee); background: var(--card-bg, #18181c); font-size: .85em; line-height: 1.35; }
.ca-token-meta img { width: 18px; height: 18px; border-radius: 50%; object-fit: cover; flex: none; }
.ca-token-meta b, .ca-token-name { overflow-wrap: anywhere; min-width: 0; }
.ca-token-name { font-size: .92em; }

/* Shared, static rank frames: decorate portraits, never token images or whole cards. */
.fomo-ranked { position:relative; overflow:visible !important; --rank-color:#94a3b8; box-shadow:0 0 0 2px var(--rank-color); }
.fomo-ranked[data-rank-board="all"] { --rank-color:#facc15; }
.fomo-ranked[data-rank-board="30d"] { --rank-color:#a78bfa; }
.fomo-ranked[data-rank-board="7d"] { --rank-color:#60a5fa; }
.fomo-ranked[data-rank-board="24h"] { --rank-color:#2dd4bf; }
.fomo-ranked[data-rank-board="common"] { --rank-color:#94a3b8; }
.fomo-rank-shell { display:inline-flex; position:relative; flex-shrink:0; border-radius:50%; vertical-align:middle; }
.fomo-rank-shell > img { display:block; position:static !important; width:100% !important; height:100% !important; min-width:0 !important; margin:0 !important; border-radius:inherit; object-fit:cover; box-shadow:none !important; }
.fomo-ranked > img { border-radius:inherit; }
.fomo-rank-badge { position:absolute; left:50%; bottom:-5px; transform:translateX(-50%); z-index:2; min-width:24px; box-sizing:border-box; padding:1px 3px; border:1px solid var(--rank-color); border-radius:4px; background:#101318; color:var(--rank-color); font:800 9px/10px ui-monospace,monospace; text-align:center; white-space:nowrap; pointer-events:none; }
.fomo-rank-clickable { cursor:pointer; }
.fomo-rank-clickable:focus-visible { outline:2px solid var(--fg,#fff); outline-offset:5px; }
.crowd-entry-faces { overflow:visible; padding-bottom:6px; gap:5px; }
.crowd-entry-face.fomo-ranked { margin-right:4px; }
.crowd-entry-face .fomo-rank-badge { min-width:19px; padding:0 1px; font-size:8px; line-height:9px; bottom:-5px; }
.ca-history-panel h3 { margin:0 0 8px; }
.ca-history-form { display:flex; gap:10px; align-items:flex-end; margin:18px 0; }
.ca-history-input { flex:1; min-width:0; display:grid; gap:6px; font-size:12px; }
.ca-history-input input { box-sizing:border-box; width:100%; min-height:36px; padding:8px 10px; background:var(--embed-bg,#151820); color:var(--fg,#e5e7eb); border:1px solid var(--card-border,#343b48); border-radius:6px; }
.ca-history-form > button { min-height:36px; padding:6px 18px; }
.ca-history-summary,.ca-history-tools,.ca-history-pages { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:12px 0; font-size:12px; }
.ca-history-summary strong { font-size:16px; }
.ca-history-token { width:28px; height:28px; border-radius:50%; object-fit:cover; }
.ca-history-address { display:block; overflow-wrap:anywhere; color:var(--fg,#e5e7eb); font-size:12px; }
.ca-history-tools { justify-content:space-between; }
.ca-history-tools select { margin-left:6px; color:var(--fg,#e5e7eb); background:var(--embed-bg,#151820); border:1px solid var(--card-border,#343b48); border-radius:5px; padding:4px; }
.ca-history-list { border-top:1px solid var(--card-border,#343b48); }
.ca-history-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 0; border-bottom:1px solid var(--card-border,#343b48); }
.ca-history-person { display:flex; align-items:center; gap:12px; min-width:0; max-width:65%; border:0; background:none; color:inherit; padding:0; text-align:left; cursor:pointer; }
.ca-history-person > span:last-child { min-width:0; }
.ca-history-person b,.ca-history-person small { display:block; overflow-wrap:anywhere; }
.ca-history-avatar { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:50%; flex:0 0 32px; background:var(--embed-bg,#252936); }
.ca-history-avatar img { width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.ca-history-person small,.ca-history-trade small,.ca-history-coverage { color:var(--fg-dim,#9ca3af); font-size:11px; line-height:1.55; }
.ca-history-trade { text-align:right; min-width:135px; font-size:12px; }
.ca-history-trade b,.ca-history-trade small,.ca-history-trade a { display:block; }
.ca-history-trade a { color:var(--link,#60a5fa); font-size:11px; }
.ca-history-pages { justify-content:center; }
.ca-history-warning { color:#fbbf24; font-size:12px; }
body.theme-light .ca-history-warning,html[data-theme="light"] .ca-history-warning { color:#92400e; }
@media (max-width:540px) { .ca-history-row { align-items:flex-start; } .ca-history-person { max-width:58%; } .ca-history-trade { min-width:105px; } }

.push-account-popover { position:absolute; z-index:12010; box-sizing:border-box; width:300px; max-width:calc(100vw - 20px); padding:14px; border:1px solid var(--card-border,#343b48); border-radius:10px; background:var(--card-bg,#121214); color:var(--fg,#e5e7eb); box-shadow:0 10px 30px rgba(0,0,0,.3); font-size:13px; line-height:1.5; }
.push-account-popover header { display:flex; align-items:center; gap:10px; justify-content:space-between; }
.push-account-popover header strong { overflow-wrap:anywhere; }
.push-account-popover header button { padding:0 5px; font-size:20px; color:var(--fg-dim,#9ca3af); background:transparent; border:0; cursor:pointer; }
.push-account-popover p { margin:7px 0 12px; color:var(--fg-dim,#9ca3af); font-size:11px; }
.push-favorite { display:flex; align-items:center; gap:7px; margin-bottom:12px; cursor:pointer; }
.push-account-links { display:flex; gap:7px; flex-wrap:wrap; }
.push-account-popover footer { display:flex; justify-content:flex-end; margin-top:12px; }
.push-account-popover [data-push-error] { color:#f87171; font-size:12px; margin-top:6px; }
.push-account-settings-button { padding:1px 6px; border:1px solid var(--card-border,#343b48); border-radius:4px; background:transparent; color:var(--fg-dim,#9ca3af); font:inherit; font-size:10px; cursor:pointer; margin-left:auto; }
.push-account-settings-button:hover,.push-account-settings-button:focus-visible { color:var(--fg,#e5e7eb); border-color:var(--fg-dim,#9ca3af); }
.push-settings-footer { display:flex; justify-content:flex-end; grid-column:1 / -1; margin-top:5px; padding-right:18px; }
body.theme-light .push-account-popover [data-push-error],html[data-theme="light"] .push-account-popover [data-push-error] { color:#b42318; }

/* Avatar settings reuse the existing complete form, not a second-stage menu. */
.unified-account-popover { box-sizing:border-box; min-width:min(290px, calc(100vw - 16px)) !important; max-width:calc(100vw - 16px) !important; max-height:calc(100vh - 16px); overflow-y:auto; border-radius:12px; }
.unified-account-popover > :first-child { padding-right:22px; }
.account-settings-close { position:absolute; top:9px; right:9px; border:0; background:transparent; color:var(--fg-dim,#8a8a92); font-size:20px; line-height:24px; width:24px; cursor:pointer; }
.account-settings-close:hover { color:var(--fg,#f0f0f4); }
.account-profile-actions { margin:0 0 10px; }
.account-special-follow { display:flex; align-items:center; gap:6px; margin-bottom:10px; cursor:pointer; }

/* Persistent visual emphasis; independent of favorites, new-event highlights and trade alerts. */
.card.fomo-event.fomo-large-transfer {
  --large-transfer-fg:#7dd3fc;
  --large-transfer-border:rgba(56,189,248,.65);
  --large-transfer-tint:rgba(14,165,233,.13);
  border:1px solid var(--large-transfer-border);
  border-left-width:4px;
  background:linear-gradient(120deg,var(--large-transfer-tint),transparent 75%),var(--card-bg,#121214);
}
.card.fomo-event.fomo-large-transfer .fomo-large-transfer-notice {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap;
  gap:4px 10px; margin-bottom:10px; padding:6px 9px; border-radius:6px;
  background:var(--large-transfer-tint); color:var(--large-transfer-fg); line-height:1.4;
}
.fomo-large-transfer-notice strong { font-size:12px; font-weight:800; }
.fomo-large-transfer-notice span { font-size:11px; font-variant-numeric:tabular-nums; }
body.theme-light .card.fomo-event.fomo-large-transfer,
html[data-theme="light"] .card.fomo-event.fomo-large-transfer {
  --large-transfer-fg:#075985;
  --large-transfer-border:#0284c7;
  --large-transfer-tint:rgba(14,165,233,.09);
}

/* Shared shortcuts to the original interface settings. */
.uc-interface-controls { display:grid; gap:8px; }
.uc-interface-settings .uc-interface-control {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  width:100%; padding:9px 10px; text-align:left; white-space:normal;
}
.uc-interface-control strong { flex-shrink:0; font-size:inherit; color:var(--accent); }
.uc-interface-control:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }

/* Token history: same compact actions, with complete recorded opinion text. */
.token-history-btn { font-family:inherit; cursor:pointer; }
.ca-history-row { flex-wrap:wrap; }
.ca-history-comment { flex:1 0 100%; margin:0; white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.6; color:var(--fg,#e5e7eb); background:var(--embed-bg,#151820); padding:10px; border-radius:6px; box-sizing:border-box; }
.ca-history-type { display:inline-block; margin-bottom:4px; font-size:11px; color:var(--fg,#e5e7eb); }

.ca-history-local { flex:1 0 100%; padding:10px; box-sizing:border-box; border-left:2px solid var(--link,#60a5fa); background:var(--embed-bg,#151820); border-radius:4px; color:var(--fg,#e5e7eb); }
.ca-history-local[hidden] { display:none; }
.ca-history-local small { color:var(--fg-dim,#9ca3af); font-size:11px; }
.ca-history-local p { margin:4px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.6; }
.ca-history-local-status:empty { display:none; }

/* Concentrated entry snapshots use the existing theme and ranked-avatar preview. */
/* 独立事件不使用推文的头像/正文命名网格，正文和底部操作占满整张卡。 */
.card.crowd-entry-card { display:block; border-left:3px solid var(--accent,#daa528); padding:0; }
.crowd-entry-card .crowd-entry-buyers { flex-wrap:wrap; }
.crowd-entry-card .crowd-entry-faces { max-width:100%; flex-wrap:wrap; row-gap:8px; }
.crowd-entry-card .crowd-entry-popup-main { padding:14px; }
.crowd-entry-card .crowd-entry-token-copy strong { display:block;font-size:15px;line-height:1.4;overflow-wrap:anywhere; }
.crowd-entry-card-footer { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px 12px; }
.crowd-entry-card-footer time { color:var(--fg-dim,#8a8a92);font-size:11px; }
.crowd-entry-feed-setting { display:flex;align-items:center;gap:6px;margin:8px 0 12px; }

/* User-specific FOMO/Pump chain switches; never change global card layout. */
.push-chain-settings { min-width: 0; }
.push-chain-settings .push-chain-group { min-width: 0; margin: 12px 0 0; padding: 10px 12px; border: 1px solid var(--card-border, #303641); border-radius: 8px; }
.push-chain-settings .push-chain-group legend { padding: 0 5px; font-weight: 700; color: var(--fg, #e2e7ef); font-size: 12px; }
.push-chain-settings .push-chain-options { display: flex; flex-wrap: wrap; gap: 8px; }
.push-chain-settings .push-chain-option { display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; margin: 0; border: 1px solid var(--card-border, #303641); border-radius: 6px; cursor: pointer; font-size: 12px; line-height: 1.4; color: var(--fg, #e2e7ef); }
.push-chain-settings .push-chain-option:has(input:checked) { background: color-mix(in srgb, var(--accent, #daa528) 12%, transparent); border-color: var(--accent, #daa528); }
.push-chain-settings .push-chain-option:focus-within { outline: 2px solid var(--accent, #daa528); outline-offset: 2px; }
.push-chain-settings .push-chain-option input { width: 14px; height: 14px; margin: 0; accent-color: var(--accent, #daa528); flex: none; }
.push-chain-settings .push-chain-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }
.push-chain-settings .push-chain-actions button { padding: 4px 9px; border: 1px solid var(--card-border, #303641); border-radius: 6px; background: transparent; color: var(--fg, #e2e7ef); font: inherit; font-size: 11px; line-height: 1.4; cursor: pointer; }
.push-chain-settings .push-chain-actions button:hover { border-color: var(--accent, #daa528); }
.push-chain-settings .push-chain-status { margin: 12px 0 0; }
.push-chain-settings.push-chain-compact { margin: 10px 0; border-top: 1px solid var(--card-border, #303641); padding-top: 10px; }
.push-chain-settings.push-chain-compact summary { cursor: pointer; font-size: 12px; font-weight: 700; }
.push-chain-settings.push-chain-compact .uc-muted { font-size: 11px; line-height: 1.5; }

/* Curated X account packs. Scoped to the directory, not feed cards. */
.xfp-section { border: 1px solid var(--card-border,#303847); border-radius: 10px; margin: 12px 0; background: var(--card-bg,#11141b); color: var(--fg,#e5e7eb); }
.xfp-section > details > summary { list-style: none; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; padding: 14px; cursor: pointer; }
.xfp-section > details > summary::-webkit-details-marker { display:none; }
.xfp-summary-sub { color: var(--fg-dim,#9ca3af); margin-left: 12px; font-size: 12px; }
.xfp-summary-action,.xfp-evidence a { color: var(--accent,#daa528); font-size: 11px; }
.xfp-section details[open] > summary .xfp-summary-action { font-size: 0; }
.xfp-section details[open] > summary .xfp-summary-action::after { content: "收起"; font-size: 11px; }
.xfp-body { padding: 0 14px 14px; border-top: 1px solid var(--card-border,#303847); }
.xfp-intro { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin: 16px 0; }
.xfp-intro h3 { font-size: 16px; margin: 0 0 6px; }
.xfp-intro p,.xfp-person p { margin: 4px 0; line-height: 1.55; font-size: 12px; }
.xfp-muted { color: var(--fg-dim,#9ca3af); font-size: 12px; line-height: 1.55; }
.xfp-section button,.xfp-section input:not([type=checkbox]),.xfp-section select { font: inherit; font-size: 12px; border: 1px solid var(--card-border,#303847); border-radius: 6px; background: var(--embed-bg,#171b24); color: var(--fg,#e5e7eb); padding: 7px 9px; box-sizing: border-box; }
.xfp-section button { cursor: pointer; flex: none; }
.xfp-section button:hover { border-color: var(--accent,#daa528); }
.xfp-section button:disabled { opacity: .5; cursor: not-allowed; }
.xfp-section input[type=checkbox] { margin: 0; width: 15px; height: 15px; accent-color: var(--accent,#daa528); flex: none; }
.xfp-controls,.xfp-filter,.xfp-footer { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 12px 0; }
.xfp-controls label { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.xfp-controls input:not([type=checkbox]) { width: 160px; }
.xfp-filter input { flex: 1 1 160px; min-width: 120px; }
.xfp-list { max-height: 440px; overflow: auto; overscroll-behavior: contain; border: 1px solid var(--card-border,#303847); border-radius: 8px; }
.xfp-row { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; align-items: start; gap: 10px; padding: 12px; border-bottom: 1px solid var(--card-border,#303847); }
.xfp-row:last-child { border-bottom: 0; }
.xfp-pick { display: flex; align-items: center; gap: 8px; padding-top: 3px; }
.xfp-monogram { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid var(--card-border,#303847); border-radius: 50%; font-weight: 700; font-size: 13px; }
.xfp-person { min-width: 0; overflow-wrap: anywhere; }
.xfp-person-head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.xfp-person-head > a { font-size: 13px; font-weight: 700; color: inherit; text-decoration: none; }
.xfp-category { padding: 2px 6px; border-radius: 4px; font-size: 10px; background: color-mix(in srgb,var(--accent,#daa528) 14%,transparent); }
.xfp-handle,.xfp-existing { font-size: 11px; color: var(--fg-dim,#9ca3af); }
.xfp-evidence { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 5px; }
.xfp-state { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; color: var(--fg-dim,#9ca3af); font-size: 11px; padding-top: 4px; }
.xfp-footer { justify-content: space-between; margin-bottom: 0; }
.xfp-section button.xfp-primary { background: var(--accent,#daa528); color: #101216; border-color: var(--accent,#daa528); font-weight: 700; }
.xfp-status { margin: 12px 0 0; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.xfp-status:empty { display: none; }
.xfp-status.is-error { color: #f27575; }
.xfp-empty { padding: 24px; text-align: center; color: var(--fg-dim,#9ca3af); }

/* UI language 2026.09.17.1: always exposed beside the main view controls. */
#top-actions-bar .language-actions { order: 22 !important; flex: 0 0 auto !important; }
#top-actions-bar #language-toggle { width: auto !important; min-width: 78px !important; max-width: none !important; gap: 0; padding: 0 9px !important; white-space: nowrap; }
#language-toggle span:not(.active) { opacity: .65; }
#language-toggle .active { opacity: 1; font-weight: 800; }

/* User-chosen backgrounds override event fills, never pin borders or trade badges. */
:root body .card[data-custom-card-bg], :root body #feed .card[data-custom-card-bg] {
  background: var(--user-card-bg) !important;
  color: var(--user-card-fg) !important;
  --card-bg: var(--user-card-bg); --fg: var(--user-card-fg); --fg-dim: var(--user-card-muted);
  --muted: var(--user-card-muted); --blue: var(--user-card-link); --embed-bg: var(--user-card-embed);
}
:root body .card[data-custom-card-bg] :is(.body,.translation,.em-body,.em-name,.name,.fomo-name,.fomo-opinion-text,.crowd-feed-name) { color: var(--user-card-fg) !important; }
:root body .card[data-custom-card-bg] :is(.handle,.time,.fomo-handle,.fomo-chain,.fomo-meta,.em-handle,.em-time,.ftr-time,.crowd-feed-meta) { color: var(--user-card-muted) !important; }
:root body .card[data-custom-card-bg] :is(a.profile-link,a.text-link,a.mention-link) { color: var(--user-card-link) !important; }
:root body .card[data-custom-card-bg] :is(.fomo-ca,.fomo-remark) { color: var(--user-card-fg) !important; background: var(--user-card-embed) !important; }
:root body .card[data-custom-card-bg] :is(.fomo-trade-btn,.ca-trade-btn,.token-history-btn) { color: var(--user-card-link) !important; background: var(--user-card-embed) !important; }
:root body .card[data-custom-card-bg] :is(.fomo-stats-rest,.fomo-stats-row,.fomo-age) { color: var(--user-card-muted) !important; }
.account-card-background { margin: 12px 0 8px; padding-top: 10px; border-top: 1px solid var(--card-border,#303742); min-width: 0; }
.push-account-popover { max-height: calc(100vh - 24px); overflow-y: auto; }
.account-card-background > strong { font-size: 12px; }
.account-card-background > p, .card-bg-status { font-size: 11px; line-height: 1.45; margin: 5px 0 8px; }
.card-background-settings h4 { margin: 12px 0 7px; font-size: 12px; }
.card-bg-tools { display: flex; align-items: center; gap: 7px; }
.card-bg-tools input[type=color] { width: 36px; min-width: 36px; height: 31px; border: 1px solid var(--card-border,#364153); padding: 2px; border-radius: 6px; background: transparent; cursor: pointer; }
.card-bg-tools input[type=text] { flex: 1; width: 0; min-width: 60px; max-width: 125px; padding: 6px 8px; color: var(--fg); background: var(--embed-bg); border: 1px solid var(--card-border); border-radius: 6px; font: 12px ui-monospace,monospace; }
.card-bg-tools button { white-space: nowrap; padding: 6px 8px; }
.card-bg-palette { display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; }
.card-bg-palette button { width: 21px; height: 21px; padding: 0; border: 1px solid #8993a3; border-radius: 5px; cursor: pointer; }
.card-bg-palette button:hover { outline: 2px solid var(--accent); outline-offset: 2px; }
.card-bg-tools :focus-visible, .card-bg-palette button:focus-visible, .card-bg-section-head select:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.card-bg-sample { display: flex; flex-direction: column; gap: 4px; border-radius: 8px; padding: 10px 12px; border: 1px solid #8993a366; font-size: 12px; }
.card-bg-sample span { font-size: 11px; }
.card-bg-status { min-height: 16px; color: var(--fg-dim); }
.card-bg-section-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; border-top: 1px solid var(--card-border); padding-top: 12px; margin: 7px 0 9px; }
.card-bg-section-head label { font-size: 12px; }
.card-bg-section-head select { min-width: 130px; max-width: 65%; font: inherit; color: var(--fg); background: var(--embed-bg); border: 1px solid var(--card-border); padding: 5px 7px; border-radius: 5px; }
