/* Crosslink V72 — lighter, friendlier online lobby. Kept separate from legacy game controls. */
.social-v71{box-sizing:border-box;width:100%;max-width:none;margin:16px auto 22px;padding:20px 24px;border:1px solid #cbdfee;border-radius:21px;background:#fff;color:#1c3454;box-shadow:0 8px 28px rgba(31,65,100,.055)}
.social-v71 *{box-sizing:border-box}
.social-v71 details{color:inherit}
.social-v71 summary{cursor:pointer;font-weight:800;font-size:1.27rem;line-height:1.45;color:#183c65;list-style-position:inside;padding:0 0 4px}
.social-v71 details>p{font-size:1rem;color:#526783;margin:7px 0 15px;line-height:1.5}
.social-v71 label{display:inline-flex;align-items:center;gap:10px;padding:9px 13px;border-radius:12px;background:#edf7f2;color:#244f3e;font-size:.95rem;font-weight:650;line-height:1.4;text-transform:none;letter-spacing:normal}
.social-v71 label input{accent-color:#1571c9;width:18px;height:18px;margin:0;flex:none}
.social-v71 .social-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:12px}
.social-v71 .social-columns>section{min-width:0;background:#f5f9ff;border:1px solid #dce8f7;border-radius:16px;padding:16px 18px}
.social-v71 h3{font-size:1.13rem;color:#213e63;line-height:1.35;margin:0 0 12px;font-weight:780}
.social-v71 p{line-height:1.5}
.social-v71 #socialPlayers>p,.social-v71 #socialRooms>p{margin:0;color:#63748c;font-size:.95rem}
.social-v71 button{cursor:pointer;border-radius:10px;border:1px solid #1269b9;padding:9px 16px;background:#1477cf;color:white;font-weight:750;white-space:nowrap;box-shadow:none;line-height:1.3}
.social-v71 button:hover{background:#0d5fa8}
.social-v71 button:focus-visible,.social-v71 summary:focus-visible,.social-v71 input:focus-visible{outline:3px solid #e5aa2e;outline-offset:2px}
.social-v71 .social-row,.social-v71 .social-request{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:9px 0;padding:12px 14px;border:1px solid #d6e3f0;border-radius:12px;flex-wrap:wrap;background:#fff;color:#243d5d}
.social-v71 #socialIncoming:empty{display:none}
.social-v71 #socialNotice{min-height:1.2em;margin:10px 0 0;color:#235e85;font-weight:600}
.social-v71 #socialNotice:empty{min-height:0;margin:0}
@media(max-width:680px){.social-v71{padding:16px;margin:12px auto}.social-v71 .social-columns{grid-template-columns:1fr}.social-v71 .social-columns>section{padding:14px}.social-v71 label{font-size:.9rem}}
@media(prefers-color-scheme:dark){/* Respect page theme: this panel intentionally follows Crosslink's light Online page, not OS dark mode. */}

/* V96: clean centred online players heading. */
.social-v71 summary{text-align:center;list-style:none;padding:0 0 14px;font-size:1.38rem;letter-spacing:.025em}
.social-v71 summary::-webkit-details-marker{display:none}
.social-v71 summary::marker{content:""}

/* V219: Player names and voluntary public locations in Who's Online. */
.social-v71 .social-player-identity{min-width:0;display:inline-flex;align-items:baseline;gap:0;flex-wrap:wrap;overflow-wrap:anywhere}
.social-v71 .social-player-identity>strong{font-weight:750}
.social-v71 .social-player-identity>span{font-size:.92em}

/* V220: voluntary public location inline with account-owned player names. */
.cl-player-public-location{opacity:.5;font-size:.9em;font-weight:500;white-space:normal;overflow-wrap:anywhere}

/* V222: Compact independent area selectors above each social list. */
.social-v71 .social-region-filters{display:flex;flex-wrap:wrap;gap:7px;margin:-2px 0 13px}
.social-v71 .social-region-filters .social-region-choice{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #d2e2ef;border-radius:9px;background:#fff;color:#284767;font-size:.86rem;font-weight:650;cursor:pointer}
.social-v71 .social-region-filters input{width:16px;height:16px;accent-color:#1477cf;cursor:pointer}
