.werun-courses-map__shell{padding-bottom:34px}
.werun-courses-map__loading[hidden],.werun-courses-map__empty[hidden]{display:none!important}
.werun-courses-map__canvas-wrap{position:relative;margin-top:22px;border:1px solid rgba(19,175,240,.18);border-radius:22px;overflow:hidden;background:#eef6f9;box-shadow:0 18px 45px rgba(45,76,91,.12)}
.werun-courses-map__canvas{width:100%;height:clamp(560px,72vh,860px);min-height:560px;background:#dceaf0}
.werun-courses-map__loading{position:absolute;z-index:700;top:18px;left:50%;display:flex;align-items:center;gap:10px;transform:translateX(-50%);padding:10px 14px;border:1px solid rgba(19,175,240,.22);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(33,66,82,.18);font:700 13px/1 Inter,Arial,sans-serif;color:#434445;backdrop-filter:blur(10px)}
.werun-courses-map__loading span{width:15px;height:15px;border:2px solid rgba(19,175,240,.25);border-top-color:#13aff0;border-radius:50%;animation:werun-map-spin .7s linear infinite}
@keyframes werun-map-spin{to{transform:rotate(360deg)}}
.werun-courses-map__empty{position:absolute;z-index:650;left:50%;top:50%;display:flex;flex-direction:column;gap:5px;transform:translate(-50%,-50%);max-width:min(440px,calc(100% - 36px));padding:18px 22px;border:1px solid rgba(19,175,240,.2);border-radius:18px;background:rgba(255,255,255,.95);box-shadow:0 16px 40px rgba(29,62,78,.16);text-align:center;color:#66727b;backdrop-filter:blur(10px)}
.werun-courses-map__empty strong{font:800 17px/1.25 Raleway,Inter,Arial,sans-serif;color:#434445}
.werun-courses-map .leaflet-container{font-family:Inter,Arial,sans-serif}
.werun-courses-map .leaflet-control-zoom,.werun-courses-map .leaflet-control-layers{border:0;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(38,70,85,.18)}
.werun-courses-map .leaflet-control-zoom a{width:38px;height:38px;line-height:38px;border:0;color:#087fae}
.werun-courses-map .leaflet-control-layers-toggle{width:42px;height:42px;background-size:22px 22px}
.werun-courses-map .leaflet-control-layers-expanded{padding:10px 12px;border-radius:14px;font-size:13px;color:#434445}
.werun-courses-map .leaflet-control-layers label{margin:5px 0;font-weight:700}
 .werun-map-marker-icon,.werun-map-cluster-icon{background:transparent!important;border:0!important}
.werun-map-marker{position:relative;display:grid;place-items:center;width:22px;height:22px;border:1.5px solid rgba(255,255,255,.98);border-radius:50%;background:linear-gradient(145deg,#27bef7 0%,#0d96cf 100%);box-shadow:0 4px 11px rgba(0,91,132,.25),0 1px 2px rgba(0,0,0,.13);transition:transform .18s ease,box-shadow .18s ease}
.werun-map-marker::after{content:"";position:absolute;left:50%;bottom:-4px;width:7px;height:7px;border-right:1.5px solid rgba(255,255,255,.98);border-bottom:1.5px solid rgba(255,255,255,.98);border-radius:0 0 2px 0;background:#0d96cf;transform:translateX(-50%) rotate(45deg);z-index:-1}
.werun-map-marker__halo{position:absolute;inset:-4px;border:1px solid rgba(19,175,240,.16);border-radius:50%;opacity:.7;transition:opacity .18s ease,transform .18s ease}
.werun-map-marker__core{position:relative;display:block;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 0 1.5px rgba(255,255,255,.2)}
.werun-map-marker-icon:hover .werun-map-marker,.werun-map-marker-icon:focus .werun-map-marker{transform:translateY(-2px) scale(1.08);box-shadow:0 7px 16px rgba(0,91,132,.3),0 2px 4px rgba(0,0,0,.15)}
.werun-map-marker-icon:hover .werun-map-marker__halo,.werun-map-marker-icon:focus .werun-map-marker__halo{opacity:1;transform:scale(1.08)}
.werun-map-cluster{--werun-cluster-bg:#f7d96b;--werun-cluster-ring:rgba(247,217,107,.24);display:grid;place-items:center;width:34px;height:34px;border:1.5px solid rgba(255,255,255,.98);border-radius:50%;background:var(--werun-cluster-bg);box-shadow:0 0 0 5px var(--werun-cluster-ring),0 5px 14px rgba(29,75,94,.22);font:800 11px/1 Inter,Arial,sans-serif;color:#fff;transition:transform .18s ease,box-shadow .18s ease}
.werun-map-cluster>span{display:grid;place-items:center;min-width:18px;height:18px;padding:0 3px;border-radius:999px;background:rgba(255,255,255,.12)}
.werun-map-cluster--low{--werun-cluster-bg:#f7d96b;--werun-cluster-ring:rgba(247,217,107,.24);color:#34383b}
.werun-map-cluster--medium{--werun-cluster-bg:#fbc42c;--werun-cluster-ring:rgba(251,196,44,.25);color:#34383b}
.werun-map-cluster--high{--werun-cluster-bg:#f2a24a;--werun-cluster-ring:rgba(242,162,74,.25);color:#34383b}
.werun-map-cluster--high>span{background:rgba(255,255,255,.2)}
.werun-map-cluster--very-high{--werun-cluster-bg:#e87845;--werun-cluster-ring:rgba(232,120,69,.26);color:#fff}
.werun-map-cluster-icon:hover .werun-map-cluster{transform:scale(1.07);box-shadow:0 0 0 6px var(--werun-cluster-ring),0 8px 18px rgba(29,75,94,.27)}
.werun-map-tooltip{padding:7px 10px!important;border:0!important;border-radius:7px!important;background:#34383b!important;box-shadow:0 7px 18px rgba(0,0,0,.2)!important;font:700 12px/1.25 Inter,Arial,sans-serif!important;color:#fff!important;white-space:nowrap}
.werun-map-tooltip::before{border-top-color:#34383b!important}
.werun-map-popup .leaflet-popup-content-wrapper{padding:0;border:1px solid rgba(19,175,240,.12);border-radius:14px;overflow:hidden;box-shadow:0 16px 38px rgba(25,54,67,.23)}
.werun-map-popup .leaflet-popup-content{width:250px!important;margin:0}
.werun-map-popup .leaflet-popup-tip{box-shadow:4px 4px 8px rgba(25,54,67,.12)}
.werun-map-popup .leaflet-popup-close-button{top:7px;right:7px;width:25px;height:25px;border-radius:50%;background:rgba(238,246,249,.94);font:700 18px/23px Arial,sans-serif;color:#61717a}
.werun-map-popup .leaflet-popup-close-button:hover,.werun-map-popup .leaflet-popup-close-button:focus{background:#dff3fb;color:#087fae}
.werun-map-card{background:#fff;color:#434445}
.werun-map-card__body{padding:16px 16px 15px}
.werun-map-card__badges{display:flex;flex-wrap:wrap;gap:5px;margin:0 30px 9px 0}
.werun-map-card__badge{display:inline-flex;margin:0;padding:4px 7px;border-radius:999px;background:#eaf8fd;font:800 9px/1 Inter,Arial,sans-serif;color:#087fae;text-transform:uppercase;letter-spacing:.045em}
.werun-map-card__badge--featured,.werun-map-card__badge--legendary{background:#fff4c7;color:#7a5700}
.werun-map-card h3{margin:0 28px 8px 0;font:800 16px/1.2 Raleway,Inter,Arial,sans-serif;color:#434445}
.werun-map-card__meta{margin:3px 0;font:600 12px/1.35 Inter,Arial,sans-serif;color:#68747c}
.werun-map-card a{display:flex;justify-content:center;margin-top:12px;padding:9px 12px;border-radius:999px;background:#13aff0;font:800 12px/1 Inter,Arial,sans-serif;color:#fff;text-decoration:none}
.werun-map-card a:hover,.werun-map-card a:focus{background:#0f99d6;color:#fff}
html.werun-theme-dark .werun-courses-map__canvas-wrap{border-color:rgba(66,183,231,.22);background:#0d151a;box-shadow:0 18px 45px rgba(0,0,0,.26)}
html.werun-theme-dark .werun-courses-map__loading,html.werun-theme-dark .werun-courses-map__empty{border-color:rgba(66,183,231,.22);background:rgba(15,31,39,.94);color:#aebdc5}
html.werun-theme-dark .werun-courses-map__empty strong{color:#f5f7f8}
html.werun-theme-dark .werun-courses-map .leaflet-control-zoom a,html.werun-theme-dark .werun-courses-map .leaflet-control-layers{background:#122630;color:#ecf5f8}
html.werun-theme-dark .werun-courses-map .leaflet-control-layers-expanded{background:#122630;color:#ecf5f8}
html.werun-theme-dark .werun-map-card{background:#10232c;color:#f4f7f8}
html.werun-theme-dark .werun-map-card h3{color:#f4f7f8}
html.werun-theme-dark .werun-map-card p{color:#afbec5}
html.werun-theme-dark .werun-map-card__badge{background:rgba(19,175,240,.14);color:#63c9ef}
html.werun-theme-dark .werun-map-card__badge--featured,html.werun-theme-dark .werun-map-card__badge--legendary{background:rgba(251,196,44,.18);color:#ffd96a}
@media(max-width:760px){
 .werun-courses-map__shell{padding-bottom:18px}
 .werun-courses-map__canvas-wrap{margin-top:16px;border-radius:18px}
 .werun-courses-map__canvas{height:calc(100svh - 210px);min-height:520px;max-height:760px}
 .werun-courses-map__loading{top:12px;max-width:calc(100% - 24px);white-space:nowrap}
 .werun-map-popup .leaflet-popup-content{width:224px!important}
}
.werun-map-tools{display:flex;flex-direction:column}
.werun-map-tools button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-bottom:1px solid rgba(0,0,0,.08);background:#fff;color:#087fae;cursor:pointer}
.werun-map-tools button:last-child{border-bottom:0}
.werun-map-tools button:hover,.werun-map-tools button:focus{background:#eaf8fd;color:#065f82}
.werun-map-tools svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.werun-courses-map__canvas-wrap:fullscreen{width:100vw;height:100vh;border:0;border-radius:0;background:#0d151a}
.werun-courses-map__canvas-wrap:fullscreen .werun-courses-map__canvas{height:100vh;max-height:none}
html.werun-theme-dark .werun-map-tools button{background:#122630;color:#63c9ef;border-color:rgba(255,255,255,.08)}
html.werun-theme-dark .werun-map-tools button:hover,html.werun-theme-dark .werun-map-tools button:focus{background:#17333f;color:#fff}

/* 0.7.2 — garde la barre et ses panneaux au-dessus des couches Leaflet. */
.werun-courses-map .werun-courses-explorer__filters {
  position: relative;
  z-index: 80;
  overflow: visible;
  isolation: isolate;
}
.werun-courses-map .werun-filterbar,
.werun-courses-map .werun-filterbar__segment {
  position: relative;
  z-index: 1;
  overflow: visible;
}
.werun-courses-map .werun-filter-panel {
  z-index: 90;
}
.werun-courses-map .werun-courses-map__canvas-wrap {
  position: relative;
  z-index: 1;
}
