/* País em largura total; detalhes apenas ao escolher um local. */
main.exp-map-first .workspace:not(.atlas-world) { display:block; }
main.exp-map-first .workspace>.details[hidden] { display:none; }
#stageDialog,#coopDialog { width:min(850px,94vw); max-height:88svh; overflow:auto; padding:20px; color:#182f4b; background:linear-gradient(#faf5e9,#e8dcc3); border:2px solid #294a75; border-radius:12px; }
#stageDialog::backdrop,#coopDialog::backdrop { background:#071326aa; backdrop-filter:blur(2px); }
#stageDialog .details { margin:8px 0 0; border:0; background:transparent; box-shadow:none; padding:0; }
#stageDialog .drops { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
#stageDialog .drop { margin:0; min-width:0; }
#stageDialog .drop strong { overflow-wrap:anywhere; }
#stageDialog .ghost,#coopDialog .ghost { color:#1b3c67; background:#f5edda; border-color:#8192a8; }
#stageDialog .primary,#coopDialog .primary { background:#224b80; color:#fff2d2; border-color:#bd9c5b; }
#closeStage { display:block; margin-left:auto; }
.exp-coop-actions { display:flex; gap:10px; margin:12px 0; flex-wrap:wrap; }
.exp-coop-actions button { flex:1; padding:12px; font-weight:800; }
.coop-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; }
#coopDialog h2 { margin:0; font-size:24px; }
#coopDialog p { font-size:14px; line-height:1.5; }
.coop-members { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:15px 0; }
.coop-members article { display:flex; flex-direction:column; align-items:center; gap:8px; padding:18px; background:#dce6ef; border:1px solid #607d9d; border-radius:8px; }
.coop-members img { width:100%; height:170px; object-fit:contain; }
.coop-members .empty { justify-content:center; min-height:160px; border-style:dashed; text-align:center; }
.coop-open-room { display:block; width:100%; text-align:left; color:#193b65; background:#f5ecd7; padding:16px; border:1px solid #738aa4; border-radius:7px; margin:8px 0; cursor:pointer; }
#coopMessage { color:#96372d; font-weight:700; }
.exp-map-first #openCoopRoom,.exp-map-first #openCoopLobby { pointer-events:auto; font-size:11px; padding:4px 8px; margin-top:6px; }
#coopRoster article { display:flex; align-items:center; gap:10px; padding:8px; margin:8px 0; background:#dce8ef; border:1px solid #6c8aa7; border-radius:7px; color:#173657; }
#coopRoster img { width:55px; height:65px; object-fit:contain; }
#coopRoster span { margin-left:auto; font-size:12px; }
#coopAllyLabel { display:block; margin:8px 0; font-size:13px; }#coopAllyLabel[hidden],#coopRoster[hidden] { display:none; }
#coopAlly { background:#faf5e9; color:#173657; padding:8px; border:1px solid #69819b; border-radius:5px; }
@media(max-width:600px) { #stageDialog,#coopDialog { padding:12px; }#stageDialog .drops { grid-template-columns:1fr; }.exp-coop-actions { flex-direction:column; }.coop-members img { height:110px; }#coopRoster article { flex-wrap:wrap; } }

/* ── LOBBY DE SALAS (17/09) ──────────────────────────────────
   A lista de salas abertas e o painel da sala, com a cara das do PvP mas
   SEM o VS e sem dois lados: isto é PvE, os dois jogadores estão juntos e
   o adversário é a fase. */
.exp-lobby-hint { font-size:13px; color:#3b5573; margin:6px 0 12px; }
.exp-lobby-vazio { padding:22px; text-align:center; color:#4a6382; background:#e5dcc7; border:1px dashed #8192a8; border-radius:8px; }
.exp-lobby-todas { display:block; width:100%; margin:0 0 12px; }

.exp-sala-criar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:0 0 14px; padding:12px; background:#e2e9f1; border:1px solid #6f89a8; border-radius:8px; }
.exp-sala-criar label { font-size:13px; font-weight:800; color:#1b3c67; }
.exp-sala-select { flex:1; min-width:180px; padding:9px; color:#173657; background:#faf5e9; border:1px solid #69819b; border-radius:5px; font-size:13px; }
.exp-sala-criar button { padding:10px 16px; font-weight:800; }

.exp-sala-lista { display:grid; gap:10px; }
.exp-sala-card { display:grid; grid-template-columns:96px minmax(0,1fr) auto auto; align-items:center; gap:12px; padding:0 12px 0 0; background:#f3ead5; border:1px solid #7b8ea6; border-radius:9px; overflow:hidden; }
.exp-sala-arte { width:96px; height:96px; object-fit:cover; }
.exp-sala-info { min-width:0; }
.exp-sala-info h3 { margin:0; font-size:16px; color:#16345a; overflow-wrap:anywhere; }
.exp-sala-info p { margin:2px 0 6px; font-size:12px; color:#53687f; }
.exp-sala-tags { display:flex; gap:6px; flex-wrap:wrap; align-items:center; font-size:10px; color:#53687f; }
.exp-sala-tags b { padding:3px 10px; color:#fff; background:linear-gradient(#2382b4,#155788); border-radius:20px; font-size:10px; }
.exp-sala-vagas { display:flex; flex-direction:column; align-items:center; gap:4px; }
.exp-sala-vagas small { font-size:11px; font-weight:800; color:#3b5573; }
.exp-sala-vaga { display:flex; align-items:center; justify-content:center; width:34px; height:42px; overflow:hidden; font-weight:800; color:#16345a; background:#dce6ef; border:1px solid #607d9d; border-radius:5px; }
.exp-sala-vaga.livre { color:#8ea3ba; border-style:dashed; background:transparent; }
.exp-sala-vaga img { width:100%; height:100%; object-fit:cover; }
.exp-sala-vagas + button { padding:11px 18px; font-weight:800; white-space:nowrap; }

.exp-sala-painel { margin:4px 0 0; }
.exp-sala-cabeca { padding:22px 16px; text-align:center; background-size:cover; background-position:center; border-radius:10px 10px 0 0; }
.exp-sala-cabeca h3 { margin:0; font-size:26px; color:#ffde9d; text-shadow:0 2px 8px #000; }
.exp-sala-cabeca p { margin:4px 0 0; font-size:12px; font-weight:700; color:#fff3d3; text-shadow:0 1px 6px #000; }
.exp-sala-equipa { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:12px; background:#dce6ef; border:1px solid #607d9d; border-top:0; border-radius:0 0 10px 10px; }
.exp-sala-membro { display:flex; flex-direction:column; background:#f3ead5; border:1px solid #7b8ea6; border-radius:8px; overflow:hidden; }
.exp-sala-membro.vazio { border-style:dashed; background:#eae2cd; }
.exp-sala-membro-arte { display:flex; align-items:center; justify-content:center; height:170px; background:#c9d5e2; }
.exp-sala-membro-arte img { width:100%; height:100%; object-fit:contain; }
.exp-sala-silhueta { font-size:44px; font-weight:800; color:#8ea3ba; }
.exp-sala-membro-nome { padding:8px; text-align:center; }
.exp-sala-membro-nome strong { display:block; font-size:13px; color:#16345a; overflow-wrap:anywhere; }
.exp-sala-membro-nome small { font-size:10px; color:#53687f; }
.exp-sala-membro-selo { padding:6px; font-size:11px; font-weight:800; text-align:center; color:#8ea3ba; background:#e5dcc7; }
.exp-sala-membro-selo.dentro { color:#1d6b43; background:#cfe6d8; }

@media(max-width:600px) {
 .exp-sala-card { grid-template-columns:72px minmax(0,1fr); padding:0 10px 10px 0; }
 .exp-sala-arte { width:72px; height:100%; min-height:96px; grid-row:1/3; }
 .exp-sala-vagas { flex-direction:row; grid-column:2; }
 .exp-sala-vagas + button { grid-column:2; width:100%; }
 .exp-sala-membro-arte { height:120px; }
 .exp-sala-cabeca h3 { font-size:20px; }
 .exp-sala-criar { flex-direction:column; align-items:stretch; }
}
