.leaflet-routing-container,
.leaflet-routing-error {
    width: 320px;
    background-color: #fff;
    padding-top: 4px;
    transition: all 0.2s ease;
    box-sizing: border-box;
}
.leaflet-control-container .leaflet-routing-container-hide {
    width: 32px;
    height: 32px;
}
.leaflet-routing-container h2 {
    font-size: 14px;
}
.leaflet-routing-container h3 {
    font-size: 12px;
    font-weight: 400;
}
.leaflet-routing-collapsible .leaflet-routing-geocoders {
    margin-top: 20px;
}
.leaflet-routing-alt,
.leaflet-routing-error,
.leaflet-routing-geocoders {
    margin-top: 2px;
    margin-bottom: 6px;
    border-bottom: 1px solid #ccc;
    max-height: 320px;
    overflow-y: auto;
    transition: all 0.2s ease;
}
.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-alt,
.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-geocoders {
    display: none;
}
.leaflet-bar .leaflet-routing-alt:last-child {
    border-bottom: none;
}
.leaflet-routing-alt-minimized {
    color: #888;
    max-height: 64px;
    overflow: hidden;
    cursor: pointer;
}
.leaflet-routing-alt table {
    border-collapse: collapse;
}
.leaflet-routing-alt tr:hover {
    background-color: #eee;
    cursor: pointer;
}
.leaflet-routing-alt::-webkit-scrollbar {
    width: 8px;
}
.leaflet-routing-alt::-webkit-scrollbar-track {
    border-radius: 2px;
    background-color: #eee;
}
.leaflet-routing-alt::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background-color: #888;
}
.leaflet-routing-icon {
    background-image: url(../distleaflet.routing.icons.png);
    -webkit-background-size: 240px 20px;
    background-size: 240px 20px;
    background-repeat: no-repeat;
    margin: 0;
    content: "";
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
}
.leaflet-routing-icon-continue {
    background-position: 0 0;
}
.leaflet-routing-icon-sharp-right {
    background-position: -20px 0;
}
.leaflet-routing-icon-turn-right {
    background-position: -40px 0;
}
.leaflet-routing-icon-bear-right {
    background-position: -60px 0;
}
.leaflet-routing-icon-u-turn {
    background-position: -80px 0;
}
.leaflet-routing-icon-sharp-left {
    background-position: -100px 0;
}
.leaflet-routing-icon-turn-left {
    background-position: -120px 0;
}
.leaflet-routing-icon-bear-left {
    background-position: -140px 0;
}
.leaflet-routing-icon-depart {
    background-position: -160px 0;
}
.leaflet-routing-icon-enter-roundabout {
    background-position: -180px 0;
}
.leaflet-routing-icon-arrive {
    background-position: -200px 0;
}
.leaflet-routing-icon-via {
    background-position: -220px 0;
}
.leaflet-routing-geocoders div {
    padding: 4px 0;
    margin-left: 3px;
}
.leaflet-routing-geocoders input {
    border: 0px solid #ccc;
    border-radius: 4px;
}
.leaflet-routing-geocoders button {
    font: 700 18px "Lucida Console", Monaco, monospace;
    border: 0px solid #ccc;
    border-radius: 4px;
    background-color: #ffffff00;
    margin: 0 3px 0 0;
    float: right;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
.leaflet-routing-add-waypoint:after {
    content: "+";
    color: var(--luxury-text);
}
.leaflet-routing-reverse-waypoints:after {
    font-weight: 400;
    content: "\21c5";
}
.leaflet-routing-geocoders button:hover {
    background-color: var(--strava-orange-light);
}
.leaflet-routing-geocoder,
.leaflet-routing-geocoders input,
.leaflet-routing-remove-waypoint {
    position: relative;
}
.leaflet-routing-geocoder-result {
    font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
    position: absolute;
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s ease;
}
.leaflet-routing-geocoder-result table {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 0 0 4px 4px;
    background-color: var(--luxury-gray);
    cursor: pointer;
}
.leaflet-routing-geocoder-result-open {
    max-height: 800px;
}
.leaflet-routing-geocoder-result tr:hover,
.leaflet-routing-geocoder-selected {
    background-color: #b1b1b1;
}
.leaflet-routing-geocoder-no-results {
    font-style: italic;
    color: #888;
}
.leaflet-routing-remove-waypoint {
    background-color: transparent;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}
.leaflet-routing-remove-waypoint:after {
    position: absolute;
    display: block;
    width: 15px;
    height: 1px;
    z-index: 1;
    right: 1.5px;
    top: 4px;
    bottom: 0;
    margin: -16px auto auto;
    padding: 2px 4px 16px 2px;
    font-size: 18px;
    font-weight: 700;
    content: "\00d7";
    text-align: center;
    cursor: pointer;
    color: #ccc;
    background: #fff;
    line-height: 1;
}
.leaflet-routing-remove-waypoint:hover {
    color: #000;
}
.leaflet-routing-instruction-distance {
    width: 48px;
}
.leaflet-routing-collapse-btn {
    position: absolute;
    top: 0;
    right: 6px;
    font-size: 24px;
    color: #ccc;
    font-weight: 700;
}
.leaflet-routing-collapse-btn:after {
    content: "\00d7";
}
.leaflet-routing-container-hide .leaflet-routing-collapse-btn {
    position: relative;
    left: 4px;
    top: 4px;
    display: block;
    width: 26px;
    height: 23px;
    background-image: url(../distrouting-icon.png);
}
.leaflet-routing-container-hide .leaflet-routing-collapse-btn:after {
    content: none;
}
.leaflet-top .leaflet-routing-container.leaflet-routing-container-hide {
    margin-top: 10px !important;
}
.leaflet-right .leaflet-routing-container.leaflet-routing-container-hide {
    margin-right: 10px !important;
}
.leaflet-bottom .leaflet-routing-container.leaflet-routing-container-hide {
    margin-bottom: 10px !important;
}
.leaflet-left .leaflet-routing-container.leaflet-routing-container-hide {
    margin-left: 10px !important;
}
@media only screen and (max-width: 640px) {
    .leaflet-routing-container {
        margin: 0 !important;
        padding: 0 !important;
        width: 100%;
        height: 100%;
    }
}
.leaflet-control-locate a {
    font-size: 1.4em;
    color: #444;
    cursor: pointer;
}
.leaflet-control-locate.active a {
    color: #2074b6;
}
.leaflet-control-locate.active.following a {
    color: #fc8428;
}
.leaflet-control-locate-location circle {
    animation: leaflet-control-locate-throb 4s ease infinite;
}
@keyframes leaflet-control-locate-throb {
    0% {
        r: 9;
        stroke-width: 1;
    }
    50% {
        r: 7;
        stroke-width: 3;
    }
    100% {
        r: 9;
        stroke-width: 1;
    }
}
.sidebar {
    position: absolute;
    top: 0;
    width: 100%;
    overflow: hidden;
    z-index: 2000;
}
.sidebar.collapsed {
    height: 40px;
    width: 40px;
}
@media (min-width: 768px) {
    .sidebar {
        width: 40px;
        top: 10px;
        transition: all 300ms;
    }
    .sidebar.collapsed {
        width: 40px;
    }

}
@media (min-width: 768px) and (max-width: 1199px) {
    .sidebar {
        width: 390px;
    }
}
@media (min-width: 1200px) {
    .sidebar {
        width: 460px;
    }
}
.sidebar-left {
    left: 0;
}
@media (min-width: 768px) {
    .sidebar-left {
        left: 10px;
    }
}
.sidebar-right {
    right: 0;
}
@media (min-width: 768px) {
    .sidebar-right {
        right: 10px;
    }
}
.sidebar-tabs {
    top: 0;
    bottom: 0;
    height: 100%;
    background-color: var(--luxury-dark);
}
.sidebar-left .sidebar-tabs {
    left: 0;
}
.sidebar-right .sidebar-tabs {
    right: 0;
}
.sidebar-tabs,
.sidebar-tabs > ul {
    position: absolute;
    width: 40px;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.sidebar-tabs > li,
.sidebar-tabs > ul > li {
    width: 100%;
    height: 40px;

    font-size: 12pt;
    overflow: hidden;
    transition: all 80ms;
}
.sidebar-tabs > li:hover,
.sidebar-tabs > ul > li:hover {
    color: #000;
    background-color: #eee;
}
.sidebar-tabs > li.active,
.sidebar-tabs > ul > li.active {
    color: #fff;
    background-color: var(--strava-orange);
}
.sidebar-tabs > li.disabled,
.sidebar-tabs > ul > li.disabled {
    color: rgba(51, 51, 51, 0.4);
}
.sidebar-tabs > li.disabled:hover,
.sidebar-tabs > ul > li.disabled:hover {
    background: 0 0;
}
.sidebar-tabs > li.disabled > a,
.sidebar-tabs > ul > li.disabled > a {
    cursor: default;
}
.sidebar-tabs > li > a,
.sidebar-tabs > ul > li > a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 40px;
    color: inherit;
    text-decoration: none;
    text-align: center;
}
.sidebar-tabs > ul + ul {
    bottom: 0;
}
.sidebar-content {
    position: relative;
    top: 0;
    bottom: 0;
    background-color: var(--luxury-dark);
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 160px;
}
.sidebar-left .sidebar-content {
    left: 0;
    right: 0;
}
.sidebar-right .sidebar-content {
    left: 0;
    right: 40px;
}
.sidebar.collapsed > .sidebar-content {
    overflow-y: hidden;
}
.sidebar-pane {
    display: none;
    left: 40px;
    right: 0;
    box-sizing: border-box;
    padding: 10px 20px 0;
    position: relative;
    margin-right: 35px;
}
.sidebar-pane.active {
    display: block;
}
@media (min-width: 768px) and (max-width: 991px) {
    .sidebar-pane {
        min-width: 265px;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .sidebar-pane {
        min-width: 350px;
    }
}
@media (min-width: 1200px) {
    .sidebar-pane {
        min-width: 420px;
    }
}
.sidebar-header {
    margin: -10px -20px 0;
    height: 40px;
    padding: 0 20px;
    line-height: 40px;
    font-size: 14.4pt;

    background: linear-gradient(135deg, var(--luxury-gray) 0%, var(--luxury-light-gray) 100%);
    border-bottom: 1px solid var(--luxury-border);
    font-weight: 600;
    color: var(--luxury-text);
}
.sidebar-right .sidebar-header {
    padding-left: 40px;
}
h1.sidebar-close {
    cursor: pointer;
}
span.sidebar-close {
    position: absolute;
    top: 0;
    width: 40px;
    height: 40px;
    text-align: center;
    cursor: pointer;
}
.sidebar-left span.sidebar-close {
    right: 0;
}
.sidebar-right span.sidebar-close {
    left: 0;
}
.sidebar-left ~ .sidebar-map {
    margin-left: 0;
}
@media (min-width: 768px) {
    .sidebar-left ~ .sidebar-map {
        margin-left: 0;
    }
}
.sidebar-right ~ .sidebar-map {
    margin-right: 40px;
}
@media (min-width: 768px) {
    .sidebar-right ~ .sidebar-map {
        margin-right: 0;
    }
}
.sidebar {
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
}
.sidebar.leaflet-touch {
    box-shadow: none;
    border-right: 2px solid rgba(0, 0, 0, 0.2);
    border-bottom: 2px solid rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) {
    .sidebar {
        border-radius: 4px;
    }
    .sidebar.leaflet-touch {
        border: 2px solid rgba(0, 0, 0, 0.2);
    }
}
@media (min-width: 768px) {
    .sidebar-left ~ .sidebar-map .leaflet-left {
        transition: left 500ms;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .sidebar-left ~ .sidebar-map .leaflet-left {
        left: 315px;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .sidebar-left ~ .sidebar-map .leaflet-left {
        left: 400px;
    }
}
@media (min-width: 1200px) {
    .sidebar-left ~ .sidebar-map .leaflet-left {
        left: 470px;
    }
}
@media (min-width: 768px) {
    .sidebar-left.collapsed ~ .sidebar-map .leaflet-left {
        left: 50px;
    }
}
@media (min-width: 768px) {
    .sidebar-right ~ .sidebar-map .leaflet-right {
        transition: right 500ms;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .sidebar-right ~ .sidebar-map .leaflet-right {
        right: 315px;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .sidebar-right ~ .sidebar-map .leaflet-right {
        right: 400px;
    }
}
@media (min-width: 1200px) {
    .sidebar-right ~ .sidebar-map .leaflet-right {
        right: 470px;
    }
}
@media (min-width: 768px) {
    .sidebar-right.collapsed ~ .sidebar-map .leaflet-right {
        right: 50px;
    }
} /*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
    position: relative;
}
.flickity-enabled:focus {
    outline: 0;
}
.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%;
}
.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
}
.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}
.flickity-button {
    position: absolute;
    border: none;
    color: #333;
}
.flickity-button:hover {
    cursor: pointer;
}
.flickity-button:focus {
    outline: 0;
    box-shadow: 0 0 0 5px #19f;
}
.flickity-button:active {
    opacity: 0.6;
}
.flickity-button:disabled {
    opacity: 0.3;
    cursor: auto;
    pointer-events: none;
}
.flickity-prev-next-button {
    transform: translateY(-50%);
}
.flickity-prev-next-button.previous {
    left: 10px;
}
.flickity-prev-next-button.next {
    right: 10px;
}
.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: 10px;
}
.flickity-prev-next-button .flickity-button-icon {
    position: absolute;
    left: 20%;
    top: 20%;
    width: 60%;
    height: 60%;
}
.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1;
}
.flickity-rtl .flickity-page-dots {
    direction: rtl;
}
.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: #333;
    border-radius: 50%;
    opacity: 0.25;
    cursor: pointer;
}
.flickity-page-dots .dot.is-selected {
    opacity: 1;
}
.leaflet-edit-osm.leaflet-control a {
    padding-right: 5px;
}
.leaflet-edit-osm.leaflet-control-attribution.leaflet-control {
    clear: both;
}
.leaflet-edit-osm ~ .leaflet-control-attribution.leaflet-control {
    clear: none;
}
.leaflet-right > .leaflet-control-attribution {
    display: inline-block;
    float: none;
}
.leaflet-contextmenu {
    display: none;
    box-shadow: 0 1px 7px rgba(0, 0, 0, 0.4);
    -webkit-border-radius: 4px;
    border-radius: 4px;
    padding: 4px 0;
    background-color: #fff;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.leaflet-contextmenu a.leaflet-contextmenu-item {
    display: block;
    color: #222;
    font-size: 12px;
    text-decoration: none;
    padding: 0 12px;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    cursor: default;
    outline: 0;
}
.leaflet-contextmenu a.leaflet-contextmenu-item-disabled {
    opacity: 0.5;
}
.leaflet-contextmenu a.leaflet-contextmenu-item.over {
    background-color: #f4f4f4;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}
.leaflet-contextmenu a.leaflet-contextmenu-item-disabled.over {
    background-color: inherit;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
}
.leaflet-contextmenu-icon {
    margin: 2px 8px 0 0;
    width: 16px;
    height: 16px;
    float: left;
    border: 0;
}
.leaflet-contextmenu-separator {
    border-bottom: 1px solid #ccc;
    margin: 5px 0;
}

body {
    padding: 0;
    margin: 0;
}
#map,
body,
html {
    height: 500px;
    width: 100%;
}
#map,
path.leaflet-control-locate-circle.leaflet-interactive {
    cursor: crosshair;
}
.leaflet-routing-alt h3 {
    display: none;
}
.leaflet-routing-alt h2 {
    margin: 0;
    font-weight: 400;
}
.elevation-container {
    float: left;
}
.leaflet-btn {
    cursor: pointer;
}
.elevation-chart {
    padding: 5px 10px;
    margin-left: 10px;
    background-color: #fff;
    font-size: 12px;
}
.elevation-chart.hidden {
    display: none;
}
.elevation-chart.chart-empty {
    height: 90x;
    border: 1px solid #ccc;
    margin: 10px 10px 5px;
    font-family: monospace;
    line-height: 90px;
    width: 308px;
}
.elevation-chart path {
    stroke: #4682b4;
    stroke-width: 1;
    fill: none;
}
.elevation-chart .axis line,
.elevation-chart .axis path {
    fill: none;
    stroke: grey;
    stroke-width: 1;
    shape-rendering: crispEdges;
}
.distance-control {
    font-size: large;
    font-weight: 700;
    padding: 10px;
    background-color: #fff;
}
.settings-centred-unused {
    top: 25%;
    left: 0;
    right: 0;
    position: absolute;
    margin: 0 auto;
    width: 300px;
    height: 400px;
    z-index: 999;
    background-color: #fff;
    display: none;
}
.settings-container {
    float: left;
}
.settings-menu {
    float: left;
    padding: 10px;
    margin-left: 10px;
    display: none;
    background-color: #fff;
}
.search-container {
    float: left;
}
#routing-container {
    margin: 10px 0;
}
.leaflet-routing-container {
    background-color: var(--luxury-card);
    width: 100%;
}
.leaflet-routing-geocoders {
    border: none;
    overflow-y: visible;
    max-height: none;
}
.geocoders {
    overflow-y: auto;
    max-height: 220px;
}
.leaflet-routing-geocoders input {
    padding-left: 4px;
    line-height: 2.2;
    width: calc(100% - 43px);
    height: 36px;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    background-color: var(--luxury-gray);
    color: var(--luxury-text);
    border-radius : 8px;
}

.leaflet-routing-geocoders input:focus {
    background: var(--luxury-light-gray);
    border: 1px solid var(--strava-orange);
    box-shadow: 0 0 0 0.2rem rgba(252, 76, 2, 0.5);
    color: var(--luxury-text);
    border-radius: 4px;
}




.leaflet-routing-geocoders div.round-trip input {
    width: calc(100% - 20px);
}
@media (max-width: 500px) {
    .leaflet-routing-geocoders input {
        width: calc(100% - 20px);
    }
}
/* .leaflet-routing-geocoders select {
    height: 33px;
    width: 100%;
    border: 1px solid #ccc;
} */
.leaflet-routing-geocoders input[type="radio"] {
    padding: 0;
    line-height: auto;
    height: auto;
    width: auto;
}
.leaflet-routing-geocoders button.delete-waypoint {
    margin: 0;
    height: 36px;
    width: 20px;
    border-radius: 0;
    border-left: none;
    font-size: 10px;
    color: var(--luxury-text);
    padding: 0;
}
.leaflet-routing-geocoders div.up-down-container {
    float: right;
    width: 20px;
    padding: 0;
    border: 0px solid #ccc;
    border-left: none;
}
@media (max-width: 500px) {
    .leaflet-routing-geocoders div.up-down-container {
        display: none;
    }
}
.leaflet-routing-geocoders div.round-trip div.up-down-container {
    display: none;
}
.leaflet-routing-geocoders button.up-down {
    margin: 0;
    height: 17px;
    width: 20px;
    border-radius: 0;
    font-size: 10px;
    border: 0;
    color: var(--luxury-text);
    padding: 0;
}
#inputDistance {
    width: 50%;
}
#distance-label {
    width: 100%;
    display: inline-block;
    color: var(--luxury-text);
}
#custom-distance {
    width: 250px;
    display: none;
}
#inputCustomDistance {
    width: 120px;
    vertical-align: top;
}
#inputCustomDistanceUnits {
    width: 40px;
    padding: 0;
    vertical-align: top;
    text-align: center;
    border-left-style: none;
    background-color: var(--luxury-dark);
    margin-left: 4px;
}
#btnCustomDistance {
    margin: 0 0 0 10px;
    vertical-align: top;
    height: 36px;
    line-height: 36px;
    padding: 0px 16px;
    background-color: var(--strava-orange);
}
.leaflet-routing-alt {
    border-bottom: none;
    border-top: 1px solid #ccc;
    margin: 0;
}
.leaflet-routing-alt,
.leaflet-routing-error,
.leaflet-routing-geocoders {
    padding: 0;
}
.leaflet-routing-geocoder-result {
    z-index: 5000;
}
.welcome-message > h3 {
    margin-top: 5px;
}
.welcome-message {
    position: fixed;
    left: 0;
    right: 0;
    background-color: #fafafa;
    max-height: 70%;
    width: 65%;
    margin: auto;
    overflow-y: auto;
    border-radius: 2px;
    will-change: top, opacity;
    -webkit-box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
    box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
    z-index: 2003;
    display: block;
    opacity: 1;
    top: 10%;
    padding: 20px;
}
.welcome-message-overlay {
    position: fixed;
    top: -25%;
    left: 0;
    bottom: 0;
    right: 0;
    height: 125%;
    width: 100%;
    background: #000;
    will-change: opacity;
    z-index: 2002;
    display: block;
    opacity: 0.5;
}
.touch-and-hold-notice {
    color: #fff;
    position: fixed;
    left: 0;
    right: 0;
    background-color: #666;
    max-height: 20%;
    width: 310px;
    margin: auto;
    overflow-y: auto;
    border-radius: 8px;
    will-change: top, opacity;
    -webkit-box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
    box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
    z-index: 2003;
    display: block;
    opacity: 1;
    top: 80%;
    padding: 15px;
}
.touch-and-hold-close {
    position: absolute;
    top: 5px;
    right: 5px;
    font-size: 20px;
    color: #fff;
    cursor: pointer;
    padding: 2px 5px;
}
.custom-marker {
    width: 16px !important;
    height: 16px !important;
    margin-left: -10px !important;
    margin-top: -10px !important;
    border-radius: 18px;
    /* border: 2px solid #fff; */
    text-align: center;
    color: #fff;
    background-color: var(--strava-orange);
    font-size: 90%;
}
.custom-marker-first {
    width: 16px !important;
    height: 16px !important;
    margin-left: -10px !important;
    margin-top: -10px !important;
    border-radius: 18px;
    /* border: 2px solid #3f51b5; */
    text-align: center;
    color: #3f51b5;
    background-color: #ff0;
    font-size: 90%;
}
path.leaflet-interactive {
  stroke: rgb(249 115 22 / 0.9);
  stroke-width: 3;
}
text[fill] {
  fill: rgb(249 115 22 ) !important;
}
.custom-marker-last {
    width: 16px !important;
    height: 16px !important;
    margin-left: -10px !important;
    margin-top: -10px !important;
    border-radius: 18px;
    border: 2px solid gray;
    text-align: center;
    background-color: #fff;
    background-image: linear-gradient(45deg, #000 25%, transparent 25%), linear-gradient(-45deg, #000 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #000 75%), linear-gradient(-45deg, transparent 75%, #000 75%);
    background-size: 6px 6px;
    background-position: 0 0, 0 3px, 3px -3px, -3px 0;
}
.leaflet-control-hidden {
    display: none;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0;
}
#settings-container {
    margin: 20px 0;
}
#settings-container p {
    margin-bottom: 5px;
    color: #666;
    font-size: 85%;
}
.flickity-page-dots {
    display: none;
}
.flickity-button {
    background: #333;
}
.flickity-button:hover {
    background: #f90;
}
.flickity-prev-next-button {
    width: 20px;
    height: 25px;
    border-radius: 5px;
    top: auto;
    bottom: 8px;
    transform: none;
}
.flickity-button-icon {
    fill: #fff;
}
.flickity-prev-next-button.hidden {
    display: none;
}
.carousel {
    width: 200px;
    bottom: 15px;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1099;
    background: #fff;
    border: 2px solid rgba(0, 0, 0, 0.2);
}
.carousel-cell {
    width: 100%;
    height: initial;
    margin-right: 10px;
    background: #fff;
    border-radius: 5px;
    display: block;
    text-align: center;
    color: #000;
}
.carousel.expanded {
    width: 350px;
}
.carousel-cell .elevation-toggle {
    background-color: #ddd;
    cursor: pointer;
    line-height: 1;
    margin-bottom: 5px;
}
.carousel-cell .distance {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 5px;
}
.carousel-cell .stats {
    font-size: 12px;
}
.carousel-cell .waytypes {
    font-size: 12px;
    margin-bottom: 8px;
}
#routing-error {
    width: 70%;
    bottom: 15px;
    margin: 0 auto;
    padding: 20px 10px;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1199;
    background: var(--luxury-light-gray);
    border-radius: 5px;
    border: 3px solid var(--luxury-danger);
    font-size: 16px;
    text-align: center;
    visibility: hidden;
    color: var(--luxury-text);
}
.leaflet-routing-geocoders button.leaflet-routing-add-waypoint {
    margin-right: 2px;
    margin-top: 3px;
}
.leaflet-routing-reset {
    font-size: 16px;
    padding: 3px 6px;
}
#progressbar {
    display: none;
    margin: 0;
}
.progress {
    position: relative;
    height: 4px;
    display: block;
    width: 100%;
    background-color: #fddcce;
    border-radius: 2px;
    margin: 0.5rem 0 1rem;
    overflow: hidden;
}
.progress .indeterminate {
    background-color: var(--strava-orange);
}
.progress .indeterminate:before {
    content: "";
    position: absolute;
    background-color: inherit;
    top: 0;
    left: 0;
    bottom: 0;
    will-change: left, right;
    -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
    animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}
