/* Optional lounge shares community theme variables and native navigation. */
.cm-lobby{min-width:0;color:var(--cm-text);margin:0 0 16px}
.cm-lobby[hidden]{display:none!important}
.cm-lobby-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 12px}
.cm-lobby-heading h2{font-size:19px;margin:0 0 5px;line-height:1.3}
.cm-lobby-heading p{font-size:12px;color:var(--cm-muted);margin:0;line-height:1.5}
.cm-lobby-camera{display:flex;align-items:center;gap:5px;flex-shrink:0}
.cm-lobby-camera>span{font-size:11px;min-width:42px;text-align:center}
.cm-lobby-selectors{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.cm-lobby-selectors>label{display:grid;gap:5px;flex:1 1 180px;min-width:0;font-size:12px;font-weight:600}
.cm-lobby-selectors select{width:100%;min-width:0;max-width:100%;min-height:36px;background:var(--cm-surface);color:var(--cm-text);border:1px solid var(--cm-line);border-radius:5px;padding:7px}
.cm-lobby-stage{position:relative;isolation:isolate;min-width:0;border:1px solid var(--cm-line);border-radius:8px;background:var(--cm-soft);overflow:hidden}
.cm-lobby-viewport{position:relative;height:clamp(420px,65dvh,800px);overflow:hidden;min-width:0;background:radial-gradient(ellipse at 40% 40%,var(--cm-accent-soft),transparent 75%),var(--cm-soft)}
.cm-lobby-world{position:relative;width:1280px;min-width:0}
.cm-lobby-people{position:absolute;inset:0;pointer-events:none}
.cm-lobby-person{position:absolute;width:42px;height:55px;transform:translate(-50%,-100%)}
.cm-lobby-person svg{width:100%;height:100%;display:block;filter:drop-shadow(0 3px 2px #152c4426)}
.cm-lobby-person-name{position:absolute;left:50%;top:100%;transform:translateX(-50%);font-size:10px;line-height:1.3;padding:2px 5px;border:1px solid var(--cm-line);border-radius:3px;background:var(--cm-surface);color:var(--cm-text);white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis;scale:var(--cm-lobby-label-scale,1);transform-origin:0 0}
.cm-lobby-speech{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:180px;box-sizing:border-box;background:var(--cm-surface);color:var(--cm-text);border:1px solid var(--cm-accent);border-radius:7px;padding:8px 10px;font-size:12px;line-height:1.4;overflow-wrap:anywhere;box-shadow:0 4px 12px #122c4426;scale:var(--cm-lobby-label-scale,1);transform-origin:0 100%}
.cm-lobby-speech:after{content:"";position:absolute;left:calc(50% - 5px);bottom:-6px;width:9px;height:9px;background:var(--cm-surface);border-right:1px solid var(--cm-accent);border-bottom:1px solid var(--cm-accent);transform:rotate(45deg)}
.cm-lobby-roster{max-height:90px;overflow:auto}
.cm-lobby-roster:empty{display:none}
@container(max-width:599px){.cm-lobby-person-name{display:none}.cm-lobby-person svg{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:calc(42px * max(1,.55 * var(--cm-lobby-label-scale,1)));height:calc(55px * max(1,.55 * var(--cm-lobby-label-scale,1)))}}
.cm-presence-badge{display:inline-flex;align-items:center;gap:4px;margin-inline-start:6px;font-size:10px;font-weight:400;color:var(--cm-muted);white-space:nowrap}
.cm-presence-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cm-muted);border:1px solid currentColor}
.cm-presence-badge[data-online=true]:before{background:#00a65a}
.cm-lobby-card{position:absolute;top:14px;right:14px;max-height:calc(100% - 28px);z-index:10;width:290px;max-width:calc(100% - 28px);box-sizing:border-box;border:1px solid var(--cm-line);border-radius:8px;background:var(--cm-surface);color:var(--cm-text);padding:16px;overflow:auto;overscroll-behavior:contain;box-shadow:0 9px 28px #122c441a}
.cm-lobby-world .sys-scene-zone{scale:var(--cm-lobby-label-scale,1);transform-origin:center}
.cm-lobby-card h3{font-size:18px;line-height:1.35;margin:8px 0;overflow-wrap:anywhere}
.cm-lobby-card p{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.cm-lobby-eyebrow{font-size:10px;letter-spacing:.08em;font-weight:700;color:var(--cm-muted)}
.cm-lobby-access{padding:9px;border:1px solid var(--cm-line);background:var(--cm-soft);border-radius:5px;display:flex;gap:7px;align-items:baseline}
.cm-lobby-card-actions{display:grid;gap:7px;margin:16px 0}
.communities-app .cm-lobby-card-actions button{min-height:38px;padding:8px 12px;white-space:normal;border:1px solid var(--cm-line);border-radius:5px;background:var(--cm-soft);color:var(--cm-text)}
.communities-app .cm-lobby-card-actions .cm-lobby-primary{background:var(--cm-accent);color:var(--cm-on-accent,#fff);border-color:var(--cm-accent)}
.cm-lobby-note,.cm-lobby-footnote{font-size:11px!important;color:var(--cm-muted);line-height:1.6}
.cm-lobby-footnote{margin:9px 0 0}
.cm-lobby-status:empty{display:none}
.cm-lobby-status{font-size:12px;line-height:1.5;padding:9px 12px;background:var(--cm-surface);border:1px solid var(--cm-line);border-radius:5px}
.cm-lobby-unavailable{padding:24px;font-size:13px;line-height:1.6;max-width:420px}
.cm-lobby :focus-visible{outline:3px solid var(--cm-accent);outline-offset:3px}
#communities-app:has(.cm-lobby:not([hidden])){max-width:1800px}
#communities-app .cm-social-wall:has(.cm-lobby:not([hidden])) .cm-cover-band{height:44px!important}
.cm-social-layout:has(.cm-lobby:not([hidden])){grid-template-columns:220px minmax(0,1fr)}
.cm-social-layout:has(.cm-lobby:not([hidden]))>.cm-social-rail{display:contents}
.cm-social-layout:has(.cm-lobby:not([hidden]))>.cm-social-rail>.cm-about-card,
.cm-social-layout:has(.cm-lobby:not([hidden]))>.cm-social-rail>.cm-shortcuts-card{display:none}
.cm-social-layout:has(.cm-lobby:not([hidden])) .cm-personal-tools{grid-column:2}
/* On the social wall's narrow column the card follows the scene instead of covering it. */
@container (max-width:899px){.cm-lobby-card{position:relative;inset:auto;width:auto;max-width:none;border:0;border-top:1px solid var(--cm-line);border-radius:0;box-shadow:none}.cm-lobby-viewport{height:400px}}
.cm-lobby{container-type:inline-size}
@media(max-width:1100px){.cm-lobby-card{position:relative;inset:auto;width:auto;max-width:none;border:0;border-top:1px solid var(--cm-line);border-radius:0;box-shadow:none}.cm-lobby-viewport{height:380px}.cm-lobby-heading{flex-wrap:wrap}}
@media(max-width:800px){.cm-social-layout:has(.cm-lobby:not([hidden])){grid-template-columns:minmax(0,1fr)}.cm-social-layout:has(.cm-lobby:not([hidden])) .cm-personal-tools{grid-column:1}}
@media(max-width:600px){.cm-lobby-heading h2{font-size:17px}.cm-lobby-selectors{gap:8px}.cm-lobby-selectors>label{flex-basis:100%}.cm-lobby-viewport{height:310px}.cm-lobby-card{padding:13px}.cm-lobby-footnote{font-size:10px!important}}
