#map-vector .maplibregl-map {
  width: 100%;
  height: 100%;
  background: #071426;
  font-family: "PF Videotext Pro", monospace;
}

#map-vector .maplibregl-canvas {
  outline: none;
}

#map-vector .maplibregl-canvas-container {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

#map-vector .maplibregl-ctrl-bottom-left {
  display: none;
}

#map-vector .maplibregl-ctrl-bottom-right {
  right: 4px;
  bottom: 3px;
  opacity: 0.62;
}

#map-vector .maplibregl-ctrl-attrib {
  background: rgba(3, 15, 29, 0.82);
  color: #7bb3c9;
  font: 8px/1.2 sans-serif;
}

.map-filters-panel {
  --community-blue: #238cff;
  --ai-purple: #b447ff;
}

.map-filter-btn--community[data-astro-cid-ioqvmts2].is-active {
  background-image: url("../images/ui/map/filters/filter_blue.png");
}

.map-filter-btn--ai[data-astro-cid-ioqvmts2].is-active {
  background-image: url("../images/ui/map/filters/filter_purple.png?v=20260803-11");
}

.map-filter-btn--community[data-astro-cid-ioqvmts2],
.map-filter-btn--ai[data-astro-cid-ioqvmts2] {
  appearance: none;
  border: 0;
}

.map-filters-panel--four-types .map-filter-shadows[data-astro-cid-ioqvmts2] {
  height: calc(100% - 6px);
}

.spidey-map-marker {
  position: absolute !important;
  cursor: pointer;
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.65));
  transform-origin: 50% 100%;
}

.spidey-map-marker:focus-visible {
  outline: 1px solid #00ff50;
  outline-offset: 4px;
}

.spidey-map-marker.is-selected {
  filter: drop-shadow(0 0 7px rgba(150, 224, 247, 0.95));
  transform: scale(1.12);
}

#map-vector-layer .pin-community {
  content: url("../images/ui/map/blue_pin.png");
}

#map-vector-layer .pin-ai-fictional {
  content: url("../images/ui/map/purple_ai_pin.png?v=20260803-11");
}

.spidey-map-marker[data-visual-type="community"] {
  filter: drop-shadow(0 0 7px rgba(35, 140, 255, 0.82));
}

.spidey-map-marker[data-visual-type="ai-fictional"] {
  filter: drop-shadow(0 0 7px rgba(190, 78, 255, 0.86));
}

.map-pin-card {
  left: 50%;
  bottom: 46px;
  transform: translate(-50%, 3px);
}

.map-pin-card.is-visible {
  transform: translate(-50%, 0);
}

.map-pin-card .pin-card-dyn {
  box-sizing: border-box;
  overflow: hidden;
  border: 3px solid #1a1a1a;
  background: #eaeadc;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.28);
}

.map-pin-card[data-visual-type="community"] .pin-card-dyn {
  border-color: #174f93;
  box-shadow: 0 0 13px rgba(35, 140, 255, 0.45), inset 0 0 0 1px rgba(255, 255, 255, 0.28);
}

.map-pin-card[data-visual-type="ai-fictional"] .pin-card-dyn {
  border-color: #5a157d;
  box-shadow: 0 0 13px rgba(180, 71, 255, 0.48), inset 0 0 0 1px rgba(255, 255, 255, 0.28);
}

.map-pin-card .pin-card-dyn__cta {
  width: 100%;
  border: 0;
  background: #eaeadc;
  font: inherit;
  cursor: pointer;
}

.map-pin-card__category {
  padding: 5px 4px 4px;
  border-bottom: 2px solid #1a1a1a;
  color: #fff;
  font: 7px/1.25 "PF Videotext Pro", monospace;
  letter-spacing: 0.04em;
  text-align: center;
}

.map-pin-card__category--community {
  background: #174f93;
}

.map-pin-card__category--ai {
  background: #5a157d;
}

.map-pin-card__photos {
  position: absolute;
  top: calc(100% + 7px);
  left: 50%;
  width: 112px;
  height: 20px;
  transform: translateX(-50%);
  border: 1px solid rgba(150, 224, 247, 0.75);
  background: rgba(2, 15, 31, 0.92);
  color: #96e0f7;
  font: 8px/1 "PF Videotext Pro", monospace;
  letter-spacing: 0.08em;
  cursor: pointer;
}

.map-adapter-status {
  position: absolute;
  z-index: 6;
  top: 50%;
  left: 50%;
  padding: 8px 11px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(150, 224, 247, 0.45);
  background: rgba(4, 16, 34, 0.78);
  color: #96e0f7;
  font: 9px/1.3 "PF Videotext Pro", monospace;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  pointer-events: none;
}

.map-adapter-fallback {
  position: absolute;
  inset: 0;
  background: #04070e center/contain no-repeat;
}

.map-marker-photo-hint {
  position: absolute;
  z-index: 7;
  top: 10px;
  left: 50%;
  max-width: min(78%, 310px);
  padding: 6px 9px;
  transform: translateX(-50%);
  border: 1px solid rgba(150, 224, 247, 0.62);
  background: rgba(3, 15, 31, 0.86);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.32);
  color: #a8e1fe;
  font: 8px/1.35 "PF Videotext Pro", monospace;
  letter-spacing: 0.06em;
  text-align: center;
  pointer-events: none;
}

.help-screen.help-screen--visible {
  pointer-events: none;
}

.help-screen.help-screen--visible .help-screen__close {
  pointer-events: auto;
}

@media (max-width: 768px) {
  .map-filters-panel--four-types .map-filter-btn[data-astro-cid-ioqvmts2] {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
  }

  .map-pin-card {
    bottom: 38px;
  }

  #map-vector .maplibregl-ctrl-bottom-right {
    bottom: 2px;
  }

  .map-marker-photo-hint {
    top: 7px;
    max-width: calc(100% - 28px);
    padding: 5px 7px;
    font-size: 7px;
  }
}