.progress .indeterminate:after {
    content: "";
    position: absolute;
    background-color: inherit;
    top: 0;
    left: 0;
    bottom: 0;
    will-change: left, right;
    -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
    animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
    -webkit-animation-delay: 1.15s;
    animation-delay: 1.15s;
}
@-webkit-keyframes indeterminate {
    0% {
        left: -35%;
        right: 100%;
    }
    100%,
    60% {
        left: 100%;
        right: -90%;
    }
}
@keyframes indeterminate {
    0% {
        left: -35%;
        right: 100%;
    }
    100%,
    60% {
        left: 100%;
        right: -90%;
    }
}
@-webkit-keyframes indeterminate-short {
    0% {
        left: -200%;
        right: 100%;
    }
    100%,
    60% {
        left: 107%;
        right: -8%;
    }
}
@keyframes indeterminate-short {
    0% {
        left: -200%;
        right: 100%;
    }
    100%,
    60% {
        left: 107%;
        right: -8%;
    }
}
#favs-logged-in-container,
#favs-login-container,
.gpx-container {
    margin: 15px 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc;
}
.shorten-container {
    margin: 15px 0;
}
.shorten-input {
    background-color: #fff;
    border: 1px solid #ccc;
    display: none;
    width: 100%;
    margin-bottom: 10px;
}
.shorten-button {
    display: block;
    width: 100%;
}
.checkbox {
    display: block;
    margin-bottom: 3px;
}
[type="checkbox"].filled-in {
    display: none;
}
[type="checkbox"]:disabled + span:not(.lever) {
    color: #999;
}
[type="checkbox"]:checked,
[type="checkbox"]:not(:checked) {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
[type="checkbox"] + span:not(.lever) {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: inline-block;
    height: 25px;
    line-height: 25px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
[type="checkbox"] + span:not(.lever):before,
[type="checkbox"]:not(.filled-in) + span:not(.lever):after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    z-index: 0;
    border: 2px solid #5a5a5a;
    border-radius: 1px;
    margin-top: 3px;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}
[type="checkbox"]:checked + span:not(.lever):before {
    top: -4px;
    left: -5px;
    width: 12px;
    height: 22px;
    border-top: 2px solid transparent;
    border-left: 2px solid transparent;
    border-right: 2px solid var(--strava-orange);
    border-bottom: 2px solid var(--strava-orange);
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
}
[type="checkbox"]:checked:disabled + span:before {
    border-right: 2px solid rgba(0, 0, 0, 0.42);
    border-bottom: 2px solid rgba(0, 0, 0, 0.42);
}
[type="checkbox"].filled-in + span:not(.lever):after {
    border-radius: 2px;
}
[type="checkbox"].filled-in + span:not(.lever):after,
[type="checkbox"].filled-in + span:not(.lever):before {
    content: "";
    left: 0;
    position: absolute;
    -webkit-transition: border 0.25s, background-color 0.25s, width 0.2s 0.1s, height 0.2s 0.1s, top 0.2s 0.1s, left 0.2s 0.1s;
    transition: border 0.25s, background-color 0.25s, width 0.2s 0.1s, height 0.2s 0.1s, top 0.2s 0.1s, left 0.2s 0.1s;
    z-index: 1;
}
[type="checkbox"].filled-in:not(:checked) + span:not(.lever):before {
    width: 0;
    height: 0;
    border: 3px solid transparent;
    left: 6px;
    top: 10px;
    -webkit-transform: rotateZ(37deg);
    transform: rotateZ(37deg);
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
}
[type="checkbox"].filled-in:not(:checked) + span:not(.lever):after {
    height: 20px;
    width: 20px;
    background-color: transparent;
    border: 2px solid #5a5a5a;
    top: 0;
    z-index: 0;
}
[type="checkbox"].filled-in:disabled + span:not(.lever):after {
    background-color: #ccc;
}
[type="checkbox"].filled-in:checked + span:not(.lever):before {
    top: 0;
    left: 1px;
    width: 8px;
    height: 13px;
    border-top: 2px solid transparent;
    border-left: 2px solid transparent;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    -webkit-transform: rotateZ(37deg);
    transform: rotateZ(37deg);
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
}
[type="checkbox"].filled-in:checked + span:not(.lever):after {
    top: 0;
    width: 20px;
    height: 20px;
    border: 2px solid var(--strava-orange);
    background-color: var(--strava-orange);
    z-index: 0;
}
#sidebar {
    display: none !important;
}

