.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0,0,0,0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media (hover:hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:rgba(0,0,0,.05)}}.maplibregl-ctrl button:not(:disabled):active{background-color:rgba(0,0,0,.05)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%23333' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%2333b5e5' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgba(0,0,0,.05)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}[dir=rtl] .maplibregl-popup-anchor-left{flex-direction:row-reverse}[dir=rtl] .maplibregl-popup-anchor-right{flex-direction:row}[dir=rtl] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-start}[dir=rtl] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-start}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgba(0,0,0,.05)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@media (prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(pointer:coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.traffic-ui {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.8);
    border-radius: 10px;
    padding: 0;
    color: white;
    font-family: Arial, sans-serif;
    width: 300px;
    max-width: 400px;
    height: 550px !important; /* Increased from 400px */
    max-height: 550px !important; /* Increased height */
    backdrop-filter: blur(10px);
    transition: width 0.3s ease, min-width 0.3s ease, max-width 0.3s ease;
    transform: scale(0.825); /* Increased by 25% from previous size */
    transform-origin: top left; /* Scale from top-left corner */
    overflow: hidden; /* Hide overflow when collapsed */
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

/* Bus Stations UI - taller to fit Hebrew text and top 10 stations list */
.traffic-ui.bus-stations-ui {
    width: 350px;
    max-width: 450px;
    height: auto !important; /* Auto height to fit all content */
    max-height: 80vh !important; /* Limit to viewport height but allow scrolling if needed */
    min-height: 550px !important; /* Minimum height */
}

.traffic-ui.collapsed {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    overflow: visible;
}

.traffic-ui-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 10px; /* Reduced padding by 20% */
    border-bottom: 1px solid rgba(74, 144, 226, 0.3);
    cursor: pointer;
    user-select: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    min-height: 40px;
}

.traffic-ui.collapsed .traffic-ui-header {
    justify-content: center;
    padding: 8px 5px;
    border-bottom: none;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}

.traffic-ui-header h2 {
    margin: 0;
    color: #4a90e2;
    font-size: 20px; /* Increased font size */
    white-space: nowrap;
}

.traffic-ui.collapsed .traffic-ui-header h2 {
    display: none;
}

.traffic-ui-toggle {
    margin-left: 12px;
    color: #eaeef5;
    font-size: 18px;
    flex-shrink: 0;
}

.traffic-ui.collapsed .traffic-ui-toggle {
    margin-left: 0;
}

.traffic-ui-content {
    padding: 10px; /* Reduced padding by 20% */
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    overflow-y: auto; /* Allow scrolling when expanded */
    overflow-x: hidden;
    flex: 1;
    transition: opacity 0.2s ease, max-height 0.3s ease;
}

/* Bus Stations UI - allow content to expand fully */
.traffic-ui.bus-stations-ui .traffic-ui-content {
    overflow-y: visible; /* Show all content without internal scrolling */
    flex: 1 1 auto; /* Allow content to grow */
}

.traffic-ui.collapsed .traffic-ui-content {
    display: none;
}

.traffic-ui-section {
    margin-bottom: 10px; /* Reduced margin by 20% */
}

.traffic-ui-section label {
    display: block;
    margin-bottom: 5px; /* Reduced margin by 20% */
    font-weight: bold;
    color: #eaeef5;
    font-size: 16px; /* Increased font size */
}

.traffic-ui-section select {
    width: 100%;
    padding: 5px; /* Reduced padding by 20% */
    border-radius: 5px;
    border: 1px solid #4a90e2;
    background: #6e6e6e; /* Set background to gray */
    color: rgb(244, 244, 244);
    font-size: 16px; /* Increased font size */
    font-weight: 100;
}


.traffic-ui-buttons {
    display: flex;
    gap: 10px;
}

.traffic-ui-buttons button {
    padding: 5px 10px; /* Reduced padding by 20% */
    border: none;
    border-radius: 5px;
    background: #4a90e2;
    color: white;
    cursor: pointer;
    font-size: 16px; /* Increased font size */
    flex: 1;
}

.traffic-ui-buttons button#reset-btn {
    background: #666;
}

.traffic-ui-buttons button:hover {
    opacity: 0.8;
}

/* Statistics Section */
.statistics-section {
    border-top: 1px solid #4a90e2;
    padding-top: 12px;
    margin-top: 8px;
}

.stats-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    font-size: 15px;
    line-height: 1.4;
}

.stats-single {
    grid-column: 1 / -1;
}

.stats-column {
    background: rgba(74, 144, 226, 0.1);
    padding: 8px;
    border-radius: 4px;
}

.stats-title {
    font-weight: bold;
    color: #4a90e2;
    margin-bottom: 6px;
    font-size: 15px;
}

.stats-item {
    color: #ccc;
    margin-bottom: 4px;
}

.stats-item strong {
    color: #fff;
    font-weight: 600;
}

.stats-item-small {
    font-size: 13px;
    color: #999;
    margin-top: 2px;
}

/* Bus Stations Top 10 List */
.bus-stations-stats {
    max-height: none; /* Remove height restriction to show all stations */
    overflow-y: visible; /* Show all content without scrolling */
}

.top-stations-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 8px;
}

.top-station-item {
    display: flex;
    align-items: flex-start; /* Changed from center to allow multi-line text */
    gap: 8px;
    padding: 6px 8px;
    background: rgba(74, 144, 226, 0.1);
    border-radius: 4px;
    font-size: 15px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.station-rank {
    color: #4a90e2;
    font-weight: bold;
    min-width: 20px;
    flex-shrink: 0; /* Prevent rank from shrinking */
    white-space: nowrap; /* Keep rank on one line */
}

.station-name {
    flex: 1;
    color: #eaeef5;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    min-width: 0; /* Allows flex item to shrink below content size */
}

.station-count {
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    flex-shrink: 0; /* Prevent count from shrinking */
    white-space: nowrap; /* Keep count on one line */
}

/* Responsive design - Tablet */
@media (max-width: 1024px) {
    .traffic-ui {
        width: 280px;
        max-width: 90%;
        transform: scale(0.9);
    }
    
    .traffic-ui.bus-stations-ui {
        width: 320px;
        max-width: 100%;
    }
    
    .traffic-ui-header h2 {
        font-size: 18px;
    }
    
    .traffic-ui-section label {
        font-size: 15px;
    }
    
    .traffic-ui-section select {
        font-size: 15px;
    }
}

/* Responsive design - Mobile */
@media (max-width: 768px) {
    .traffic-ui {
        position: fixed !important;
        bottom: 10px;
        left: 10px;
        right: 10px;
        top: auto !important;
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: 60vh !important;
        transform: none !important;
        z-index: 2000;
    }
    
    .traffic-ui.collapsed {
        width: 50px !important;
        min-width: 50px !important;
        max-width: 50px !important;
        height: 50px !important;
        max-height: 50px !important;
    }
    
    .traffic-ui-header {
        padding: 10px;
        min-height: 45px;
    }
    
    .traffic-ui-header h2 {
        font-size: 16px;
    }
    
    .traffic-ui-content {
        padding: 12px;
        max-height: calc(60vh - 60px);
    }
    
    .traffic-ui-section {
        margin-bottom: 12px;
    }
    
    .traffic-ui-section label {
        font-size: 14px;
        margin-bottom: 6px;
    }
    
    .traffic-ui-section select {
        font-size: 14px;
        padding: 8px;
    }
    
    .traffic-ui-buttons button {
        font-size: 14px;
        padding: 8px 12px;
    }
    
    .stats-content {
        font-size: 13px;
        gap: 8px;
    }
    
    .stats-title {
        font-size: 14px;
    }
    
    .stats-item {
        font-size: 12px;
    }
    
    .top-station-item {
        font-size: 13px;
        padding: 8px;
    }
    
    .station-count {
        font-size: 14px;
    }
    
    .bus-stations-stats {
        max-height: none; /* Remove height restriction on mobile too */
        overflow-y: visible;
    }
}

/* Responsive design - Small Mobile */
@media (max-width: 480px) {
    .traffic-ui {
        bottom: 5px;
        left: 5px;
        right: 5px;
        max-height: 55vh !important;
    }
    
    .traffic-ui-header h2 {
        font-size: 14px;
    }
    
    .traffic-ui-section label {
        font-size: 13px;
    }
    
    .traffic-ui-section select {
        font-size: 13px;
    }
    
    .traffic-ui-buttons button {
        font-size: 13px;
        padding: 6px 10px;
    }
}
.map-coach-mark {
    position: fixed; /* Fixed positioning to avoid affecting layout */
    top: 20px;
    z-index: 2000; /* Higher than TrafficUI (1000) and map controls but below modals */
    pointer-events: none; /* Allow clicks to pass through except on the content */
    direction: rtl;
    /* Ensure it doesn't affect layout of other elements */
    margin: 0;
    padding: 0;
    /* Don't create layout shifts */
    contain: layout style paint;
}

.map-coach-mark.top-center {
    left: 50%;
    transform: translateX(-50%);
    animation: slideDownCenter 0.5s ease-out;
}

.map-coach-mark.top-left {
    left: 20px;
    animation: slideDownLeft 0.5s ease-out;
}

@keyframes slideDownCenter {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@keyframes slideDownLeft {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.coach-mark-content {
    background: rgba(0, 102, 204, 0.95); /* #0066CC with transparency */
    border-radius: 12px;
    padding: 16px 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255, 255, 255, 0.2);
    max-width: 500px;
    min-width: 350px;
    pointer-events: auto; /* Enable clicks on the content */
    position: relative;
    /* Ensure content doesn't affect parent layout */
    display: block;
    box-sizing: border-box;
}

.coach-mark-close {
    position: absolute;
    top: 8px;
    left: 8px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    color: white;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    padding: 0;
}

.coach-mark-close:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: scale(1.1);
}

.coach-mark-text {
    color: white;
    font-family: Arial, sans-serif;
}

.coach-mark-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 12px;
    text-align: center;
    color: #ffffff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.coach-mark-list {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 15px;
    line-height: 1.8;
}

