/* Broadcast audience-group controls. */
.bc-audience-options { display: flex; gap: 16px; margin-bottom: 6px; flex-wrap: wrap; }
.bc-groups-panel {
  padding: 14px;
  border: 1px solid rgba(28, 23, 18, 0.12);
  border-radius: 14px;
  background: #fbf7f0;
}
.bc-groups-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.bc-groups-heading p { margin: 3px 0 0; }
.bc-groups-total {
  flex: 0 0 auto;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e3f0e8;
  color: #1f4a38;
  font-size: 0.78rem;
  font-weight: 650;
}
.bc-segment-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px; }
.bc-segment {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(28, 23, 18, 0.12);
  border-radius: 11px;
  background: #fff;
  cursor: pointer;
}
.bc-segment:has(input:checked) { border-color: rgba(31, 74, 56, 0.48); background: #f0f7f2; }
.bc-segment input { flex: 0 0 17px; width: 17px; height: 17px; margin: 2px 0 0; }
.bc-segment-copy { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 3px; }
.bc-segment-title { color: #1c1712; font-size: 0.88rem; font-weight: 650; line-height: 1.25; }
.bc-segment-description { color: #6b6258; font-size: 0.76rem; line-height: 1.35; }
.bc-segment-count { color: #1f4a38; font-size: 0.8rem; font-weight: 700; font-variant-numeric: tabular-nums; }

/* Render each blank-line-separated popup paragraph separately while preserving
   single line breaks inside a paragraph. */
.ann-body { white-space: normal; overflow-wrap: anywhere; }
.ann-body p { margin: 0 0 0.9em; white-space: pre-wrap; overflow-wrap: anywhere; }
.ann-body p:last-child { margin-bottom: 0; }
.nt-body > span { white-space: pre-wrap; overflow-wrap: anywhere; }

@media (max-width: 560px) {
  .bc-groups-panel { padding: 11px; }
  .bc-groups-heading { gap: 8px; }
  .bc-segment-list { grid-template-columns: 1fr; }
}