.leaflet-container {
    background: transparent;
}
[type="checkbox"],
[type="radio"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
}
[type="radio"]:checked,
[type="radio"]:not(:checked) {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
[type="radio"]:checked + span,
[type="radio"]:not(:checked) + span {
    position: relative;
    padding-left: 27px;
    cursor: pointer;
    display: inline-block;
    height: 25px;
    line-height: 25px;
    -webkit-transition: 0.28s ease;
    transition: 0.28s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
[type="radio"] + span:after,
[type="radio"] + span:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    margin: 4px;
    width: 16px;
    height: 16px;
    z-index: 0;
    -webkit-transition: 0.28s ease;
    transition: 0.28s ease;
}
[type="radio"].with-gap:checked + span:after,
[type="radio"].with-gap:checked + span:before,
[type="radio"]:checked + span:after,
[type="radio"]:checked + span:before,
[type="radio"]:not(:checked) + span:after,
[type="radio"]:not(:checked) + span:before {
    border-radius: 50%;
}
[type="radio"]:not(:checked) + span:after,
[type="radio"]:not(:checked) + span:before {
    border: 2px solid #5a5a5a;
}
[type="radio"]:not(:checked) + span:after {
    -webkit-transform: scale(0);
    transform: scale(0);
}
[type="radio"]:checked + span:before {
    border: 2px solid transparent;
}
[type="radio"].with-gap:checked + span:after,
[type="radio"].with-gap:checked + span:before,
[type="radio"]:checked + span:after {
    border: 2px solid var(--strava-orange);
}
[type="radio"].with-gap:checked + span:after,
[type="radio"]:checked + span:after {
    background-color: var(--strava-orange);
}
[type="radio"]:checked + span:after {
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
}
[type="radio"].with-gap:checked + span:after {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
}
#inputDistance {
    background-color: var(--luxury-gray);
    padding: .375rem 2.25rem .375rem .75rem !important;
}
.btn,
.btn-large,
.btn-small {
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
,
.btn:hover,
.btn-large:hover,
.btn-small:hover {
    -webkit-box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
}
/* .btn,
.btn-large,
.btn-small {
    border: none;
    border-radius: 2px;
    display: inline-block;
    height: 36px;
    line-height: 36px;
    padding: 0 16px;
    text-transform: uppercase;
    vertical-align: middle;
    -webkit-tap-highlight-color: transparent;
} */
.btn-flat.disabled,
.btn-flat:disabled,
.btn-flat[disabled],
.btn-floating.disabled,
.btn-floating:disabled,
.btn-floating[disabled],
.btn-large.disabled,
.btn-large:disabled,
.btn-large[disabled],
.btn-small.disabled,
.btn-small:disabled,
.btn-small[disabled],
.btn.disabled,
.btn:disabled,
.btn[disabled],
.disabled.btn-large,
.disabled.btn-small,
[disabled].btn-large,
[disabled].btn-small {
    pointer-events: none;
    background-color: #dfdfdf !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: default;
}
.btn-flat.disabled:hover,
.btn-flat:disabled:hover,
.btn-flat[disabled]:hover,
.btn-floating.disabled:hover,
.btn-floating:disabled:hover,
.btn-floating[disabled]:hover,
.btn-large.disabled:hover,
.btn-large:disabled:hover,
.btn-large[disabled]:hover,
.btn-small.disabled:hover,
.btn-small:disabled:hover,
.btn-small[disabled]:hover,
.btn.disabled:hover,
.btn:disabled:hover,
.btn[disabled]:hover,
.disabled.btn-large:hover,
.disabled.btn-small:hover,
[disabled].btn-large:hover,
[disabled].btn-small:hover {
    background-color: #dfdfdf !important;
    color: #9f9f9f !important;
}
.btn,
.btn-large,
.btn-small {
    outline: 0;
}
.btn i,
.btn-flat i,
.btn-floating i,
.btn-large i,
.btn-small i {
    font-size: 1.3rem;
    line-height: inherit;
}
.btn-large:focus,
.btn-small:focus,
.btn:focus {
    background-color: var(--strava-orange-light);
}

.btn-large:hover,
.btn-small:hover,
.btn:hover {
    background-color: var (--strava-orange);
}
.btn-small {
    height: 32.4px;
    line-height: 32.4px;
    font-size: 13px;
}
.btn-small i {
    font-size: 1.2rem;
}
@media (max-width: 350px) {
    .btn-small {
        font-size: 80%;
    }
}
.btn-block {
    display: block;
}
.btn-gpx {
    width: calc(50% - 7px);
    margin-right: 7px;
}
.btn-kml {
    width: calc(50% - 7px);
    margin-left: 7px;
}
[type="reset"],
[type="submit"],
button,
html [type="button"] {
    -webkit-appearance: button;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: ButtonText dotted 1px;
}
.stacked-input {
    margin: 10px 0;
}
.stacked-input > label {
    display: block;
}
.stacked-input > input,
.stacked-input > textarea {
    display: block;
    width: 100%;
}
.saved-routes {
    width: 100%;
    border-spacing: 0;
    line-height: 26px;
    max-height: 280px;
    overflow-y: auto;
    display: block;
}
.saved-routes > tr > .c1 {
    width: 90%;
    font-size: 90%;
}
.saved-routes > tr > .c2,
.saved-routes > tr > .c3 {
    width: 25px;
    text-align: right;
}
.saved-routes > tr > .c1 > input {
    width: 90%;
    line-height: 80%;
}
.saved-routes-signout {
    cursor: pointer;
    float: right;
    font-size: 90%;
}
.saved-routes-intro {
    margin: 15px 0 5px;
}
.leaflet-contextmenu a.leaflet-contextmenu-item {
    line-height: 24px;
}
@media (min-width: 768px) {
    .mapbox-wordmark {
        position: absolute;
        display: block;
        height: 23px;
        width: 88px;
        left: 10px;
        bottom: 10px;
        text-indent: -9999px;
        z-index: 99999;
        overflow: hidden;
        background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgODAuNDcgMjAuMDIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDgwLjQ3IDIwLjAyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uc3Qwe29wYWNpdHk6MC42O2ZpbGw6I0ZGRkZGRjtlbmFibGUtYmFja2dyb3VuZDpuZXcgICAgO30uc3Qxe29wYWNpdHk6MC42O2VuYWJsZS1iYWNrZ3JvdW5kOm5ldyAgICA7fTwvc3R5bGU+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTc5LjI5LDEzLjYxYzAsMC4xMS0wLjA5LDAuMi0wLjIsMC4yaC0xLjUzYy0wLjEyLDAtMC4yMy0wLjA2LTAuMjktMC4xNmwtMS4zNy0yLjI4bC0xLjM3LDIuMjhjLTAuMDYsMC4xLTAuMTcsMC4xNi0wLjI5LDAuMTZoLTEuNTNjLTAuMDQsMC0wLjA4LTAuMDEtMC4xMS0wLjAzYy0wLjA5LTAuMDYtMC4xMi0wLjE4LTAuMDYtMC4yN2MwLDAsMCwwLDAsMGwyLjMxLTMuNWwtMi4yOC0zLjQ3Yy0wLjAyLTAuMDMtMC4wMy0wLjA3LTAuMDMtMC4xMWMwLTAuMTEsMC4wOS0wLjIsMC4yLTAuMmgxLjUzYzAuMTIsMCwwLjIzLDAuMDYsMC4yOSwwLjE2bDEuMzQsMi4yNWwxLjMzLTIuMjRjMC4wNi0wLjEsMC4xNy0wLjE2LDAuMjktMC4xNmgxLjUzYzAuMDQsMCwwLjA4LDAuMDEsMC4xMSwwLjAzYzAuMDksMC4wNiwwLjEyLDAuMTgsMC4wNiwwLjI3YzAsMCwwLDAsMCwwTDc2Ljk2LDEwbDIuMzEsMy41Qzc5LjI4LDEzLjUzLDc5LjI5LDEzLjU3LDc5LjI5LDEzLjYxeiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02My4wOSw5LjE2Yy0wLjM3LTEuNzktMS44Ny0zLjEyLTMuNjYtMy4xMmMtMC45OCwwLTEuOTMsMC40LTIuNiwxLjEyVjMuMzdjMC0wLjEyLTAuMS0wLjIyLTAuMjItMC4yMmgtMS4zM2MtMC4xMiwwLTAuMjIsMC4xLTAuMjIsMC4yMnYxMC4yMWMwLDAuMTIsMC4xLDAuMjIsMC4yMiwwLjIyaDEuMzNjMC4xMiwwLDAuMjItMC4xLDAuMjItMC4yMnYtMC43YzAuNjgsMC43MSwxLjYyLDEuMTIsMi42LDEuMTJjMS43OSwwLDMuMjktMS4zNCwzLjY2LTMuMTNDNjMuMjEsMTAuMyw2My4yMSw5LjcyLDYzLjA5LDkuMTZMNjMuMDksOS4xNnogTTU5LjEyLDEyLjQxYy0xLjI2LDAtMi4yOC0xLjA2LTIuMy0yLjM2VjkuOTljMC4wMi0xLjMxLDEuMDQtMi4zNiwyLjMtMi4zNnMyLjMsMS4wNywyLjMsMi4zOVM2MC4zOSwxMi40MSw1OS4xMiwxMi40MXoiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNjguMjYsNi4wNGMtMS44OS0wLjAxLTMuNTQsMS4yOS0zLjk2LDMuMTNjLTAuMTIsMC41Ni0wLjEyLDEuMTMsMCwxLjY5YzAuNDIsMS44NSwyLjA3LDMuMTYsMy45NywzLjE0YzIuMjQsMCw0LjA2LTEuNzgsNC4wNi0zLjk5UzcwLjUxLDYuMDQsNjguMjYsNi4wNHogTTY4LjI0LDEyLjQyYy0xLjI3LDAtMi4zLTEuMDctMi4zLTIuMzlzMS4wMy0yLjQsMi4zLTIuNHMyLjMsMS4wNywyLjMsMi4zOVM2OS41MSwxMi40MSw2OC4yNCwxMi40Mkw2OC4yNCwxMi40MnoiLz48cGF0aCBjbGFzcz0ic3QxIiBkPSJNNTkuMTIsNy42M2MtMS4yNiwwLTIuMjgsMS4wNi0yLjMsMi4zNnYwLjA2YzAuMDIsMS4zMSwxLjA0LDIuMzYsMi4zLDIuMzZzMi4zLTEuMDcsMi4zLTIuMzlTNjAuMzksNy42Myw1OS4xMiw3LjYzeiBNNTkuMTIsMTEuMjNjLTAuNiwwLTEuMDktMC41My0xLjExLTEuMTlWMTBjMC4wMS0wLjY2LDAuNTEtMS4xOSwxLjExLTEuMTlzMS4xMSwwLjU0LDEuMTEsMS4yMVM1OS43NCwxMS4yMyw1OS4xMiwxMS4yM3oiLz48cGF0aCBjbGFzcz0ic3QxIiBkPSJNNjguMjQsNy42M2MtMS4yNywwLTIuMywxLjA3LTIuMywyLjM5czEuMDMsMi4zOSwyLjMsMi4zOXMyLjMtMS4wNywyLjMtMi4zOVM2OS41MSw3LjYzLDY4LjI0LDcuNjN6IE02OC4yNCwxMS4yM2MtMC42MSwwLTEuMTEtMC41NC0xLjExLTEuMjFzMC41LTEuMiwxLjExLTEuMnMxLjExLDAuNTQsMS4xMSwxLjIxUzY4Ljg1LDExLjIzLDY4LjI0LDExLjIzeiIvPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00My41Niw2LjI0aC0xLjMzYy0wLjEyLDAtMC4yMiwwLjEtMC4yMiwwLjIydjAuN2MtMC42OC0wLjcxLTEuNjItMS4xMi0yLjYtMS4xMmMtMi4wNywwLTMuNzUsMS43OC0zLjc1LDMuOTlzMS42OSwzLjk5LDMuNzUsMy45OWMwLjk5LDAsMS45My0wLjQxLDIuNi0xLjEzdjAuN2MwLDAuMTIsMC4xLDAuMjIsMC4yMiwwLjIyaDEuMzNjMC4xMiwwLDAuMjItMC4xLDAuMjItMC4yMlY2LjQ0YzAtMC4xMS0wLjA5LTAuMjEtMC4yMS0wLjIxQzQzLjU3LDYuMjQsNDMuNTcsNi4yNCw0My41Niw2LjI0eiBNNDIuMDIsMTAuMDVjLTAuMDEsMS4zMS0xLjA0LDIuMzYtMi4zLDIuMzZzLTIuMy0xLjA3LTIuMy0yLjM5czEuMDMtMi40LDIuMjktMi40YzEuMjcsMCwyLjI4LDEuMDYsMi4zLDIuMzZMNDIuMDIsMTAuMDV6Ii8+PHBhdGggY2xhc3M9InN0MSIgZD0iTTM5LjcyLDcuNjNjLTEuMjcsMC0yLjMsMS4wNy0yLjMsMi4zOXMxLjAzLDIuMzksMi4zLDIuMzlzMi4yOC0xLjA2LDIuMy0yLjM2VjkuOTlDNDIsOC42OCw0MC45OCw3LjYzLDM5LjcyLDcuNjN6IE0zOC42MiwxMC4wMmMwLTAuNjcsMC41LTEuMjEsMS4xMS0xLjIxYzAuNjEsMCwxLjA5LDAuNTMsMS4xMSwxLjE5djAuMDRjLTAuMDEsMC42NS0wLjUsMS4xOC0xLjExLDEuMThTMzguNjIsMTAuNjgsMzguNjIsMTAuMDJ6Ii8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTQ5LjkxLDYuMDRjLTAuOTgsMC0xLjkzLDAuNC0yLjYsMS4xMlY2LjQ1YzAtMC4xMi0wLjEtMC4yMi0wLjIyLTAuMjJoLTEuMzNjLTAuMTIsMC0wLjIyLDAuMS0wLjIyLDAuMjJ2MTAuMjFjMCwwLjEyLDAuMSwwLjIyLDAuMjIsMC4yMmgxLjMzYzAuMTIsMCwwLjIyLTAuMSwwLjIyLTAuMjJ2LTMuNzhjMC42OCwwLjcxLDEuNjIsMS4xMiwyLjYxLDEuMTJjMi4wNywwLDMuNzUtMS43OCwzLjc1LTMuOTlTNTEuOTgsNi4wNCw0OS45MSw2LjA0eiBNNDkuNiwxMi40MmMtMS4yNiwwLTIuMjgtMS4wNi0yLjMtMi4zNlY5Ljk5YzAuMDItMS4zMSwxLjA0LTIuMzcsMi4yOS0yLjM3YzEuMjYsMCwyLjMsMS4wNywyLjMsMi4zOVM1MC44NiwxMi40MSw0OS42LDEyLjQyTDQ5LjYsMTIuNDJ6Ii8+PHBhdGggY2xhc3M9InN0MSIgZD0iTTQ5LjYsNy42M2MtMS4yNiwwLTIuMjgsMS4wNi0yLjMsMi4zNnYwLjA2YzAuMDIsMS4zMSwxLjA0LDIuMzYsMi4zLDIuMzZzMi4zLTEuMDcsMi4zLTIuMzlTNTAuODYsNy42Myw0OS42LDcuNjN6IE00OS42LDExLjIzYy0wLjYsMC0xLjA5LTAuNTMtMS4xMS0xLjE5VjEwQzQ4LjUsOS4zNCw0OSw4LjgxLDQ5LjYsOC44MWMwLjYsMCwxLjExLDAuNTUsMS4xMSwxLjIxUzUwLjIxLDExLjIzLDQ5LjYsMTEuMjN6Ii8+PHBhdGggY2xhc3M9InN0MCIgZD0iTTM0LjM2LDEzLjU5YzAsMC4xMi0wLjEsMC4yMi0wLjIyLDAuMjJoLTEuMzRjLTAuMTIsMC0wLjIyLTAuMS0wLjIyLTAuMjJWOS4yNGMwLTAuOTMtMC43LTEuNjMtMS41NC0xLjYzYy0wLjc2LDAtMS4zOSwwLjY3LTEuNTEsMS41NGwwLjAxLDQuNDRjMCwwLjEyLTAuMSwwLjIyLTAuMjIsMC4yMmgtMS4zNGMtMC4xMiwwLTAuMjItMC4xLTAuMjItMC4yMlY5LjI0YzAtMC45My0wLjctMS42My0xLjU0LTEuNjNjLTAuODEsMC0xLjQ3LDAuNzUtMS41MiwxLjcxdjQuMjdjMCwwLjEyLTAuMSwwLjIyLTAuMjIsMC4yMmgtMS4zM2MtMC4xMiwwLTAuMjItMC4xLTAuMjItMC4yMlY2LjQ0YzAuMDEtMC4xMiwwLjEtMC4yMSwwLjIyLTAuMjFoMS4zM2MwLjEyLDAsMC4yMSwwLjEsMC4yMiwwLjIxdjAuNjNjMC40OC0wLjY1LDEuMjQtMS4wNCwyLjA2LTEuMDVoMC4wM2MxLjA0LDAsMS45OSwwLjU3LDIuNDgsMS40OGMwLjQzLTAuOSwxLjMzLTEuNDgsMi4zMi0xLjQ5YzEuNTQsMCwyLjc5LDEuMTksMi43NiwyLjY1TDM0LjM2LDEzLjU5eiIvPjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik04MC4zMiwxMi45N2wtMC4wNy0wLjEyTDc4LjM4LDEwbDEuODUtMi44MWMwLjQyLTAuNjQsMC4yNS0xLjQ5LTAuMzktMS45MmMtMC4wMS0wLjAxLTAuMDItMC4wMS0wLjAzLTAuMDJjLTAuMjItMC4xNC0wLjQ4LTAuMjEtMC43NC0wLjIxaC0xLjUzYy0wLjUzLDAtMS4wMywwLjI4LTEuMywwLjc0bC0wLjMyLDAuNTNsLTAuMzItMC41M2MtMC4yOC0wLjQ2LTAuNzctMC43NC0xLjMxLTAuNzRoLTEuNTNjLTAuNTcsMC0xLjA4LDAuMzUtMS4yOSwwLjg4Yy0yLjA5LTEuNTgtNS4wMy0xLjQtNi45MSwwLjQzYy0wLjMzLDAuMzItMC42MiwwLjY5LTAuODUsMS4wOWMtMC44NS0xLjU1LTIuNDUtMi42LTQuMjgtMi42Yy0wLjQ4LDAtMC45NiwwLjA3LTEuNDEsMC4yMlYzLjM3YzAtMC43OC0wLjYzLTEuNDEtMS40LTEuNDFoLTEuMzNjLTAuNzcsMC0xLjQsMC42My0xLjQsMS40djMuNTdjLTAuOS0xLjMtMi4zOC0yLjA4LTMuOTctMi4wOWMtMC43LDAtMS4zOSwwLjE1LTIuMDIsMC40NWMtMC4yMy0wLjE2LTAuNTEtMC4yNS0wLjgtMC4yNWgtMS4zM2MtMC40MywwLTAuODMsMC4yLTEuMSwwLjUzYy0wLjAyLTAuMDMtMC4wNC0wLjA1LTAuMDctMC4wOGMtMC4yNy0wLjI5LTAuNjUtMC40NS0xLjA0LTAuNDVoLTEuMzJjLTAuMjksMC0wLjU3LDAuMDktMC44LDAuMjVDNDAuOCw1LDQwLjEyLDQuODUsMzkuNDIsNC44NWMtMS43NCwwLTMuMjcsMC45NS00LjE2LDIuMzhjLTAuMTktMC40NC0wLjQ2LTAuODUtMC43OS0xLjE5Yy0wLjc2LTAuNzctMS44LTEuMTktMi44OC0xLjE5aC0wLjAxYy0wLjg1LDAuMDEtMS42NywwLjMxLTIuMzQsMC44NGMtMC43LTAuNTQtMS41Ni0wLjg0LTIuNDUtMC44NGgtMC4wM2MtMC4yOCwwLTAuNTUsMC4wMy0wLjgyLDAuMWMtMC4yNywwLjA2LTAuNTMsMC4xNS0wLjc4LDAuMjdjLTAuMi0wLjExLTAuNDMtMC4xNy0wLjY3LTAuMTdoLTEuMzNjLTAuNzgsMC0xLjQsMC42My0xLjQsMS40djcuMTRjMCwwLjc4LDAuNjMsMS40LDEuNCwxLjRoMS4zM2MwLjc4LDAsMS40MS0wLjYzLDEuNDEtMS40MWMwLDAsMCwwLDAsMFY5LjM1YzAuMDMtMC4zNCwwLjIyLTAuNTYsMC4zNC0wLjU2YzAuMTcsMCwwLjM2LDAuMTcsMC4zNiwwLjQ1djQuMzVjMCwwLjc4LDAuNjMsMS40LDEuNCwxLjRoMS4zNGMwLjc4LDAsMS40LTAuNjMsMS40LTEuNGwtMC4wMS00LjM1YzAuMDYtMC4zLDAuMjQtMC40NSwwLjMzLTAuNDVjMC4xNywwLDAuMzYsMC4xNywwLjM2LDAuNDV2NC4zNWMwLDAuNzgsMC42MywxLjQsMS40LDEuNGgxLjM0YzAuNzgsMCwxLjQtMC42MywxLjQtMS40di0wLjM2YzAuOTEsMS4yMywyLjM0LDEuOTYsMy44NywxLjk2YzAuNywwLDEuMzktMC4xNSwyLjAyLTAuNDVjMC4yMywwLjE2LDAuNTEsMC4yNSwwLjgsMC4yNWgxLjMyYzAuMjksMCwwLjU3LTAuMDksMC44LTAuMjV2MS45MWMwLDAuNzgsMC42MywxLjQsMS40LDEuNGgxLjMzYzAuNzgsMCwxLjQtMC42MywxLjQtMS40di0xLjY5YzAuNDYsMC4xNCwwLjk0LDAuMjIsMS40MiwwLjIxYzEuNjIsMCwzLjA3LTAuODMsMy45Ny0yLjF2MC41YzAsMC43OCwwLjYzLDEuNCwxLjQsMS40aDEuMzNjMC4yOSwwLDAuNTctMC4wOSwwLjgtMC4yNWMwLjYzLDAuMywxLjMyLDAuNDUsMi4wMiwwLjQ1YzEuODMsMCwzLjQzLTEuMDUsNC4yOC0yLjZjMS40NywyLjUyLDQuNzEsMy4zNiw3LjIyLDEuODljMC4xNy0wLjEsMC4zNC0wLjIxLDAuNS0wLjM0YzAuMjEsMC41MiwwLjcyLDAuODcsMS4yOSwwLjg2aDEuNTNjMC41MywwLDEuMDMtMC4yOCwxLjMtMC43NGwwLjM1LTAuNThsMC4zNSwwLjU4YzAuMjgsMC40NiwwLjc3LDAuNzQsMS4zMSwwLjc0aDEuNTJjMC43NywwLDEuMzktMC42MywxLjM4LTEuMzlDODAuNDcsMTMuMzgsODAuNDIsMTMuMTcsODAuMzIsMTIuOTdMODAuMzIsMTIuOTd6IE0zNC4xNSwxMy44MWgtMS4zNGMtMC4xMiwwLTAuMjItMC4xLTAuMjItMC4yMlY5LjI0YzAtMC45My0wLjctMS42My0xLjU0LTEuNjNjLTAuNzYsMC0xLjM5LDAuNjctMS41MSwxLjU0bDAuMDEsNC40NGMwLDAuMTItMC4xLDAuMjItMC4yMiwwLjIyaC0xLjM0Yy0wLjEyLDAtMC4yMi0wLjEtMC4yMi0wLjIyVjkuMjRjMC0wLjkzLTAuNy0xLjYzLTEuNTQtMS42M2MtMC44MSwwLTEuNDcsMC43NS0xLjUyLDEuNzF2NC4yN2MwLDAuMTItMC4xLDAuMjItMC4yMiwwLjIyaC0xLjMzYy0wLjEyLDAtMC4yMi0wLjEtMC4yMi0wLjIyVjYuNDRjMC4wMS0wLjEyLDAuMS0wLjIxLDAuMjItMC4yMWgxLjMzYzAuMTIsMCwwLjIxLDAuMSwwLjIyLDAuMjF2MC42M2MwLjQ4LTAuNjUsMS4yNC0xLjA0LDIuMDYtMS4wNWgwLjAzYzEuMDQsMCwxLjk5LDAuNTcsMi40OCwxLjQ4YzAuNDMtMC45LDEuMzMtMS40OCwyLjMyLTEuNDljMS41NCwwLDIuNzksMS4xOSwyLjc2LDIuNjVsMC4wMSw0LjkxQzM0LjM3LDEzLjcsMzQuMjcsMTMuOCwzNC4xNSwxMy44MUMzNC4xNSwxMy44MSwzNC4xNSwxMy44MSwzNC4xNSwxMy44MXogTTQzLjc4LDEzLjU5YzAsMC4xMi0wLjEsMC4yMi0wLjIyLDAuMjJoLTEuMzNjLTAuMTIsMC0wLjIyLTAuMS0wLjIyLTAuMjJ2LTAuNzFDNDEuMzQsMTMuNiw0MC40LDE0LDM5LjQyLDE0Yy0yLjA3LDAtMy43NS0xLjc4LTMuNzUtMy45OXMxLjY5LTMuOTksMy43NS0zLjk5YzAuOTgsMCwxLjkyLDAuNDEsMi42LDEuMTJ2LTAuN2MwLTAuMTIsMC4xLTAuMjIsMC4yMi0wLjIyaDEuMzNjMC4xMS0wLjAxLDAuMjEsMC4wOCwwLjIyLDAuMmMwLDAuMDEsMCwwLjAxLDAsMC4wMlYxMy41OXogTTQ5LjkxLDE0Yy0wLjk4LDAtMS45Mi0wLjQxLTIuNi0xLjEydjMuNzhjMCwwLjEyLTAuMSwwLjIyLTAuMjIsMC4yMmgtMS4zM2MtMC4xMiwwLTAuMjItMC4xLTAuMjItMC4yMlY2LjQ1YzAtMC4xMiwwLjEtMC4yMSwwLjIyLTAuMjFoMS4zM2MwLjEyLDAsMC4yMiwwLjEsMC4yMiwwLjIydjAuN2MwLjY4LTAuNzIsMS42Mi0xLjEyLDIuNi0xLjEyYzIuMDcsMCwzLjc1LDEuNzcsMy43NSwzLjk4UzUxLjk4LDE0LDQ5LjkxLDE0eiBNNjMuMDksMTAuODdDNjIuNzIsMTIuNjUsNjEuMjIsMTQsNTkuNDMsMTRjLTAuOTgsMC0xLjkyLTAuNDEtMi42LTEuMTJ2MC43YzAsMC4xMi0wLjEsMC4yMi0wLjIyLDAuMjJoLTEuMzNjLTAuMTIsMC0wLjIyLTAuMS0wLjIyLTAuMjJWMy4zN2MwLTAuMTIsMC4xLTAuMjIsMC4yMi0wLjIyaDEuMzNjMC4xMiwwLDAuMjIsMC4xLDAuMjIsMC4yMnYzLjc4YzAuNjgtMC43MSwxLjYyLTEuMTIsMi42LTEuMTFjMS43OSwwLDMuMjksMS4zMywzLjY2LDMuMTJDNjMuMjEsOS43Myw2My4yMSwxMC4zMSw2My4wOSwxMC44N0w2My4wOSwxMC44N0w2My4wOSwxMC44N3ogTTY4LjI2LDE0LjAxYy0xLjksMC4wMS0zLjU1LTEuMjktMy45Ny0zLjE0Yy0wLjEyLTAuNTYtMC4xMi0xLjEzLDAtMS42OWMwLjQyLTEuODUsMi4wNy0zLjE1LDMuOTctMy4xNGMyLjI1LDAsNC4wNiwxLjc4LDQuMDYsMy45OVM3MC41LDE0LjAxLDY4LjI2LDE0LjAxTDY4LjI2LDE0LjAxeiBNNzkuMDksMTMuODFoLTEuNTNjLTAuMTIsMC0wLjIzLTAuMDYtMC4yOS0wLjE2bC0xLjM3LTIuMjhsLTEuMzcsMi4yOGMtMC4wNiwwLjEtMC4xNywwLjE2LTAuMjksMC4xNmgtMS41M2MtMC4wNCwwLTAuMDgtMC4wMS0wLjExLTAuMDNjLTAuMDktMC4wNi0wLjEyLTAuMTgtMC4wNi0wLjI3YzAsMCwwLDAsMCwwbDIuMzEtMy41bC0yLjI4LTMuNDdjLTAuMDItMC4wMy0wLjAzLTAuMDctMC4wMy0wLjExYzAtMC4xMSwwLjA5LTAuMiwwLjItMC4yaDEuNTNjMC4xMiwwLDAuMjMsMC4wNiwwLjI5LDAuMTZsMS4zNCwyLjI1bDEuMzQtMi4yNWMwLjA2LTAuMSwwLjE3LTAuMTYsMC4yOS0wLjE2aDEuNTNjMC4wNCwwLDAuMDgsMC4wMSwwLjExLDAuMDNjMC4wOSwwLjA2LDAuMTIsMC4xOCwwLjA2LDAuMjdjMCwwLDAsMCwwLDBMNzYuOTYsMTBsMi4zMSwzLjVjMC4wMiwwLjAzLDAuMDMsMC4wNywwLjAzLDAuMTFDNzkuMjksMTMuNzIsNzkuMiwxMy44MSw3OS4wOSwxMy44MUM3OS4wOSwxMy44MSw3OS4wOSwxMy44MSw3OS4wOSwxMy44MUw3OS4wOSwxMy44MXoiLz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTAsMS4yMWMtNC44NywwLTguODEsMy45NS04LjgxLDguODFzMy45NSw4LjgxLDguODEsOC44MXM4LjgxLTMuOTUsOC44MS04LjgxQzE4LjgxLDUuMTUsMTQuODcsMS4yMSwxMCwxLjIxeiBNMTQuMTgsMTIuMTljLTEuODQsMS44NC00LjU1LDIuMi02LjM4LDIuMmMtMC42NywwLTEuMzQtMC4wNS0yLTAuMTVjMCwwLTAuOTctNS4zNywyLjA0LTguMzljMC43OS0wLjc5LDEuODYtMS4yMiwyLjk4LTEuMjJjMS4yMSwwLDIuMzcsMC40OSwzLjIzLDEuMzVDMTUuOCw3LjczLDE1Ljg1LDEwLjUsMTQuMTgsMTIuMTl6Ii8+PHBhdGggY2xhc3M9InN0MSIgZD0iTTEwLDAuMDJjLTUuNTIsMC0xMCw0LjQ4LTEwLDEwczQuNDgsMTAsMTAsMTBzMTAtNC40OCwxMC0xMEMxOS45OSw0LjUsMTUuNTIsMC4wMiwxMCwwLjAyeiBNMTAsMTguODNjLTQuODcsMC04LjgxLTMuOTUtOC44MS04LjgxUzUuMTMsMS4yLDEwLDEuMnM4LjgxLDMuOTUsOC44MSw4LjgxQzE4LjgxLDE0Ljg5LDE0Ljg3LDE4LjgzLDEwLDE4LjgzeiIvPjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNC4wNCw1Ljk4Yy0xLjc1LTEuNzUtNC41My0xLjgxLTYuMi0wLjE0QzQuODMsOC44Niw1LjgsMTQuMjMsNS44LDE0LjIzczUuMzcsMC45Nyw4LjM5LTIuMDRDMTUuODUsMTAuNSwxNS44LDcuNzMsMTQuMDQsNS45OHogTTExLjg4LDkuODdsLTAuODcsMS43OGwtMC44Ni0xLjc4TDguMzgsOS4wMWwxLjc3LTAuODZsMC44Ni0xLjc4bDAuODcsMS43OGwxLjc3LDAuODZMMTEuODgsOS44N3oiLz48cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjEzLjY1LDkuMDEgMTEuODgsOS44NyAxMS4wMSwxMS42NSAxMC4xNSw5Ljg3IDguMzgsOS4wMSAxMC4xNSw4LjE1IDExLjAxLDYuMzcgMTEuODgsOC4xNSAiLz48L2c+PC9zdmc+);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 88px 23px;
    }
}
#selectLayers {
    height: 33px;
    margin-bottom: 8px;
    border: 1px solid #ccc;
    display: block;
    width: 200px;
    padding-left: 3px;
    background: #fff;
}
#switch-to-p2p {
    display: none;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}
