.streak { display:inline-flex; align-items:center; gap:6px;
  padding:5px 12px; margin-left:12px; font-size:12px;
  background:linear-gradient(135deg, rgba(155,92,255,0.20), rgba(200,154,255,0.12));
  border:1px solid rgba(155,92,255,0.40);
  border-radius:999px; color:var(--accent-2); font-weight:700;
  box-shadow: 0 0 12px rgba(155,92,255,0.15); }
.entry .actions { margin-top:14px; padding:10px 12px; border-radius:12px;
  background:rgba(255,255,255,0.02); border:1px solid var(--border);
  display:flex; flex-wrap:wrap; gap:8px;
  align-items:center; justify-content:center; }
.entry .react-btn { padding:4px 10px; border-radius:999px;
  border:1px solid var(--border); background:rgba(255,255,255,0.03);
  color:var(--ink-mid); cursor:pointer; font-size:12.5px;
  font-family:inherit; display:inline-flex; gap:6px; align-items:center; }
.entry .react-btn:hover { background:var(--glass-strong); color:var(--ink); }
.entry .react-btn.on { background:rgba(155,92,255,0.20);
  border-color:rgba(155,92,255,0.5); color:var(--accent-2); }
.entry .react-btn .cnt { font-variant-numeric:tabular-nums; opacity:.75; }
.entry .pin-toggle { padding:4px 10px; border-radius:999px;
  border:1px solid var(--border); background:rgba(255,255,255,0.03);
  color:var(--ink-mid); cursor:pointer; font-size:12px; font-family:inherit; }
.entry.is-pinned { border-color:rgba(155,92,255,0.5);
  box-shadow: 0 4px 24px rgba(155,92,255,0.15); }
.entry.is-pinned .pin-toggle { color:var(--accent-2);
  border-color:rgba(155,92,255,0.5); }
.comments { margin-top:14px; padding-top:14px;
  border-top:1px dashed var(--border); display:flex; flex-direction:column; gap:10px; }
.comment { padding:10px 12px; border-radius:10px;
  background:rgba(255,255,255,0.03); border:1px solid var(--border); }
.comment.bot { background:rgba(155,132,180,0.08);
  border-color:rgba(155,132,180,0.28); }
.comment .who { font-size:11px; letter-spacing:0.1em; text-transform:uppercase;
  color:var(--ink-dim); margin-bottom:4px; }
.comment.bot .who { color:var(--lilac); }
.comment .body { font-size:14px; color:var(--ink); }
.comment .del { float:right; background:none; border:none; color:var(--ink-dim);
  cursor:pointer; font-size:11px; font-family:inherit; }
.comment .del:hover { color:var(--rust); }
.comment-form { display:flex; gap:8px; margin-top:8px;
  padding:8px; border-radius:12px; background:rgba(255,255,255,0.02);
  border:1px solid var(--border); align-items:center; }
.comment-form input { flex:1; padding:8px 12px; border-radius:10px;
  border:1px solid var(--border); background:rgba(255,255,255,0.03);
  color:var(--ink); font-family:inherit; font-size:13.5px; }
.comment-form button { padding:8px 16px; border-radius:10px;
  border:none; background:linear-gradient(135deg, #9B5CFF, #C89AFF);
  color:white; cursor:pointer; font-family:inherit; font-size:13px;
  font-weight:600;
  box-shadow: 0 2px 10px rgba(155,92,255,0.3); }
.comment-form button:hover { transform: translateY(-1px); }
.pub-banner { padding:10px 16px; margin-bottom:14px; border-radius:12px;
  background:rgba(155,132,180,0.10); border:1px solid rgba(155,132,180,0.28);
  color:var(--ink-mid); font-size:13px; text-align:center; }

.equity { margin-bottom:18px; padding:12px 14px 6px;
  background:rgba(255,255,255,0.03); border:1px solid var(--border);
  border-radius:14px; }
.equity-hd { font-size:11px; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--ink-dim); margin-bottom:6px; }

.trade-row { position:relative; }
.trade-del-btn { position:absolute; top:10px; right:12px;
  background:rgba(255,255,255,0.03); border:1px solid var(--border);
  color:var(--ink-dim); cursor:pointer; font-size:13px;
  padding:4px 8px; border-radius:8px; font-family:inherit;
  line-height:1; z-index:2; }
.trade-del-btn:hover { color:var(--rust);
  border-color:rgba(248,113,113,0.5); background:rgba(248,113,113,0.10); }
.trade-tags { margin-top:10px; padding:8px; border-radius:10px;
  background:rgba(255,255,255,0.02); border:1px solid var(--border);
  display:flex; flex-wrap:wrap; gap:6px;
  align-items:center; justify-content:center; }
.trade-tags:empty { display:none; }
.tag-chip { display:inline-flex; align-items:center; gap:4px;
  padding:2px 8px; font-size:11px; border-radius:999px;
  background:rgba(76,123,139,0.15); border:1px solid rgba(76,123,139,0.35);
  color:var(--sea); }
.tag-x { background:none; border:none; color:var(--sea); cursor:pointer;
  font-size:12px; padding:0; line-height:1; opacity:.6; }
.tag-x:hover { opacity:1; color:var(--rust); }
.tag-add input { padding:2px 8px; font-size:11px; border-radius:999px;
  background:rgba(255,255,255,0.03); border:1px dashed var(--border);
  color:var(--ink); width:80px; font-family:inherit; }

