.dmvbr-label-icon{background:transparent;border:0}
.dmvbr-label-icon span{display:flex;align-items:center;justify-content:center;width:40px;height:30px;background:#fff;border:3px solid var(--dmvbr-label-color,#1565c0);border-radius:15px;font:700 12px/1 Helvetica,Arial,sans-serif;color:#111;box-shadow:0 1px 6px #0004}
.dmvbr-route-tooltip{font-weight:700}
.dmvbr-route-popup{--dmvbr-route-color:#1565c0}
.dmvbr-route-popup .dmvbr-route-summary{border-left:5px solid var(--dmvbr-route-color);padding-left:12px;font-weight:600}
.dmvbr-route-popup .dmvbr-intro{font-size:1.04em;line-height:1.62;margin-bottom:26px!important}
.dmvbr-route-popup .dmvbr-route-note{padding:12px 14px;border-left:4px solid var(--dmvbr-route-color);background:#f5f7f9}
.dmvbr-route-popup h2{margin:30px 0 10px!important;font-size:1.32em!important;line-height:1.2!important;font-weight:700!important;letter-spacing:.015em!important}
.dmvbr-route-popup ul{margin-top:8px}
#mv-poi-overlay-v01 .dmvbr-route-popup h2{font-family:"PT Serif",Georgia,serif!important;font-size:26px!important;line-height:1.2!important;margin:32px 0 12px!important}
#mv-poi-overlay-v01 .dmvbr-route-popup .dmvbr-route-summary{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif!important;font-size:16px!important;line-height:1.45!important}
#mv-poi-overlay-v01 .dmvbr-route-popup .dmvbr-intro{font-size:18px!important;line-height:1.62!important}
@media(max-width:767px){#mv-poi-overlay-v01 .dmvbr-route-popup h2{font-size:23px!important}}


/* v1.0.7 — fallback Leaflet popup kao modal iznad karte.
   Koristi se samo ako postojeći MVMapOverlay ne preuzme rutu. */
#dmvbr-route-popup-backdrop{
  position:fixed;inset:0;z-index:2147482800;background:rgba(0,0,0,.20);display:block;
}
.leaflet-popup.dmvbr-route-floating-popup{
  --dmvbr-route-color:#1565c0;
  position:fixed!important;z-index:2147483000!important;left:50%!important;top:50%!important;bottom:auto!important;
  width:min(760px,calc(100vw - 48px))!important;max-width:none!important;margin:0!important;
  transform:translate(-50%,-50%)!important;
}
.leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-content-wrapper{
  max-height:calc(100dvh - 48px);overflow:hidden;border-radius:0!important;border:1px solid #dcdcdc;
  box-shadow:0 16px 60px #0003;background:#fff;color:#121212;padding:0!important;
}
.leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-content{
  width:auto!important;max-width:none!important;max-height:calc(100dvh - 48px);overflow-y:auto;overflow-x:hidden;
  margin:0!important;padding:28px;font-size:18px;line-height:1.56;box-sizing:border-box;scrollbar-gutter:stable;
}
.leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-tip-container{display:none!important}
.leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-close-button{
  position:sticky!important;float:right;top:0!important;right:0!important;z-index:4;width:48px!important;height:48px!important;
  display:grid!important;place-items:center;padding:0!important;margin:-28px -28px 0 12px!important;
  background:#978576!important;color:#fff!important;border:0!important;font:400 32px/1 Helvetica,Arial,sans-serif!important;
  text-decoration:none!important
}
.leaflet-popup.dmvbr-route-floating-popup .mv-map-popup>h3{
  margin:0 52px 8px 0!important;font-size:clamp(28px,3vw,40px)!important;line-height:1.1!important;font-weight:400!important;
}
.leaflet-popup.dmvbr-route-floating-popup .mv-map-category{
  margin:0 0 18px!important;padding:8px 10px;border-left:5px solid var(--dmvbr-route-color);background:#f5f4f3;
}
.leaflet-popup.dmvbr-route-floating-popup .mv-popup-scroll{max-height:none!important;overflow:visible!important;padding:0!important}
.leaflet-popup.dmvbr-route-floating-popup .mv-map-actions{margin-top:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.leaflet-popup.dmvbr-route-floating-popup .mv-map-actions a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center}
@media(max-width:767px), (max-width:1024px) and (max-height:600px) and (orientation:landscape){
  .leaflet-popup.dmvbr-route-floating-popup{width:100vw!important;height:100dvh!important;top:0!important;left:0!important;transform:none!important}
  .leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-content-wrapper{height:100dvh;max-height:100dvh;border:0}
  .leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-content{height:100dvh;max-height:100dvh;padding:24px 20px}
  .leaflet-popup.dmvbr-route-floating-popup .leaflet-popup-close-button{margin:-24px -20px 0 12px!important}
}
.dmvbr-route-badges{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 20px}
.dmvbr-route-badges span{display:inline-block;padding:5px 8px;border:1px solid #cfd3d7;font:700 12px/1.2 Helvetica,Arial,sans-serif;letter-spacing:.02em;background:#fff}
.dmvbr-sources{padding-left:20px}.dmvbr-sources li{margin:0 0 8px}.dmvbr-sources a{overflow-wrap:anywhere}

/* 1.0.4 — izbor ruta u vizualnom jeziku buttona Interaktivne karte. */
.dmvbr-route-selector{
  display:none;
  width:min(390px,calc(100vw - 28px));
  margin:10px 10px 0 0!important;
  background:rgba(255,255,255,.98);
  border:1px solid #dedede;
  border-radius:0;
  box-shadow:0 7px 24px rgba(0,0,0,.14);
  font-family:Helvetica,Arial,sans-serif;
  color:#111;
  box-sizing:border-box;
}
.dmvbr-route-selector.is-visible{display:block}
.dmvbr-route-choices{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1px;
  padding:0;
  background:#dedede;
  border-bottom:1px solid #dedede;
}
.dmvbr-route-choice{
  appearance:none;
  -webkit-appearance:none;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  height:47px;
  min-height:47px;
  margin:0;
  padding:0 8px;
  border:0!important;
  border-radius:0;
  background:var(--dmvbr-choice-color,#30343b);
  color:#fff;
  opacity:.82;
  font-family:Helvetica,Arial,sans-serif;
  font-size:13px;
  line-height:1.15;
  font-weight:400;
  text-align:center;
  text-transform:none;
  letter-spacing:normal;
  white-space:normal;
  cursor:pointer;
  box-shadow:none;
  transition:opacity .15s ease,filter .15s ease,box-shadow .15s ease;
}
.dmvbr-route-choice:hover{opacity:.94;filter:brightness(1.04)}
.dmvbr-route-choice.is-active{
  opacity:1;
  font-weight:400;
  box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 4px rgba(0,0,0,.16);
}
.dmvbr-route-choice:focus-visible{outline:2px solid #111;outline-offset:-2px}
.dmvbr-route-mini-info{
  padding:12px 14px 14px;
  background:#fff;
  font-family:Helvetica,Arial,sans-serif;
}
.dmvbr-mini-title{
  margin:0 0 6px;
  color:#111;
  font-family:Helvetica,Arial,sans-serif;
  font-size:15px;
  line-height:1.25;
  font-weight:400;
}
.dmvbr-mini-meta{
  color:#363b40;
  font-family:Helvetica,Arial,sans-serif;
  font-size:13px;
  line-height:1.4;
  font-weight:400;
}
.dmvbr-mini-status{
  margin-top:5px;
  color:#5c6268;
  font-family:Helvetica,Arial,sans-serif;
  font-size:11px;
  line-height:1.3;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.dmvbr-mini-hint{
  margin-top:9px;
  color:#ef6c00;
  font-family:Helvetica,Arial,sans-serif;
  font-size:12px;
  line-height:1.35;
  font-weight:700;
}
@media (min-width:768px) and (hover:hover) and (pointer:fine){
  .dmvbr-route-choice:hover{opacity:1}
}
@media(max-width:767px){
  .dmvbr-route-selector{
    width:min(100%,calc(100vw - 24px));
    margin:8px 4px 0 0!important;
  }
  .dmvbr-route-choices{grid-template-columns:repeat(5,minmax(0,1fr))}
  .dmvbr-route-choice{height:47px;min-height:47px;padding:0 5px;font-size:12px}
  .dmvbr-route-mini-info{padding:11px 12px 12px}
  .dmvbr-mini-title{font-size:14px}
  .dmvbr-mini-meta{font-size:12px}
  .dmvbr-mini-hint{font-size:12px}
}