#switch-to-p2p p {
    margin-top: 0;
}
.btn-smaller {
    font-size: 11px;
    line-height: 25px;
    height: 25px;
}
.settings-help {
    font-size: 85%;
    float: right;
    color: #333;
}
input[type="range"] {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    margin: 0 8px 10px 0;
    width: 40%;
      background-color: #43e5f7; 

}
.slider span {
    font-size: 85%;
    color: var(--luxury-text-muted);

}













.cur-year{

    color: var(--luxury-text) !important;
}
.flatpickr-monthDropdown-months{
    color: var(--luxury-text) !important;
}

.flatpickr-hour{
    color: var(--luxury-text) !important;   
}

.flatpickr-minute{
    color: var(--luxury-text) !important;   
}
.flatpickr-time input:hover, .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-time input:focus, .flatpickr-time .flatpickr-am-pm:focus {
    background: transparent !important;
    color: var(--luxury-text) !important;
}
.flatpickr-calendar.hasTime .flatpickr-time{
    border-top: 0px solid var(--luxury-card) !important;
}
.flatpickr-time .numInputWrapper span.arrowUp:after{
    border-bottom-color: var(--luxury-text) !important;
}
.flatpickr-time .numInputWrapper span.arrowDown:after{
    border-top-color: var(--luxury-text) !important;
}
.flatpickr-time-separator{
    color: var(--luxury-text) !important;
}
.flatpickr-calendar{
    background: var(--luxury-card) !important;
    color: var(--luxury-text) !important;
}
.flatpickr-weekday{
    color: var(--strava-orange) !important;
}
.flatpickr-day.prevMonthDay {
    color: var(--luxury-text-muted) !important;
}
.flatpickr-day.nextMonthDay{
    color: var(--luxury-text-muted) !important;
}
.flatpickr-day {
    color: var(--luxury-text) !important;
}
.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {
    background: #ff840031 !important;
    border-color: #e6e6e600 !important;
}
.flatpickr-day.selected{
    background: var(--strava-orange) !important;
    border-color: var(--strava-orange) !important;
}
.flatpickr-prev-month{
    fill: var(--luxury-text-muted) !important;
}
.flatpickr-next-month{
    fill: var(--luxury-text-muted) !important;
}
.btn-delete-activity{
    background-color: rgba(255, 71, 87, 0.0);
    border: 0px solid var(--bs-btn-hover-bg) !important;
}