.coach-mark-list li {
    padding: 6px 0;
    padding-right: 24px;
    position: relative;
    color: rgba(255, 255, 255, 0.95);
}

.coach-mark-list li::before {
    content: "→";
    position: absolute;
    right: 0;
    color: rgba(255, 255, 255, 0.8);
    font-weight: bold;
}

.map-coach-mark.hidden {
    display: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .coach-mark-content {
        max-width: 90%;
        min-width: 280px;
        padding: 12px 16px;
    }
    
    .coach-mark-title {
        font-size: 16px;
    }
    
    .coach-mark-list {
        font-size: 14px;
    }
}

.traffic-map-container {
    width: calc(100% - 80px) !important; /* Leave space for navigation dots on the right */
    height: 150% !important; /* Increase container by 50% - this will make the map larger without distortion */
    position: relative; /* Relative to section-content */
    min-height: 600px; /* Also increase min-height by 50% (400 * 1.5) */
    z-index: 1; /* Lower than navigation dots */
    margin-right: 80px; /* Space for navigation dots on the right */
    visibility: visible !important; /* Ensure container is visible */
    display: block !important; /* Ensure container is displayed */
    background: transparent; /* Transparent background */
    overflow: visible; /* Allow map to extend beyond container */
}

/* Fix for fullscreen mode */
.traffic-map-container:fullscreen,
.traffic-map-container:-webkit-full-screen,
.traffic-map-container:-moz-full-screen,
.traffic-map-container:-ms-fullscreen {
    width: 100% !important;
    height: 100% !important;
    margin-right: 0 !important;
    min-height: 0 !important;
    background: white; /* Or any background color appropriate for the app */
    z-index: 9999 !important;
}

/* Ensure the map div inside takes full height */
/* Exclude map-coach-mark and traffic-ui from this rule to prevent layout issues */
.traffic-map-container > div:not(.map-coach-mark):not(.traffic-ui) {
    height: 100% !important;
    width: 100% !important;
    min-height: inherit !important; /* Inherit min-height from parent */
}

/* Override min-height inheritance in fullscreen */
.traffic-map-container:fullscreen > div:not(.map-coach-mark):not(.traffic-ui),
.traffic-map-container:-webkit-full-screen > div:not(.map-coach-mark):not(.traffic-ui),
.traffic-map-container:-moz-full-screen > div:not(.map-coach-mark):not(.traffic-ui),
.traffic-map-container:-ms-fullscreen > div:not(.map-coach-mark):not(.traffic-ui) {
    min-height: 0 !important;
}

/* Coach Mark should not affect layout */
.traffic-map-container > .map-coach-mark {
    position: fixed !important;
    min-height: 0 !important;
    height: auto !important;
    width: auto !important;
}

/* Ensure mapbox canvas takes full height and is below navigation */
.traffic-map-container .mapboxgl-canvas {
    height: 100% !important;
    width: 100% !important;
    z-index: 1 !important; /* Ensure canvas is below navigation */
    /* אין צורך ב-transform - המפה תהיה גדולה יותר כי הקונטיינר גדול יותר */
}

.traffic-map-container .mapboxgl-map {
    height: 100% !important; /* Ensure map element also takes full height */
    width: 100% !important;
    z-index: 1 !important; /* Ensure map is below navigation */
}

/* Ensure map controls don't overlap navigation */
.traffic-map-container .mapboxgl-ctrl-top-right {
    right: 80px !important; /* Move controls away from navigation dots */
}

/* Reset control position in fullscreen */
.traffic-map-container:fullscreen .mapboxgl-ctrl-top-right,
.traffic-map-container:-webkit-full-screen .mapboxgl-ctrl-top-right,
.traffic-map-container:-moz-full-screen .mapboxgl-ctrl-top-right,
.traffic-map-container:-ms-fullscreen .mapboxgl-ctrl-top-right {
    right: 0 !important;
}

.traffic-map-error {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: red;
    direction: rtl;
    flex-direction: column;
    padding: 20px;
}

.traffic-map-error h3 {
    margin-bottom: 10px;
}

/* Responsive design - Tablet */
@media (max-width: 1024px) {
    .traffic-map-container {
        width: 100% !important;
        margin-right: 0 !important;
        height: 100% !important;
        min-height: 500px;
    }
    
    .traffic-map-container > div:not(.map-coach-mark):not(.traffic-ui) {
        min-height: 500px !important;
    }
    
    .traffic-map-container .mapboxgl-ctrl-top-right {
        right: 10px !important;
        top: 10px;
    }
}

/* Responsive design - Mobile */
@media (max-width: 768px) {
    .traffic-map-container {
        width: 100% !important;
        margin-right: 0 !important;
        height: 100vh !important;
        min-height: 400px;
    }
    
    .traffic-map-container > div:not(.map-coach-mark):not(.traffic-ui) {
        min-height: 400px !important;
    }
    
    .traffic-map-container .mapboxgl-ctrl-top-right {
        right: 10px !important;
        top: 10px;
    }
}

/* Ensure popups are always on top and visible */
.mapboxgl-popup {
    z-index: 9999 !important;
}

.traffic-map-popup {
    z-index: 9999 !important;
}

.traffic-map-popup .mapboxgl-popup-content {
    padding: 0;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(0,0,0,0.05);
}

.traffic-map-popup .mapboxgl-popup-tip {
    border-top-color: white;
}

.road-speeds-map-container {
  width: calc(100% - 80px) !important;
  height: 150% !important; /* שנה את הערך הזה כדי לשנות גובה - 150%, 180%, 200%, כו */
  position: relative;
  direction: ltr;
  min-height: 900px; /* גובה מינימום - שנה לפי הצורך */
  margin-right: 80px;
  overflow: visible;
  display: block !important;
  visibility: visible !important;
  background: transparent;
}

