.radarFab{
  position:fixed; right:16px; bottom:16px; z-index:99999;
  width:56px; height:56px; border-radius:999px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(14,18,34,.92);
  border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 12px 30px rgba(0,0,0,.35);
  font-size:22px; cursor:pointer; user-select:none;
}
.radarFab .dot{
  width:10px; height:10px; border-radius:50%;
  background: #25d366; margin-left:6px;
  animation: radarPulse 1.2s infinite;
}
@keyframes radarPulse{ 0%{transform:scale(1); opacity:.8} 70%{transform:scale(1.8); opacity:.0} 100%{transform:scale(1); opacity:.8} }

.radarPanel{
  position:fixed; left:12px; right:12px; bottom:86px; z-index:99998;
  max-height:70vh;
  background:rgba(10,14,28,.94);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  overflow:hidden;
  box-shadow: 0 18px 50px rgba(0,0,0,.48);
  display:none;
}
.radarHeader{
  display:flex; gap:10px; align-items:center; justify-content:space-between;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.radarHeader .title{ font-weight:800; letter-spacing:.3px; }
.radarHeader .meta{ font-size:12px; color:rgba(255,255,255,.65); }
.radarHeader .btn{
  padding:8px 10px; border-radius:12px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.9);
}
.radarBody{ padding:12px; overflow:auto; max-height: calc(70vh - 54px); }
.bubbles{ display:flex; flex-wrap:wrap; gap:10px; }
.bubble{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  max-width: 100%;
  display:flex; gap:10px; align-items:center;
  cursor:pointer;
  transition: transform .08s ease;
}
.bubble:active{ transform: scale(.98); }
.bubble .badge{
  font-size:12px; padding:4px 8px; border-radius:999px;
  background: rgba(37,211,102,.18);
  border:1px solid rgba(37,211,102,.26);
  color: rgba(240,255,245,.92);
  white-space:nowrap;
}
.bubble .txt{
  font-size:13px; color: rgba(255,255,255,.92);
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.bubble .sub{
  font-size:11px; color: rgba(255,255,255,.55);
  margin-left:auto; white-space:nowrap;
}
.bubble.hot{
  background: rgba(255,90,90,.10);
  border-color: rgba(255,90,90,.22);
}
.bubble.hot .badge{
  background: rgba(255,90,90,.18);
  border-color: rgba(255,90,90,.26);
}
.radarMiniDiag{
  margin-top:12px;
  font-size:12px;
  color: rgba(255,255,255,.65);
  border-top:1px dashed rgba(255,255,255,.10);
  padding-top:10px;
}
