:root{
  --popup-bg: #0b1130f2;
  --popup-border: #2b3a7a;
  --popup-text: #f1f4ff;
  --popup-muted: #b7c3ef;
  --popup-accent: #9fd0ff;
  --popup-chip: #12205a;
  --popup-chip-bd: #2b3a7a;
  --popup-shadow: rgba(0,0,0,.6);
}

.leaflet-popup{ margin-bottom: 8px }
.leaflet-popup-content-wrapper{
  background: var(--popup-bg);
  color: var(--popup-text);
  border: 1px solid var(--popup-border);
  border-radius: 14px;
  box-shadow: 0 16px 44px var(--popup-shadow);
}
.leaflet-popup-tip{
  background: var(--popup-bg);
  box-shadow: 0 10px 24px var(--popup-shadow);
  border: 1px solid var(--popup-border);
}
.leaflet-container a.leaflet-popup-close-button{
  color: var(--popup-muted);
  font-weight: 700;
  background: transparent;
  border-radius: 10px;
  top: 6px; right: 8px;
}
.leaflet-container a.leaflet-popup-close-button:hover{ color: var(--popup-accent) }

.leaflet-popup-content{
  margin: 10px 12px;
  min-width: 230px; max-width: 340px;
}

.popup .head{ display:flex; align-items:center; gap:8px; margin-bottom:6px }
.popup .head img{
  width:24px; height:24px; image-rendering:pixelated; border-radius:6px;
  border:1px solid var(--popup-border); background:#0e1a52;
}
.popup .head strong{ letter-spacing:.2px }

.popup .row{ display:flex; gap:8px; align-items:flex-start; padding:4px 0; border-bottom:1px dashed rgba(255,255,255,.08) }
.popup .row:last-child{ border-bottom:0 }
.popup .row b{ color:var(--popup-muted); font-weight:600; min-width:118px; display:inline-block }

/* Chips/tags */
.popup .chips{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 2px }
.popup .chip{ padding:4px 8px; border-radius:999px; border:1px solid var(--popup-chip-bd); background:var(--popup-chip); font-size:12px; }
.popup .chip.dot::before{ content:""; display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; background:currentColor; }

.popup .btn.btn-mini{
  border:1px solid var(--popup-border);
  background:#0f1b58;
  color:var(--popup-text);
  padding:6px 8px;
  border-radius:8px; cursor:pointer;
}
.popup .btn.btn-mini:hover{ background:#122064; border-color:#3a4aa1 }

.popup code, .popup .coords{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  background:#0b154a; padding:2px 6px; border-radius:6px; border:1px solid var(--popup-border);
}

@media (max-width: 480px){ .leaflet-popup-content{ max-width: 86vw } }

/* ===== Bloques nuevos: Stats / Resistencias / Equipo ===== */
.popup .block{ margin-top:8px; padding-top:6px; border-top:1px dashed rgba(255,255,255,.08) }
.popup .block-title{ margin:0 0 6px; font-size:12px; letter-spacing:.4px; color:var(--popup-accent) }

/* Stats grid */
.popup .kv{ display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:6px 10px }
.popup .kv > div{
  display:flex; align-items:center; justify-content:space-between;
  background:#0b154a; border:1px solid var(--popup-border); border-radius:8px; padding:6px 8px;
}
.popup .kv > div span{ color:var(--popup-muted) }
.popup .kv > div strong{ color:var(--popup-text) }

/* Resistencias chips */
.popup .res-grid{ display:flex; flex-wrap:wrap; gap:6px }
.popup .res-chip{
  padding:4px 8px; border-radius:999px; border:1px solid var(--popup-border);
  background:#0b154a; font-size:12px;
}
.popup .res-chip.resist{ border-color:#3a7a3a; box-shadow: inset 0 0 0 1px rgba(58,122,58,.2) }
.popup .res-chip.weak{ border-color:#7a3a3a; box-shadow: inset 0 0 0 1px rgba(122,58,58,.2) }

/* Lista de equipamiento */
.popup .eq-list{ margin:0; padding-left:18px }
.popup .eq-list li{ margin:2px 0 }