/* Fix for fullscreen mode */
.road-speeds-map-container:fullscreen,
.road-speeds-map-container:-webkit-full-screen,
.road-speeds-map-container:-moz-full-screen,
.road-speeds-map-container:-ms-fullscreen {
  width: 100% !important;
  height: 100% !important;
  margin-right: 0 !important;
  min-height: 0 !important;
  background: white; /* Or any background color appropriate for the app */
  z-index: 9999 !important;
}

/* המפה בפנים צריכה למלא את הקונטיינר */
/* Exclude map-coach-mark from this rule to prevent layout issues */
.road-speeds-map-container > div:not(.road-speeds-controls):not(.map-coach-mark) {
  height: 100% !important;
  width: 100% !important;
  min-height: 900px !important; /* אותו ערך כמו הקונטיינר */
  position: relative;
  z-index: 1; /* מתחת לקונטרולים אבל עדיין אינטראקטיבי */
  pointer-events: auto !important; /* וודא שאפשר ללחוץ על המפה */
}

/* Override min-height inheritance in fullscreen */
.road-speeds-map-container:fullscreen > div:not(.road-speeds-controls):not(.map-coach-mark),
.road-speeds-map-container:-webkit-full-screen > div:not(.road-speeds-controls):not(.map-coach-mark),
.road-speeds-map-container:-moz-full-screen > div:not(.road-speeds-controls):not(.map-coach-mark),
.road-speeds-map-container:-ms-fullscreen > div:not(.road-speeds-controls):not(.map-coach-mark) {
  min-height: 0 !important;
}

/* Coach Mark should not affect layout */
.road-speeds-map-container > .map-coach-mark {
  position: fixed !important;
  min-height: 0 !important;
  height: auto !important;
  width: auto !important;
}

/* Force Mapbox canvas to match container exactly */
.road-speeds-map-container .mapboxgl-canvas {
  height: 100% !important;
  width: 100% !important;
  pointer-events: auto !important; /* וודא שאפשר לעשות hover על המפה */
}

.road-speeds-map-container .mapboxgl-map {
  height: 100% !important;
  width: 100% !important;
  pointer-events: auto !important;
}

/* וודא שהקונטרולים לא חוסמים את כל המפה */
.road-speeds-controls {
  pointer-events: auto !important; /* הקונטרולים עצמם אינטראקטיביים */
}

.road-speeds-controls {
  position: absolute;
  bottom: 120px;
  left: 20px;
  background: white;
  padding: 12px 16px;
  border-radius: 8px;
  color: #333;
  z-index: 1000;
  min-width: 500px;
  max-width: calc(100% - 40px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  direction: ltr;
  unicode-bidi: embed;
}

/* Speed Legend Styles */
.speed-legend {
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e7eb;
}

.speed-legend-title {
  font-size: 13px;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 10px;
  text-align: right;
  direction: rtl;
}

.speed-legend-items {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  direction: rtl;
  justify-content: flex-end;
}

.speed-legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
  direction: rtl;
}

.speed-color-box {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  flex-shrink: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.speed-label {
  font-size: 12px;
  color: #4b5563;
  white-space: nowrap;
  direction: rtl;
  font-weight: 500;
}

.timeline-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.timeline-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.nav-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: white;
  color: #333;
  cursor: pointer;
  font-size: 13px;
  transition: all 0.2s ease;
  white-space: nowrap;
  overflow: visible; /* Ensure text is not clipped */
  min-width: fit-content; /* Allow button to expand for text */
}

.nav-btn:hover:not(:disabled) {
  background: #f5f5f5;
  border-color: #999;
}

.nav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  background: #f9f9f9;
}

.nav-btn.prev-btn {
  background: #007bff;
  color: white;
  border-color: #007bff;
  min-width: 120px; /* Ensure enough width for Hebrew text */
}

.nav-btn.prev-btn:hover:not(:disabled) {
  background: #0056b3;
  border-color: #0056b3;
}

.nav-btn.next-btn {
  background: #e9ecef;
  color: #333;
  min-width: 120px; /* Ensure enough width for Hebrew text */
}

.nav-btn.next-btn:hover:not(:disabled) {
  background: #dee2e6;
  border-color: #dbe2e8;
}

.nav-arrow {
  font-size: 16px;
  font-weight: bold;
  flex-shrink: 0; /* Prevent arrow from shrinking */
  display: inline-block;
}

.nav-text {
  font-size: 12px;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap;
  color: inherit; /* Inherit color from parent button */
  font-weight: 500;
  min-width: fit-content;
  position: relative;
  z-index: 1;
  direction: rtl; /* RTL for Hebrew text */
  text-align: right;
}

/* Ensure text is visible in prev button (white text) */
.nav-btn.prev-btn .nav-text {
  color: white !important;
}

/* Ensure text is visible in next button (dark text) */
.nav-btn.next-btn .nav-text {
  color: #333 !important;
}

.current-month-display {
  font-weight: 600;
  font-size: 16px;
  text-align: center;
  color: #000;
  flex: 1;
}

.timeline-slider-wrapper {
  position: relative;
  width: 100%;
  direction: ltr;
  display: flex;
  align-items: center;
  gap: 10px;
}

.play-pause-btn {
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.2s ease;
  white-space: nowrap;
  flex-shrink: 0;
}

.play-pause-btn:hover {
  background: linear-gradient(135deg, #5568d3 0%, #6a3d8f 100%);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.timeline-track {
  position: relative;
  flex: 1;
  height: 50px;
  direction: ltr;
}

.timeline-slider {
  width: 100%;
  height: 2px;
  border-radius: 1px;
  background: #ddd;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  position: absolute;
  top: 5px;
  left: 0;
  right: auto;
  z-index: 2;
  direction: ltr;
}

.timeline-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #007bff;
  cursor: pointer;
  border: 2px solid white;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  transition: all 0.2s ease;
}

.timeline-slider::-webkit-slider-thumb:hover {
  transform: scale(1.1);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
}

.timeline-slider::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #007bff;
  cursor: pointer;
  border: 2px solid white;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  transition: all 0.2s ease;
}

.timeline-slider::-moz-range-thumb:hover {
  transform: scale(1.1);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
}

.timeline-marks {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  pointer-events: none;
  direction: ltr !important;
  text-align: left;
  unicode-bidi: embed;
}

.timeline-mark {
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  pointer-events: all;
  transition: all 0.2s ease;
  direction: ltr !important;
  unicode-bidi: embed;
}

.mark-tick {
  width: 1px;
  height: 8px;
  background: #999;
  margin-bottom: 4px;
  margin-top: 15px;
  transition: all 0.2s ease;
}

.timeline-mark.active .mark-tick {
  background: #007bff;
  height: 12px;
  width: 2px;
}

.mark-label {
  font-size: 10px;
  color: #666;
  white-space: nowrap;
  margin-top: 2px;
  transition: all 0.2s ease;
  font-weight: 400;
  direction: ltr !important;
  unicode-bidi: embed;
  text-align: center;
  display: inline-block;
  transform: none;
}

.timeline-mark:hover .mark-label {
  color: #333;
  font-weight: 500;
}

.timeline-mark.active .mark-label {
  color: #007bff;
  font-weight: 600;
}

.year-label {
  font-size: 9px;
  color: #999;
  margin-top: 1px;
  font-weight: 400;
  direction: ltr;
  unicode-bidi: embed;
  text-align: center;
}

.error-message {
  padding: 20px;
  background: #f44336;
  color: white;
  border-radius: 5px;
  margin: 20px;
}

.error-message h3 {
  margin-top: 0;
}