/* ============================================= */
/* STYLE POUR LA CARTE FLOTTANTE         */
/* =------------------------------------------- */


/* On le transforme en carte flottante */
.shadowfit-theme.sidebar {
    /* Positionnement et taille */
    top: 92px; /* On la place sous la navbar */
    /* On enlève les styles par défaut */
    overflow: hidden; /* Important pour les coins arrondis */
}




/* --- Apparence sur mobile --- */
@media (max-width: 768px) {
    #details-router-container {
        top: 15px;      /* On la remonte un peu */
        left: 50%;      /* Technique pour centrer */
        right: auto;    /* On annule la position à droite */
        position: relative;
        top: 0; /* On remet à zéro pour éviter les conflits */
        left: 0; /* On remet à zéro pour éviter les conflits */
        right:0; /* On remet à zéro pour éviter les conflits */
        width: 100%;    /* Prend toute la largeur de l'écran */
        max-width: none; /* Pas de limite de largeur */
    }
    #avg_speed {
        width: 84% !important;
    }
}




.leaflet-routing-add-waypoint {
    color: #999;
}

.leaflet-routing-geocoders button.delete-waypoint:hover {
    background-color: var(--luxury-danger);
}

.leaflet-routing-reset {
    color: #fff;
}

.leaflet-routing-reset:hover {
    background-color: var(--luxury-danger) !important;
}


