/* V32 — Praça com hierarquia móvel, quatro caminhos principais e atalhos sem sobreposição. */
#praca .hud-topo{z-index:45}
#praca .relogio-jogo{
  left:50%;right:auto;top:calc(74px + env(safe-area-inset-top));
  transform:translateX(-50%);min-width:118px;text-align:center;z-index:42;
}
#praca #btnSom{min-width:64px;justify-content:center;padding:6px 8px;font-size:12px;white-space:nowrap}
#praca #btnSom span{font-size:10px}
#praca .participar-praca{left:12px;top:calc(150px + env(safe-area-inset-top));z-index:12;min-height:48px}
#praca .missoes-amigos-praca,#praca .painel-missoes-praca,#praca .tutorial-praca{
  position:absolute;left:12px;z-index:12;width:74px;min-height:58px;
  border:2px solid #fff;border-radius:16px;padding:7px 5px;
  display:grid;place-items:center;gap:1px;color:#fff;font:900 11px/1.05 system-ui;
  box-shadow:0 4px 0 #174f35;cursor:pointer;
}
#praca .missoes-amigos-praca{top:calc(210px + env(safe-area-inset-top));background:#318a5d}
#praca .painel-missoes-praca{top:calc(278px + env(safe-area-inset-top));background:#d69b2e;box-shadow:0 4px 0 #925815}
#praca .tutorial-praca{top:calc(346px + env(safe-area-inset-top));width:48px;min-height:38px;background:#236aa5;box-shadow:0 3px 0 #154468;font-size:10px}
#praca .missoes-amigos-praca>span:first-child,#praca .painel-missoes-praca>span:first-child{font-size:22px}
#praca .missoes-amigos-praca i,#praca .painel-missoes-praca i,#praca .tutorial-praca i{
  position:absolute;right:-7px;top:-7px;display:grid;place-items:center;width:22px;height:22px;
  border:2px solid #fff;border-radius:50%;background:#d93c35;color:#fff;font:900 12px/1 system-ui;font-style:normal;
}
#praca .comunidade-online-praca{display:none!important}
#praca .presente-praca{right:10px;top:calc(128px + env(safe-area-inset-top));min-width:62px;min-height:54px}
#praca .diario-praca{right:10px;top:calc(194px + env(safe-area-inset-top));min-width:62px;min-height:54px}
#praca .radio-praca{right:10px;top:calc(260px + env(safe-area-inset-top));min-width:62px;min-height:54px}
#praca .caderno-praca{right:10px;top:calc(326px + env(safe-area-inset-top));min-width:62px;min-height:54px}
#praca .menu-madeira{gap:1%;padding:0 5px;bottom:calc(8px + env(safe-area-inset-bottom))}
#praca .opcao-madeira{width:24%;max-width:128px;min-width:0}
#praca .praca-guia{bottom:22%;width:min(31%,165px)}
#praca .companheiro-praca{bottom:116px}

/* Em telas estreitas, os atalhos laterais ocupam colunas próprias e o balão
   de bloqueio não pode cobrir as entradas da praça. */
@media (min-width:360px) and (max-width:540px){
  #praca .participar-praca{left:8px;top:calc(142px + env(safe-area-inset-top));max-width:154px}
  #praca .missoes-amigos-praca,#praca .painel-missoes-praca,#praca .tutorial-praca{left:8px}
  #praca .presente-praca,#praca .diario-praca,#praca .radio-praca,#praca .caderno-praca{right:8px}
  #praca .praca-fala{width:min(74%,330px);max-height:22vh;font-size:12px;padding:9px 11px}
}

