#solex-routes-kaart-wrap {
  max-width: 900px;
  margin: 32px auto;
}

.solex-rk-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.solex-rk-tab {
  border: 1px solid #d8c8b0;
  background: #fff;
  color: #333;
  border-radius: 999px;
  padding: 8px 18px;
  font-size: 14px;
  cursor: pointer;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.solex-rk-tab:hover {
  background: #fdf3ea;
}

.solex-rk-tab--actief {
  background: #d65828;
  border-color: #d65828;
  color: #fff;
}

#solex-rk-map {
  width: 100%;
  height: 420px;
  border-radius: 12px;
  border: 1px solid #e5e5e5;
  z-index: 0;
}

.solex-rk-legenda {
  margin-top: 10px;
  font-size: 13px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}

.solex-rk-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-left: 4px;
}

.solex-rk-dot--start {
  background: #1a6e3a;
}

.solex-rk-dot--pauze {
  background: #d65828;
}

.solex-rk-icon--start {
  background: #1a6e3a;
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #1a6e3a;
}

.solex-rk-icon--pauze {
  background: #d65828;
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px #d65828;
}

@media (max-width: 600px) {
  #solex-rk-map {
    height: 320px;
  }
}

/* Vult echt het hele scherm als de kaart als navigatiehulp wordt gebruikt onderweg */
#solex-rk-map.leaflet-fullscreen-on {
  height: 100vh !important;
}

.leaflet-control-fullscreen-button {
  font-size: 18px;
}

/* "Mijn locatie" knop */
.solex-rk-locatie-knop {
  display: block;
  width: 30px;
  height: 30px;
  background-color: #fff;
  position: relative;
}

.solex-rk-locatie-knop::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  margin: -6px 0 0 -6px;
  border: 2px solid #555;
  border-radius: 50%;
  box-sizing: border-box;
}

.solex-rk-locatie-knop::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 3px;
  margin: -1.5px 0 0 -1.5px;
  background: #555;
  border-radius: 50%;
}

.solex-rk-locatie-knop--actief::before,
.solex-rk-locatie-knop--actief::after {
  border-color: #1a73e8;
  background-color: #1a73e8;
}

/* "Jij hier"-marker: blauwe stip met puls, zoals navigatie-apps */
.solex-rk-icon--jij {
  position: relative;
}

.solex-rk-jij-stip {
  width: 14px;
  height: 14px;
  background: #1a73e8;
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 2px rgba(26, 115, 232, 0.35);
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
}

.solex-rk-jij-stip::after {
  content: '';
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  background: rgba(26, 115, 232, 0.25);
  animation: solex-rk-puls 1.8s ease-out infinite;
}

@keyframes solex-rk-puls {
  0%   { transform: scale(0.4); opacity: 0.8; }
  100% { transform: scale(1.6); opacity: 0; }
}

.solex-rk-locatie-fout {
  display: none;
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  color: #fff;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 13px;
  max-width: 85%;
  text-align: center;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

#solex-routes-kaart-wrap {
  position: relative;
}