/* Responsive design - Tablet */
@media (max-width: 1024px) {
  .road-speeds-map-container {
    width: 100% !important;
    margin-right: 0 !important;
    height: 100% !important;
    min-height: 600px;
  }
  
  .road-speeds-map-container > div:not(.road-speeds-controls):not(.map-coach-mark) {
    min-height: 600px !important;
  }
  
  .road-speeds-controls {
    min-width: 400px;
    max-width: calc(100% - 20px);
    left: 10px;
    bottom: 100px;
  }
  
  .speed-legend-items {
    gap: 10px;
  }
  
  .speed-legend-item {
    gap: 5px;
  }
  
  .speed-color-box {
    width: 18px;
    height: 18px;
  }
  
  .speed-label {
    font-size: 11px;
  }
}

/* Responsive design - Mobile */
@media (max-width: 768px) {
  .road-speeds-map-container {
    width: 100% !important;
    margin-right: 0 !important;
    height: 100vh !important;
    min-height: 500px;
  }
  
  .road-speeds-map-container > div:not(.road-speeds-controls):not(.map-coach-mark) {
    min-height: 500px !important;
  }
  
  .road-speeds-controls {
    position: fixed !important;
    bottom: 10px !important;
    left: 10px !important;
    right: 10px !important;
    min-width: auto !important;
    max-width: 100% !important;
    padding: 10px;
    z-index: 2000;
    max-height: 50vh;
    overflow-y: auto;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.3);
  }
  
  .speed-legend {
    margin-bottom: 12px;
    padding-bottom: 10px;
  }
  
  .speed-legend-title {
    font-size: 12px;
    margin-bottom: 8px;
  }
  
  .speed-legend-items {
    gap: 8px;
  }
  
  .speed-legend-item {
    gap: 4px;
  }
  
  .speed-color-box {
    width: 16px;
    height: 16px;
  }
  
  .speed-label {
    font-size: 10px;
  }
  
  .road-speeds-controls .dataset-switcher,
  .road-speeds-controls .time-period-switcher {
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-bottom: 8px !important;
  }
  
  .road-speeds-controls .dataset-switcher button,
  .road-speeds-controls .time-period-switcher button {
    font-size: 11px !important;
    padding: 5px 8px !important;
    flex: 1;
    min-width: 80px;
  }
  
  .timeline-container {
    gap: 8px;
  }
  
  .timeline-header {
    flex-wrap: wrap;
    gap: 8px;
  }
  
  .nav-btn {
    font-size: 11px;
    padding: 5px 8px;
    min-width: 80px;
  }
  
  .nav-text {
    font-size: 10px;
  }
  
  .current-month-display {
    font-size: 14px;
    width: 100%;
    text-align: center;
    order: -1;
    margin-bottom: 5px;
  }
  
  .timeline-slider-wrapper {
    padding: 10px 0 30px 0;
  }
  
  .play-pause-btn {
    width: 32px;
    height: 32px;
    font-size: 14px;
    padding: 6px;
  }
  
  .timeline-track {
    flex: 1;
  }
  
  .timeline-slider {
    height: 4px;
  }
  
  .timeline-slider::-webkit-slider-thumb {
    width: 18px;
    height: 18px;
  }
  
  .timeline-slider::-moz-range-thumb {
    width: 18px;
    height: 18px;
  }
  
  .mark-label {
    font-size: 9px;
  }
}

/* Responsive design - Small Mobile */
@media (max-width: 480px) {
  .road-speeds-controls {
    padding: 8px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    max-height: 45vh;
  }
  
  .road-speeds-controls .dataset-switcher button,
  .road-speeds-controls .time-period-switcher button {
    font-size: 10px !important;
    padding: 4px 6px !important;
    min-width: 70px;
  }
  
  .nav-btn {
    min-width: 70px;
    font-size: 10px;
    padding: 4px 6px;
  }
  
  .current-month-display {
    font-size: 12px;
  }
  
  .timeline-header {
    gap: 5px;
  }
  
  .timeline-container {
    gap: 6px;
  }
  
  .speed-legend {
    margin-bottom: 10px;
    padding-bottom: 8px;
  }
  
  .speed-legend-title {
    font-size: 11px;
    margin-bottom: 6px;
  }
  
  .speed-legend-items {
    gap: 6px;
  }
  
  .speed-legend-item {
    gap: 3px;
  }
  
  .speed-color-box {
    width: 14px;
    height: 14px;
  }
  
  .speed-label {
    font-size: 9px;
  }
}.traffic-count-entry-container {
    width: 100%;
    min-height: 100vh;
    padding: 80px 40px;
    padding-right: 100px; /* Make space for side navigation */
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    direction: rtl;
}

.traffic-count-entry-header {
    text-align: center;
    margin-bottom: 40px;
}