/* Tutorial guiado */
.tutorial-alvo{z-index:23002!important;filter:drop-shadow(0 0 9px #ffe16a)!important;animation:tgPulse .9s ease-in-out infinite alternate!important}
.tg-overlay{position:fixed;inset:0;z-index:23000;background:#051d2bb5;font-family:system-ui,sans-serif;pointer-events:none}
.tg-card{position:fixed;z-index:23003;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(420px,calc(100% - 24px));box-sizing:border-box;padding:16px;border:3px solid #f2c94c;border-radius:19px;background:#fff9e9;color:#183f34;box-shadow:0 15px 40px #0009;pointer-events:auto}
.tg-card small{color:#32694f;font-weight:900;letter-spacing:.06em}.tg-card h3{margin:5px 0 7px;font-size:21px}.tg-card p{margin:0;line-height:1.45}.tg-actions{display:flex;justify-content:space-between;gap:9px;margin-top:13px}.tg-actions button{min-height:44px;border:1px solid #89ad8a;border-radius:11px;padding:9px 13px;background:#e8f5df;color:#184b37;font:900 14px system-ui}.tg-actions .tg-next{background:#24734d;color:#fff}.tg-progress{height:8px;margin-top:12px;border-radius:99px;background:#dce5d5;overflow:hidden}.tg-progress i{display:block;height:100%;background:#e7b734;transition:width .25s}
.tg-panel{position:fixed;inset:0;z-index:23010;overflow:auto;padding:16px;background:linear-gradient(145deg,#113f5b,#226148);font-family:system-ui,sans-serif;color:#183f34}.tg-panel>div{max-width:680px;margin:auto}.tg-panel header{display:flex;justify-content:space-between;align-items:center;color:#fff}.tg-panel header button,.tg-panel article button{min-height:44px;border:0;border-radius:11px;padding:10px 13px;background:#fff;color:#184a37;font-weight:900}.tg-panel article{margin:12px 0;padding:15px;border-radius:17px;background:#fff9e9}.tg-checklist{display:grid;gap:8px;margin:12px 0}.tg-checklist div{display:flex;align-items:center;gap:10px;padding:10px;border-radius:11px;background:#edf3e8}.tg-checklist div.done{background:#d9f2d8}.tg-checklist span{font-size:21px}.tg-panel .tg-start{background:#287750;color:#fff}
@keyframes tgPulse{to{transform:translateY(-3px) scale(1.04)}}

@media(max-width:600px){
  #praca .hud-topo{left:5px;right:5px}
  #praca .hud-madeira{gap:4px}
  #praca .moedas-praca{padding-right:8px;font-size:12px}
  #praca #btnSom{min-width:52px;padding:5px 6px}#praca #btnSom span{font-size:9px}
  #praca .relogio-jogo{top:calc(68px + env(safe-area-inset-top));font-size:10px;padding:5px 7px}
  #praca .participar-praca{left:7px;top:calc(145px + env(safe-area-inset-top));max-width:175px;font-size:12px;padding:8px 10px}
  #praca .missoes-amigos-praca{left:7px;top:calc(203px + env(safe-area-inset-top))}
  #praca .painel-missoes-praca{left:7px;top:calc(269px + env(safe-area-inset-top))}
  #praca .tutorial-praca{left:7px;top:calc(335px + env(safe-area-inset-top))}
  #praca .presente-praca{right:7px;top:calc(122px + env(safe-area-inset-top))}
  #praca .diario-praca{right:7px;top:calc(184px + env(safe-area-inset-top))}
  #praca .radio-praca{right:7px;top:calc(246px + env(safe-area-inset-top))}
  #praca .caderno-praca{right:7px;top:calc(308px + env(safe-area-inset-top))}
  #praca .menu-madeira{gap:0;padding:0 2px}
  #praca .opcao-madeira{width:23.5%;max-width:none}
  #praca .companheiro-praca{bottom:112px}
}
@media(max-height:720px){
  #praca .participar-praca{top:138px}.missoes-amigos-praca{top:194px!important}.painel-missoes-praca{top:255px!important}.tutorial-praca{top:316px!important}
  #praca .presente-praca{top:108px}.diario-praca{top:166px!important}.radio-praca{top:224px!important}.caderno-praca{top:282px!important}
}
@media(prefers-reduced-motion:reduce){.tutorial-alvo{animation:none!important}.tg-progress i{transition:none}}
.tg-unlock{position:fixed;inset:0;z-index:23100;background:#051d2bcc;font-family:system-ui,sans-serif;pointer-events:auto}.tg-unlock-card{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(470px,calc(100% - 24px));box-sizing:border-box;padding:22px;border:3px solid #f2c94c;border-radius:22px;background:#fff9e9;color:#183f34;box-shadow:0 18px 55px #000b}.tg-unlock-card small{display:block;color:#9a6811;font-weight:900;letter-spacing:.08em}.tg-unlock-card h3{margin:7px 0 8px;font-size:clamp(21px,4vw,28px);line-height:1.15}.tg-unlock-card p{margin:0;line-height:1.5}.tg-unlock-route{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:17px;padding:11px 13px;border-radius:14px;background:#e9f3df;color:#246348;font-size:13px}.tg-unlock-route b{font-size:20px;color:#d3941e}.tg-unlock .tg-actions{margin-top:17px}.tg-unlock .tg-actions button{cursor:pointer}@media(max-width:430px){.tg-unlock-card{padding:18px;border-radius:18px}.tg-unlock-route{font-size:12px}.tg-unlock .tg-actions{flex-direction:column-reverse}.tg-unlock .tg-actions button{width:100%}}

/* Um único menu evita que os atalhos cubram a cena da praça no celular. */
#praca .participar-praca,#praca .missoes-amigos-praca,#praca .painel-missoes-praca,#praca .tutorial-praca{display:none!important}
#praca .menu-acessos-praca{position:absolute;left:10px;top:calc(138px + env(safe-area-inset-top));z-index:55;display:flex;align-items:center;gap:5px;min-height:43px;border:2px solid #fff;border-radius:15px;padding:7px 11px;background:#236aa5;color:#fff;box-shadow:0 4px 0 #154468;font:900 13px/1 system-ui;cursor:pointer}
#praca .menu-acessos-praca>span{font-size:11px}.menu-acessos-praca i{position:absolute;right:-7px;top:-7px;display:grid;place-items:center;width:21px;height:21px;border:2px solid #fff;border-radius:50%;background:#d93c35;color:#fff;font:900 12px/1 system-ui;font-style:normal}
#praca .menu-acessos-lista{position:absolute;z-index:56;left:10px;top:calc(190px + env(safe-area-inset-top));width:min(238px,calc(100% - 20px));padding:8px;border:2px solid #fff;border-radius:16px;background:#fff9ea;box-shadow:0 12px 28px #001b1766}
#praca .menu-acessos-lista[hidden]{display:none}.menu-acessos-lista button{display:block;width:100%;min-height:43px;margin:3px 0;border:1px solid #b6ceb7;border-radius:10px;padding:9px 10px;background:#edf6e8;color:#194b37;text-align:left;font:900 13px/1.2 system-ui;cursor:pointer}.menu-acessos-lista button:disabled{opacity:.5;cursor:not-allowed}.menu-acessos-lista button:focus-visible,#praca .menu-acessos-praca:focus-visible{outline:3px solid #f4c83d;outline-offset:2px}
@media(max-width:600px){#praca .menu-acessos-praca{left:7px;top:calc(132px + env(safe-area-inset-top))}#praca .menu-acessos-lista{left:7px;top:calc(182px + env(safe-area-inset-top))}}
