/* Lobby-only colour and layout system. Gameplay keeps its original style tree. */
:root {
  --site-bg:#e6e7e9; --site-panel:#f3f4f4; --site-well:#eceeef; --site-chat:#dde0e3;
  --site-ink:#272b30; --site-muted:#59616a; --site-line:#c7cbd0; --site-hover:#d9dde2;
  --site-accent:#345f94; --site-accent-hover:#284d7b; --site-on-accent:#ffffff;
  --site-action:var(--site-accent); --site-action-hover:var(--site-accent-hover); --site-on-action:#ffffff;
  --site-gold:#736038; --site-gold-well:#e9e5dc; --site-danger:#a63e3b;
  --site-rail:#292c30; --site-rail-ink:#edf0f2; --site-rail-muted:#b7bdc5;
  --site-rail-hover:#353a40; --site-rail-line:#444a52; --site-rail-active:#3d4652;
  --site-map:#303438; --site-shadow:#14181d18; --site-overlay:#171b226e;
  --site-side:184px; --site-chat-width:310px; --site-chat-space:0px; --site-top:60px;
  --site-font:'Segoe UI','Twemoji Mozilla',system-ui,sans-serif;
}
:root[data-lobby-theme="dusk"] {
  --site-bg:#303338; --site-panel:#393d43; --site-well:#34383e; --site-chat:#2b2f34;
  --site-ink:#e6e9ed; --site-muted:#b2bac4; --site-line:#505761; --site-hover:#454c56;
  --site-accent:#a0bee5; --site-accent-hover:#bbd1ed; --site-on-accent:#20364f;
  --site-action:#456d9e; --site-action-hover:#507aaa; --site-on-action:#f2f4f6;
  --site-gold:#c9b583; --site-gold-well:#444139; --site-danger:#eeaaa5;
  --site-map:#262a2f; --site-shadow:#11141930;
}
html.lobby-active { background:var(--site-bg); color:var(--site-ink); color-scheme:light; }
html.lobby-active[data-lobby-theme="dusk"] { color-scheme:dark; }
html.lobby-active.dock-open { --site-chat-space:var(--site-chat-width); }
html.lobby-active[data-lobby-page="clanPage"] { --site-chat-space:0px; }
html.lobby-active :is(#siteSidebar,#siteHeader,#lobby,#clanPage,#profilePage,#leaderPage,#chatDock,#siteSettings) { font-family:var(--site-font); color:var(--site-ink); }
html.lobby-active :is(button,input,select,textarea) { font-family:var(--site-font); }
html.lobby-active button { cursor:pointer; }
html.lobby-active :is(button,a,input,select,textarea):focus-visible { outline:2px solid var(--site-accent); outline-offset:3px; }
.site-icon { width:19px; height:19px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
#siteSidebar,#siteHeader { display:none; box-sizing:border-box; }
html.lobby-active #siteSidebar { display:flex; position:fixed; inset:0 auto 0 0; width:var(--site-side); z-index:80; flex-direction:column; padding:24px 14px 18px; gap:26px; background:var(--site-rail); color:var(--site-rail-ink); border-right:1px solid var(--site-rail); }
#siteHome { display:flex; align-items:center; gap:10px; background:none; border:0; color:inherit; padding:0 4px; font-size:24px; font-weight:750; letter-spacing:-1.3px; text-align:left; }
.site-mark { display:block; width:20px; height:21px; background:var(--site-rail-ink); clip-path:polygon(0 0,72% 0,72% 24%,100% 24%,100% 72%,38% 72%,38% 100%,0 100%); }
.site-nav { display:flex; flex-direction:column; gap:6px; }
.site-nav button { display:flex; align-items:center; gap:12px; width:100%; padding:12px; background:none; border:1px solid transparent; border-radius:5px; color:var(--site-rail-muted); text-align:left; font-size:14px; font-weight:500; }
.site-nav button:hover { background:var(--site-rail-hover); color:var(--site-rail-ink); }
.site-nav button[aria-current="page"] { background:var(--site-rail-active); border-color:transparent; color:var(--site-rail-ink); box-shadow:inset 2px 0 #a9c0de; }
.site-community { border-top:1px solid var(--site-rail-line); padding:22px 10px 0; }
.site-community small { color:var(--site-rail-muted); font-size:10px; letter-spacing:1.5px; }
.site-community p { color:var(--site-rail-muted); font-size:12px; line-height:1.65; }
.site-tools { margin-top:auto; }
#siteSidebar #acctBar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; width:100%; padding:18px 4px 0; margin:0; border:0; border-top:1px solid var(--site-rail-line); background:none; border-radius:0; box-sizing:border-box; }
#siteSidebar #acctName { color:var(--site-rail-ink); font-size:14px; }
#siteSidebar #acctRank { display:grid; grid-template-columns:32px 1fr; align-items:center; gap:5px 9px; width:100%; margin-bottom:16px; color:var(--site-rail-muted); }
#siteSidebar #acctRank svg { width:27px; height:27px; grid-row:1/3; }
#siteSidebar #acctRank b { color:var(--site-rail-ink) !important; font-size:12px; }
#siteSidebar .acct-rpts { font-size:25px; color:var(--site-rail-ink); font-style:normal; }
#siteSidebar .acct-rpts::after { content:' points'; font-size:10px; color:var(--site-rail-muted); }
#siteSidebar .acct-rnext { grid-column:1/-1; font-size:10px; font-style:normal; color:var(--site-rail-muted); }
#siteSidebar #acctBar button { background:var(--site-rail-active); border:1px solid var(--site-rail-line); border-radius:4px; padding:8px 11px; color:var(--site-rail-ink); font-size:11px; }
#siteSidebar #acctAuthBtn { width:100%; order:4; }
#siteSidebar #acctAv { order:1; } #siteSidebar #acctName { order:2; } #siteSidebar #acctGear { order:3; }
#siteSidebar #acctAv { background:var(--site-rail-hover) !important; color:var(--site-rail-ink); }
#siteSidebar .isHidden,#siteHeader .isHidden { display:none !important; }
.lobby-active #siteHeader { display:flex; position:fixed; left:var(--site-side); right:var(--site-chat-space); top:0; height:var(--site-top); align-items:center; justify-content:space-between; gap:16px; padding:0 28px; border-bottom:1px solid var(--site-line); background:var(--site-bg); z-index:80; }
#siteTitle { font-size:14px; font-weight:500; }
.site-header-actions { display:flex; align-items:center; gap:20px; }
.site-status { color:var(--site-muted); font-size:10px; letter-spacing:1.3px; }
.site-status::before { content:''; display:inline-block; width:5px; height:5px; margin-right:8px; background:var(--site-accent); border-radius:50%; }
#siteChat,#notifBell { display:flex; align-items:center; gap:7px; padding:7px 0; border:0; background:none; color:var(--site-muted); font-size:12px; }
#notifWrap { position:relative; }
#notifBadge { display:none; position:absolute; right:-7px; top:-4px; min-width:16px; line-height:16px; padding:0 2px; background:var(--site-gold); color:var(--site-rail-ink); border-radius:50%; font-size:10px; }
#notifBadge.show { display:block; }
#notifPanel { display:none; position:absolute; top:40px; right:0; width:330px; max-width:calc(100vw - 28px); max-height:65vh; overflow:auto; border:1px solid var(--site-line); background:var(--site-panel); box-shadow:0 15px 40px var(--site-shadow); border-radius:6px; }
#notifPanel.show { display:block; }
.nt-head { display:flex; justify-content:space-between; align-items:center; padding:16px; border-bottom:1px solid var(--site-line); font-size:13px; }
#notifMarkAll { border:0; background:none; color:var(--site-accent); font-size:11px; }
#notifBody { font-size:13px; }
#notifBody .nt-time,#notifBody .nt-empty { color:var(--site-muted); font-size:11px; padding:10px; }
.lobby-active #lobby { position:fixed; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; padding:0; inset:var(--site-top) var(--site-chat-space) 0 var(--site-side); background:var(--site-bg); background-image:none; z-index:50; overflow:auto; }
#lobby .lb-main { width:100%; max-width:960px; margin:0 auto; padding:20px 28px 38px; box-sizing:border-box; display:block; }
.site-modebar { display:flex; align-items:center; gap:24px; border-bottom:1px solid var(--site-line); margin-bottom:14px; }
.site-modebar button { background:none; border:0; border-bottom:2px solid transparent; padding:0 0 12px; font-size:13px; color:var(--site-muted); }
#lobby:not(.sp-mode) #siteMultiplayer,#lobby.sp-mode #spBtn { color:var(--site-accent); border-bottom-color:var(--site-accent); font-weight:700; }
#lobby .lb-tag { display:flex; align-items:center; gap:12px; margin:0; font-size:12px; color:var(--site-muted); }
#lobby #nameIn { width:180px; max-width:65%; padding:8px 10px; color:var(--site-ink); background:var(--site-panel); border:1px solid var(--site-line); border-radius:4px; font-size:13px; }
.site-player { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
#lobby .lb-namehint { flex:none; font:11px var(--site-font); color:var(--site-muted); }
#lobby .lb-namehint button { font:inherit; color:var(--site-accent); background:none; border:0; text-decoration:underline; padding:6px 0 6px 3px; }
#lobby .lb-tag.isLocked #nameIn { background:transparent; border-color:transparent; padding-left:0; width:130px; font-weight:600; }
#lobby .lb-tag:has(+.lb-namehint) #siteSignedNote { display:none; }
#siteSignedNote { margin-left:auto; text-align:right; font-size:10px; max-width:195px; line-height:1.5; }
#lobby .lb-cards { display:grid; grid-template-columns:1fr; gap:22px; }
#lobby .lb-card { position:relative; border:1px solid var(--site-line); border-radius:6px; background:var(--site-panel); overflow:hidden; padding:0; box-shadow:0 3px 8px var(--site-shadow); }
#lobby .lb-card-wait { display:none; }
.site-match-head { display:flex; align-items:center; justify-content:space-between; padding:19px 22px 17px; }
.site-overline { font-size:10px; letter-spacing:1.2px; color:var(--site-muted); margin:0 0 7px; font-weight:600; }
#lobby .lb-card-name { margin:0; color:var(--site-ink); font-size:28px; line-height:1.15; font-weight:650; letter-spacing:-.7px; }
.site-mode-chip { font-size:11px; color:var(--site-muted); background:transparent; border:1px solid var(--site-line); border-radius:3px; padding:5px 9px; }
.site-map-wrap { position:relative; background:var(--site-map); }
#lobby .lb-card-img { position:relative; height:214px; background-position:center; background-repeat:no-repeat; background-size:cover; filter:grayscale(1) brightness(.85) contrast(1.15); opacity:.9; }
.site-map-caption { position:absolute; left:24px; bottom:16px; padding:6px 10px; background:#272c32e8; color:#d8dde4; font-size:10px; border:1px solid #59626e; border-radius:3px; }
#lobby .lb-card-body { padding:0; }
.site-joinrow { display:flex; justify-content:space-between; gap:15px; align-items:center; padding:19px 22px; }
#lobby .lb-card-sub { margin:0 0 6px; font-size:13px; color:var(--site-ink); }
#lobby .lb-card-sub b { font-weight:650; }
.site-countdown { font-size:11px; color:var(--site-muted); }
.site-countdown strong { color:var(--site-gold); font-weight:600; font-variant-numeric:tabular-nums; }
#lobby .lb-cta { flex:none; min-width:155px; min-height:46px; padding:12px 20px; background:var(--site-action); color:var(--site-on-action); border:1px solid var(--site-action); border-radius:4px; box-shadow:none; font-size:14px; font-weight:600; text-transform:none; letter-spacing:0; }
#lobby .lb-cta:hover { background:var(--site-action-hover); filter:none; }
#lobby .lb-cta.joined { background:var(--site-gold-well); color:var(--site-gold); border-color:var(--site-gold); }
#lobby .lb-cta:disabled { opacity:.6; cursor:default; }
#lobby .lb-queue { margin:0; padding:12px 22px; border-top:1px solid var(--site-line); font-size:11px; color:var(--site-muted); line-height:1.6; }
#lobby .lb-mpfoot { margin:12px 0 20px; }
#mpStatus2 { font-size:12px; color:var(--site-muted); }
#mpReconnect { display:none; background:var(--site-gold-well); border:1px solid var(--site-line); color:var(--site-gold); padding:11px 15px; border-radius:4px; margin-top:10px; }
.site-party-section { margin-top:23px; padding-top:20px; border-top:1px solid var(--site-line); }
.site-party-section h2 { font-size:14px; font-weight:600; margin:0 0 14px; }
.site-party-row { display:flex; gap:14px; align-items:center; }
.site-party-symbol { padding:10px; background:var(--site-panel); border:1px solid var(--site-line); border-radius:4px; color:var(--site-muted); }
#sitePartyText { flex:1; font-size:13px; color:var(--site-muted); }
.site-secondary { border:1px solid var(--site-line); background:var(--site-panel); color:var(--site-ink); border-radius:4px; padding:9px 13px; font-size:12px; }
#lobby #spPanel { display:none; } #lobby.sp-mode #spPanel { display:block; } #lobby.sp-mode #mpHub,#lobby.sp-mode .lb-mpfoot { display:none; }
#lobby .lb-setup { display:flex; gap:20px; padding:20px 24px 0; }
#lobby .lb-ctrl { display:flex; gap:7px; flex-direction:column; font-size:11px; color:var(--site-muted); }
#lobby .lb-ctrl :is(select,input) { background:var(--site-well); border:1px solid var(--site-line); border-radius:4px; padding:9px 11px; color:var(--site-ink); font-size:13px; max-width:210px; }
#lobby #botCountIn { width:95px; }
#lobby .lb-card-learn { margin-top:22px; padding:24px; background:var(--site-panel); border-left:3px solid var(--site-line); }
#lobby .lb-card-learn .lb-card-name { font-size:21px; }
#lobby .lb-card-learn .lb-card-sub { margin:9px 0 18px; line-height:1.6; }
#lobby .lb-card-learn .lb-cta { min-width:0; }
#lobby .lb-missions { margin-top:20px; }
#lobby .lb-missions button { background:var(--site-panel); color:var(--site-ink); border:1px solid var(--site-line); border-radius:4px; padding:12px; margin:3px; }
#lobby .lb-back { background:none; border:0; color:var(--site-muted); padding:15px 0; font-size:12px; }
#lobby .lb-chip { color:var(--site-gold); font-size:10px; }
#siteSettings { background:var(--site-panel); color:var(--site-ink); border:1px solid var(--site-line); border-radius:8px; width:min(460px,calc(100vw - 32px)); padding:28px; box-sizing:border-box; max-height:calc(100dvh - 32px); }
#siteSettings::backdrop { background:var(--site-overlay); }
.site-dialog-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.site-dialog-head h2 { margin:0; font-size:21px; }
#siteSettingsClose { border:0; color:var(--site-muted); background:none; font-size:25px; }
.site-setting { display:flex; flex-direction:column; gap:9px; font-size:13px; margin:20px 0; }
.site-setting select { padding:10px; background:var(--site-well); color:var(--site-ink); border:1px solid var(--site-line); border-radius:4px; font-size:13px; }
.site-setting-check { display:flex; gap:10px; font-size:13px; margin:24px 0; }
#siteSettings input { accent-color:var(--site-accent); }
.site-dialog-note { color:var(--site-muted); font-size:12px; line-height:1.7; border-top:1px solid var(--site-line); padding-top:17px; }
.lobby-active #partyBar .pb-pill { max-width:100%; font-size:11px; padding:9px 13px; }
.lobby-active #chatDock { inset:0 0 0 auto; width:var(--site-chat-width); height:100dvh; max-height:none; border:0; border-left:1px solid var(--site-line); border-radius:0; box-shadow:none; background:var(--site-chat); z-index:79; }
.lobby-active #chatDock::before { content:'Chat'; min-height:var(--site-top); display:flex; align-items:center; padding:0 20px; font-size:14px; font-weight:600; border-bottom:1px solid var(--site-line); box-sizing:border-box; }
.lobby-active .chatHubHead { background:transparent; padding:10px 12px; }
.lobby-active #chatHubMsgs { padding:16px 7px 22px; }
.lobby-active #chatDock .chatbar { padding:16px 12px; border-top:1px solid var(--site-line); }
.lobby-active #chatHubClose { position:absolute; right:15px; top:19px; font-size:20px; }
.lobby-active #chatFab { right:20px; bottom:18px; background:var(--site-action); color:var(--site-on-action); box-shadow:none; border:0; border-radius:4px; font-family:var(--site-font); }
.lobby-active[data-lobby-page="clanPage"] :is(#chatDock,#chatFab) { display:none !important; }
.lobby-active :is(#profilePage,#leaderPage,#clanPage) { top:var(--site-top); left:var(--site-side); right:var(--site-chat-space); background:var(--site-bg); }
.lobby-active :is(#profilePage .pf-top,#leaderPage .cp-top,#clanPage .cp-top) { display:flex; padding:10px 24px 0; background:var(--site-bg); border:0; }
.lobby-active :is(.pf-brand,.cp-brand,.cp-acct) { display:none !important; }
.lobby-active :is(#pfBack,#leaderBack,#clanBack) { border:0; padding:4px 0; font:11px var(--site-font); color:var(--site-muted); background:none; text-transform:none; }
.lobby-active #profilePage .pf-col { max-width:820px; padding:28px 30px 80px; }
.lobby-active #leaderPage .lp-body { padding:28px 30px 80px; }
.lobby-active #clanPage .cp-grid { grid-template-columns:205px minmax(180px,1fr) 190px; }
.lobby-active #clanPage .cp-left { padding:22px 12px; }
.lobby-active #clanPage .cp-discover { padding:28px 30px 80px; }
.lobby-active[data-lobby-density="compact"] #lobby .lb-main { padding-top:18px; }
.lobby-active[data-lobby-density="compact"] #lobby .lb-card-img { height:185px; }
@media(min-width:1440px) { :root { --site-side:200px; --site-chat-width:330px; } #lobby .lb-card-img { height:250px; } }
@media(max-width:1100px) { :root { --site-side:160px; --site-chat-width:285px; } .lobby-active #siteSidebar { padding:23px 10px 16px; } #siteHome { font-size:23px; } #lobby .lb-main { padding:22px; } #siteSignedNote { display:none; } .site-joinrow { padding:18px; } #lobby .lb-cta { min-width:110px; padding:12px; } .lobby-active #clanPage .cp-grid { grid-template-columns:180px minmax(140px,1fr) 165px; } }
@media(max-width:759px) {
  :root { --site-side:0px; --site-top:58px; --site-chat-space:0px !important; }
  .lobby-active #siteSidebar { inset:auto 0 0; width:100%; height:64px; padding:5px 8px calc(5px + env(safe-area-inset-bottom)); flex-direction:row; gap:2px; z-index:82; border:0; }
  #siteHome,.site-community,#siteSidebar #acctRank,#siteSidebar #acctName,#siteSidebar #acctAv,#siteLearn { display:none !important; }
  .site-nav { display:contents; }
  .site-nav button { flex:1; padding:7px 4px; width:auto; flex-direction:column; gap:3px; font-size:9px; border:0; }
  .site-nav button[aria-current="page"] { box-shadow:inset 0 -2px #a9c0de; }
  #siteSidebar #acctBar { display:contents; }
  #siteSidebar #acctBar button { flex:1; width:auto; padding:7px 4px; font-size:10px; max-width:76px; background:none; border:0; }
  .lobby-active #siteHeader { left:0; right:0; padding:0 18px; }
  .site-status { display:none; }
  .lobby-active #lobby,.lobby-active :is(#clanPage,#profilePage,#leaderPage) { left:0; right:0; bottom:64px; }
  #lobby .lb-main { padding:18px 16px 48px; }
  .site-modebar { margin-bottom:17px; }
  .site-player { gap:8px; flex-wrap:wrap; margin-bottom:16px; }
  #lobby .lb-tag { gap:10px; }
  #lobby .lb-namehint { font-size:10px; }
  .site-match-head { padding:18px; }
  #lobby .lb-card-name { font-size:24px; }
  #lobby .lb-card-img { height:180px; }
  .site-map-caption { left:18px; bottom:12px; }
  .site-joinrow { padding:16px; gap:10px; }
  #lobby .lb-card-sub { font-size:12px; }
  .site-countdown { font-size:10px; }
  #lobby .lb-cta { min-width:95px; padding:12px 10px; font-size:12px; }
  #lobby .lb-queue { padding:12px 16px; font-size:10px; }
  .site-party-row { flex-wrap:wrap; }
  #sitePartyText { min-width:140px; }
  #sitePartyAction { margin-left:auto; }
  .lobby-active #chatDock { inset:0; width:100vw; height:100dvh; z-index:85; }
  .lobby-active #chatFab { bottom:78px; padding:10px 13px; }
  .lobby-active #profilePage .pf-col,.lobby-active #leaderPage .lp-body,.lobby-active #clanPage .cp-discover { padding:20px 16px 75px; }
  .lobby-active #clanPage .cp-grid { display:flex; flex-direction:column; overflow:auto; }
  .lobby-active #clanPage[data-view="discover"] .cp-grid { display:none; }
  .lobby-active #clanPage .cp-left { overflow:visible; padding:16px; flex:none; border-right:0; }
  .lobby-active #clanPage .cp-channels,.lobby-active #clanPage .cp-funcs { flex-direction:row; flex-wrap:wrap; }
  .lobby-active #clanPage .cp-center { min-height:420px; flex:none; }
  .lobby-active #clanPage .cp-right { display:block; overflow:visible; border:0; padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .lobby-active :is(#siteSidebar,#siteHeader,#lobby,#chatDock,#clanPage,#profilePage,#leaderPage) * { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }

/* Live party belongs to the shared header, leaving every page's own controls reachable. */
#sitePartyMount { min-width:0; margin-left:auto; max-width:235px; }
.lobby-active #sitePartyMount #partyBar { position:static; transform:none; max-width:100%; }
.lobby-active #sitePartyMount .pb-pill { overflow:hidden; max-width:100%; white-space:nowrap; text-overflow:ellipsis; gap:5px; }
.lobby-active #sitePartyMount .pb-pill b { overflow:hidden; text-overflow:ellipsis; }
.lobby-active #siteHeader:has(#partyBar.show) .site-status { display:none; }
.lobby-active #vcPill { width:34px; height:34px; font-size:16px; border-radius:4px; box-shadow:none; background:var(--site-hover); color:var(--site-accent); border-color:var(--site-line); }
.lobby-active #vcPanel { top:43px; bottom:auto; right:0; left:auto; }
.lobby-active #siteHeader .site-status { font-size:9px; }
.lobby-active #profilePage .pf-jumpnav { display:flex; flex-wrap:wrap; gap:18px; padding:15px 0; border-bottom:1px solid var(--site-line); margin:0 0 22px; }
.lobby-active #profilePage .pf-jumpnav button { color:var(--site-accent); font:12px var(--site-font); border:0; background:none; padding:0; }
.lobby-active #profilePage .pf-card { scroll-margin-top:20px; }
.lobby-active #profilePage h2 { text-transform:none; letter-spacing:0; font-size:16px; }
.lobby-active #profilePage .pf-field { text-transform:none; letter-spacing:0; font-size:12px; }
.lobby-active #clanPage .cp-mrow { opacity:1; }
.lobby-active #clanPage .cp-mrow:not(.on) { color:var(--site-muted); }
.lobby-active :is(#profilePage .pf-av,#profilePage .pf-avprev,#clanPage .cp-mav) { background:var(--site-hover) !important; color:var(--site-accent); }
.lobby-active #clanPage :is(.cp-ok,#cpSend) { background:var(--site-action); color:var(--site-on-action); border-radius:4px; }
#notifBody .nt-row { display:flex; gap:10px; padding:13px 16px; border-bottom:1px solid var(--site-line); }
#notifBody .nt-row.nt-nav { cursor:pointer; }
#notifBody .nt-row.nt-unread { background:var(--site-hover); }
#notifBody .nt-txt { display:flex; flex:1; flex-direction:column; gap:5px; }
#notifBody .nt-txt b { font-size:12px; font-weight:600; }
#notifBody .nt-txt i { color:var(--site-muted); font-style:normal; font-size:11px; }
#notifBody .nt-time { padding:0; }
@media(max-width:1200px) { #siteHeader .site-status { display:none; } #sitePartyMount { max-width:185px; } }
@media(max-width:759px) {
  html.lobby-active #siteSidebar { inset:auto 0 0; width:100%; height:64px; padding:5px 8px; flex-direction:row; gap:2px; }
  #sitePartyMount { max-width:115px; }
  .site-header-actions { gap:10px; }
  .lobby-active #sitePartyMount .pb-pill { font-size:9px; padding:8px 5px; }
}

/* Voice is mounted here only in the lobby; the shell returns it to body before gameplay. */
#siteTitle { flex:none; }
.site-header-actions { flex:none; gap:14px; }
#siteVoiceMount { display:contents; }
.lobby-active #siteVoiceMount #vcDock { position:relative; inset:auto; }
@media(max-width:759px) {
  #sitePartyMount { flex:1; min-width:0; }
  .site-header-actions { gap:10px; }
  .lobby-active #siteHeader { gap:10px; }
  .lobby-active #siteChat { margin:0; }
}