#green_preference, #hill_preference {
  -webkit-appearance: none;
  width: 200px;
  height: 6px;
  background: var(--luxury-light-gray);
  border-radius: 3px;
  outline: none;
  transition: background 0.3s ease;
}

/* Track (Chrome/Safari) */
#green_preference::-webkit-slider-runnable-track {
  height: 6px;
  background: transparent; /* déjà géré par le background du slider */
}

/* Track (Firefox) */
#green_preference::-moz-range-track {
  height: 6px;
  background: transparent;
}

/* Thumb (Chrome/Safari) */
#green_preference::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  background: #f0f0f0;
  border-radius: 50%;
  cursor: pointer;
  margin-top: -5px;
}

/* Thumb (Firefox) */
#green_preference::-moz-range-thumb {
  width: 16px;
  height: 16px;
  background: #f0f0f0;
  border-radius: 50%;
  cursor: pointer;
}

#green_preference {
  -webkit-appearance: none;
  width: 200px;
  height: 6px;
  background: var(--luxury-light-gray);
  border-radius: 3px;
  outline: none;
  transition: background 0.3s ease;
}

/* Track (Chrome/Safari) */
#green_preference::-webkit-slider-runnable-track {
  height: 6px;
  background: transparent; /* déjà géré par le background du slider */
}