.priv-notes-block { margin-top:8px; padding:8px 10px; border-radius:10px;
  background:rgba(229,165,90,0.06); border:1px dashed rgba(229,165,90,0.35); }
.priv-note { padding:6px 8px; margin-bottom:4px; border-radius:8px;
  background:rgba(0,0,0,0.15); font-size:12.5px; color:var(--ink);
  position:relative; }
.priv-note .note-body { padding-right:16px; }
.priv-note .note-ts { font-size:10px; color:var(--ink-dim); margin-top:2px; }
.priv-note .note-del { position:absolute; right:4px; top:4px;
  background:none; border:none; color:var(--ink-dim); cursor:pointer;
  font-size:12px; }
.priv-note .note-del:hover { color:var(--rust); }
.note-add input { width:100%; padding:6px 10px; font-size:12px;
  border-radius:8px; background:rgba(255,255,255,0.03);
  border:1px solid var(--border); color:var(--ink); font-family:inherit; }

.comment.reply { margin-left:22px; border-left:2px solid var(--border); }
.comment .reply-btn { background:none; border:none; color:var(--ink-dim);
  font-size:11px; cursor:pointer; font-family:inherit; padding:0 6px; }
.comment .reply-btn:hover { color:var(--lilac); }
.reply-form { margin-left:22px; margin-top:6px; display:flex; gap:6px; }
.reply-form input { flex:1; padding:6px 10px; font-size:12.5px;
  border-radius:8px; background:rgba(255,255,255,0.03);
  border:1px solid var(--border); color:var(--ink); font-family:inherit; }
.seen-dot { display:inline-block; width:6px; height:6px; border-radius:50%;
  background:var(--moss); margin-left:6px; vertical-align:middle;
  box-shadow:0 0 4px currentColor; }

.mention { display:inline-block; padding:1px 6px; border-radius:6px;
  font-weight:600; text-decoration:none; font-size:0.92em; }
.mention-bot { background:rgba(155,92,255,0.18);
  color:var(--accent-2); border:1px solid rgba(155,92,255,0.35); }
.mention-user { background:rgba(56,189,248,0.14);
  color:var(--sea); border:1px solid rgba(56,189,248,0.32); }
.mention-user:hover { background:rgba(56,189,248,0.22); }

.mention-hint { font-size:11px; color:var(--ink-dim); margin-top:6px;
  text-align:center; letter-spacing:0.02em; opacity:0.75; }

/* @mention autocomplete picker (positioned in body coordinates) */
.mention-picker { position:absolute; z-index:2000; min-width:220px;
  max-height:280px; overflow-y:auto;
  background:#160E28; border:1px solid var(--border-strong);
  border-radius:12px; box-shadow:0 12px 40px rgba(0,0,0,0.55);
  padding:6px; backdrop-filter:blur(24px); }
.mention-picker[hidden] { display:none; }
.mention-item { display:flex; align-items:center; gap:8px;
  padding:7px 10px; border-radius:8px; cursor:pointer;
  color:var(--ink); font-size:13px; }
.mention-item:hover, .mention-item.active {
  background:linear-gradient(90deg, rgba(155,92,255,0.20), rgba(200,154,255,0.10)); }
.mention-item img { width:22px; height:22px; border-radius:50%;
  flex-shrink:0; }
.mp-name { font-weight:600; }
.mp-handle { color:var(--ink-dim); font-size:12px; }
.mp-badge { margin-left:auto; padding:1px 7px; font-size:10px;
  letter-spacing:0.1em; text-transform:uppercase;
  border-radius:999px; background:rgba(155,92,255,0.20);
  color:var(--accent-2); border:1px solid rgba(155,92,255,0.35);
  font-weight:700; }
.comment.new-live { border-color:rgba(155,92,255,0.35); }

/* ── Reminder Alerts Banner ────────────────────────────────────────── */
.reminder-alerts-container {
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 420px;
  width: calc(100vw - 36px);
  pointer-events: none;
}
.reminder-alert-banner {
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: linear-gradient(135deg, rgba(30, 20, 50, 0.95), rgba(45, 25, 75, 0.95));
  border: 1px solid rgba(155, 92, 255, 0.5);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6), 0 0 16px rgba(155, 92, 255, 0.25);
  border-radius: 14px;
  padding: 14px 18px;
  color: var(--ink);
  backdrop-filter: blur(16px);
  animation: slideInReminder 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  transition: all 0.25s ease;
}
@keyframes slideInReminder {
  from { opacity: 0; transform: translateY(-16px) scale(0.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.rem-banner-left {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.rem-banner-icon {
  font-size: 22px;
  flex-shrink: 0;
  animation: pulseRem 1.5s infinite;
}
@keyframes pulseRem {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.15); }
}
.rem-banner-text {
  font-size: 13.5px;
  line-height: 1.4;
  word-break: break-word;
}
.rem-banner-text strong {
  color: var(--accent-2);
  margin-right: 4px;
}
.rem-banner-dismiss {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: var(--ink);
  font-size: 12px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 8px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s ease;
  font-family: inherit;
}
.rem-banner-dismiss:hover {
  background: rgba(155, 92, 255, 0.3);
  border-color: rgba(155, 92, 255, 0.6);
  color: #fff;
}
