/* Sprint 7 - Friendship Density and Retention */
.vs-social-density-panel {
  margin-top: .75rem;
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  padding: .75rem;
}

.vs-social-density-pill {
  background: rgba(148, 163, 184, 0.16);
  border: 1px solid rgba(148, 163, 184, 0.25);
  color: #e5e7eb;
  border-radius: 999px;
  padding: .22rem .58rem;
  font-size: .74rem;
  line-height: 1.15;
}

.vs-social-density-pill--strong {
  background: rgba(139, 92, 246, 0.2);
  border-color: rgba(167, 139, 250, 0.45);
  color: #ede9fe;
}

.vs-retention-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .6rem;
  margin: .55rem 0 .8rem;
}

.vs-retention-card {
  padding: .7rem .85rem;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: linear-gradient(140deg, rgba(21, 16, 41, 0.86), rgba(19, 35, 57, 0.74));
}

.vs-retention-card--inline {
  margin-top: .55rem;
}

.vs-retention-card__label {
  margin: 0;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #c4b5fd;
}

.vs-retention-meter {
  margin-top: .45rem;
  width: 100%;
  height: 7px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(148, 163, 184, 0.2);
}

.vs-retention-meter__fill {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #22d3ee, #a78bfa, #f59e0b);
}

.vs-social-density-row {
  margin-top: .45rem;
  display: grid;
  gap: .35rem;
}

.vs-social-density-chip {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-size: .77rem;
  text-decoration: none;
  color: #e5e7eb;
}

.vs-social-density-chip__badge {
  margin-left: auto;
  min-width: 1.2rem;
  text-align: center;
  border-radius: 999px;
  padding: 0 .3rem;
  background: rgba(56, 189, 248, .2);
  color: #bae6fd;
  font-size: .68rem;
}

.vs-social-density-chip--bestie {
  color: #f5d0fe;
}

.vs-dm-waveback {
  margin-top: .32rem;
}

@media (max-width: 430px) {
  .vs-retention-grid {
    grid-template-columns: 1fr;
  }
}
