/* A small MMO-style party tray, anchored to the existing partner HUD. */
body.gameShell #worldPanel.hasPartyDock{z-index:7;padding:5px 11px;overflow:visible;user-select:none;-webkit-user-select:none}
body.gameShell #worldPanel.hasPartyDock>div:first-child{cursor:pointer;gap:8px}
body.gameShell #worldPanel.hasPartyDock #leadBtn{min-height:44px;display:flex;align-items:center;gap:12px;text-align:left;font-size:12px;font-weight:700}
body.gameShell #worldPanel.hasPartyDock #leadBtn:after{content:'⌃';font-size:18px;font-weight:500;color:#a8cfdf;line-height:1;transition:transform .15s}
body.gameShell #worldPanel.partyExpanded #leadBtn:after{transform:rotate(180deg)}
body.gameShell #worldPanel.hasPartyDock #leadBtn:disabled{opacity:.65;cursor:default}
body.gameShell #worldPanel.hasPartyDock #leadBtn:focus-visible{outline:2px solid #b0e9ff;outline-offset:3px;border-radius:5px}
#partyDock{position:absolute;bottom:calc(100% + 9px);left:0;width:296px;max-width:calc(100vw - 28px);max-height:calc(var(--appHeight,100dvh) - 175px);overflow:auto;padding:12px;border:1px solid #a5d6ef52;border-radius:18px;background:linear-gradient(145deg,#153950f7,#0a2234fa);box-shadow:0 12px 40px #00101c70;backdrop-filter:blur(18px);overscroll-behavior:contain;touch-action:pan-y;box-sizing:border-box}
#partyDock[hidden]{display:none!important}
#partyDock .pdHeading{display:flex;align-items:center;justify-content:space-between;margin:1px 4px 10px;font-size:10px;font-weight:700;letter-spacing:1.6px;color:#a9d2e1}
#partyDock .pdHeading b{font-size:11px;letter-spacing:.4px;color:#e2eff6}
#pdRoster{display:grid;gap:5px}
#partyDock .pdMember{display:grid;grid-template-columns:42px minmax(0,1fr) 48px;align-items:center;gap:7px;min-height:58px;width:100%;margin:0;padding:6px 8px;text-align:left;border-radius:11px;border:1px solid #729cae2b;background:#28465980;color:#f1f7fc;touch-action:manipulation}
#partyDock .pdMember:not(:disabled):hover{background:#355e72b3;border-color:#a3ddec77}
#partyDock .pdMember:focus-visible{outline:2px solid #b0e9ff;outline-offset:1px}
#partyDock .pdMember.pdActive{background:linear-gradient(105deg,#286b6a94,#23455b90);border-color:#86d5bf8c;box-shadow:inset 3px 0 0 #85d4b9}
#partyDock .pdMember:disabled{cursor:default;opacity:.58}
#partyDock .pdPortrait{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#0a263650}
#partyDock .pdPortrait img{width:40px;height:40px;object-fit:contain;image-rendering:pixelated}
#partyDock .pdInfo{display:flex;flex-direction:column;min-width:0;gap:4px}
#partyDock .pdName{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:750;line-height:1.25}
#partyDock .pdShiny{color:#ffe6a0}
#partyDock .pdStats{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#b8d2df;font-variant-numeric:tabular-nums}
#partyDock .pdHpTrack{height:4px;border-radius:2px;background:#061a29a6;overflow:hidden;display:block}
#partyDock .pdHpTrack i{height:100%;display:block;border-radius:inherit;transition:width .15s}
#partyDock .pdState{font-size:8px;letter-spacing:.6px;font-weight:800;text-align:right;color:#a2cfde}
#partyDock .pdActive .pdState{color:#adf0d9}
#partyDock .pdFainted .pdState{color:#efacb7}
#partyDock .pdHint{margin:10px 4px 1px;color:#b5cbd5;font-size:10px;line-height:1.5}
body.gameShell.touchUI #worldPanel.hasPartyDock{padding:2px 9px;top:112px}
body.gameShell.touchUI #worldPanel.hasPartyDock #leadBtn{font-size:11px;min-height:44px}
body.gameShell.touchUI #worldPanel.hasPartyDock #hudPartnerPortrait{width:30px;height:30px}
body.gameShell.touchUI #partyDock{bottom:auto;top:calc(100% + 8px);max-height:calc(var(--appHeight,100dvh) - 184px)}
body.gameShell.touchUI #worldPanel.hasPartyDock #leadBtn:after{transform:rotate(180deg)}
body.gameShell.touchUI #worldPanel.partyExpanded #leadBtn:after{transform:none}
@media(max-height:500px) and (orientation:landscape){
 body.gameShell.touchUI #worldPanel.hasPartyDock{top:85px}
 body.gameShell.touchUI #partyDock{max-height:calc(var(--appHeight,100dvh) - 148px)}
 #partyDock .pdHint{display:none}
}
@media(prefers-reduced-motion:reduce){#partyDock *,body.gameShell #worldPanel.hasPartyDock #leadBtn:after{transition:none!important}}
