/* =====================================================================
   985 MONITOR — TERMINAL THEME OVERLAY  (loads AFTER main styles.css)
   military-terminal monitoring panel — dark mode only.
   light mode (data-theme="light") falls through to original site styling.
   ===================================================================== */

/* =====================================================================
   1) TOKEN OVERRIDES (dark only)
   ===================================================================== */
:root:not([data-theme="light"]) {
  color-scheme: dark;
  --page-bg: #0B0F0E;
}
:root:not([data-theme="light"]) body {
  --page-bg: #0B0F0E;
  --fg: #D8E6E2;
  --fg-muted: #9CB0AC;
  --fg-dim: #7A8A87;
  --card-bg: #0E1413;
  --card-border: #1B2624;
  --embed-bg: #0A100F;
  --embed-border: #1B2624;
  --bar-bg: #0E1413;
  --bar-border: #1B2624;
  --link: #B6FF7A;
  --mention: #7CD6FF;
  --soft-shadow: none;
  --accent: #B6FF7A;            /* main accent: monitor green (was gold) */

  /* terminal-specific tokens (used by overrides below) */
  --t-bg-3: #121A18;
  --t-bg-4: #0A100F;
  --t-line-2: #243430;
  --t-primary: #B6FF7A;
  --t-primary-dim: rgba(182,255,122,.55);
  --t-primary-glow: rgba(182,255,122,.20);
  --t-warning: #FFCC66;
  --t-warning-glow: rgba(255,204,102,.25);
  --t-danger: #FF6E6E;
  --t-info: #7CD6FF;
  --t-purple: #C7B7FF;
  --t-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, "Courier New", monospace;
}

:root:not([data-theme="light"]) body {
  background: var(--page-bg);
  color: var(--fg);
  font-family: 'Inter', 'Microsoft YaHei UI', 'Segoe UI', system-ui, "PingFang SC", sans-serif;
}

/* =====================================================================
   2) CRT ATMOSPHERE  (very subtle scanlines + vignette)
   ===================================================================== */
:root:not([data-theme="light"]) body::before {
  content: '';
  position: fixed; inset: 0;
  pointer-events: none; z-index: 9999;
  background: repeating-linear-gradient(
    to bottom,
    rgba(255,255,255,0) 0,
    rgba(255,255,255,0) 2px,
    rgba(0,0,0,.05) 3px,
    rgba(0,0,0,.05) 3px
  );
  mix-blend-mode: overlay;
}
:root:not([data-theme="light"]) body::after {
  content: '';
  position: fixed; inset: 0;
  pointer-events: none; z-index: 9998;
  background: radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,.45) 100%);
}

/* =====================================================================
   3) #top-actions-bar — sys header
   ===================================================================== */
:root:not([data-theme="light"]) #top-actions-bar {
  background: var(--bar-bg);
  border-bottom: 1px solid var(--bar-border);
  position: relative;
  font-family: var(--t-mono);
  font-size: 12px;
  letter-spacing: .04em;
}
/* "// SYS" prefix tag at top-left of bar — appears next to logo */
:root:not([data-theme="light"]) #top-actions-bar::before {
  content: "// SYS  •  NODE: ACTIVE  •  REGION: HK-1";
  position: absolute;
  left: 360px;            /* sits to the right of the 334px logo */
  top: 50%;
  transform: translateY(-50%);
  color: var(--fg-dim);
  font-family: var(--t-mono);
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  pointer-events: none;
}
:root:not([data-theme="light"]) #top-actions-bar .site-logo {
  filter: drop-shadow(0 0 10px rgba(182,255,122,.45));
}

/* =====================================================================
   4) #health-bar — sys footer
   ===================================================================== */
:root:not([data-theme="light"]) #health-bar {
  background: var(--bar-bg);
  border-top: 1px solid var(--bar-border);
  font-family: var(--t-mono);
  font-size: 11.5px;
  letter-spacing: .04em;
  position: relative;
}
:root:not([data-theme="light"]) #health-bar::before {
  content: "▎ SYS_FEED";
  color: var(--t-primary);
  font-weight: 700;
  letter-spacing: .18em;
  text-shadow: 0 0 10px var(--t-primary-glow);
  margin-right: 14px;
}
:root:not([data-theme="light"]) #health-bar .item:not(.spacer) {
  border-left: 1px solid var(--t-line-2);
  padding-left: 12px;
}
:root:not([data-theme="light"]) #health-bar .label {
  color: var(--fg);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
