/* P11+ social dock (party / chat / guild). Uses the palette of style.css. */
.social-dock{position:absolute;left:12px;top:206px;z-index:30;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:min(360px,calc(100% - 24px));pointer-events:none}
.social-dock>*{pointer-events:auto}
.social-toggle{position:relative;min-height:34px;padding:6px 14px;border:1px solid #d5bd7a99;border-radius:17px;background:linear-gradient(145deg,#2b4a43ee,#142c2aee);color:#f1dcaa;font:inherit;font-size:12px;cursor:pointer;box-shadow:0 4px 14px #0007}
.social-toggle[aria-expanded="true"]{background:linear-gradient(145deg,#705d35,#473b27)}
.social-badge{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#c4573f;color:#fff;font-size:10px;font-style:normal;line-height:17px;text-align:center}
.social-panel{width:min(360px,calc(100vw - 32px));max-height:min(430px,calc(100dvh - 330px));display:flex;flex-direction:column;border:1px solid #b8b37b55;border-radius:10px;background:#0b2224f2;box-shadow:0 10px 30px #000a;color:var(--ink,#e8e8d8);font-size:12px;overflow:hidden}
.social-tabs{display:flex;border-bottom:1px solid #b8b37b33}
.social-tab{flex:1;min-height:32px;border:0;background:transparent;color:#a9c2ba;font:inherit;cursor:pointer}
.social-tab.selected{color:#f1dcaa;background:#ffffff0d;box-shadow:inset 0 -2px #dfc17c}
.social-body{padding:10px;overflow:auto;display:flex;flex-direction:column;gap:9px;min-height:120px}
.social-section{display:flex;flex-direction:column;gap:6px}
.social-section h3{margin:0;font-size:12px;color:#dfc17c;font-weight:600}
.social-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.social-member{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:5px 7px;border-radius:6px;background:#ffffff08}
.social-member.offline{opacity:.65}
.social-member .name{flex:1 1 auto;min-width:5em;overflow-wrap:anywhere}
.social-member .tag{font-size:10px;font-weight:500;padding:1px 6px;border-radius:8px;background:#705d3566;color:#f1dcaa}
.social-member .tag.ready{background:#2f6d5866;color:#a5f0d4}
.social-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.social-row>span{flex:1 1 auto;min-width:8em;overflow-wrap:anywhere}
.social-row input,.social-row select{flex:1 1 8em;min-width:0;min-height:29px;padding:4px 8px;border:1px solid #70998b77;border-radius:5px;background:#06191bcc;color:var(--ink,#e8e8d8);font:inherit}
.social-chat{display:flex;flex-direction:column;gap:3px;max-height:230px;overflow:auto;padding-right:2px}
.social-chat p{margin:0;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}
.social-chat .ch{color:#8da6a0;margin-right:4px}
.social-chat .who{color:#dfc17c;margin-right:4px}
.social-chat .sys{color:#8da6a0;font-style:italic}
.social-bar{height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}
.social-bar i{display:block;height:100%;background:linear-gradient(90deg,#c4573f,#dfc17c)}
@media(max-width:740px){.social-dock{top:190px;left:8px}}
.social-notice{margin:0;padding:6px 8px;border-radius:6px;background:#ffffff08;white-space:pre-wrap;overflow-wrap:anywhere}

/* P21.5: original parchment / jade panel, bounded by the battlefield. */
.original-layout .social-dock{left:8px;top:29%;width:calc(100% - 16px);max-width:none;max-height:51%;gap:5px}
.original-layout .social-toggle{min-height:30px;border:1px solid #aa955f;border-radius:3px;background:linear-gradient(#a8c5a2,#547c61);color:#fff7ce;text-shadow:0 1px 2px #35452d;box-shadow:0 2px 6px #0005}
.original-layout .social-panel{width:100%;max-width:100%;max-height:calc(51dvh - 40px);min-height:0;border:3px double #aa955f;border-radius:6px;background:#dbe3cf;color:#354336;box-shadow:0 6px 20px #0007}
.original-layout .social-heading{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:7px 10px;background:linear-gradient(90deg,#547c61,#a8c5a2,#547c61);border-bottom:1px solid #b9a565;color:#fff7ce;font-family:KaiTi,'DFKai-SB',serif;font-size:19px;letter-spacing:3px}
.original-layout .social-close{width:27px;height:27px;flex:0 0 27px;padding:0;border:0;background:transparent;cursor:pointer}
.original-layout .social-close img{width:100%;height:100%;object-fit:contain}
.original-layout .social-tabs{flex-shrink:0;background:#749577;border-color:#a69c6a}
.original-layout .social-tab{color:#fff2c5}
.original-layout .social-tab.selected{color:#56390f;background:#ebe2ac;box-shadow:inset 0 -2px #ae7f24}
.original-layout .social-body{min-height:0;padding:9px;overflow:auto;background:radial-gradient(ellipse at top,#f8f0d7,transparent 80%);overscroll-behavior:contain}
.original-layout .social-section h3,.original-layout .social-chat .who{color:#405631}
.original-layout .social-member,.original-layout .social-notice{background:#eef1dc;border:1px solid #aeb590;border-radius:3px}
.original-layout .social-member .tag{background:#d7cfa1;color:#56390f}
.original-layout .social-member .tag.ready{background:#c4d8b4;color:#345932}
.original-layout .social-row input,.original-layout .social-row select{background:#f8f3df;color:#32492e;border-color:#9faa82}
.original-layout .social-chat .ch,.original-layout .social-chat .sys{color:#647258}
.original-layout .social-bar{background:#c6d0b7}
.original-layout .social-bar i{background:linear-gradient(90deg,#547c61,#baa55d)}
