.leaflet-popup.ap-rich-map-popup,
.leaflet-popup:has(.popup),
.leaflet-popup:has(.atlas-popup),
.leaflet-popup:has(.ap-db-popup),
.leaflet-popup:has(.ww-popup) {
  filter: drop-shadow(0 22px 44px rgba(0, 0, 0, .48));
}

.leaflet-popup.ap-source-aware .leaflet-popup-content-wrapper,
.leaflet-popup.ap-source-aware .leaflet-popup-tip,
.leaflet-popup:has(.popup) .leaflet-popup-content-wrapper,
.leaflet-popup:has(.popup) .leaflet-popup-tip,
.leaflet-popup:has(.atlas-popup) .leaflet-popup-content-wrapper,
.leaflet-popup:has(.atlas-popup) .leaflet-popup-tip,
.leaflet-popup:has(.ap-db-popup) .leaflet-popup-content-wrapper,
.leaflet-popup:has(.ap-db-popup) .leaflet-popup-tip,
.leaflet-popup:has(.ww-popup) .leaflet-popup-content-wrapper,
.leaflet-popup:has(.ww-popup) .leaflet-popup-tip {
  border: 1px solid rgba(224, 185, 94, .48);
  background: linear-gradient(145deg, #111a16, #080d0b 72%);
  color: #f7f0e3;
}

.leaflet-popup.ap-source-aware .leaflet-popup-content-wrapper {
  border-radius: 2px;
  box-shadow: inset 0 1px rgba(255,255,255,.04);
}

.leaflet-popup.ap-source-aware .leaflet-popup-content {
  width: min(360px, calc(100vw - 76px)) !important;
  margin: 0;
  padding: 18px;
  color: #f7f0e3;
  font: 400 13px/1.5 Inter, system-ui, sans-serif;
}

.leaflet-popup.ap-source-aware .leaflet-popup-content > strong:first-child,
.leaflet-popup.ap-source-aware .atlas-popup > strong,
.leaflet-popup.ap-source-aware .ap-db-popup h3,
.leaflet-popup.ap-source-aware .ww-popup > strong:first-child {
  display: block;
  margin: 0 0 9px;
  color: #fff7e8;
  font: 500 22px/1.08 Georgia, "Times New Roman", serif;
}

.leaflet-popup.ap-source-aware .popup-meta,
.leaflet-popup.ap-source-aware .ap-popup-provenance {
  display: block;
  margin: 0 0 7px;
  color: #dfba62;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.leaflet-popup.ap-source-aware .ap-popup-actions,
.leaflet-popup.ap-source-aware nav {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 13px;
  padding-top: 12px;
  border-top: 1px solid rgba(224,185,94,.2);
}

.leaflet-popup.ap-source-aware .ap-popup-actions a,
.leaflet-popup.ap-source-aware nav a,
.leaflet-popup.ap-source-aware .leaflet-popup-content > a {
  display: inline-block;
  margin-top: 8px;
  padding: 7px 9px;
  border: 1px solid rgba(224,185,94,.48);
  color: #e7c56f !important;
  text-decoration: none;
  font-size: 10px;
  font-weight: 800;
}

.leaflet-popup.ap-source-aware .ap-popup-actions a + a,
.leaflet-popup.ap-source-aware nav a + a { margin-left: 0; }

.leaflet-popup.ap-source-aware small,
.leaflet-popup.ap-source-aware em { color: #91a99e; }

.leaflet-popup:has(.popup) .leaflet-popup-content-wrapper {
  border-radius: 2px;
  box-shadow: inset 0 1px rgba(255, 255, 255, .04);
}

.leaflet-popup:has(.popup) .leaflet-popup-content {
  width: min(350px, calc(100vw - 76px)) !important;
  margin: 0;
}

.leaflet-popup:has(.popup) .popup {
  min-width: 270px;
  padding: 18px;
  font: 400 13px/1.5 Inter, system-ui, sans-serif;
}

.leaflet-popup:has(.popup) .popup > span {
  display: block;
  margin-bottom: 7px;
  color: #dfba62;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.leaflet-popup:has(.popup) .popup > strong {
  display: block;
  margin: 0 0 10px;
  color: #fff7e8;
  font: 500 24px/1.04 Georgia, "Times New Roman", serif;
}

.leaflet-popup:has(.popup) .popup p {
  margin: 9px 0;
  color: #b9c9c1;
}

.leaflet-popup:has(.popup) .popup small {
  color: #91a99e;
}

.leaflet-popup:has(.popup) .popup nav {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 13px;
  padding-top: 12px;
  border-top: 1px solid rgba(224, 185, 94, .2);
}

.leaflet-popup:has(.popup) .popup nav a {
  padding: 7px 9px;
  border: 1px solid rgba(224, 185, 94, .48);
  color: #e7c56f !important;
  text-decoration: none;
  font-size: 10px;
  font-weight: 800;
}

.leaflet-popup:has(.popup) .popup nav a:hover {
  background: rgba(224, 185, 94, .12);
}

.leaflet-popup:has(.popup) .leaflet-popup-close-button {
  width: 31px;
  height: 31px;
  color: #dfba62;
  font-size: 21px;
}

@media (max-width: 520px) {
  .leaflet-popup:has(.popup) .popup {
    min-width: 0;
    padding: 15px;
  }

  .leaflet-popup:has(.popup) .popup > strong {
    font-size: 21px;
  }
}
