/* =========================================================
   Fix Pallini — Active Problems Dashboard
   Map / Leaflet / markers. Scope: fpa-*
   ========================================================= */
.fpa-map-shell{
  margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,1.42fr) minmax(340px,.58fr);
  gap:16px;
  align-items:stretch;
}
.fpa-map-card,.fpa-case-panel,.fpa-banners-section,.fpa-empty-public{
  border:1px solid var(--fpa-line);
  border-radius:var(--fpa-radius);
  background:#0f172a;
  box-shadow:var(--fpa-shadow);
  color:var(--fpa-text);
}
.fpa-map-card{padding:18px;background:#0f172a}
.fpa-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:0 2px 14px}
.fpa-map-head h2,.fpa-case-panel h2,.fpa-section-head h2,.fpa-empty-public h2{margin:6px 0 0;color:#f8fafc;font-size:24px;line-height:1.18;font-weight:800;letter-spacing:-.025em}
.fpa-current-filter{text-align:right;color:#94a3b8;font-size:12px;font-weight:500}
.fpa-current-filter span,.fpa-current-filter strong{display:block}
.fpa-current-filter strong{margin-top:3px;color:#2563eb;font-weight:700}
.fpa-map{
  height:575px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid #334155;
  background:#e6f4ff;
  position:relative;
}
.fpa-map .leaflet-container{font-family:inherit}
.fpa-map .leaflet-control-attribution{font-size:10px}
.fpa-map-fallback{
  height:100%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:24px;
  background:#111827;
  color:#e2e8f0;
  font-size:15px;
  font-weight:600;
}
.fpa-leaflet-pin{background:transparent!important;border:0!important}
.fpa-pin-marker{width:42px;height:50px;position:relative;display:block;transform:translateY(-7px)}
.fpa-pin-marker__bubble{
  width:38px;
  height:38px;
  border-radius:999px 999px 999px 5px;
  transform:rotate(-45deg);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:17px;
  font-weight:1000;
  box-shadow:0 12px 24px rgba(15,23,42,.28);
  border:3px solid #fff;
  background:#2563eb;
}
.fpa-pin-marker__bubble img{width:24px;height:24px;object-fit:contain;transform:rotate(45deg)}
.fpa-pin-marker__bubble span{transform:rotate(45deg);display:block}
.fpa-pin-marker.is-urgent .fpa-pin-marker__bubble{outline:5px solid rgba(220,38,38,.22)}
.fpa-pin-marker.is-active .fpa-pin-marker__bubble{outline:5px solid rgba(56,189,248,.42);transform:rotate(-45deg) scale(1.16)}
.fpa-pin-marker[data-cat="recycling"] .fpa-pin-marker__bubble{background:#16a34a}
.fpa-pin-marker[data-cat="garbage"] .fpa-pin-marker__bubble{background:#475569}
.fpa-pin-marker[data-cat="lighting"] .fpa-pin-marker__bubble{background:#f59e0b}
.fpa-pin-marker[data-cat="stray_animals"] .fpa-pin-marker__bubble{background:#9333ea}
.fpa-pin-marker[data-cat="sports_facilities"] .fpa-pin-marker__bubble{background:#2563eb}

/* Batch 54-60 combined — desktop sidebar guard.
   Keeps the selected-case side panel visible on the Active Problems page even if
   theme/sidebar CSS or older bundled CSS tries to collapse generic aside elements. */
html body .fpa-page .fpa-map-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1.42fr) minmax(340px,.58fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
html body .fpa-page .fpa-map-shell > .fpa-map-card{min-width:0!important;display:block!important}
html body .fpa-page .fpa-map-shell > .fpa-case-panel{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  width:auto!important;
  max-width:none!important;
  min-width:320px!important;
  min-height:100%!important;
  transform:none!important;
}