.traffic-count-entry-header h1 {
    font-size: 48px;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.traffic-count-top-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 30px;
    width: 100%;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.traffic-count-bottom-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    width: 100%;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.chart-card {
    background: white;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.chart-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.chart-card.map-card {
    min-height: 500px;
}

.chart-card h3 {
    font-size: 24px;
    font-weight: 600;
    color: #374151;
    margin: 0 0 20px 0;
    text-align: center;
    border-bottom: 2px solid #e5e7eb;
    padding-bottom: 15px;
}

.chart-wrapper.bar-chart {
    height: 400px;
    background: #fafafa;
    border-radius: 8px;
    padding: 20px;
    direction: ltr;
}

.minimap-legend {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 20px;
    padding: 15px;
    background: #f9fafb;
    border-radius: 8px;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 500;
    color: #374151;
}

.legend-color {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.minimap-container {
    width: 100%;
    height: 450px;
    border-radius: 8px;
    overflow: hidden;
    background: #f0f0f0;
    flex: 1;
    min-height: 450px;
}

.loading, .error {
    text-align: center;
    padding: 40px;
    font-size: 18px;
    color: #6b7280;
}

.error {
    color: #ef4444;
}

/* Responsive design */
@media (max-width: 1200px) {
    .traffic-count-top-row,
    .traffic-count-bottom-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .traffic-count-entry-container {
        padding: 40px 20px;
    }

    .traffic-count-entry-header h1 {
        font-size: 32px;
    }

    .chart-card h3 {
        font-size: 20px;
    }

    .chart-wrapper.bar-chart {
        height: 300px;
    }

    .minimap-container {
        height: 350px;
        min-height: 350px;
    }
}
.summary-cards-container {
    width: 100%;
    position: relative;
    direction: rtl;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    padding-top: 0; /* Align background to the absolute top */
    padding-bottom: 30vh;
    scroll-snap-type: y proximity;
}

/* Lottie Background Animation */
.summary-lottie-background {
    position: sticky; /* Sticky to stay fixed to viewport while container is in view */
    top: 0;
    left: 0;
    right: 0;
    width: 100vw;
    height: 100vh;
    z-index: 0;
    opacity: 0.15;
    pointer-events: none;
    margin-bottom: -100vh; /* Pull following content up to overlap the background */
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow: hidden;
}

.summary-lottie-background svg {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover; /* Cover the area while maintaining aspect ratio */
    transform: scale(0.6);
    transform-origin: center center;
    min-width: 100%;
    min-height: 100%;
}

/* Stretch on wider screens */
@media (min-width: 1600px) {
    .summary-lottie-background {
        width: 100vw;
        left: 0;
        right: 0;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    
    .summary-lottie-background svg {
        width: 100% !important;
        height: 100% !important;
        transform: scaleX(1.2) scaleY(0.7); /* Stretch horizontally, compress vertically */
        object-fit: fill; /* Fill the container to stretch horizontally */
    }
}

.summary-header {
    text-align: center;
    width: 100%;
    z-index: 10;
    padding-top: 100px; /* Move the header padding here instead of the container */
    margin-bottom: 80px;
    position: relative;
}

.summary-header h1 {
    font-size: 48px;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.summary-cards-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 150px; /* Space to allow disappearance before next reveal */
    width: 100%;
    position: relative;
    z-index: 1;
}

.summary-card {
    width: 100%;
    max-width: 800px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    box-sizing: border-box;
    opacity: 0;
    transform: translateY(50px) scale(0.9);
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    scroll-snap-align: center;
    pointer-events: auto;
}

.summary-card.visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/* Exit state: when card is no longer visible but was recently visible */
.summary-card:not(.visible) {
    opacity: 0;
    transform: translateY(-50px) scale(0.9); /* Moves up as it disappears */
}

.card-inner {
    background: white;
    border-radius: 24px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
    padding: 50px;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.summary-card.visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.summary-card.visible::before {
    opacity: 1;
}

.card-header {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 2px solid #e8ecf1;
}

.card-icon {
    font-size: 36px;
    line-height: 1;
    flex-shrink: 0;
}

.card-title-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.card-section {
    font-size: 14px;
    font-weight: 500;
    color: #667eea;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.card-title {
    font-size: 24px;
    font-weight: 600;
    color: #2c3e50;
    margin: 0;
}

.card-content {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.item-text {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin: 0;
    text-align: justify;
}

.item-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.item-list li {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 12px;
    padding-right: 20px;
    position: relative;
    text-align: justify;
}

.item-list li::before {
    content: '•';
    position: absolute;
    right: 0;
    color: #667eea;
    font-weight: bold;
    font-size: 20px;
}

.item-list li:last-child {
    margin-bottom: 0;
}

/* Responsive design */
@media (min-width: 1920px) {
    /* Wider screens - stretch horizontally */
    .summary-lottie-background {
        width: 100vw;
        left: 0;
        right: 0;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    
    .summary-lottie-background svg {
        width: 100% !important;
        height: 100% !important;
        transform: scaleX(1.4) scaleY(0.75); /* Stretch more horizontally */
        object-fit: fill; /* Fill to stretch */
    }
}

@media (min-width: 2560px) {
    /* Ultra-wide screens - maximum horizontal stretch */
    .summary-lottie-background {
        width: 100vw;
        left: 0;
        right: 0;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    
    .summary-lottie-background svg {
        width: 100% !important;
        height: 100% !important;
        transform: scaleX(1.6) scaleY(0.8); /* Maximum horizontal stretch */
        object-fit: fill; /* Fill to stretch */
    }
}

@media (max-width: 1200px) {
    .summary-cards-grid {
        max-width: 100%;
        padding: 0 20px;
    }
}

@media (max-width: 768px) {
    .summary-cards-container {
        padding: 40px 20px;
    }

    .summary-header h1 {
        font-size: 36px;
    }

    .summary-card {
        padding: 30px 20px;
    }

    .card-title {
        font-size: 24px;
    }

    .item-category {
        font-size: 18px;
    }

    .item-text,
    .item-list li {
        font-size: 14px;
    }
}

.naim-basofash-container {
    width: 100%;
    min-height: 100vh;
    padding: 80px 40px;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    direction: rtl;
}

.naim-basofash-header {
    text-align: center;
    margin-bottom: 40px;
}

.naim-basofash-header h1 {
    font-size: 48px;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.naim-basofash-chart {
    height: 600px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    padding: 20px;
}

/* Line 99 Section - Row 1 */
.line99-section {
    display: flex;
    margin-top: 30px;
    gap: 20px;
    height: 450px;
}

.naim-basofash-bottom-section {
    display: flex;
    margin-top: 30px;
    gap: 20px;
    height: 450px;
}

.line99-minimap-container {
    flex: 0 0 300px;
    background: white;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.minimap-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    text-align: center;
    color: #2c3e50;
    border-bottom: 2px solid #f0f0f0;
    padding-bottom: 10px;
}

.line99-minimap-container > div:last-child {
    flex: 1;
    min-height: 0;
    border-radius: 8px;
    overflow: hidden;
}

.map-container {
    flex: 0 0 66%;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    position: relative;
    background: white;
    min-width: 0;
}

.line-filter-menu {
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 10;
    background: white;
    padding: 12px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 150px;
    direction: rtl;
}

.filter-title {
    font-size: 14px;
    font-weight: bold;
    color: #2c3e50;
    margin-bottom: 4px;
}

.line-select {
    padding: 8px;
    border-radius: 6px;
    border: 1px solid #ddd;
    font-size: 14px;
    background-color: #f8f9fa;
    cursor: pointer;
    outline: none;
    transition: border-color 0.2s;
}

.line-select:focus {
    border-color: #3498db;
}

.clear-filter {
    background: #f1f2f6;
    border: none;
    padding: 6px;
    border-radius: 4px;
    font-size: 12px;
    color: #7f8c8d;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}

.clear-filter:hover {
    background: #e74c3c;
    color: white;
}

.top-lines-container {
    flex: 1;
    background: white;
    border-radius: 16px;
    padding: 20px;
    padding-right: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    min-width: 0;
}

@media (max-width: 768px) {
    .top-lines-container {
        padding-right: 20px;
    }
}

.bar-chart-container {
    flex: 1;
    background: white;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    min-width: 0;
}

/* In line99-section, bar chart should take more space */
.line99-section .bar-chart-container {
    flex: 1;
    min-width: 0;
}

.bar-chart-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    text-align: center;
    color: #2c3e50;
    border-bottom: 2px solid #f0f0f0;
    padding-bottom: 10px;
}

.bar-chart-wrapper {
    flex: 1;
    min-height: 0;
    height: 100%;
}

.bar-chart-wrapper svg {
    height: 100% !important;
}

.top-lines-title {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
    color: #2c3e50;
    border-bottom: 2px solid #f0f0f0;
    padding-bottom: 10px;
}

.top-lines-list {
    flex: 1;
    overflow-y: auto;
}

.top-line-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 10px;
    border-bottom: 1px solid #f5f5f5;
    transition: background-color 0.2s;
    border-radius: 8px;
}

.top-line-item:hover {
    background-color: #f9f9f9;
}

.top-line-item:last-child {
    border-bottom: none;
}

.top-line-rank {
    width: 32px;
    height: 32px;
    background: #e0e0e0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #555;
    margin-left: 15px;
    flex-shrink: 0;
}

.top-line-rank.rank-1 { background: #ffd700; color: #fff; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }
.top-line-rank.rank-2 { background: #c0c0c0; color: #fff; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }
.top-line-rank.rank-3 { background: #cd7f32; color: #fff; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }

.top-line-info {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.top-line-name {
    font-weight: 600;
    font-size: 16px;
    color: #2c3e50;
}

.top-line-value {
    font-size: 14px;
    color: #7f8c8d;
    margin-top: 4px;
}

.loading,
.error {
    text-align: center;
    font-size: 24px;
    color: #2c3e50;
    padding: 40px;
}

.error {
    color: #e74c3c;
}

/* Responsive design */
@media (max-width: 1200px) {
    .naim-basofash-chart {
        height: 500px;
    }
}

@media (max-width: 1400px) {
    .line99-section {
        flex-wrap: wrap;
        height: auto;
    }
    
    .bar-chart-container {
        flex: 0 0 100%;
        height: 400px;
        order: 1;
    }
    
    .line99-minimap-container {
        flex: 0 0 100%;
        height: 400px;
        order: 2;
        margin-top: 20px;
    }
    
    .naim-basofash-bottom-section {
        flex-wrap: wrap;
        height: auto;
    }
    
    .map-container {
        flex: 0 0 48%;
        height: 400px;
        order: 1;
    }
    
    .top-lines-container {
        flex: 0 0 48%;
        order: 2;
    }
}

@media (max-width: 900px) {
    .line99-section {
        flex-direction: column;
        height: auto;
    }
    
    .bar-chart-container {
        width: 100%;
        height: 400px;
        order: 1;
    }
    
    .line99-minimap-container {
        width: 100%;
        height: 400px;
        order: 2;
    }
    
    .naim-basofash-bottom-section {
        flex-direction: column;
        height: auto;
    }
    
    .map-container {
        width: 100%;
        height: 400px;
        order: 1;
    }
    
    .top-lines-container {
        width: 100%;
        order: 2;
    }
}

@media (max-width: 768px) {
    .naim-basofash-container {
        padding: 40px 20px;
    }

    .naim-basofash-header h1 {
        font-size: 36px;
    }

    .naim-basofash-chart {
        height: 400px;
        padding: 10px;
    }
    
    .line99-section {
        flex-direction: column !important;
        height: auto !important;
        margin-right: 0 !important;
        gap: 15px;
    }
    
    .bar-chart-container {
        width: 100% !important;
        flex: 0 0 auto !important;
        height: 350px !important;
        order: 1;
        min-width: 0;
    }
    
    .line99-minimap-container {
        width: 100% !important;
        flex: 0 0 auto !important;
        height: 350px !important;
        order: 2;
        margin-top: 0 !important;
        min-width: 0;
    }
    
    .naim-basofash-bottom-section {
        flex-direction: column !important;
        height: auto !important;
        gap: 15px;
    }
    
    .map-container {
        width: 100% !important;
        flex: 0 0 auto !important;
        height: 400px !important;
        order: 1;
        min-width: 0;
    }
    
    .top-lines-container {
        width: 100% !important;
        flex: 0 0 auto !important;
        order: 2;
        min-width: 0;
        padding-right: 20px;
    }
    
    .bar-chart-wrapper {
        height: 100% !important;
    }
    
    .minimap-title,
    .bar-chart-title {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .naim-basofash-container {
        padding: 30px 15px;
    }
    
    .naim-basofash-header h1 {
        font-size: 28px;
    }
    
    .line99-section,
    .naim-basofash-bottom-section {
        gap: 10px;
    }
    
    .bar-chart-container,
    .line99-minimap-container {
        height: 300px !important;
        padding: 15px;
    }
    
    .map-container {
        height: 350px !important;
    }
    
    .minimap-title,
    .bar-chart-title {
        font-size: 14px;
        margin-bottom: 10px;
    }
    
    .top-lines-title {
        font-size: 18px;
    }
    
    .top-line-name {
        font-size: 14px;
    }
    
    .top-line-value {
        font-size: 12px;
    }
}
.transit-statistics-container {
    width: 100%;
    min-height: 100vh;
    padding: 30px 40px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #334155 100%);
    direction: rtl;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
}

.transit-statistics-header {
    text-align: center;
    margin-bottom: 30px;
}

.transit-statistics-header h2 {
    font-size: 2rem;
    font-weight: 700;
    color: #f8fafc;
    margin-bottom: 8px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.transit-statistics-header p {
    font-size: 1rem;
    color: #94a3b8;
    margin: 0;
}

.charts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 20px;
    box-sizing: border-box;
}

.chart-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 12px;
    padding: 15px 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
}

.chart-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.3);
}

.chart-card.wide {
    grid-column: span 2;
}

.chart-card h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 10px 0;
    text-align: center;
}

.chart-subtitle {
    font-size: 0.8rem;
    color: #64748b;
    text-align: center;
    margin: 0 0 10px 0;
}

.chart-subtitle.fictitious-notice {
    color: #f59e0b;
    font-style: italic;
}

.chart-wrapper {
    width: 100%;
    direction: ltr;
    flex: 1;
}

.chart-wrapper.pie-chart {
    height: 280px;
    min-height: 280px;
}

.chart-wrapper.bar-chart {
    height: 280px;
    min-height: 280px;
}

.chart-totals {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #e2e8f0;
}

.total-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

.total-label {
    font-size: 0.9rem;
    color: #64748b;
    font-weight: 500;
}

.total-value {
    font-size: 1.4rem;
    font-weight: 700;
    color: #1e293b;
}

.loading-spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 1.5rem;
    color: #f8fafc;
}

.error-message {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 1.5rem;
    color: #ef4444;
}

/* Responsive adjustments - Tablet */
@media (max-width: 1024px) {
    .charts-grid {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 0 10px;
    }
    
    .chart-card.wide {
        grid-column: span 1;
    }
    
    .chart-card {
        padding: 15px;
    }
    
    .chart-wrapper.pie-chart,
    .chart-wrapper.bar-chart {
        height: 300px;
        min-height: 300px;
    }
}

/* Responsive adjustments - Mobile */
@media (max-width: 768px) {
    .charts-grid {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 0;
    }
    
    .transit-statistics-container {
        padding: 20px 10px;
    }
    
    .transit-statistics-header {
        margin-bottom: 20px;
    }
    
    .transit-statistics-header h2 {
        font-size: 1.5rem;
    }
    
    .transit-statistics-header p {
        font-size: 0.9rem;
    }
    
    .chart-card {
        padding: 12px;
    }
    
    .chart-card h3 {
        font-size: 1rem;
        margin-bottom: 8px;
    }
    
    .chart-wrapper.pie-chart {
        height: 250px;
        min-height: 250px;
    }
    
    .chart-wrapper.bar-chart {
        height: 250px;
        min-height: 250px;
    }
}

/* Responsive adjustments - Small Mobile */
@media (max-width: 480px) {
    .transit-statistics-container {
        padding: 15px 5px;
    }
    
    .transit-statistics-header h2 {
        font-size: 1.3rem;
    }
    
    .transit-statistics-header p {
        font-size: 0.85rem;
    }
    
    .chart-card {
        padding: 10px;
    }
    
    .chart-card h3 {
        font-size: 0.9rem;
    }
    
    .chart-wrapper.pie-chart {
        height: 220px;
        min-height: 220px;
    }
    
    .chart-wrapper.bar-chart {
        height: 220px;
        min-height: 220px;
    }
}

.micro-mobility-container {
    width: 100%;
    min-height: 100vh;
    padding: 30px 40px;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    direction: rtl;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
}

.micro-mobility-header {
    text-align: center;
    margin-bottom: 30px;
}

.micro-mobility-header h2 {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 8px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.micro-mobility-header p {
    font-size: 1rem;
    color: #64748b;
    margin: 0;
}

.charts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 20px;
    box-sizing: border-box;
}

.first-chart-row {
    grid-column: span 2;
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 20px;
    margin-bottom: 20px;
}

.chart-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
}

.chart-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
}

.chart-card.wide {
    grid-column: span 2;
}

.chart-card h3 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0 0 15px 0;
    text-align: center;
}
.chart-card h2 {
    font-size: 1.1rem;
    font-weight: 400;
    color: #2c3e50;
    margin: 0 0 15px 0;
    text-align: center;
}

.chart-wrapper {
    width: 100%;
    direction: ltr;
    flex: 1;
}

.chart-wrapper.bar-chart {
    height: 400px;
    min-height: 400px;
}

.loading-spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 1.5rem;
    color: #2c3e50;
}

.error-message {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 200px;
    font-size: 1.2rem;
    color: #e74c3c;
    text-align: center;
}

.data-points-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    margin-right: 20px;
}

.data-points-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
}

.data-points-card h3 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0 0 20px 0;
    text-align: center;
}
.data-points-card h2 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0 0 20px 0;
    text-align: center;
}