:root:not([data-theme="light"]) #health-bar .time {
  color: var(--fg-dim);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
:root:not([data-theme="light"]) #health-bar #health-total {
  color: var(--t-primary);
  font-weight: 600;
  letter-spacing: .04em;
}
:root:not([data-theme="light"]) #health-bar .dot {
  width: 8px; height: 8px;
  background: #3a4a47;
  box-shadow: 0 0 0 2px rgba(0,0,0,.35) inset;
}
:root:not([data-theme="light"]) #health-bar .dot.green {
  background: var(--t-primary);
  box-shadow: 0 0 8px var(--t-primary-glow);
  animation: t-pulse 1.6s ease-in-out infinite;
}
:root:not([data-theme="light"]) #health-bar .dot.yellow {
  background: var(--t-warning);
  box-shadow: 0 0 8px var(--t-warning-glow);
}
:root:not([data-theme="light"]) #health-bar .dot.red {
  background: var(--t-danger);
  box-shadow: 0 0 8px rgba(255,110,110,.3);
  animation: t-blink 1s steps(2) infinite;
}
@keyframes t-pulse { 0%,100% { opacity: 1 } 50% { opacity: .35 } }
@keyframes t-blink { 50% { opacity: .25 } }

/* =====================================================================
   5) main#feed
   ===================================================================== */
:root:not([data-theme="light"]) main#feed {
  background:
    linear-gradient(rgba(27,38,36,.55) 1px, transparent 1px) 0 0/100% 24px,
    linear-gradient(90deg, rgba(27,38,36,.55) 1px, transparent 1px) 0 0/24px 100%,
    radial-gradient(circle at 25% 0%, rgba(182,255,122,.025), transparent 50%),
    var(--page-bg);
}
:root:not([data-theme="light"]) main#feed::-webkit-scrollbar { width: 6px; }
:root:not([data-theme="light"]) main#feed::-webkit-scrollbar-thumb { background: var(--t-line-2); }
:root:not([data-theme="light"]) main#feed::-webkit-scrollbar-thumb:hover { background: var(--t-primary-dim); }

:root:not([data-theme="light"]) main#feed .empty {
  font-family: var(--t-mono);
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fg-dim);
}
:root:not([data-theme="light"]) main#feed .empty::before { content: "// "; color: var(--t-primary); }
:root:not([data-theme="light"]) main#feed .empty::after  { content: " █"; color: var(--t-primary); animation: t-blink 1.1s steps(2) infinite; }

/* =====================================================================
   6) .card — flat terminal block
   left status band uses ::after (NOT ::before — main site uses ::before
   for ★/📌 corner badges on favorite/historical-ref/etc, leave those alone)
   ===================================================================== */
:root:not([data-theme="light"]) main#feed .card {
  border-radius: 0;
  position: relative;
  padding-left: 22px;
}
:root:not([data-theme="light"]) main#feed .card::after {
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 3px;
  background: var(--t-line-2);
  pointer-events: none;
  z-index: 1;
}
:root:not([data-theme="light"]) main#feed .card.highlight {
  border-color: var(--t-primary);
  box-shadow: 0 0 0 1px var(--t-primary-glow), 0 0 18px rgba(182,255,122,.18);
}
:root:not([data-theme="light"]) main#feed .card.highlight::after { background: var(--t-primary); box-shadow: 0 0 8px var(--t-primary-glow); }

/* PIN — keep main site's pin badge, just colour the left band */
:root:not([data-theme="light"]) main#feed .card.pinned::after { background: #E58036; box-shadow: 0 0 8px rgba(229,128,54,.45); }

/* favorite — RESTRAINED: kill the 2px gold border + glow + gradient bg.
   keep the main site's ★ corner badge (it lives in ::before). */
:root:not([data-theme="light"]) main#feed .card.favorite {
  border: 1px solid var(--card-border) !important;
  box-shadow: none !important;
  background: var(--card-bg) !important;
}
:root:not([data-theme="light"]) main#feed .card.favorite.highlight {
  box-shadow: 0 0 0 1px var(--t-warning), 0 0 14px rgba(255,204,102,.20) !important;
}
:root:not([data-theme="light"]) main#feed .card.favorite::after { background: var(--t-warning); box-shadow: 0 0 8px var(--t-warning-glow); }
/* flatten the round ★ badge */
:root:not([data-theme="light"]) main#feed .card.favorite::before {
  border-radius: 0 !important;
  background: var(--t-warning) !important;
  color: #0B0F0E !important;
}

