.medrecht-map-wrap{width:100%;margin:0 0 28px}.medrecht-map-title{margin:0 0 18px}.medrecht-map-stage{position:relative}.medrecht-anwaltskarte{width:100%;min-height:360px;border-radius:14px;overflow:hidden;background:#f4f6f7;box-shadow:0 1px 0 rgba(0,0,0,.06)}.medrecht-map-placeholder{display:flex;align-items:center;justify-content:center;padding:30px;text-align:center;background:#f4f6f7;border:1px solid #e1e5e7;border-radius:14px;color:#555;box-sizing:border-box}.medrecht-map-placeholder code{font-size:.9em}.medrecht-map-status{position:absolute;left:14px;top:14px;z-index:3;max-width:calc(100% - 90px);padding:7px 11px;border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 2px 10px rgba(0,0,0,.12);font-size:12px;line-height:1.3;color:#465055;pointer-events:none}.medrecht-map-status.is-error{color:#9c2727;background:rgba(255,245,245,.96)}.medrecht-anwaltskarte .maplibregl-ctrl-group{box-shadow:0 1px 5px rgba(0,0,0,.16)}.medrecht-anwaltskarte .maplibregl-popup-content{padding:16px 44px 16px 18px;border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.18);font-size:14px;line-height:1.45}.medrecht-anwaltskarte .maplibregl-popup-close-button{position:absolute;top:6px;right:6px;width:28px;height:28px;padding:0;border:0;border-radius:50%;font-size:20px;line-height:28px;text-align:center;color:#657077;background:transparent;cursor:pointer}.medrecht-anwaltskarte .maplibregl-popup-close-button:hover,.medrecht-anwaltskarte .maplibregl-popup-close-button:focus{color:#202629;background:#f1f4f5;outline:none}.medrecht-anwaltskarte .medrecht-map-popup-firm{padding-right:2px;overflow-wrap:anywhere}.medrecht-map-popup-firm{font-size:12px;text-transform:uppercase;letter-spacing:.035em;color:#6b7377;margin-bottom:2px}.medrecht-map-popup strong{font-size:15px;color:#202629}.medrecht-map-popup-distance{margin-top:4px;font-size:12px;color:#697277}.medrecht-map-popup-outside{margin-top:4px;font-size:11px;font-weight:600;color:#777f83}.medrecht-map-popup-link{margin-top:8px}.medrecht-map-popup-link a{font-weight:600;text-decoration:none}.medrecht-map-popup-multi{min-width:235px}.medrecht-map-popup-multi-title{padding-right:4px;margin-bottom:8px;font-size:13px;font-weight:700;color:#202629}.medrecht-map-popup-people{max-height:300px;overflow:auto;padding-right:3px}.medrecht-map-popup-person{padding:10px 0;border-top:1px solid #e8ecee}.medrecht-map-popup-person:first-child{border-top:0;padding-top:2px}.medrecht-map-popup-person:last-child{padding-bottom:2px}.medrecht-map-popup-person strong{display:block}.medrecht-anwaltskarte .maplibregl-ctrl-attrib{font-size:9px;line-height:1.25;max-width:calc(100% - 12px);white-space:normal;text-align:right;background:rgba(255,255,255,.9)}@media(max-width:767px){.medrecht-anwaltskarte{border-radius:10px;min-height:500px}.medrecht-map-wrap-profile .medrecht-anwaltskarte{min-height:360px}.medrecht-map-status{left:10px;top:10px;max-width:calc(100% - 78px)}}
.medrecht-map-wrap-profile.medrecht-map-profile-integrated{width:100%;margin:18px 0 16px}.anwalt-profil-card .medrecht-map-profile-integrated .medrecht-anwaltskarte{min-height:280px;border-radius:10px;box-shadow:none;border:1px solid #e1e5e7}.anwalt-profil-card .medrecht-map-profile-integrated .medrecht-map-placeholder{min-height:280px!important;border-radius:10px}.anwalt-profil-card .medrecht-map-profile-integrated .medrecht-map-status{left:10px;top:10px}.anwalt-profil-card .medrecht-map-profile-integrated .maplibregl-ctrl-bottom-right{max-width:80%}@media(max-width:767px){.medrecht-map-wrap-profile.medrecht-map-profile-integrated{margin:16px 0 14px}.anwalt-profil-card .medrecht-map-profile-integrated .medrecht-anwaltskarte{min-height:280px}}
.medrecht-map-profile-legend{position:absolute;left:10px;bottom:10px;z-index:3;display:flex;gap:10px;flex-wrap:wrap;padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 1px 6px rgba(0,0,0,.12);font-size:11px;line-height:1.2;color:#4d565b;pointer-events:none}.medrecht-map-profile-legend span{display:inline-flex;align-items:center;gap:5px}.medrecht-map-legend-dot{display:inline-block;width:9px;height:9px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.medrecht-map-legend-dot.is-current{background:#00a9c6}.medrecht-map-legend-dot.is-other{background:#9aa3a8}


/* Version 3.2.1 – Attribution einzeilig und Kartenoptik verfeinert */
.medrecht-anwaltskarte {
  border: 1px solid rgba(28, 36, 75, 0.10);
  box-shadow: 0 8px 24px rgba(17, 24, 39, 0.06);
}

.medrecht-anwaltskarte .maplibregl-ctrl-group {
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid rgba(28, 36, 75, 0.10);
  box-shadow: 0 6px 20px rgba(17, 24, 39, 0.10);
}

.medrecht-anwaltskarte .maplibregl-ctrl-group button {
  width: 34px;
  height: 34px;
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib {
  display: block;
  padding: 3px 8px;
  border-radius: 8px 0 0 0;
  font-size: 10px;
  line-height: 1.15;
  white-space: nowrap;
  text-align: right;
  color: #4b5563;
  background: rgba(255,255,255,.94);
  box-shadow: 0 -1px 0 rgba(17,24,39,.04);
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib a {
  color: inherit;
  text-decoration: none;
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib a:hover,
.medrecht-anwaltskarte .maplibregl-ctrl-attrib a:focus {
  text-decoration: underline;
}

.medrecht-map-status {
  border: 1px solid rgba(28, 36, 75, 0.08);
  border-radius: 10px;
}

.medrecht-map-profile-legend {
  border: 1px solid rgba(28, 36, 75, 0.08);
  border-radius: 10px;
}

@media (max-width: 767px) {
  .medrecht-anwaltskarte .maplibregl-ctrl-attrib {
    font-size: 9px;
    padding: 3px 6px;
  }
}

/* Version 3.2.2 – medrecht.de Karten-Finishing */
.medrecht-map-stage {
  border-radius: 16px;
}

.medrecht-anwaltskarte {
  border-radius: 16px;
  border-color: rgba(28,36,75,.11);
  box-shadow: 0 12px 30px rgba(28,36,75,.07);
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib {
  max-width: none;
  white-space: nowrap !important;
  overflow: visible;
  border: 1px solid rgba(28,36,75,.06);
  border-right: 0;
  border-bottom: 0;
  border-radius: 8px 0 0 0;
  color: #59636f;
  font-size: 9.5px;
  letter-spacing: .005em;
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib-inner {
  white-space: nowrap !important;
}

.medrecht-anwaltskarte .maplibregl-ctrl-attrib a {
  white-space: nowrap;
}

.medrecht-anwaltskarte .maplibregl-ctrl-group button:hover {
  background-color: rgba(148,191,60,.10);
}

.medrecht-anwaltskarte .maplibregl-popup-content {
  border: 1px solid rgba(28,36,75,.10);
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(17,24,39,.18);
}

.medrecht-map-popup-link a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border-radius: 8px;
  background: #CB3522;
  color: #fff;
  text-decoration: none;
}

.medrecht-map-popup-link a:hover,
.medrecht-map-popup-link a:focus {
  background: #a9291b;
  color: #fff;
  text-decoration: none;
}

.medrecht-map-profile-legend,
.medrecht-map-status {
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

@media (max-width: 767px) {
  .medrecht-anwaltskarte .maplibregl-ctrl-attrib {
    max-width: none;
    font-size: 7.5px;
  }
}

/* Version 3.3.0 – direkte Kartenaktionen und Listen-Kopplung */
.medrecht-map-popup-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.medrecht-map-popup-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 6px 9px;
  border: 1px solid rgba(28,36,75,.14);
  border-radius: 8px;
  background: #fff;
  color: #1C244B !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.15;
  text-decoration: none !important;
}

.medrecht-map-popup-action:hover,
.medrecht-map-popup-action:focus {
  border-color: #94BF3C;
  background: rgba(148,191,60,.10);
  color: #1C244B !important;
  outline: none;
}

.medrecht-map-popup-action.is-primary {
  border-color: #CB3522;
  background: #CB3522;
  color: #fff !important;
}

.medrecht-map-popup-action.is-primary:hover,
.medrecht-map-popup-action.is-primary:focus {
  border-color: #a9291b;
  background: #a9291b;
  color: #fff !important;
}

@media (max-width: 480px) {
  .medrecht-map-popup-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}


