.data-points-list {
    flex: 1;
    overflow-y: auto;
}

.data-points-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.data-points-list li {
    padding: 12px 0;
    border-bottom: 1px solid #e8ecf1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.data-points-list li:last-child {
    border-bottom: none;
}

.data-points-list .street-name {
    font-weight: 600;
    color: #2c3e50;
    font-size: 1rem;
}

.data-points-list .intersection {
    color: #64748b;
    font-size: 0.9rem;
    padding-right: 12px;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .charts-grid {
        grid-template-columns: 1fr;
    }
    
    .chart-card.wide {
        grid-column: span 1;
    }
    
    .first-chart-row {
        grid-column: span 1;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .micro-mobility-container {
        padding: 20px 15px;
    }
    
    .micro-mobility-header h2 {
        font-size: 1.5rem;
    }
    
    .chart-wrapper.bar-chart {
        height: 300px;
        min-height: 300px;
    }
    
    .chart-card {
        padding: 15px;
    }
    
    .data-points-card {
        padding: 15px;
    }
    
    .data-points-card h3 {
        font-size: 1.1rem;
    }
    
    .data-points-list .street-name {
        font-size: 0.9rem;
    }
    
    .data-points-list .intersection {
        font-size: 0.85rem;
    }
}

.road-safety-container {
    padding: 60px 40px;
    padding-right: 120px; /* Make space for side navigation */
    background: #f8f9fa;
    min-height: 100vh;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    direction: rtl;
    width: 100%;
    box-sizing: border-box;
}

.rs-title {
    text-align: center;
    color: #2c3e50;
    margin-bottom: 50px;
    font-size: 2.5rem;
    font-weight: 700;
}

/* Stats Grid for Cards */
.rs-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 20px;
    max-width: 1400px;
    margin: 0 auto 40px auto;
    width: 100%;
}

