/* DESBLOQUEIO PROGRESSIVO — Onda 0 (docs/audit/DESBLOQUEIO_PROGRESSIVO_AUDITORIA_2026-09-19.md).
   O game.js põe no <body> uma classe desbloq-falta-<id> para cada coisa que o
   personagem ainda não liberou (tabela em src/progression/desbloqueio-domain.js).
   Aqui só se ESCONDE: nada sai do HTML (static-audit confere id por id), e com o
   Editor V3 aberto (body.col-v3-ativo) a tela mostra tudo para o autor calibrar.
   O #gameShell nos seletores do menu vence o "#gameShell>.main-nav>.nav-button
   {display:flex!important}" do Combate B (combate-b.css). */

/* Onda 1 — nível 5 */
body:not(.col-v3-ativo).desbloq-falta-contratos #gameShell .nav-more-menu [data-view="contracts"],
body:not(.col-v3-ativo).desbloq-falta-farmar_anterior #stageBackButton,
body:not(.col-v3-ativo).desbloq-falta-farmar_anterior #stageResumeButton,
body:not(.col-v3-ativo).desbloq-falta-auto_equip #autoEquipButton,
/* conteúdo — 1ª Etapa 10 */
body:not(.col-v3-ativo).desbloq-falta-auto_boss #autoBossStatusPill,
body:not(.col-v3-ativo).desbloq-falta-auto_boss .automation-boss-controls,
/* Onda 2 — nível 20 */
body:not(.col-v3-ativo).desbloq-falta-sets #gameShell .main-nav [data-view="sets"],
body:not(.col-v3-ativo).desbloq-falta-ferreiro #gameShell .main-nav [data-view="forge"],
body:not(.col-v3-ativo).desbloq-falta-mercado .vendor-subtab[data-vendor-panel="market"],
/* Onda 3 — nível 30 */
body:not(.col-v3-ativo).desbloq-falta-auto_reciclar .inventory-automation-details,
body:not(.col-v3-ativo).desbloq-falta-pets #gameShell .main-nav [data-view="merchant"],
body:not(.col-v3-ativo).desbloq-falta-alma [data-character-tab="soul"],
body:not(.col-v3-ativo).desbloq-falta-bestiario #gameShell .nav-more-menu [data-view="codex"],
/* Onda 4 — nível 50 */
body:not(.col-v3-ativo).desbloq-falta-pvp #navPvpButton,
body:not(.col-v3-ativo).desbloq-falta-pvp #bottomNavPvp,
body:not(.col-v3-ativo).desbloq-falta-pvp [data-rail-card="coliseu"],
body:not(.col-v3-ativo).desbloq-falta-social #navSocialButton,
body:not(.col-v3-ativo).desbloq-falta-social [data-rail-card="social"],
body:not(.col-v3-ativo).desbloq-falta-social [data-rail-card="guild-boss"],
body:not(.col-v3-ativo).desbloq-falta-party #gameShell .main-nav [data-view="party"],
/* Onda 5 — nível 60 */
body:not(.col-v3-ativo).desbloq-falta-blood_castle [data-rail-card="blood-castle"],
/* Onda 6 — nível 100 */
body:not(.col-v3-ativo).desbloq-falta-asas .vendor-subtab[data-vendor-panel="wings"],
body:not(.col-v3-ativo).desbloq-falta-gens #tabGens,
/* Onda 7 — 1º Reset */
body:not(.col-v3-ativo).desbloq-falta-criar_guilda #btnCreateGuild,
/* conteúdo — 2ª área, 1ª Asa */
body:not(.col-v3-ativo).desbloq-falta-favoritar #favoriteAreaButton,
body:not(.col-v3-ativo).desbloq-falta-bau #gameShell .nav-more-menu [data-view="chest"],
/* o MAIS some quando tudo o que ele guarda ainda falta */
body:not(.col-v3-ativo).desbloq-falta-mais #gameShell .main-nav .nav-more-wrap{display:none!important}

/* A linha fixa "🔓 Próxima liberação no nível N: …" (princípio 8). */
#proximaLiberacao{
  position:relative;z-index:3;box-sizing:border-box;
  margin:6px auto 14px;padding:4px 14px;width:fit-content;max-width:min(760px,calc(100% - 32px));
  border:1px solid rgba(215,169,68,.35);border-radius:999px;background:rgba(21,24,32,.82);
  color:#e9d6a4;font-size:12.5px;line-height:1.35;text-align:center;
}
#proximaLiberacao[hidden]{display:none!important}

/* O cartão da onda: canto inferior direito, não é modal e não pausa nada (princípio 7). */
.desbloqueio-cartao{
  position:fixed;right:18px;bottom:18px;z-index:9000;width:min(340px,calc(100vw - 32px));
  padding:14px 16px 12px;border:1px solid rgba(215,169,68,.55);border-radius:14px;
  background:linear-gradient(180deg,#232733,#161922);color:#f4f4f6;
  box-shadow:0 20px 60px rgba(0,0,0,.45),0 0 16px rgba(215,169,68,.18);
  font-size:14px;line-height:1.4;
}
.desbloqueio-cartao[hidden]{display:none!important}
.desbloqueio-cartao-titulo{display:block;margin-bottom:6px;color:#d7a944;font-size:15px}
.desbloqueio-cartao ul{margin:0 0 10px;padding:0;list-style:none;display:grid;gap:3px}
/* Salto grande (offline, Party): a lista vira duas colunas para o cartão não cobrir a tela. */
.desbloqueio-cartao.muitos{width:min(460px,calc(100vw - 32px))}
.desbloqueio-cartao.muitos ul{grid-template-columns:1fr 1fr;column-gap:12px}
.desbloqueio-cartao li{padding:3px 0}
.desbloqueio-cartao-acoes{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.desbloqueio-cartao-acoes button{
  min-height:36px;padding:6px 12px;border:1px solid #343947;border-radius:8px;
  background:#222631;color:#f4f4f6;font-weight:700;font-size:12.5px;cursor:pointer;
}
.desbloqueio-cartao-acoes button.primario{border-color:#d7a944;background:#d7a944;color:#15171d}
/* No celular o cartão sobe acima da barra inferior do Combate B. */
@media (max-width:699px){
  .desbloqueio-cartao{right:16px;left:16px;width:auto;bottom:84px}
}
