/* Shared illustrated lobby: a bright illustrated world and compact toy-like destinations.
   Seasonal selection remains owned by menu-theme; only Halloween art changes. */
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby-backdrop{background-image:url('/assets/game/halloween-light-world-v1.webp')!important;filter:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby-backdrop{filter:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby-backdrop::after{opacity:.15!important}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby-backdrop .menu-atmosphere{opacity:.28}
#shell[data-appearance]:not([data-menu-classic=true]){--lobby-feature-scene:var(--theme-world)}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]){--lobby-feature-scene:url('/assets/game/halloween-light-world-v1.webp')}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby{background:transparent!important;backdrop-filter:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:48px repeat(2,minmax(0,1fr))!important;gap:12px!important;height:min(100%,420px);align-self:center;overflow:visible}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .profile-plaque{grid-column:1/-1;min-height:44px!important;padding:8px 12px!important;background:linear-gradient(#fff9df,#ffe9b9)!important;color:#274769!important;border:2px solid #fff9e6!important;box-shadow:0 4px 0 #b87437!important;--a-ink:#274769;--a-muted:#426078}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock>:is(.dock-button,.ranked-shortcut){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;padding:8px 5px!important;min-width:0;min-height:64px!important;border:2px solid #e9fbff!important;border-radius:18px;box-shadow:inset 0 3px #ffffff90,0 5px 0 #175476,0 7px 10px #6e472b26!important;font-family:Fredoka,system-ui,sans-serif;font-size:clamp(12px,1.1vw,18px);line-height:1.1;font-weight:650;text-shadow:0 2px #13415a!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #party-open{background:linear-gradient(#7ce6ff,#4cb5e7)!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #rooms-open{background:linear-gradient(#8debcf,#4cc1b4)!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #ranked{background:linear-gradient(#ffd565,#e49428)!important;color:#513715!important;text-shadow:none!important;box-shadow:inset 0 3px #fff1c7,0 5px 0 #a76827,0 7px 10px #6e472b26!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #store-open{background:linear-gradient(#e0c2ff,#b49ae8)!important;box-shadow:inset 0 3px #ded0ff,0 5px 0 #543b97,0 7px 10px #6e472b26!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock .dock-icon,#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock .game-menu-icon{width:clamp(38px,4.4vw,68px);height:clamp(38px,4.4vw,68px);min-width:38px;overflow:visible}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock .dock-button small{display:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #profile-name{color:#274769!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .profile-plaque small{color:#426078!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .career-strip{gap:14px;height:min(100%,420px)}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .career-strip>button{border:2px solid #fff6d9!important;border-radius:18px!important;padding:10px!important;--a-ink:#234860;--a-muted:#35566a;color:#234860!important;box-shadow:inset 0 3px #ffffffbf,0 5px 0 #b47439,0 7px 10px #6e472b26!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #open-quests{background:linear-gradient(#fff8c8,#ffdf8e)!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #open-daily{background:linear-gradient(#e3fbff,#98ddf4)!important;box-shadow:inset 0 3px #ffffffbf,0 5px 0 #398bae,0 7px 10px #6e472b26!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #open-season{background:linear-gradient(#ede4ff,#c4aff7)!important;box-shadow:inset 0 3px #ffffffbf,0 5px 0 #8860b5,0 7px 10px #6e472b26!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .career-strip strong{font-family:Fredoka,system-ui,sans-serif;font-weight:600}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature{border:3px solid #fff7d8!important;border-radius:24px;box-shadow:0 7px 0 #b27337,0 12px 22px #8e57272e;background:linear-gradient(100deg,#fff2c9 0%,#ffe1a8f2 47%,#ffdb9d10 100%),var(--lobby-feature-scene) 70% 40%/cover!important;padding:clamp(14px,2.2vw,32px);transform:rotate(-1deg)}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature-kicker{color:#805321;letter-spacing:.12em;font-weight:800}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-title{color:#694094;font-size:clamp(25px,3.5vw,52px);text-shadow:0 2px #fff8e8;margin-bottom:8px}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-description{color:#674b30;text-shadow:none;font-weight:550}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-open{background:linear-gradient(#b1f473,#61ce65)!important;border:2px solid #f1ffd7!important;color:#174c30!important;box-shadow:0 4px 0 #378948!important;font-size:clamp(12px,1.1vw,17px);text-shadow:none!important;border-radius:12px}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature-emblem{width:27%;right:2%;filter:drop-shadow(0 4px 0 #794d3130);transform:rotate(12deg)}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #modes-open{background:linear-gradient(#8ae5f6,#55b5de)!important;border:2px solid #e1fbff!important;box-shadow:inset 0 2px #fff9,0 5px 0 #21658f!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #collection-open{background:linear-gradient(#c9b8ff,#a38cdf)!important;border:2px solid #eee5ff!important;box-shadow:inset 0 2px #fff9,0 5px 0 #514187!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #auto-join{background:linear-gradient(#fff57c,#ffd140)!important;color:#654017!important;border:3px solid #fff8c4!important;border-radius:18px;box-shadow:inset 0 3px #ffffffa0,0 6px 0 #c18620,0 10px 14px #76591a26!important;font-family:Fredoka,system-ui,sans-serif;font-size:clamp(24px,3vw,44px);font-weight:650;letter-spacing:.02em;text-shadow:0 2px #fff6aa!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #auto-join:not(.is-connecting)::after{content:'';display:inline-block;width:0;height:0;margin-left:12px;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid currentColor}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .menu-panel-toggle{top:auto!important;bottom:82px!important;color:#214d6a!important;border:2px solid #eefaff!important;box-shadow:0 3px 0 #4a90a8!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #selected-snake{transform:scale(1.2)!important}
@media(orientation:landscape) and (max-height:650px){
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock{grid-template-rows:44px repeat(2,minmax(0,1fr))!important;gap:9px!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock>:is(.dock-button,.ranked-shortcut){gap:4px;border-radius:14px;font-size:12px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock .dock-icon,#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock .game-menu-icon{width:38px;height:38px;min-width:38px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature{padding:11px 13px;border-radius:18px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-title{font-size:clamp(24px,3.4vw,32px);margin-bottom:5px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-description{font-size:10px;margin-bottom:8px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .career-strip{gap:10px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .career-strip>button{padding:8px!important;border-radius:14px!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #auto-join{font-size:26px}
}
@media(orientation:portrait){#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock{min-height:250px}}

#shell[data-appearance]:not([data-menu-classic=true]) #lobby .player-dock>:is(.dock-button,.ranked-shortcut){color:#173b58!important;text-shadow:none!important}
/* Text uses the ink of the final light surfaces, including nested legacy labels. */
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #profile-edit{background:linear-gradient(#fff9df,#ffe9b9)!important;color:#274769!important;border:2px solid #fff9e6!important;box-shadow:0 4px 0 #b87437!important;--a-ink:#274769;--a-muted:#426078}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #profile-edit>span:last-child{color:#274769!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-player-panel>:is(.dock-button,.ranked-shortcut){color:#173b58!important;--a-ink:#173b58;--a-muted:#25465f;text-shadow:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel>button{--a-ink:#234860;--a-muted:#35566a;color:#234860!important;text-shadow:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel :is(strong,span:not(.feature-icon)){color:#234860!important;text-shadow:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .menu-panel-toggle svg{color:#214d6a!important;stroke:currentColor!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #modes-open{color:#173b58!important;--a-ink:#173b58;--a-muted:#25465f;text-shadow:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #collection-open{color:#302453!important;--a-ink:#302453;--a-muted:#302453;text-shadow:none!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #collection-open svg{color:#302453!important;stroke:currentColor!important}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #selected-snake{pointer-events:none}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature[data-event=lava-rush]{background:linear-gradient(90deg,#fff1c85c,transparent 60%),url('/assets/game/halloween-lava-event-v1.webp') center/cover!important}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature[data-event=lava-rush] .lobby-feature-emblem{display:none}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature-copy{width:53%}
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-description{max-width:30ch}
/* Ghosts are separate transparent layers. Artwork contains no frozen ghosts. */
.light-world-ghost,.light-feature-ghost{display:none;pointer-events:none!important}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby-backdrop .menu-atmosphere{display:none}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby .light-world-ghost{display:block;position:absolute;width:clamp(42px,6vw,90px);height:auto;z-index:5;left:28%;top:47%;opacity:.94;animation:light-ghost-roam 24s ease-in-out -6s infinite;will-change:transform}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby .ghost-far{left:55%;top:19%;width:clamp(30px,4vw,62px);animation:light-ghost-far 31s ease-in-out -16s infinite;opacity:.85}
.light-world-ghost img{width:100%;height:auto;display:block;filter:drop-shadow(0 4px 4px #614d8030);animation:light-ghost-bob 3.8s ease-in-out infinite}
html[data-menu-art=halloween] #shell[data-appearance]:not([data-menu-classic=true]) #lobby .light-feature-ghost{display:block;position:absolute;z-index:1;left:69%;top:51%;width:12%;max-width:105px;animation:light-banner-ghost 9s ease-in-out -3s infinite;filter:drop-shadow(0 3px 4px #62386522)}
@keyframes light-ghost-roam{0%,100%{opacity:0;transform:translate(0,0) rotate(-7deg)}8%,27%{opacity:.94}32%{opacity:0;transform:translate(25vw,-9vh) rotate(6deg)}38%{opacity:0;transform:translate(27vw,8vh) rotate(-4deg)}46%,68%{opacity:.94}74%{opacity:0;transform:translate(16vw,13vh) rotate(8deg)}82%{opacity:0;transform:translate(-21vw,-16vh) rotate(-5deg)}90%{opacity:.94}97%{opacity:0;transform:translate(0,0) rotate(-7deg)}}
@keyframes light-ghost-far{0%,100%{opacity:0;transform:translate(0,0) scale(.85)}10%,30%{opacity:.85}37%{opacity:0;transform:translate(-18vw,22vh) scale(1.05) rotate(-7deg)}44%{opacity:0;transform:translate(5vw,30vh) scale(.8) rotate(9deg)}53%,76%{opacity:.85}84%{opacity:0;transform:translate(-9vw,23vh) scale(.9)}92%{opacity:0;transform:translate(0,0) scale(.85)}}
@keyframes light-ghost-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px) rotate(4deg)}}
@keyframes light-banner-ghost{0%,100%{transform:translate(0,0) rotate(-7deg)}40%{transform:translate(35%,-30%) rotate(6deg)}75%{transform:translate(-25%,10%) rotate(-3deg)}}
#shell[data-ui-depth=off] #lobby :is(.light-world-ghost,.light-feature-ghost){display:none!important}
@media(prefers-reduced-motion:reduce){#shell #lobby :is(.light-world-ghost,.light-feature-ghost){display:none!important}}
@media(orientation:portrait){
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby{overflow-y:auto!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(230px,1fr) 200px 100px 64px!important;gap:12px!important;min-height:642px;height:100%;align-items:stretch}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .equipped-stage{grid-column:1!important;grid-row:1!important;min-height:0!important;height:100%;grid-template-rows:140px minmax(80px,1fr);padding:0 6px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-player-panel{grid-column:1!important;grid-row:2!important;min-height:0;height:200px;width:100%;grid-template-rows:44px repeat(2,minmax(0,1fr))!important;gap:8px!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-player-panel>:is(.dock-button,.ranked-shortcut){flex-direction:row;min-height:0!important;gap:8px;font-size:14px;border-radius:14px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-player-panel .game-menu-icon{width:34px;height:34px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel{display:grid!important;grid-column:1!important;grid-row:3!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:1fr!important;height:100px;width:100%;gap:8px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel>button{grid-column:auto!important;grid-row:1!important;display:flex;flex-direction:column;gap:3px;align-items:center;text-align:center;padding:7px 4px!important;border-radius:14px!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel strong{font-size:12px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel span:not(.feature-icon){display:block!important;font-size:9px;line-height:1.15}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel .feature-icon,#shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel .game-menu-icon{width:28px;height:28px;min-width:28px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-career-panel progress{display:none}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .loadout-bar{grid-column:1!important;grid-row:4!important;height:64px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .menu-panel-toggle{bottom:72px!important;width:28px!important;min-width:28px!important;height:44px!important;padding:4px!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-left-toggle{left:0!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #menu-right-toggle{left:auto!important;right:0!important}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-title{font-size:25px;margin-bottom:4px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-description{font-size:10px;line-height:1.3;margin-bottom:7px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby #lobby-event-open{padding:6px 10px;font-size:12px}
 #shell[data-appearance]:not([data-menu-classic=true]) #lobby .lobby-feature{padding:10px 12px}
}

#shell[data-left-menu-closed=true] #menu-feature-panel,#shell[data-left-menu-closed=true] #menu-feature-panel *{visibility:hidden!important;pointer-events:none!important}

/* Keep the existing disabled-state cue above the illustrated Play border. */
#shell[data-appearance]:not([data-menu-classic=true]) #lobby #auto-join:disabled{border-style:dashed!important}