/* Track (Firefox) */
#green_preference::-moz-range-track {
  height: 6px;
  background: transparent;
}

/* Thumb (Chrome/Safari) */
#green_preference::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  background: #f0f0f0;
  border-radius: 50%;
  cursor: pointer;
  margin-top: -5px;
}

/* Thumb (Firefox) */
#green_preference::-moz-range-thumb {
  width: 16px;
  height: 16px;
  background: #f0f0f0;
  border-radius: 50%;
  cursor: pointer;
}

.btn-switch-to-p2p{
    padding: 0 16px !important;
}

.leaflet-right{
    z-index: 0 !important;
}

.avg_speed_title {
    text-align: center;
    margin-top: 30px;
}


/* Styles pour le conteneur des propositions de route */
#custom-route-display-container {
    padding: 10px;
    background-color: var(--luxury-light-gray, #f8f9fa); /* Couleur de fond de secours */
}


/* Style pour la carte sélectionnée */
.activity-item.selected {
    border-color: var(--strava-orange, #fc5200);
    box-shadow: 0 0 0 2px var(--strava-orange-light, #fd6b21);
}

/* Style pour l'icône (cercle orange) */
.activity-icon .rounded-circle {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.activity-icon .rounded-circle i {
    color: white;
    font-size: 1.25rem;
}

/* Styles pour le texte */
.activity-item h6 {
    font-weight: bold;
    margin-bottom: 0.25rem;
}

.activity-item .text-muted {
    font-size: 0.85rem;
}

.activity-item .text-muted .me-3 {
    margin-right: 1rem;
}

#avg_speed {
  -webkit-appearance: none;
  height: 6px;
  background: var(--luxury-light-gray);
  border-radius: 3px;
  outline: none;
  transition: background 0.3s ease;
  width: 100%;
}


/* Please ❤ this if you like it! */
.section {
    position: relative;
	width: 100%;
	display: block;
	text-align: center;
	margin: 0 auto;
}
.over-hide {
    overflow: hidden;
}
.z-bigger {
    z-index: 100 !important;
}

.checkbox:checked ~ .background-color{
	background-color: var(--white);
}



.checkbox:checked + label,
.checkbox:not(:checked) + label{
	position: relative;
	width: 70px;
	display: inline-block;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	margin: 17px 0;
	margin-top: 100px;
	height: 6px;
	border-radius: 4px;
	background-image: linear-gradient(298deg, var(--red), var(--yellow));
	z-index: 100 !important;
}
.checkbox:checked + label:before,
.checkbox:not(:checked) + label:before {
	position: absolute;
	font-family: 'unicons';
	cursor: pointer;
	top: -17px;
	z-index: 2;
	font-size: 20px;
	line-height: 40px;
	text-align: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox:not(:checked) + label:before {
	content: '\eac1';
	left: 0;
	color: var(--grey);
	background-color: var(--dark-light);
	box-shadow: 0 4px 4px rgba(0,0,0,0.15), 0 0 0 1px rgba(26,53,71,0.07);
}
.checkbox:checked + label:before {
	content: '\eb8f';
	left: 30px;
	color: var(--yellow);
	background-color: var(--dark-blue);
	box-shadow: 0 4px 4px rgba(26,53,71,0.25), 0 0 0 1px rgba(26,53,71,0.07);
}


.checkbox-tools:checked + label,
.checkbox-tools:not(:checked) + label{
	position: relative;
	display: inline-block;
	padding: 20px;
	/* width:80%; */
	font-size: 14px;
	letter-spacing: 1px;
	margin: 0 auto;
	margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 10px;
	text-align: center;
	border-radius: 40px;
	overflow: hidden;
	cursor: pointer;
	text-transform: uppercase;
	color: var(--white);
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox-tools:not(:checked) + label{
	background: var(--luxury-card);
	border: 2px solid var(--luxury-gray);

}
.checkbox-tools:checked + label{
	background-color: var(--strava-orange);
	box-shadow: 0 8px 16px 0 rgba(252, 76, 2, 0.1);
    border:2px solid var(--strava-orange);
.checkbox-tools:not(:checked) + label:hover{
	box-shadow: 0 8px 16px 0 rgba(252, 76, 2, 0.1);
    background:  rgba(252, 76, 2, 0.2);
    border:  2px solid  rgba(252, 76, 2, 0.1);
}
.checkbox-tools:checked + label::before,
.checkbox-tools:not(:checked) + label::before{
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 14px;

	z-index: -1;
}
.checkbox-tools:checked + label .uil,
.checkbox-tools:not(:checked) + label .uil{
	font-size: 24px;
	line-height: 24px;
	display: block;
	padding-bottom: 10px;
}

.checkbox:checked ~ .section .container .row .col-12 .checkbox-tools:not(:checked) + label{
	background-color: var(--light);
	color: var(--dark-blue);
	box-shadow: 0 1x 4px 0 rgba(0, 0, 0, 0.05);
}

.checkbox-budget:checked + label,
.checkbox-budget:not(:checked) + label{
	position: relative;
	display: inline-block;
	padding: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	width: 260px;
	font-size: 52px;
	line-height: 52px;
	font-weight: 700;
	letter-spacing: 1px;
	margin: 0 auto;
	margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 10px;
	text-align: center;
	border-radius: 4px;
	overflow: hidden;
	cursor: pointer;
	text-transform: uppercase;
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
	-webkit-text-stroke: 1px var(--white);
    text-stroke: 1px var(--white);
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
    color: transparent;
}
.checkbox-budget:not(:checked) + label{
	background-color: var(--dark-light);
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}
.checkbox-budget:checked + label{
	background-color: transparent;
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.checkbox-budget:not(:checked) + label:hover{
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.checkbox-budget:checked + label::before,
.checkbox-budget:not(:checked) + label::before{
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	background-image: linear-gradient(138deg, var(--red), var(--yellow));
	z-index: -1;
}
.checkbox-budget:checked + label span,
.checkbox-budget:not(:checked) + label span{
	position: relative;
	display: block;
}
.checkbox-budget:checked + label span::before,
.checkbox-budget:not(:checked) + label span::before{
	position: absolute;
	content: attr(data-hover);
	top: 0;
	left: 0;
	width: 100%;
	overflow: hidden;
	-webkit-text-stroke: transparent;
    text-stroke: transparent;
    -webkit-text-fill-color: var(--white);
    text-fill-color: var(--white);
    color: var(--white);
	-webkit-transition: max-height 0.3s;
	-moz-transition: max-height 0.3s;
	transition: max-height 0.3s;
}
.checkbox-budget:not(:checked) + label span::before{
	max-height: 0;
}
.checkbox-budget:checked + label span::before{
	max-height: 100%;
}

.checkbox:checked ~ .section .container .row .col-xl-10 .checkbox-budget:not(:checked) + label{
	background-color: var(--light);
	-webkit-text-stroke: 1px var(--dark-blue);
    text-stroke: 1px var(--dark-blue);
	box-shadow: 0 1x 4px 0 rgba(0, 0, 0, 0.05);
}

.checkbox-booking:checked + label,
.checkbox-booking:not(:checked) + label{
	position: relative;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	text-align: center;
	padding: 0;
	padding: 6px 25px;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 1px;
	margin: 0 auto;
	margin-left: 6px;
	margin-right: 6px;
	margin-bottom: 16px;
	text-align: center;
	border-radius: 4px;
	cursor: pointer;
    color: var(--white);
	text-transform: uppercase;
	background-color: var(--dark-light);
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox-booking:not(:checked) + label::before{
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}
.checkbox-booking:checked + label::before{
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.checkbox-booking:not(:checked) + label:hover::before{
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.checkbox-booking:checked + label::before,
.checkbox-booking:not(:checked) + label::before{
	position: absolute;
	content: '';
	top: -2px;
	left: -2px;
	width: calc(100% + 4px);
	height: calc(100% + 4px);
	border-radius: 4px;
	z-index: -2;
	background-image: linear-gradient(138deg, var(--red), var(--yellow));
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox-booking:not(:checked) + label::before{
	top: -1px;
	left: -1px;
	width: calc(100% + 2px);
	height: calc(100% + 2px);
}
.checkbox-booking:checked + label::after,
.checkbox-booking:not(:checked) + label::after{
	position: absolute;
	content: '';
	top: -2px;
	left: -2px;
	width: calc(100% + 4px);
	height: calc(100% + 4px);
	border-radius: 4px;
	z-index: -2;
	background-color: var(--dark-light);
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox-booking:checked + label::after{
	opacity: 0;
}
.checkbox-booking:checked + label .uil,
.checkbox-booking:not(:checked) + label .uil{
	font-size: 20px;
}
.checkbox-booking:checked + label .text,
.checkbox-booking:not(:checked) + label .text{
	position: relative;
	display: inline-block;
	-webkit-transition: opacity 300ms linear;
	transition: opacity 300ms linear;
}
.checkbox-booking:checked + label .text{
	opacity: 0.6;
}
.checkbox-booking:checked + label .text::after,
.checkbox-booking:not(:checked) + label .text::after{
	position: absolute;
	content: '';
	width: 0;
	left: 0;
	top: 50%;
	margin-top: -1px;
	height: 2px;
	background-image: linear-gradient(138deg, var(--red), var(--yellow));
	z-index: 1;
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.checkbox-booking:not(:checked) + label .text::after{
	width: 0;
}
.checkbox-booking:checked + label .text::after{
	width: 100%;
}

.checkbox:checked ~ .section .container .row .col-12 .checkbox-booking:not(:checked) + label,
.checkbox:checked ~ .section .container .row .col-12 .checkbox-booking:checked + label{
	background-color: var(--light);
    color: var(--dark-blue);
}
.checkbox:checked ~ .section .container .row .col-12 .checkbox-booking:checked + label::after,
.checkbox:checked ~ .section .container .row .col-12 .checkbox-booking:not(:checked) + label::after{
	background-color: var(--light);
}