/* =========================================================
   mapa.css · o mapa da cidade (prefixo mp-)
   ========================================================= */
#mod-mapa.show{display:flex;flex-direction:column;min-height:0;flex:1}
.mp-wrap{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--w-face)}
.mp-barra{flex:none;display:flex;gap:6px;align-items:center;padding:4px;overflow-x:auto;scrollbar-width:thin;border-bottom:2px solid var(--w-shadow);background:var(--w-face)}
.mp-grupo{display:flex;gap:3px;align-items:center;flex:none;padding-right:6px;border-right:1px solid var(--w-shadow);box-shadow:1px 0 0 var(--w-light)}
.mp-grupo:last-child{border-right:0;box-shadow:none}
.mp-barra .w95-btn{min-width:0;padding:3px 9px;white-space:nowrap}
.mp-barra .mp-ic{min-width:34px;font-size:15px;line-height:1}
.mp-so-int{display:none}
.mp-interior .mp-so-int{display:flex}
.mp-interior .mp-so-cid{display:none}
.mp-andares{display:flex;gap:3px;align-items:center}
.mp-int-n{font-size:11.5px;white-space:nowrap;padding:0 4px;max-width:180px;overflow:hidden;text-overflow:ellipsis}
.mp-corpo{flex:1;display:flex;min-height:0;position:relative}
.mp-vista{flex:1;position:relative;min-width:0;min-height:0;overflow:hidden;background:#1e241c;touch-action:none;border:2px solid;border-color:var(--w-shadow) var(--w-light) var(--w-light) var(--w-shadow)}
.mp-cv{position:absolute;inset:0;display:block;cursor:grab;touch-action:none}
.mp-cv:active{cursor:grabbing}
.mp-status{position:absolute;left:6px;bottom:6px;right:6px;pointer-events:none;font:13px/1.35 var(--mono);color:#e9f1e6;text-shadow:0 1px 2px #000,0 0 3px #000;display:flex;flex-wrap:wrap;gap:0 4px}
.mp-status b{color:#ffe36b;font-weight:normal}
.mp-alerta{color:#ff8a8a}
.mp-dica{position:absolute;left:50%;top:10px;transform:translateX(-50%);background:rgba(255,255,225,.95);border:1px solid #000;padding:5px 10px;font-size:12px;max-width:calc(100% - 24px);text-align:center;transition:opacity .8s;pointer-events:none}
.mp-dica.some{opacity:0}
/* cartão do local */
.mp-cartao{flex:none;width:340px;display:flex;flex-direction:column;min-height:0;background:var(--w-face);border:2px solid;border-color:var(--w-light) var(--w-dark) var(--w-dark) var(--w-light)}
.mp-cartao[hidden]{display:none}
.mp-cartao-h{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:4px 6px;background:linear-gradient(90deg,var(--w-title),var(--w-title2));color:#fff}
.mp-cartao-t{font-size:12.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mp-cartao-c{flex:1;overflow-y:auto;padding:10px;min-height:0;overscroll-behavior:contain}
.mp-cart-cab{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:4px}
.mp-cat{display:inline-block;width:12px;height:12px;border:1px solid #000;flex:none;vertical-align:-1px}
.mp-sec{margin-top:10px;padding-top:8px;border-top:1px solid var(--w-shadow)}
.mp-sec>b{display:block;font-size:12px;margin-bottom:4px}
.mp-sub{display:block;margin:10px 0 4px;font-size:12px}
.mp-quem,.mp-test{list-style:none;display:grid;gap:4px;font-size:12.5px}
.mp-quem li{display:flex;gap:6px;align-items:center}
.mp-test li{background:#fff;border:1px solid var(--w-shadow);padding:5px 7px}
.mp-desc{background:#fff8d8;border:1px solid #c9a227;padding:7px 9px;margin:8px 0;font-size:12.5px}
.mp-desc p{margin-top:3px;white-space:pre-wrap}
.mp-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:6px;margin-bottom:6px}
.mp-fotos figure{position:relative;background:#fff;border:1px solid var(--w-shadow);padding:3px}
.mp-fotos img{width:100%;height:72px;object-fit:cover;display:block;cursor:zoom-in}
.mp-fotos figcaption{font-size:10.5px;color:var(--w-dim)}
.mp-fotos .w95-btn{position:absolute;top:2px;right:2px;min-width:0;padding:0 6px}
.mp-retrato{width:84px;height:84px;object-fit:cover;border:2px inset #fff;float:right;margin:0 0 6px 8px}
.mp-mestre{background:#e6e0f3;margin-left:-10px;margin-right:-10px;padding:8px 10px;border-top:2px solid #6f5a8a}
.mp-mestre>b{color:#4a2f6f}
.mp-acoes{margin-top:12px}
.mp-ext:empty{display:none}
.mp-senha{padding:6px 0;border-bottom:1px dotted var(--w-shadow)}
.mp-senha .w95-input{flex:1;min-width:120px}
.mp-rel-g{margin:6px 0}
.mp-rel-h{font:20px var(--mono);color:var(--w-blue);font-weight:normal}
.mp-link{background:none;border:0;color:var(--w-blue);text-decoration:underline;cursor:pointer;text-align:left;padding:3px 0;font:inherit}
.mp-h4{font-size:12px;margin:10px 0 4px}
.mp-leg{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px}
.mp-leg i{display:inline-block;width:12px;height:12px;border:1px solid #000;margin-right:4px;vertical-align:-1px}
.mp-lista{list-style:none;display:grid;gap:2px;max-height:52vh;overflow-y:auto;margin-top:6px}
.mp-li{width:100%;display:grid;grid-template-columns:14px 1fr;gap:2px 8px;align-items:center;text-align:left;background:#fff;border:1px solid var(--w-shadow);padding:6px 8px;cursor:pointer;font:inherit}
.mp-li:hover{background:#e8ecf4}
.mp-li .mini{grid-column:2}
/* perseguição e replay */
.mp-persg,.mp-replay{position:absolute;left:50%;top:8px;transform:translateX(-50%);width:min(440px,calc(100% - 16px));background:var(--w-face);border:2px solid;border-color:var(--w-light) var(--w-dark) var(--w-dark) var(--w-light);padding:6px 8px;box-shadow:3px 3px 0 rgba(0,0,0,.4);z-index:3}
.mp-persg[hidden],.mp-replay[hidden]{display:none}
.mp-persg-h{font-weight:bold;font-size:12.5px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#900}
.mp-crono{font:20px var(--mono);color:#000;background:#cfe8cf;padding:0 6px;border:1px inset #fff}
.mp-crono.fim{background:#ffb3b3;animation:mp-pisca .6s steps(2) infinite}
@keyframes mp-pisca{50%{opacity:.4}}
.mp-persg-t{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:12px}
.mp-persg-t span{max-width:28%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mp-trilha{flex:1;display:flex;gap:3px}
.mp-trilha i{flex:1;height:14px;background:#fff;border:1px solid #555}
.mp-trilha i.mp-pa{background:#2b4a6f}
.mp-trilha i.mp-pb{background:#c0392b}
.mp-replay{top:auto;bottom:34px;display:grid;gap:4px}
.mp-replay input[type=range]{width:100%}
/* TV */
.mp-tv .mp-barra{display:none}
.mp-tv .mp-dica{display:none}
.mp-tv .mp-status{font-size:18px}
body.tv .mp-vista{border:0}
/* celular */
@media (pointer:coarse){
  .mp-barra .w95-btn{min-height:38px}
  .mp-barra .mp-ic{min-width:40px}
  .mp-li{min-height:44px}
}
@media (max-width:860px){
  .mp-cartao{position:absolute;left:0;right:0;bottom:0;width:auto;max-height:62%;z-index:4;box-shadow:0 -3px 0 rgba(0,0,0,.35)}
  .mp-com-cartao .mp-status{display:none}
  .mp-cartao-h{min-height:36px}
  .mp-cartao-h .tbx{width:34px;height:30px;font-size:15px}
  .mp-mestre{margin-left:-10px;margin-right:-10px}
  .mp-int-n{max-width:110px}
  .mp-status{font-size:12px}
}
.mp-barra.rola-esq{-webkit-mask-image:linear-gradient(to right,transparent,#000 30px);mask-image:linear-gradient(to right,transparent,#000 30px)}
.mp-barra.rola-esq.rola-dir{-webkit-mask-image:linear-gradient(to right,transparent,#000 30px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,transparent,#000 30px,#000 calc(100% - 36px),transparent)}
.mp-tv .mp-status{top:10px;bottom:auto}
/* regiões (como os andares da Planta) */
.mp-regioes{flex:none;display:flex;gap:4px;align-items:stretch;padding:4px;overflow-x:auto;scrollbar-width:thin;background:var(--w-face);border-bottom:1px solid var(--w-shadow)}
.mp-interior .mp-regioes{display:none}
.mp-reg{display:flex;align-items:center;gap:6px;min-width:0;padding:3px 10px 3px 4px;white-space:nowrap;position:relative}
.mp-reg-n{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#000080;color:#fff;font:bold 12px Tahoma,sans-serif;flex:none}
.mp-reg.on .mp-reg-n{background:#ffe36b;color:#000;box-shadow:0 0 0 2px #000}
.mp-reg.minha .mp-reg-n{outline:2px dashed #c0392b;outline-offset:1px}
.mp-reg-t{font-size:12px}
.mp-reg-c{position:absolute;top:1px;right:1px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:#c0392b;color:#fff;font:bold 10px/15px Tahoma,sans-serif;font-style:normal;text-align:center}
.mp-reg-cond{padding-left:8px}
.mp-esc{opacity:.85}
.mp-lista-curta{max-height:none}
.mp-cd{width:100%;height:auto;display:block;background:#f4f3ec;border:2px inset #fff;margin-bottom:6px}
.mp-cd text{font-family:Tahoma,Verdana,sans-serif}
@media (pointer:coarse){ .mp-reg{min-height:40px} }
@media (max-width:520px){
  .mp-reg{padding:3px 8px 3px 3px}
  .mp-reg-t{font-size:11px;max-width:78px;overflow:hidden;text-overflow:ellipsis}
  .mp-reg.on .mp-reg-t{max-width:none}
}
.mp-reg{padding-right:18px}
.mp-reg-cond{padding-right:10px}
.mp-nw{white-space:nowrap}
.mp-cd-leg{margin:0 0 8px 20px;font-size:12px;display:grid;gap:2px}
.mp-reg{padding-right:10px}
.mp-reg-c{right:auto;left:18px;top:0}
.mp-reg{flex:none}
