/* CrosswiseGaming Discord integration. All selectors are deliberately scoped. */
.cwg-discord-profile-card,
.cwg-discord-session-panel,
.cwg-discord-invitation-card,
.cwg-discord-admin-card,
.cwg-discord-reconcile-card,
.cwg-discord-setup-note {
  border-color: color-mix(in srgb, #5865f2 38%, var(--border));
  background: linear-gradient(145deg, color-mix(in srgb, #5865f2 7%, var(--panel)), var(--panel));
}

.cwg-discord-status-pill {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  width: max-content;
  max-width: 100%;
  padding: .42rem .7rem;
  border: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
  border-radius: 999px;
  background: color-mix(in srgb, #5865f2 13%, transparent);
  font-size: .78rem;
  font-weight: 800;
  line-height: 1.1;
}
.cwg-discord-status-pill.is-active,
.cwg-discord-ready { color: #66d990; }
.cwg-discord-status-pill.is-rules_pending { color: #ffd166; }
.cwg-discord-status-pill.is-error,
.cwg-discord-status-pill.is-not_connected { color: var(--muted); }

.cwg-discord-checklist {
  display: grid;
  gap: .7rem;
  margin: 1rem 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
.cwg-discord-checklist li {
  display: grid;
  grid-template-columns: 2.15rem minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
  padding: .8rem;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: color-mix(in srgb, var(--bg2) 88%, transparent);
}
.cwg-discord-checklist li > span {
  display: grid;
  place-items: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 50%;
  background: color-mix(in srgb, #5865f2 18%, var(--bg));
  font-weight: 900;
}
.cwg-discord-checklist li.done > span { background: #2f855a; color: #fff; }
.cwg-discord-checklist li div { display: grid; gap: .18rem; min-width: 0; }
.cwg-discord-checklist small { color: var(--muted); line-height: 1.35; overflow-wrap: anywhere; }

.cwg-discord-profile-actions,
.cwg-discord-session-links,
.cwg-discord-invitation-actions,
.cwg-discord-reconcile-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
}
.cwg-discord-profile-actions form,
.cwg-discord-reconcile-actions form { margin: 0; }
.cwg-discord-decline-options {
  flex: 1 0 100%;
  display: grid;
  gap: .55rem;
  padding: .75rem;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--bg2);
}
.cwg-discord-decline-options label { display: flex; gap: .55rem; align-items: flex-start; font-size: .84rem; }
.cwg-discord-decline-options input { margin-top: .15rem; }
.cwg-discord-disabled,
.cwg-discord-session-notice {
  display: grid;
  gap: .25rem;
  padding: .9rem 1rem;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--bg2);
}
.cwg-discord-disabled span { color: var(--muted); }

.cwg-discord-session-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  margin: 1rem 0;
  padding: 1rem;
  border: 1px solid color-mix(in srgb, #5865f2 38%, var(--border));
  border-radius: 18px;
}
.cwg-discord-session-panel h2 { margin: .2rem 0; }
.cwg-discord-session-panel p { margin: 0; color: var(--muted); }
.cwg-discord-syncing { color: #ffd166; font-weight: 700; }
.cwg-discord-locked-button { opacity: .9; }

.cwg-discord-role-label,
.cwg-discord-muted-label {
  display: inline-flex;
  margin-left: .35rem;
  padding: .16rem .4rem;
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 850;
  vertical-align: middle;
}
.cwg-discord-role-label { background: color-mix(in srgb, #5865f2 25%, transparent); color: #cbd0ff; }
.cwg-discord-muted-label { background: color-mix(in srgb, #d97706 25%, transparent); color: #ffd69a; }
.cwg-discord-drawer-subtitle { margin: 1rem 0 .45rem; }

.cwg-discord-person-menu { position: relative; flex: 0 0 auto; }
.cwg-discord-person-menu > summary {
  cursor: pointer;
  list-style: none;
  padding: .38rem .58rem;
  border: 1px solid var(--border);
  border-radius: 10px;
  color: var(--text);
  background: var(--bg2);
  font-size: .78rem;
  font-weight: 800;
}
.cwg-discord-person-menu > summary::-webkit-details-marker { display: none; }
.cwg-discord-person-menu[open] > div {
  position: absolute;
  z-index: 110;
  top: calc(100% + .4rem);
  right: 0;
  width: min(330px, calc(100vw - 32px));
  max-height: min(70vh, 560px);
  overflow: auto;
  display: grid;
  gap: .65rem;
  padding: .75rem;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--panel);
  box-shadow: 0 20px 55px rgba(0,0,0,.52);
}
.cwg-discord-person-menu form { display: grid; gap: .45rem; margin: 0; }
.cwg-discord-person-menu label { display: grid; gap: .3rem; color: var(--muted); font-size: .78rem; }
.cwg-discord-person-menu input,
.cwg-discord-person-menu select { width: 100%; }
.cwg-discord-person-menu button,
.cwg-discord-person-menu a {
  display: block;
  width: 100%;
  padding: .58rem .7rem;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--bg2);
  color: var(--text);
  text-align: left;
  font: inherit;
  font-weight: 750;
  text-decoration: none;
  cursor: pointer;
}
.cwg-discord-person-menu .danger { border-color: color-mix(in srgb, #ef4444 50%, var(--border)); color: #ffaaaa; }

.cwg-discord-guest-invite,
.cwg-discord-removed-list {
  display: grid;
  gap: .65rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border);
}
.cwg-discord-guest-invite form { display: grid; gap: .65rem; }
.cwg-discord-guest-invite label { display: grid; gap: .3rem; }
.cwg-discord-removed-list > div {
  display: flex;
  justify-content: space-between;
  gap: .65rem;
  align-items: center;
  padding: .65rem;
  border: 1px solid var(--border);
  border-radius: 12px;
}
.cwg-discord-removed-list span { display: grid; gap: .15rem; min-width: 0; }
.cwg-discord-removed-list small { color: var(--muted); overflow-wrap: anywhere; }
.cwg-discord-removed-list em { color: #ffd166; font-size: .8rem; }

.cwg-discord-guest-options { border-color: color-mix(in srgb, #5865f2 35%, var(--border)); }
.cwg-discord-guest-fields { margin-top: .7rem; }

.cwg-discord-page-head { align-items: end; }
.cwg-discord-invitation-card { max-width: 760px; margin-inline: auto; }
.cwg-discord-invitation-details {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
  margin: 1rem 0;
}
.cwg-discord-invitation-details > div { padding: .75rem; border: 1px solid var(--border); border-radius: 12px; }
.cwg-discord-invitation-details dt { color: var(--muted); font-size: .75rem; }
.cwg-discord-invitation-details dd { margin: .2rem 0 0; font-weight: 800; overflow-wrap: anywhere; }

.cwg-discord-admin-head { align-items: end; }
.cwg-discord-admin-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
  margin: 1rem 0;
}
.cwg-discord-admin-status-grid > article {
  display: grid;
  gap: .25rem;
  padding: .85rem;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--bg2);
}
.cwg-discord-admin-status-grid strong { font-size: 1.35rem; }
.cwg-discord-admin-status-grid span { color: var(--muted); font-size: .78rem; }
.cwg-discord-admin-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.cwg-discord-admin-form { display: grid; gap: .8rem; }
.cwg-discord-feature-options { display: grid; gap: .6rem; }
.cwg-discord-feature-options label { display: flex; gap: .65rem; align-items: flex-start; }
.cwg-discord-config-summary { display: grid; gap: .35rem; overflow-wrap: anywhere; }
.cwg-discord-job-list { display: grid; gap: .55rem; }
.cwg-discord-job-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .55rem;
  padding: .7rem;
  border: 1px solid var(--border);
  border-radius: 12px;
}
.cwg-discord-job-list article span { display: grid; min-width: 0; }
.cwg-discord-job-list small,
.cwg-discord-job-list p { color: var(--muted); overflow-wrap: anywhere; }
.cwg-discord-job-list p { grid-column: 1 / -1; margin: 0; }
.cwg-discord-job-list em { font-size: .75rem; font-weight: 800; }
.cwg-discord-job-list em.is-failed { color: #ff8c8c; }
.cwg-discord-job-list em.is-completed { color: #66d990; }
.cwg-discord-job-list em.is-pending,
.cwg-discord-job-list em.is-processing { color: #ffd166; }

@media (max-width: 900px) {
  .cwg-discord-admin-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cwg-discord-admin-columns { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  .cwg-discord-session-panel { grid-template-columns: 1fr; }
  .cwg-discord-profile-actions,
  .cwg-discord-session-links,
  .cwg-discord-invitation-actions,
  .cwg-discord-reconcile-actions { align-items: stretch; }
  .cwg-discord-profile-actions > *,
  .cwg-discord-session-links > *,
  .cwg-discord-invitation-actions > *,
  .cwg-discord-reconcile-actions > * { width: 100%; }
  .cwg-discord-profile-actions .btn,
  .cwg-discord-session-links .btn,
  .cwg-discord-invitation-actions .btn,
  .cwg-discord-reconcile-actions .btn { width: 100%; text-align: center; }
  .cwg-discord-invitation-details { grid-template-columns: 1fr; }
  .cwg-discord-admin-status-grid { grid-template-columns: 1fr; }
  .cwg-discord-person-menu[open] > div {
    position: fixed;
    top: 50%;
    right: 12px;
    left: 12px;
    width: auto;
    max-height: 82dvh;
    transform: translateY(-50%);
  }
  .cwg-discord-removed-list > div { align-items: stretch; flex-direction: column; }
}

/* V534: Discord Control Center revamp */
.cwg-discord-health-strip{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.7rem;
  margin:1rem 0;
}
.cwg-discord-health-strip article{
  display:grid;
  gap:.2rem;
  min-width:0;
  padding:.85rem .9rem;
  border:1px solid var(--border);
  border-radius:15px;
  background:var(--bg2);
}
.cwg-discord-health-strip article::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--muted);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--muted) 14%,transparent);
}
.cwg-discord-health-strip article.is-good::before{background:#66d990;box-shadow:0 0 0 4px color-mix(in srgb,#66d990 14%,transparent)}
.cwg-discord-health-strip article.is-warning::before{background:#ffd166;box-shadow:0 0 0 4px color-mix(in srgb,#ffd166 14%,transparent)}
.cwg-discord-health-strip article.is-bad::before{background:#ff8c8c;box-shadow:0 0 0 4px color-mix(in srgb,#ff8c8c 14%,transparent)}
.cwg-discord-health-strip span{color:var(--muted);font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.cwg-discord-health-strip strong{font-size:1.08rem;overflow-wrap:anywhere}
.cwg-discord-health-strip small{color:var(--muted);line-height:1.35;overflow-wrap:anywhere}
.cwg-discord-attention-card{border-color:color-mix(in srgb,#ffb454 45%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,#ffb454 7%,var(--panel)),var(--panel))}
.cwg-discord-warning-list{display:grid;gap:.65rem}
.cwg-discord-warning-list p{margin:0;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:var(--bg2);overflow-wrap:anywhere}
.cwg-discord-control-grid,.cwg-discord-tools-grid,.cwg-discord-history-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin:1rem 0;
}
.cwg-discord-control-card,.cwg-discord-tool-card{margin:0}
.cwg-discord-simple-form{display:grid;gap:.85rem}
.cwg-discord-switch,.cwg-discord-feature-options label{
  display:flex!important;
  align-items:flex-start!important;
  gap:.7rem!important;
  padding:.78rem;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--bg2);
  cursor:pointer;
}
.cwg-discord-switch input,.cwg-discord-feature-options input{width:18px!important;height:18px;margin:.12rem 0 0;accent-color:#5865f2;flex:0 0 auto}
.cwg-discord-switch span,.cwg-discord-feature-options label span{display:grid;gap:.18rem;min-width:0}
.cwg-discord-switch small,.cwg-discord-feature-options small{color:var(--muted);font-weight:500;line-height:1.35}
.cwg-discord-connection-details,.cwg-discord-history-card{padding:0;overflow:hidden}
.cwg-discord-connection-details>summary,.cwg-discord-history-card>summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:1rem 1.1rem;
  cursor:pointer;
  list-style:none;
}
.cwg-discord-connection-details>summary::-webkit-details-marker,.cwg-discord-history-card>summary::-webkit-details-marker{display:none}
.cwg-discord-connection-details>summary>span:first-child,.cwg-discord-history-card>summary>span:first-child{display:grid;gap:.18rem}
.cwg-discord-connection-details>summary small,.cwg-discord-history-card>summary small{color:var(--muted);font-weight:500}
.cwg-discord-connection-details[open]>summary,.cwg-discord-history-card[open]>summary{border-bottom:1px solid var(--border)}
.cwg-discord-connection-details .cwg-discord-config-summary{padding:1rem 1.1rem}
.cwg-discord-config-summary>div{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:.7rem;padding:.55rem 0;border-bottom:1px solid var(--border)}
.cwg-discord-config-summary>div:last-child{border-bottom:0}
.cwg-discord-config-summary span{color:var(--muted);font-size:.8rem;font-weight:750}
.cwg-discord-config-summary code{overflow-wrap:anywhere}
.cwg-discord-section-head{align-items:flex-start}
.cwg-discord-inline-actions,.cwg-discord-problem-actions,.cwg-discord-log-actions,.cwg-discord-row-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.cwg-discord-inline-actions form,.cwg-discord-problem-actions form,.cwg-discord-log-actions form,.cwg-discord-row-actions form{margin:0}
.cwg-discord-problem-list{display:grid;gap:.7rem}
.cwg-discord-problem-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:center;
  padding:.85rem;
  border:1px solid color-mix(in srgb,#ef4444 30%,var(--border));
  border-radius:14px;
  background:color-mix(in srgb,#ef4444 4%,var(--bg2));
}
.cwg-discord-problem-main{display:grid;gap:.3rem;min-width:0}
.cwg-discord-problem-title{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.cwg-discord-problem-main small,.cwg-discord-problem-main p{color:var(--muted);overflow-wrap:anywhere}
.cwg-discord-problem-main p{margin:.2rem 0 0;padding:.6rem .7rem;border-radius:10px;background:color-mix(in srgb,#000 13%,transparent);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;line-height:1.45}
.cwg-discord-state{display:inline-flex;padding:.22rem .48rem;border-radius:999px;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.cwg-discord-state.is-failed{background:color-mix(in srgb,#ef4444 18%,transparent);color:#ffaaaa}
.cwg-discord-state.is-warning{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#ffd38a}
.cwg-discord-empty-state{display:grid;gap:.25rem;padding:1rem;border:1px solid color-mix(in srgb,#66d990 35%,var(--border));border-radius:14px;background:color-mix(in srgb,#66d990 6%,var(--bg2))}
.cwg-discord-empty-state strong{color:#8ce6ac}
.cwg-discord-empty-state span{color:var(--muted)}
.cwg-discord-tool-card{display:flex;flex-direction:column;align-items:flex-start}
.cwg-discord-tool-card p{flex:1}
.cwg-discord-activity-card{margin-top:1rem}
.cwg-discord-job-list-clean article{background:var(--bg2)}
.cwg-discord-history-body{padding:1rem 1.1rem}
.cwg-discord-history-grid .cwg-discord-history-card{margin:0;align-self:start}
.cwg-discord-job-list .cwg-discord-row-actions{grid-column:1/-1;justify-content:flex-end}
.cwg-discord-log-card{margin-top:1rem}
.cwg-discord-log-actions{justify-content:flex-end;margin-bottom:.8rem}
.cwg-discord-bot-log{max-height:34rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem;line-height:1.45;padding:1rem;border-radius:.75rem;background:#0d1117;color:#d6e1ec}
.btn.danger{border-color:color-mix(in srgb,#ef4444 55%,var(--border))!important;color:#ffaaaa!important}

@media(max-width:1050px){
  .cwg-discord-health-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
  .cwg-discord-control-grid,.cwg-discord-tools-grid,.cwg-discord-history-grid{grid-template-columns:1fr}
  .cwg-discord-problem-item{grid-template-columns:1fr}
  .cwg-discord-problem-actions{justify-content:flex-start}
}
@media(max-width:620px){
  .cwg-discord-health-strip{grid-template-columns:1fr 1fr}
  .cwg-discord-section-head{display:grid;gap:.8rem}
  .cwg-discord-inline-actions,.cwg-discord-problem-actions,.cwg-discord-log-actions{align-items:stretch}
  .cwg-discord-inline-actions form,.cwg-discord-problem-actions form,.cwg-discord-log-actions form{width:100%}
  .cwg-discord-inline-actions .btn,.cwg-discord-problem-actions .btn,.cwg-discord-log-actions .btn{width:100%}
  .cwg-discord-config-summary>div{grid-template-columns:1fr}
}
@media(max-width:420px){
  .cwg-discord-health-strip{grid-template-columns:1fr}
}


/* V535: clearer Discord queue and repair labels */
.cwg-discord-queue-summary{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}
.cwg-discord-queue-summary span{display:inline-flex;padding:.28rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--bg2);font-size:.74rem;font-weight:800;color:var(--muted)}
.cwg-discord-job-list em.is-ready{color:#8ce6ac}
.cwg-discord-job-list em.is-scheduled{color:#8fc7ff}
.cwg-discord-job-list em.is-retrying{color:#ffd166}
.cwg-discord-job-list em.is-waiting{color:#ffb4a2}
.cwg-discord-job-list em.is-processing{color:#d7b5ff}
@media(max-width:620px){.cwg-discord-queue-summary{justify-content:flex-start}}

/* v546: integrate the Discord promo into the private session panel. */
.cwg-discord-session-copy {
  display: grid;
  gap: .18rem;
  min-width: 0;
}
.cwg-discord-session-purpose {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .38rem;
  margin-top: .4rem !important;
  font-size: .9rem;
}
.cwg-session-participants-tip {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
  border: 1px solid color-mix(in srgb, #5865f2 55%, var(--border));
  border-radius: 50%;
  color: #cbd0ff;
  background: color-mix(in srgb, #5865f2 16%, var(--bg2));
  cursor: help;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1;
  outline: none;
}
.cwg-session-participants-tip__bubble {
  position: absolute;
  z-index: 20;
  left: 50%;
  bottom: calc(100% + .65rem);
  width: min(280px, 78vw);
  padding: .65rem .75rem;
  border: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
  border-radius: 11px;
  background: #171922;
  color: #f4f5ff;
  box-shadow: 0 14px 34px rgba(0,0,0,.42);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, .25rem);
  transition: opacity .15s ease, transform .15s ease;
}
.cwg-session-participants-tip__bubble::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: .65rem;
  height: .65rem;
  border-right: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
  border-bottom: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
  background: #171922;
  transform: translate(-50%, -50%) rotate(45deg);
}
.cwg-session-participants-tip:hover .cwg-session-participants-tip__bubble,
.cwg-session-participants-tip:focus-visible .cwg-session-participants-tip__bubble,
.cwg-session-participants-tip:focus .cwg-session-participants-tip__bubble {
  opacity: 1;
  transform: translate(-50%, 0);
}
.cwg-session-participants-tip:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, #5865f2 35%, transparent);
}
.cwg-discord-server-button {
  white-space: nowrap;
}
@media (max-width: 650px) {
  .cwg-discord-session-purpose {
    display: grid;
    grid-template-columns: 1.65rem minmax(0, 1fr);
    align-items: center;
    gap: .45rem .65rem;
    width: 100%;
  }
  .cwg-discord-session-purpose__text {
    grid-column: 1 / -1;
  }
  .cwg-session-participants-tip {
    grid-column: 1;
    justify-self: start;
  }
  .cwg-session-participants-tip__bubble {
    left: calc(100% + .65rem);
    right: auto;
    top: 50%;
    bottom: auto;
    width: min(300px, calc(100vw - 5rem));
    transform: translate(.25rem, -50%);
  }
  .cwg-session-participants-tip__bubble::after {
    left: -.36rem;
    right: auto;
    top: 50%;
    border-right: 0;
    border-top: 0;
    border-left: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
    border-bottom: 1px solid color-mix(in srgb, #5865f2 45%, var(--border));
    transform: translateY(-50%) rotate(45deg);
  }
  .cwg-session-participants-tip:hover .cwg-session-participants-tip__bubble,
  .cwg-session-participants-tip:focus-visible .cwg-session-participants-tip__bubble,
  .cwg-session-participants-tip:focus .cwg-session-participants-tip__bubble {
    transform: translate(0, -50%);
  }
}

/* v547: larger, easier-to-read participant location help bubble. */
.cwg-session-participants-tip {
  width: 1.65rem;
  height: 1.65rem;
  font-size: .94rem;
}
.cwg-session-participants-tip__bubble {
  width: min(420px, 88vw);
  padding: 1rem 1.1rem;
  border-radius: 14px;
  font-size: .98rem;
  line-height: 1.55;
  font-weight: 750;
  box-shadow: 0 18px 48px rgba(0,0,0,.5);
}
@media (max-width: 620px) {
  .cwg-session-participants-tip__bubble {
    width: min(340px, 86vw);
    font-size: .94rem;
  }
}


/* v551: keep private Discord channel links hidden until the session window opens. */
.cwg-discord-session-panel.is-unavailable {
  grid-template-columns: minmax(0, 1fr);
  border-style: dashed;
  background: color-mix(in srgb, #5865f2 7%, transparent);
}
.cwg-discord-session-unavailable {
  margin-top: .35rem !important;
  color: #cbd0ff !important;
  font-weight: 800;
  font-size: 1rem;
}

/* v552: keep the participant tooltip inside the mobile viewport. */
@media (max-width: 420px) {
  .cwg-session-participants-tip__bubble {
    width: calc(100vw - 4.75rem);
  }
}

/* v554: calm inline Discord session provisioning state; no full-page refresh. */
.cwg-discord-syncing {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 2.35rem;
  padding: .55rem .8rem;
  border: 1px solid rgba(255,209,102,.28);
  border-radius: .75rem;
  background: rgba(255,209,102,.08);
  color: #ffd166;
  font-weight: 700;
}
.cwg-discord-syncing__spinner {
  width: .9rem;
  height: .9rem;
  flex: 0 0 auto;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: cwg-discord-sync-spin .9s linear infinite;
}
.cwg-discord-syncing[data-state="waiting_for_discord"] .cwg-discord-syncing__spinner,
.cwg-discord-syncing[data-state="retrying"] .cwg-discord-syncing__spinner { animation-duration: 1.8s; }
.cwg-discord-syncing[data-state="offline"] { color: #f3c77a; opacity: .9; }
@keyframes cwg-discord-sync-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .cwg-discord-syncing__spinner { animation: none; border-right-color: currentColor; opacity: .65; } }


/* V715: Participants guest search uses the shared CrosswiseGaming search style. */
.session-participants-drawer-content .cwg-guest-search-form{
  display:grid;
  gap:.55rem;
}
.session-participants-drawer-content .cwg-guest-search-form>label{
  display:grid;
  gap:5px;
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.session-participants-drawer-content .cwg-guest-search-input{
  width:100%;
  min-width:0;
  min-height:38px;
  padding:8px 10px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg2);
  color:var(--text);
  caret-color:var(--gold);
  box-shadow:none;
  filter:none;
  outline:none;
  font:inherit;
  font-size:.9rem;
  line-height:1.2;
  font-weight:700;
  letter-spacing:normal;
  text-transform:none;
  -webkit-text-fill-color:var(--text);
}
.session-participants-drawer-content .cwg-guest-search-input::placeholder{color:var(--muted);opacity:.82;}
.session-participants-drawer-content .cwg-guest-search-input:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 50%,transparent);
}
[data-theme="light"] .session-participants-drawer-content .cwg-guest-search-input{
  background:var(--panel2);
  color-scheme:light;
}
.session-participants-drawer-content .cwg-guest-search-results{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg2);
  box-shadow:none;
}