/* historical-ref — main site uses ::after for its own badge, so don't
   override .card.historical-ref::after. tone down its heavy frame: */
:root:not([data-theme="light"]) main#feed .card.historical-ref {
  border: 1px solid var(--card-border) !important;
  border-left: 3px solid #f59e0b !important;
  box-shadow: none !important;
  background: var(--card-bg) !important;
}

/* alpha-signal tiers */
:root:not([data-theme="light"]) main#feed .card.alpha-signal { border-radius: 0; }
:root:not([data-theme="light"]) main#feed .card.alpha-signal.tier-s::after { background: var(--t-primary); box-shadow: 0 0 10px var(--t-primary); }
:root:not([data-theme="light"]) main#feed .card.alpha-signal.tier-a::after { background: var(--t-warning); }
:root:not([data-theme="light"]) main#feed .card.alpha-signal.tier-b::after { background: #E58036; }
:root:not([data-theme="light"]) main#feed .card.alpha-signal.tier-c::after { background: #8FA3A0; }

/* dex-signal */
:root:not([data-theme="light"]) main#feed .card.dex-signal { border-radius: 0; }
:root:not([data-theme="light"]) main#feed .card.dex-signal::after { background: var(--t-info); }
:root:not([data-theme="light"]) main#feed .card.dex-signal.highlight {
  border-color: var(--t-info);
  box-shadow: 0 0 0 1px rgba(124,214,255,.3), 0 0 18px rgba(124,214,255,.22);
}
:root:not([data-theme="light"]) main#feed .card.dex-signal.highlight::after { background: var(--t-info); box-shadow: 0 0 8px rgba(124,214,255,.45); }

/* =====================================================================
   7) chips — terminal squares
   ===================================================================== */