.rs-stats-grid.rs-insights {
    margin-bottom: 60px;
}

/* Stat Card Styling */
.rs-stat-card {
    background: white;
    padding: 25px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    height: 100%;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.rs-stat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}

.rs-stat-content {
    flex: 1;
    z-index: 1;
}

.rs-stat-content h3 {
    margin: 0 0 5px 0;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.2;
}

.rs-stat-content p {
    margin: 0;
    color: #7f8c8d;
    font-size: 0.95rem;
    font-weight: 600;
}

.rs-stat-subtext {
    display: block;
    margin-top: 8px;
    font-size: 0.85rem;
    color: #95a5a6;
}

.rs-stat-icon {
    font-size: 2.5rem;
    opacity: 0.2;
    position: absolute;
    left: 20px;
    bottom: 15px;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.rs-stat-card:hover .rs-stat-icon {
    opacity: 0.4;
    transform: scale(1.1);
}

/* Charts Grid */
.rs-charts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    max-width: 1400px;
    margin: 0 auto;
    width: 100%;
}

.rs-chart-card {
    background: white;
    padding: 30px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s ease;
    width: 100%;
    box-sizing: border-box;
    height: 100%;
    min-height: 500px; /* Ensure consistent height */
}

.rs-chart-card:hover {
    transform: translateY(-5px);
}

.rs-chart-card.rs-wide {
    grid-column: 1 / -1;
}

.rs-chart-card h3 {
    margin-top: 0;
    margin-bottom: 25px;
    color: #34495e;
    font-size: 1.4rem;
    border-bottom: 2px solid #3498db;
    padding-bottom: 15px;
    width: 100%;
    text-align: center;
}

.rs-chart-wrapper {
    width: 100%;
    height: 450px;
    direction: ltr; /* Ensure charts render correctly */
    flex: 1; /* Take remaining space */
}

/* List Styling */
.rs-list-wrapper {
    width: 100%;
    flex: 1;
    overflow-y: auto;
}

.rs-risk-list {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}

.rs-risk-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 10px;
    border-bottom: 1px solid #ecf0f1;
    transition: background-color 0.2s;
}

.rs-risk-item:last-child {
    border-bottom: none;
}

.rs-risk-item:hover {
    background-color: #f8f9fa;
}

.rs-risk-name {
    font-weight: 600;
    color: #2c3e50;
    font-size: 1.1rem;
}

.rs-risk-count {
    background-color: #ffebee;
    color: #c0392b;
    padding: 4px 12px;
    border-radius: 20px;
    font-weight: 700;
    font-size: 0.9rem;
}

.rs-loading, .rs-error {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 1.5rem;
    color: #666;
}

@media (max-width: 1024px) {
    .rs-charts-grid {
        grid-template-columns: 1fr;
    }
    
    .rs-chart-card.rs-wide {
        grid-column: span 1;
    }
    
    .road-safety-container {
        padding-right: 40px; /* Reduce padding on smaller screens */
    }
}

@media (max-width: 768px) {
    .rs-stats-grid {
        grid-template-columns: 1fr;
    }
    
    .rs-title {
        font-size: 2rem;
    }
    
    .road-safety-container {
        padding: 40px 20px;
    }
}
.side-navigation {
    position: fixed;
    right: 0;
    /* Move to right */
    top: 0;
    height: 100vh;
    width: 80px;
    /* Collapsed width */
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 10px;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.8);
    pointer-events: auto;
    /* Capture mouse events for hover and scrolling */
    transition: width 0.3s ease;
    /* Smooth expansion on hover */
    overflow: visible;
    /* Allow wheel events to pass through */
}

.side-navigation:hover {
    width: 220px;
    /* Expanded width (when NOT collapsed) */
    background: rgba(0, 0, 0, 0.8);
}

.nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
    border-right: 2px solid rgba(255, 255, 255, 0.2);
    /* Changed to right border */
}

.nav-item {
    position: relative;
    margin: 0;
    height: 50px;
    /* Fixed height for consistency */
    display: flex;
    align-items: center;
}

.nav-link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    /* Start from right (RTL) */
    width: 100%;
    height: 100%;
    /* Center icon in collapsed state (80px) */
    padding-right: 25px;
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    direction: rtl;
    white-space: nowrap;
}

.nav-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
}

.nav-text {
    margin-right: 15px;
    font-size: 17px;
    font-family: Arial, sans-serif;
    display: none !important;
    /* Completely hide text when collapsed */
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* Show text only when sidebar is expanded (hovered) */
.side-navigation:hover .nav-text {
    display: inline-block !important;
    opacity: 1;
}

.nav-link:hover {
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.05);
}

.nav-link.active {
    color: #0066CC;
    font-weight: 600;
    background: rgba(0, 102, 204, 0.1);
    border-right: 3px solid #0066CC;
    margin-right: -2px;
}

/* Stroke removed from active text */

/* Active indicator line */
.nav-item::before {
    content: '';
    position: absolute;
    right: -2px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: transparent;
    transition: background 0.3s ease;
}

.nav-item.active::before {
    background: #0066CC;
}

/* Hover effect for icon */
.nav-link:hover .nav-icon {
    transform: scale(1.1);
    color: #fff;
}

.nav-link.active .nav-icon {
    color: #0066CC;
}

/* Emphasize public transport icon specifically */
.nav-icon-transport {
    color: #FFD54F; /* warm yellow */
    transform: scale(1.2);
    filter: drop-shadow(0 0 6px rgba(255, 213, 79, 0.9));
}

.nav-link.active .nav-icon-transport {
    color: #FFEB3B; /* brighter when active */
    transform: scale(1.3);
    filter: drop-shadow(0 0 10px rgba(255, 235, 59, 1));
}.skeleton-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow-y: auto;
    background: #f5f7fa;
    z-index: 10000;
    direction: rtl;
    opacity: 1;
    transition: opacity 0.3s ease-in-out;
}

.skeleton-screen.fade-out {
    opacity: 0;
    pointer-events: none;
}

/* Skeleton Shimmer Animation */
@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.skeleton-base {
    background: linear-gradient(
        90deg,
        #f0f0f0 0px,
        #e0e0e0 40px,
        #f0f0f0 80px
    );
    background-size: 1000px 100%;
    animation: shimmer 2s infinite;
    border-radius: 4px;
}

/* Section Styles */
.skeleton-section {
    min-height: 100vh;
    padding: 80px 40px;
    margin-bottom: 20px;
}

.skeleton-section:nth-child(even) {
    background: #ffffff;
}

.skeleton-section:nth-child(odd) {
    background: #f5f7fa;
}

/* Intro Section */
.skeleton-intro {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    position: relative;
}

.skeleton-intro-content {
    width: 100%;
    height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
}

