/* =====================================================================
   VENUE SOCIAL V2: Venue chats section (Connections), the limited chat screen, and the
   Say Hi area on the Venue person sheet. Builds on the Social V1 styles (social.css).
   ===================================================================== */

/* ---------- Venue chats section (top of Connections) ---------- */
.vs-section { display: flex; flex-direction: column; gap: 18px; padding-bottom: 0; }
.vs-section[hidden] { display: none; }
.vs-request-note { margin: 0; font-size: 12.5px; line-height: 1.45; color: var(--muted); }
.vs-left {
  flex: none; padding: 2px 8px; border-radius: 999px;
  background: var(--accent-soft); color: var(--accent-light);
  font-size: 10.5px; font-weight: 800; letter-spacing: 0.02em; white-space: nowrap;
}
.vs-keep-dot {
  padding: 3px 8px; border-radius: 999px;
  background: var(--accent); color: #fff; box-shadow: 0 0 12px var(--glow);
  font-size: 10.5px; font-weight: 800;
}
.vs-quiet { opacity: 0.72; }

/* ---------- The limited chat ---------- */
.vch-title { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.vch-title .th-name { flex: none; }
.vch-sub { margin: 0; font-size: 12px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vch-banner {
  flex: none; display: flex; flex-direction: column; gap: 8px;
  padding: 10px max(14px, env(safe-area-inset-right, 0px)) 0 max(14px, env(safe-area-inset-left, 0px));
}
.vch-banner:empty { display: none; }
.vch-count {
  margin: 0; align-self: center; text-align: center;
  padding: 6px 12px; border-radius: 999px;
  background: var(--accent-soft); color: var(--accent-light);
  font-size: 12.5px; font-weight: 700;
}
.vch-count.low { background: rgba(255, 111, 181, 0.14); color: var(--pink); }
.vch-keep {
  display: flex; flex-direction: column; gap: 8px;
  padding: 14px; border-radius: 18px;
  background: linear-gradient(160deg, rgba(157, 92, 255, 0.18), rgba(18, 16, 25, 0.95));
  border: 1px solid rgba(185, 139, 255, 0.4);
}
.vch-keep-title { margin: 0; font-size: 16px; font-weight: 800; }
.vch-keep-text { margin: 0; font-size: 13px; line-height: 1.45; color: #d9d5e3; }
.vch-keep-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.vch-keep-actions .btn:only-child { grid-column: 1 / -1; }
.vch-keep-actions .btn:disabled { opacity: 0.55; box-shadow: none; }
.th-composer[hidden] { display: none; }

/* ---------- Say Hi on the Venue person sheet ---------- */
.vp-hi { display: flex; flex-direction: column; gap: 6px; }
.vp-hi:empty { display: none; }
.vp-hi-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.vp-hi-btn svg { width: 18px; height: 18px; }
.vp-hi-note { margin: 0; font-size: 12px; line-height: 1.45; color: var(--muted); }
.vp-hi-state { margin: 0; }