:root:not([data-theme="light"]) .card .chip,
:root:not([data-theme="light"]) .chip {
  border-radius: 0 !important;
  font-family: var(--t-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #0B0F0E !important;
  padding: 4px 10px;
}
:root:not([data-theme="light"]) .chip.tweet      { background: var(--t-primary) !important; }
:root:not([data-theme="light"]) .chip.retweet    { background: var(--t-warning) !important; }
:root:not([data-theme="light"]) .chip.reply      { background: #E58036 !important; }
:root:not([data-theme="light"]) .chip.quote      { background: var(--t-purple) !important; }
:root:not([data-theme="light"]) .chip.follow     { background: var(--t-info) !important; }
:root:not([data-theme="light"]) .chip.unfollow   { background: #8FA3A0 !important; }
:root:not([data-theme="light"]) .chip.square     { background: var(--t-warning) !important; }
:root:not([data-theme="light"]) .chip.truth      { background: var(--t-danger) !important; }
:root:not([data-theme="light"]) .chip.news       { background: #ff8a4a !important; }

/* =====================================================================
   8) buttons / footer / pills — universally squared & mono
   ===================================================================== */
:root:not([data-theme="light"]) .card .footer {
  border-top: 1px dashed var(--t-line-2);
  padding-top: 10px;
  margin-top: 12px;
}
:root:not([data-theme="light"]) .card .footer a,
:root:not([data-theme="light"]) .card .footer button {
  border-radius: 0;
  font-family: var(--t-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
:root:not([data-theme="light"]) .card .footer .fav-btn.is-fav {
  background: rgba(255,204,102,.10);
  color: var(--t-warning);
  border-color: var(--t-warning);
}
:root:not([data-theme="light"]) .card .footer .narrative-btn {
  color: var(--t-purple);
  border-color: rgba(199,183,255,.30);
}
:root:not([data-theme="light"]) .card .footer .unfollow-btn {
  color: var(--t-danger);
  border-color: rgba(255,110,110,.35);
}

/* push-channel chips (top bar) */
:root:not([data-theme="light"]) #top-actions-bar .push-chip,
:root:not([data-theme="light"]) #top-actions-bar .top-config-btn,
:root:not([data-theme="light"]) #top-actions-bar button,
:root:not([data-theme="light"]) #top-actions-bar a.btn {
  border-radius: 0 !important;
  font-family: var(--t-mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 11px;
}
:root:not([data-theme="light"]) #top-actions-bar .push-title {
  font-family: var(--t-mono);
  font-size: 10.5px;
  letter-spacing: .18em;
  color: var(--fg-dim);
  text-transform: uppercase;
}
:root:not([data-theme="light"]) .theme-toggle-btn {
  border-radius: 0 !important;
  font-family: var(--t-mono);
}

/* =====================================================================
   9) avatars stay round (recognisability), media goes square
   ===================================================================== */
:root:not([data-theme="light"]) .card .media img,
:root:not([data-theme="light"]) .card .media video,
:root:not([data-theme="light"]) .card .em-media img,
:root:not([data-theme="light"]) .card .embed,
:root:not([data-theme="light"]) .card .narrative-allusions,
:root:not([data-theme="light"]) .card .narrative-image-context {
  border-radius: 0 !important;
}
:root:not([data-theme="light"]) .card .embed {
  position: relative;
}
:root:not([data-theme="light"]) .card .embed::before {
  content: "▎QUOTE";
  position: absolute;
  top: -1px; left: 12px;
  background: var(--card-bg);
  color: var(--fg-dim);
  font-family: var(--t-mono);
  font-size: 9px;
  letter-spacing: .18em;
  padding: 0 6px;
  transform: translateY(-50%);
}
:root:not([data-theme="light"]) .card .narrative-allusions::before {
  content: "// NARRATIVE";
  color: var(--t-warning) !important;
  font-family: var(--t-mono);
  font-size: 9.5px;
  letter-spacing: .18em;
}

/* dex-signal — square pills, mono text */
:root:not([data-theme="light"]) .card.dex-signal .dex-icon,
:root:not([data-theme="light"]) .card.dex-signal .dex-meta,
:root:not([data-theme="light"]) .card.dex-signal .dex-stat,
:root:not([data-theme="light"]) .card.dex-signal .dex-ca-row,
:root:not([data-theme="light"]) .card.dex-signal .dex-copy,
:root:not([data-theme="light"]) .card.dex-signal .dex-link,
:root:not([data-theme="light"]) .card.dex-signal .dex-link-pill,
:root:not([data-theme="light"]) .card.dex-signal .dex-tweets-btn,
:root:not([data-theme="light"]) .card.dex-signal .dex-tweet-item,
:root:not([data-theme="light"]) .card.dex-signal .dex-tweet-img,
:root:not([data-theme="light"]) .card.dex-signal .tw-profile-card,
:root:not([data-theme="light"]) .card.dex-signal .dex-tweets-loading {
  border-radius: 0 !important;
}
:root:not([data-theme="light"]) .card.dex-signal .dex-symbol,
:root:not([data-theme="light"]) .card.dex-signal .dex-mc {
  font-family: var(--t-mono);
  letter-spacing: .03em;
}
:root:not([data-theme="light"]) .card.dex-signal .dex-symbol { color: var(--t-warning); }
:root:not([data-theme="light"]) .card.dex-signal .dex-mc { color: var(--t-primary); }
:root:not([data-theme="light"]) .card.dex-signal .dex-title {
  font-family: var(--t-mono);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--t-info);
}

/* =====================================================================
   10) version banner — keep readable but flatten
   ===================================================================== */
:root:not([data-theme="light"]) #version-update-banner {
  border-radius: 0;
  font-family: var(--t-mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}
:root:not([data-theme="light"]) #version-update-banner button {
  border-radius: 0;
}

/* =====================================================================
   11) reduce footer-bar width on narrow screens
   ===================================================================== */
@media (max-width: 720px) {
  :root:not([data-theme="light"]) #top-actions-bar::before { display: none; }
}

/* =====================================================================
   12) PRODUCTIVITY POLISH  — info-density + scan-friendly v2
       goal: military-terminal feel + readability for long sessions
   ===================================================================== */

/* ---- a) global numeric alignment: tabular figures everywhere data lives ---- */
:root:not([data-theme="light"]) main#feed,
:root:not([data-theme="light"]) #health-bar,
:root:not([data-theme="light"]) #top-actions-bar {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1, "ss01" 1;
}

/* ---- b) chips get a small caret prefix + tighter padding ---- */
:root:not([data-theme="light"]) main#feed .card .chip {
  padding: 3px 9px;
  font-size: 10.5px;
}
:root:not([data-theme="light"]) main#feed .card .chip::before,
:root:not([data-theme="light"]) .chip::before {
  content: "▎";
  margin-right: 3px;
  font-weight: 400;
  opacity: .55;
  letter-spacing: 0;
}

/* ---- c) health-bar labels get a caret prefix (keeps original text) ---- */
:root:not([data-theme="light"]) #health-bar .label::before {
  content: "▎";
  margin-right: 4px;
  color: var(--t-primary-dim);
  font-weight: 400;
}