.skeleton-logo {
    position: absolute;
    left: 65%;
    top: 45%;
    transform: translate(-50%, -50%);
    width: 30%;
    max-width: 1200px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    shape-outside: circle();
    clip-path: circle(50% at 50% 50%);
}

.skeleton-title-large {
    position: absolute;
    left: 45%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 33%;
    max-width: 500px;
    height: 60px;
    border-radius: 8px;
}

/* Header */
.skeleton-header {
    text-align: center;
    margin-bottom: 60px;
}

.skeleton-title {
    width: 300px;
    height: 48px;
    margin: 0 auto;
    border-radius: 8px;
}

/* Cards Grid */
.skeleton-cards-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.skeleton-card {
    width: 100%;
    max-width: 800px;
    padding: 50px;
    background: white;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.skeleton-card-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #e8ecf1;
}

.skeleton-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    flex-shrink: 0;
}

.skeleton-card-title {
    flex: 1;
    height: 32px;
    border-radius: 4px;
}

.skeleton-card-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.skeleton-line {
    height: 20px;
    border-radius: 4px;
}

.skeleton-line.short {
    width: 60%;
}

/* Charts Grid */
.skeleton-charts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
}

.skeleton-chart {
    background: white;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.skeleton-bar-chart {
    height: 400px;
    display: flex;
    align-items: flex-end;
    justify-content: space-around;
    gap: 15px;
    padding: 20px 40px;
}

.skeleton-bar {
    flex: 1;
    max-width: 60px;
    background: linear-gradient(
        90deg,
        #f0f0f0 0px,
        #e0e0e0 40px,
        #f0f0f0 80px
    );
    background-size: 1000px 100%;
    animation: shimmer 2s infinite;
    border-radius: 4px 4px 0 0;
}

.skeleton-pie-chart {
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.skeleton-pie-circle {
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: linear-gradient(
        90deg,
        #f0f0f0 0px,
        #e0e0e0 40px,
        #f0f0f0 80px
    );
    background-size: 1000px 100%;
    animation: shimmer 2s infinite;
}

/* Map Skeleton */
.skeleton-map {
    width: 100%;
    height: 600px;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.skeleton-map::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        45deg,
        #e0e0e0 25%,
        transparent 25%,
        transparent 75%,
        #e0e0e0 75%,
        #e0e0e0
    );
    background-size: 40px 40px;
    animation: shimmer 3s infinite;
}

/* Content Skeleton */
.skeleton-content {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Apply skeleton base to all elements */
.skeleton-logo,
.skeleton-title-large,
.skeleton-title,
.skeleton-icon,
.skeleton-card-title,
.skeleton-line,
.skeleton-chart,
.skeleton-map {
    background: linear-gradient(
        90deg,
        #f0f0f0 0px,
        #e0e0e0 40px,
        #f0f0f0 80px
    );
    background-size: 1000px 100%;
    animation: shimmer 2s infinite;
    border-radius: 4px;
}


/* Responsive Design */
@media (max-width: 1200px) {
    .skeleton-charts-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .skeleton-section {
        padding: 40px 20px;
    }
    
    .skeleton-logo {
        width: 200px;
        height: 200px;
    }
    
    .skeleton-title-large {
        width: 250px;
        height: 40px;
    }
    
    .skeleton-title {
        width: 200px;
        height: 36px;
    }
    
    .skeleton-card {
        padding: 30px 20px;
    }
    
    .skeleton-chart {
        height: 300px;
    }
    
    .skeleton-map {
        height: 400px;
    }
}

/* Scrollable page with multiple components */
.page-container {
    width: 100%;
    transition: opacity 0.5s ease-in-out;
}

/* Hide page content when skeleton is visible */
.page-container.hidden {
    opacity: 0;
    pointer-events: none;
}

.component-section {
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    scroll-snap-align: start;
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Animation for sections when they become visible */
.component-section.section-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Intro section is visible from start */
.intro-section {
    opacity: 1 !important;
    transform: translateY(0) !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* First content section (map) - starts visible but can be animated */
.component-section#section-1,
.component-section#section-3 {
    opacity: 1 !important; /* Always visible */
    transform: translateY(0) !important;
    transition: opacity 0.8s ease, transform 0.8s ease;
    pointer-events: auto; /* Allow interactions */
    visibility: visible !important; /* Ensure it's visible */
}


.component-section:nth-child(even) {
    background: #f5f5f5;
}

.component-section:nth-child(odd) {
    background: #ffffff;
}

.section-header {
    padding: 40px 20px;
    text-align: center;
    background: rgba(0, 102, 204, 0.1);
    border-bottom: 2px solid #0066CC;
    opacity: 0;
    transform: translateY(-20px);
    transition: opacity 0.6s ease 0.2s, transform 0.6s ease 0.2s;
}

.component-section.section-visible .section-header {
    opacity: 1;
    transform: translateY(0);
}

/* Map sections headers should always be visible since sections are always visible */
.component-section#section-1 .section-header,
.component-section#section-3 .section-header {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.section-header h2 {
    margin: 0;
    color: #0066CC;
    font-size: 32px;
    font-family: Arial, sans-serif;
}

.section-header p {
    margin-top: 15px;
    font-size: 18px;
    color: #555;
    direction: rtl;
    max-width: 800px;
    margin: 15px auto 0;
    line-height: 1.6;
    font-family: Arial, sans-serif;
}

.section-content {
    flex: 1;
    position: relative;
    min-height: calc(100vh - 100px);
    height: calc(100vh - 100px);
    overflow: visible; /* Allow map to extend beyond container */
    display: flex !important; /* Ensure it's displayed */
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease 0.3s, transform 0.8s ease 0.3s;
}

/* Map section content is always visible IMMEDIATELY - prevent hiding and delays */
.component-section#section-1 .section-content,
.component-section#section-3 .section-content {
    opacity: 1 !important;
    transform: translateY(0) !important;
    visibility: visible !important;
    display: flex !important;
    transition: none !important; /* Remove transition delays for immediate visibility */
}

/* Other sections animate when they become visible */
.component-section.section-visible .section-content {
    opacity: 1;
    transform: translateY(0);
}

/* Map container specific styles - overridden by TrafficMap.css */

/* Navigation dots removed - replaced by SideNavigation */
.page-navigation {
    display: none;
}

/* Scroll indicator */
.scroll-indicator {
    position: absolute;
    bottom: 50px;
    right: 50%; /* Center */
    transform: translateX(50%);
    text-align: center;
    color: #0066CC !important; /* Consistent blue color */
    font-size: 48px;
    font-weight: bold;
    text-shadow: 2px 2px 8px rgba(0,0,0,0.6), 0 0 10px rgba(0,102,204,0.4);
    animation: bounce 2s infinite;
    z-index: 100;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.5s ease;
}

.scroll-indicator:hover {
    transform: translateX(50%) scale(1.2);
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

/* Transit Statistics section */
#section-transit-stats {
    min-height: 100vh;
}

#section-transit-stats .section-content {
    min-height: 100vh;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Placeholder sections */
.placeholder-section {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: 24px;
}

/* Intro section styles */
.intro-content {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px;
}

.intro-text {
    max-width: 800px;
}

.intro-text h1 {
    font-size: 48px;
    margin-bottom: 20px;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}

.intro-text p {
    font-size: 24px;
    margin-bottom: 40px;
    opacity: 0.9;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: scroll; /* Always show scrollbar */
    font-family: Arial, sans-serif;
}

body {
    scroll-behavior: smooth;
}

/* Force scrollbar to always be visible */
::-webkit-scrollbar {
    width: 12px;
    background-color: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 6px;
}

::-webkit-scrollbar-thumb:hover {
    background-color: #555;
}

/* For Firefox */
html {
    scrollbar-width: thin;
    scrollbar-color: #888 #f1f1f1;
}

#root {
    width: 100%;
    height: 100%;
}

