/*
 * 웹 대화방 방 관리 (2026-09-14, 안드로이드 오다스챗 8/13 기능의 웹 이식)
 *  - 참여자 띠 역할 배지(.gcr-role-badge — 앰버=방장·블루=부방장, 앱과 같은 색)
 *  - 참여자/헤더 드롭다운 항목(.gcr-menu-* — 컨테이너·항목 골격은 기존 .general-chat-room-participant-menu / .general-chat-menu-item)
 *  - 초대 정책·차단된 회원 자식 모달 본문(.gcp-* — A-4 톤)
 */
.gcr-av-wrap { position: relative; display: inline-block; line-height: 0; }
.gcr-role-badge {
  position: absolute; right: -6px; top: -4px; padding: 1px 5px; border-radius: 999px; border: 1.5px solid var(--ord-panel);
  font-size: 9px; font-weight: 900; line-height: 1.3; color: var(--ord-on-solid); white-space: nowrap; pointer-events: none;
}
.gcr-role-badge.is-owner { background: var(--ord-solid-orange); }
.gcr-role-badge.is-deputy { background: var(--ord-solid-blue); }
.general-chat-room-participant { cursor: pointer; }

.gcr-menu { display: flex; flex-direction: column; min-width: 190px; }
.gcr-menu .general-chat-menu-item { width: 100%; }
.gcr-menu-h { padding: 6px 10px 3px; font-size: 10.5px; font-weight: 800; color: var(--ord-text-4); }
.gcr-menu-hint { padding: 6px 10px 8px; font-size: 12px; color: var(--ord-text-4); }
.gcr-menu-sep { height: 1px; margin: 4px 2px; background: var(--ord-band); }
.gcr-menu-sub { margin-left: auto; padding-left: 10px; font-size: 10.5px; font-weight: 500; color: var(--ord-text-4); }

/* 자식 모달 본문 */
.gcp-body { padding: 16px; background: var(--ord-surface-2); margin: 0; }
.gcp-card { background: var(--ord-panel); border: 1px solid var(--ord-line); border-radius: 12px; overflow: hidden; }
.gcp-band { padding: 8px 14px; background: var(--ord-band); border-bottom: 1px solid var(--ord-line); font-size: 12px; font-weight: 700; color: var(--ord-accent); }
.gcp-card-body { padding: 10px 14px; }
.gcp-radio { display: flex; align-items: flex-start; gap: 8px; padding: 6px 0; cursor: pointer; }
.gcp-radio input { margin-top: 3px; accent-color: var(--ord-accent); }
.gcp-radio b { display: block; font-size: 12.5px; color: var(--ord-text); }
.gcp-radio small { display: block; font-size: 11px; color: var(--ord-text-4); }
.gcp-note { margin: 10px 0 0; font-size: 11px; color: var(--ord-text-4); line-height: 1.6; }
.gcp-ban { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-top: 1px solid var(--ord-line-soft); }
.gcp-ban:first-child { border-top: 0; }
.gcp-ban-av { width: 30px; height: 30px; border-radius: 9px; background: var(--ord-band); color: var(--ord-accent); font-weight: 800; font-size: 12.5px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.gcp-ban-main { flex: 1; min-width: 0; }
.gcp-ban-name { font-size: 12.5px; font-weight: 700; color: var(--ord-text); }
.gcp-ban-sub { font-size: 10.5px; color: var(--ord-text-4); }
.gcp-btn { padding: 5px 12px; border: 1px solid var(--ord-line-2); border-radius: 20px; background: var(--ord-panel); color: var(--ord-accent); font-size: 11.5px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.gcp-btn:hover { background: var(--ord-band); }
.gcp-empty { padding: 18px 0; text-align: center; font-size: 12px; color: var(--ord-text-4); }
.gcp-empty.is-error { color: var(--ord-tint-red-fg); }