/* ---- d) card-header time: bracketed mono, tabular figures ---- */
:root:not([data-theme="light"]) main#feed .card .header .time {
  font-family: var(--t-mono);
  font-size: 11.5px;
  color: var(--fg-dim);
  letter-spacing: .04em;
  font-variant-numeric: tabular-nums;
}
:root:not([data-theme="light"]) main#feed .card .header .time::before { content: "["; opacity: .55; margin-right: 1px; }
:root:not([data-theme="light"]) main#feed .card .header .time::after  { content: "]"; opacity: .55; margin-left: 1px; }

/* ---- e) header name: tighter weight & spacing for skim-reading ---- */
:root:not([data-theme="light"]) main#feed .card .header .name {
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -.005em;
}

/* ---- f) handle / mention go mono so @username reads like an identifier ---- */
:root:not([data-theme="light"]) main#feed .card .handle {
  font-family: var(--t-mono);
  font-size: 12px;
  letter-spacing: .02em;
  color: var(--fg-dim);
}

/* ---- g) avatar — tactical: slight green halo + thicker outline ---- */
:root:not([data-theme="light"]) main#feed .card .avatar {
  box-shadow:
    0 0 0 1px rgba(0,0,0,.55) inset,
    0 0 8px rgba(182,255,122,.06);
  border: 1px solid var(--t-line-2);
}

/* ---- h) tweet body: tuned for long-session reading ---- */
:root:not([data-theme="light"]) main#feed .card .body {
  font-size: 15.5px;
  line-height: 1.6;
}

/* ---- i) inline links inside body / em-body / alpha-body — terminal hyperlink ---- */
:root:not([data-theme="light"]) main#feed .card .body a,
:root:not([data-theme="light"]) main#feed .card .em-body a,
:root:not([data-theme="light"]) main#feed .card .alpha-body a,
:root:not([data-theme="light"]) main#feed .card .dex-tweet-text a {
  color: var(--t-info);
  text-decoration: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  word-break: break-word;
}
:root:not([data-theme="light"]) main#feed .card .body a:hover,
:root:not([data-theme="light"]) main#feed .card .em-body a:hover,
:root:not([data-theme="light"]) main#feed .card .alpha-body a:hover {
  background: rgba(124,214,255,.10);
  text-decoration-style: solid;
}

/* ---- j) footer: tighter, terminal command-row feel ---- */
:root:not([data-theme="light"]) main#feed .card .footer {
  gap: 4px;
  padding-top: 8px;
  margin-top: 10px;
  flex-wrap: wrap;
}
:root:not([data-theme="light"]) main#feed .card .footer a,
:root:not([data-theme="light"]) main#feed .card .footer button {
  padding: 3px 10px;
  font-size: 10.5px;
}
:root:not([data-theme="light"]) main#feed .card .footer a:hover,
:root:not([data-theme="light"]) main#feed .card .footer button:hover:not(:disabled) {
  background: var(--t-bg-3);
  color: var(--t-primary);
  border-color: var(--t-primary-dim);
}

/* ---- k) hover row-highlight (lets you scan a feed by moving the cursor) ---- */
:root:not([data-theme="light"]) main#feed .card:hover {
  background-image: linear-gradient(90deg, rgba(182,255,122,.025), transparent 35%);
}
:root:not([data-theme="light"]) main#feed .card:hover::after {
  background: var(--t-primary-dim);
  box-shadow: 0 0 6px rgba(182,255,122,.18);
}

/* ---- l) feed density: tighter card spacing ---- */
:root:not([data-theme="light"]) main#feed .card {
  margin-bottom: 8px;
}

