/* PC101 — global online, in-chat people popover, density controls, live room indicator. */
.pc101-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pc101-global{display:inline-flex;align-items:center;gap:7px;color:#c4d8ce;background:#12241fb3;border:1px solid #ffffff25;border-radius:100px;padding:8px 13px;font-size:12px;font-weight:650;white-space:nowrap}
.pc101-global strong{color:var(--pc-accent,#88d6a6);font-size:15px}
.pc101-presence-dot{width:8px;height:8px;flex:none;background:#58d99b;border-radius:50%}
.pc101-chat-tools{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:8px 12px 10px;min-height:38px;z-index:15}
.pc101-people-button,.pc101-zoom button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ffffff36;background:#1a302a;color:#e3f3e8;border-radius:9px;cursor:pointer;min-height:38px;padding:7px 10px;font-size:12px;font-weight:750}
.pc101-people-button strong{color:var(--pc-accent,#8fdcaf);font-size:14px}
.pc101-people-button[aria-expanded="true"]{border-color:var(--pc-accent,#8fdcaf);background:#243d33}
.pc101-online-control{position:relative;margin-left:auto;order:2}
.pc101-zoom{display:flex;align-items:center;gap:4px;order:1;color:#bad0c3;font-size:11px}
.pc101-zoom button{min-width:35px;padding:5px 8px;font-size:13px}
.pc101-zoom-value{white-space:nowrap}
#pc101-zoom-value{display:inline-block;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}
#pc101-online-control .pc101-online-popover{position:absolute;right:0;bottom:calc(100% + 7px);width:min(320px,calc(100vw - 48px));max-height:min(440px,65vh);overflow-y:auto;z-index:55;border:1px solid #ffffff3c;border-radius:13px;padding:10px;background:#14251f;box-shadow:0 14px 40px #000b}
#pc101-online-control .pc101-online-popover[hidden]{display:none!important}
#pc101-online-control .pc45-chat-online-list{display:block;margin:0;padding:0;max-height:none;overflow:visible}
#pc101-online-control .pc45-chat-online-person{min-height:46px}
#pc101-online-control .pc45-chat-online-avatar{flex:0 0 48px;min-width:48px;width:48px}
#pc101-online-control .pc100-online-label{font-size:11px}
/* Keep chat legible, but allow 80–120% density while preserving the original message renderer. */
#pc-chat-log .pc-chat-message{zoom:var(--pc101-chat-zoom,1)}
#pc-chat-log{min-height:330px}
.pc25-room-link.pc101-live-event{position:relative;border-color:#ed93659c!important;animation:pc101-event-pulse 2.8s ease-in-out infinite}
.pc25-room-link.pc101-live-event:before{content:"";display:inline-block;width:7px;height:7px;margin-right:3px;border-radius:50%;background:#ff9b60;box-shadow:0 0 7px #ff875d}
@keyframes pc101-event-pulse{0%,100%{box-shadow:inset 0 0 0 1px #ff8b5020,0 0 0 #ff8b5000}50%{box-shadow:inset 0 0 0 1px #ffae704d,0 0 13px #fb8c4638}}
.pc101-chat-tools button:focus-visible{outline:2px solid var(--pc-accent,#8fdcaf);outline-offset:2px}
@media(max-width:520px){.pc101-chat-tools{margin:7px 7px 10px}.pc101-header{align-items:flex-start}.pc101-global{font-size:11px}.pc101-people-button{font-size:11px}.pc101-zoom button{min-width:31px;padding:6px}}
@media(prefers-reduced-motion:reduce){.pc25-room-link.pc101-live-event{animation:none}.pc25-room-link.pc101-live-event:before{box-shadow:none}}

/* PC102: Controls immediately ABOVE the message input, inside chat, on the right. */
#pc-chat{position:relative}
#pc-chat .pc101-chat-tools{
  display:flex!important;flex-wrap:wrap;align-items:center;justify-content:flex-end;
  gap:8px;margin:8px 14px 6px;padding:0;min-height:40px;
  position:relative;z-index:25;visibility:visible!important;opacity:1!important
}
#pc-chat .pc101-online-control{order:2;margin:0;position:relative}
#pc-chat .pc101-zoom{order:1;margin-left:auto;display:flex!important;align-items:center;gap:4px}
#pc-chat .pc101-online-popover{right:0!important;left:auto!important;bottom:calc(100% + 6px)!important;top:auto!important;z-index:80!important}
#pc-chat .pc101-people-button{min-height:36px}
#pc-chat-log .pc-chat-message{zoom:var(--pc101-chat-zoom,1)!important}
#pc101-zoom-value{min-width:42px!important}
@media(max-width:480px){#pc-chat .pc101-chat-tools{margin:7px 7px 4px;gap:5px}#pc-chat .pc101-people-button span{font-size:11px}#pc101-zoom-value{min-width:34px!important}}