/* ---- m) embed / narrative blocks — flatter, tighter ---- */
:root:not([data-theme="light"]) main#feed .card .embed {
  padding: 8px 10px 10px;
  margin-top: 8px;
}
:root:not([data-theme="light"]) main#feed .card .narrative-allusions {
  padding: 8px 12px;
  margin-top: 8px;
}

/* ---- n) video badge / inline-video markers — terminal-styled ---- */
:root:not([data-theme="light"]) .video-badge {
  background: rgba(11,15,14,.85) !important;
  color: var(--t-primary) !important;
  border: 1px solid var(--t-line-2) !important;
  border-radius: 0 !important;
  font-family: var(--t-mono);
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  padding: 2px 6px !important;
  text-transform: uppercase;
  box-shadow: none !important;
}

/* ---- o) ★ favorite badge: square it, monospace it ---- */
:root:not([data-theme="light"]) main#feed .card.favorite::before {
  font-family: var(--t-mono);
  font-size: 12px !important;
  font-weight: 900 !important;
  padding: 2px 6px !important;
  border-radius: 0 !important;
  top: 6px !important;
  right: -2px !important;
  box-shadow: none !important;
  letter-spacing: 0;
}

/* ---- p) pin badge: already styled in core; tighten radius/padding ---- */
:root:not([data-theme="light"]) main#feed .card .pin-badge {
  border-radius: 0 !important;
  padding: 2px 4px 2px 8px !important;
  font-family: var(--t-mono);
  font-size: 10.5px !important;
  letter-spacing: .08em;
}
:root:not([data-theme="light"]) main#feed .card .pin-badge .pin-unpin {
  border-radius: 0 !important;
  padding: 0 5px !important;
}

/* ---- q) scrollbar: thumb glows on hover ---- */
:root:not([data-theme="light"]) main#feed::-webkit-scrollbar-thumb:hover {
  background: var(--t-primary);
  box-shadow: 0 0 6px var(--t-primary-glow);
}

/* ---- r) scanlines — softened for long sessions ---- */
:root:not([data-theme="light"]) body::before {
  background: repeating-linear-gradient(
    to bottom,
    rgba(255,255,255,0) 0,
    rgba(255,255,255,0) 2px,
    rgba(0,0,0,.025) 3px,
    rgba(0,0,0,.025) 3px
  );
}

/* ---- s) selection color: terminal green ---- */
:root:not([data-theme="light"]) ::selection {
  background: rgba(182,255,122,.28);
  color: var(--fg);
}

/* ---- t) dex-signal data alignment: KEY ........ VAL feel ---- */
:root:not([data-theme="light"]) main#feed .card.dex-signal .dex-stat {
  padding: 2px 8px;
  font-size: 10.5px;
}
:root:not([data-theme="light"]) main#feed .card.dex-signal .dex-stat-label {
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 9.5px;
}
:root:not([data-theme="light"]) main#feed .card.dex-signal .dex-ca {
  font-size: 11.5px;
  letter-spacing: 0;
}

/* ---- u) buttons in top-actions-bar: tighter, monospace, square ---- */
:root:not([data-theme="light"]) #top-actions-bar button,
:root:not([data-theme="light"]) #top-actions-bar a.btn,
:root:not([data-theme="light"]) #top-actions-bar .top-config-btn,
:root:not([data-theme="light"]) #top-actions-bar .push-chip {
  padding: 4px 10px !important;
  font-size: 11px !important;
  border-radius: 0 !important;
  font-family: var(--t-mono);
  letter-spacing: .12em;
}

/* ---- v) feed grid background — finer, less noisy ---- */
:root:not([data-theme="light"]) main#feed {
  background:
    linear-gradient(rgba(27,38,36,.35) 1px, transparent 1px) 0 0/100% 32px,
    linear-gradient(90deg, rgba(27,38,36,.35) 1px, transparent 1px) 0 0/32px 100%,
    radial-gradient(circle at 25% 0%, rgba(182,255,122,.020), transparent 55%),
    var(--page-bg);
}

/* ---- w) reduce motion — opt-out for accessibility ---- */
@media (prefers-reduced-motion: reduce) {
  :root:not([data-theme="light"]) #health-bar .dot.green,
  :root:not([data-theme="light"]) #health-bar .dot.red,
  :root:not([data-theme="light"]) main#feed .empty::after { animation: none !important; }
}

