.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{position:absolute;left:0;top:0}.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.mapboxgl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top{top:0;left:50%;transform:translateX(-50%)}.mapboxgl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-right{top:50%;transform:translateY(-50%);right:0}.mapboxgl-ctrl-bottom-right{right:0;bottom:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translateX(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{top:50%;transform:translateY(-50%);left:0}.mapboxgl-ctrl{clear:both;pointer-events:auto}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px;float:left}.mapboxgl-ctrl-top .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0;float:right}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{margin:0 10px 10px 0;float:right}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{margin:0 0 10px 10px;float:left}.mapboxgl-ctrl-group{border-radius:4px;background:#fff}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{width:32px;height:32px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:initial;cursor:pointer;overflow:hidden}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#eee}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 11.7071C4.68342 12.0976 5.31658 12.0976 5.70711 11.7071L9 8.41421L12.2929 11.7071C12.6834 12.0976 13.3166 12.0976 13.7071 11.7071C14.0976 11.3166 14.0976 10.6834 13.7071 10.2929L9.70711 6.29289C9.31658 5.90237 8.68342 5.90237 8.29289 6.29289L4.29289 10.2929C3.90237 10.6834 3.90237 11.3166 4.29289 11.7071Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-down .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 6.29289C4.68342 5.90237 5.31658 5.90237 5.70711 6.29289L9 9.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L9.70711 11.7071C9.31658 12.0976 8.68342 12.0976 8.29289 11.7071L4.29289 7.70711C3.90237 7.31658 3.90237 6.68342 4.29289 6.29289Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{padding:0 5px;background-color:#ffffff80;margin:0}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px;box-sizing:initial}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left)>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%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");background-color:#ffffff80;width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left) .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%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 (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%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")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box;white-space:nowrap}.mapboxgl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{width:0;height:0;border:10px solid #0000;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}.mapboxgl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:initial}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{position:absolute;top:0;left:0;will-change:transform;opacity:1;transition:opacity .2s}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.mapboxgl-user-location-dot:before{content:"";position:absolute;animation:mapboxgl-user-location-dot-pulse 2s infinite}.mapboxgl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px #00000059}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{width:0;height:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{content:"";border-bottom:7.5px solid #4aa1eb;position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;justify-content:center;text-align:center;position:absolute;display:flex;align-items:center;top:0;left:0;width:100%;height:100%;background:#000000b3;opacity:0;pointer-events:none;transition:opacity .75s ease-in-out;transition-delay:1s}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{font-weight:600;font-size:14px;text-align:center}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#bccbd7;color:#000}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{position:absolute;left:0;top:0}.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.mapboxgl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top{top:0;left:50%;transform:translateX(-50%)}.mapboxgl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-right{top:50%;transform:translateY(-50%);right:0}.mapboxgl-ctrl-bottom-right{right:0;bottom:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translateX(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{top:50%;transform:translateY(-50%);left:0}.mapboxgl-ctrl{clear:both;pointer-events:auto}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px;float:left}.mapboxgl-ctrl-top .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0;float:right}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{margin:0 10px 10px 0;float:right}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{margin:0 0 10px 10px;float:left}.mapboxgl-ctrl-group{border-radius:4px;background:#fff}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{width:32px;height:32px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:initial;cursor:pointer;overflow:hidden}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#eee}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' 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-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 11.7071C4.68342 12.0976 5.31658 12.0976 5.70711 11.7071L9 8.41421L12.2929 11.7071C12.6834 12.0976 13.3166 12.0976 13.7071 11.7071C14.0976 11.3166 14.0976 10.6834 13.7071 10.2929L9.70711 6.29289C9.31658 5.90237 8.68342 5.90237 8.29289 6.29289L4.29289 10.2929C3.90237 10.6834 3.90237 11.3166 4.29289 11.7071Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-down .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 6.29289C4.68342 5.90237 5.31658 5.90237 5.70711 6.29289L9 9.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L9.70711 11.7071C9.31658 12.0976 8.68342 12.0976 8.29289 11.7071L4.29289 7.70711C3.90237 7.31658 3.90237 6.68342 4.29289 6.29289Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%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-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{padding:0 5px;background-color:#ffffff80;margin:0}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px;box-sizing:initial}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left)>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%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");background-color:#ffffff80;width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left) .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%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 (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%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")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box;white-space:nowrap}.mapboxgl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{width:0;height:0;border:10px solid #0000;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}.mapboxgl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:initial}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{position:absolute;top:0;left:0;will-change:transform;opacity:1;transition:opacity .2s}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.mapboxgl-user-location-dot:before{content:"";position:absolute;animation:mapboxgl-user-location-dot-pulse 2s infinite}.mapboxgl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px #00000059}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{width:0;height:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{content:"";border-bottom:7.5px solid #4aa1eb;position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;justify-content:center;text-align:center;position:absolute;display:flex;align-items:center;top:0;left:0;width:100%;height:100%;background:#000000b3;opacity:0;pointer-events:none;transition:opacity .75s ease-in-out;transition-delay:1s}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{font-weight:600;font-size:14px;text-align:center}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#bccbd7;color:#000}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}

:root {
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --bg: #09161c;
  --bg-deep: #040b0f;
  --bg-raised: #102129;
  --panel: rgba(16, 34, 41, 0.8);
  --panel-strong: rgba(12, 27, 34, 0.95);
  --panel-soft: rgba(30, 48, 51, 0.58);
  --glass-border: rgba(222, 164, 107, 0.22);
  --glass-highlight: rgba(255, 236, 210, 0.055);
  --text: #f5ead8;
  --text-soft: #d4c9b9;
  --muted: #9caaa7;
  --muted-strong: #b8c1bb;
  --blue: #75aaf5;
  --blue-strong: #3e7fc4;
  --sage: #a4c979;
  --green: #85b36a;
  --amber: #e3b24d;
  --copper: #dc7a4a;
  --red: #cf6449;
  --paper: #f4f0e7;
  --paper-ink: #172126;
  --shadow-lg: 0 28px 80px rgba(0, 0, 0, 0.38);
  --shadow-md: 0 12px 34px rgba(0, 0, 0, 0.28);
  --radius-lg: 18px;
  --radius-md: 13px;
  --radius-sm: 9px;
  background: var(--bg);
  color: var(--text);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* {
  box-sizing: border-box;
}

html,
body,
#root {
  width: 100%;
  min-width: 320px;
  height: 100%;
  margin: 0;
}

body {
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(136, 66, 39, 0.11), transparent 38%),
    radial-gradient(circle at 78% 20%, rgba(170, 104, 58, 0.08), transparent 30%),
    var(--bg-deep);
}

body::before {
  position: fixed;
  inset: 0;
  z-index: -1;
  content: "";
  pointer-events: none;
  opacity: 0.25;
  background-image:
    repeating-radial-gradient(ellipse at 20% 70%, transparent 0 22px, rgba(220, 160, 104, 0.06) 23px 24px, transparent 25px 36px),
    repeating-radial-gradient(ellipse at 80% 15%, transparent 0 34px, rgba(195, 116, 70, 0.04) 35px 36px, transparent 37px 48px);
}

button,
input,
select,
textarea {
  font: inherit;
}

button,
select {
  color: inherit;
}

button {
  border: 0;
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  opacity: 0.52;
}

button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 2px;
}

h1,
h2,
h3,
h4,
p {
  margin-top: 0;
}

svg {
  flex: 0 0 auto;
  stroke-width: 1.8;
}

.glass-panel {
  border: 1px solid var(--glass-border);
  border-radius: var(--radius-md);
  background:
    linear-gradient(135deg, var(--glass-highlight), transparent 38%),
    var(--panel);
  box-shadow: var(--shadow-md), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(18px) saturate(118%);
  -webkit-backdrop-filter: blur(18px) saturate(118%);
}

.button {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  font-size: 13px;
  font-weight: 680;
  line-height: 1;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease, transform 160ms ease;
}

.button svg {
  width: 17px;
  height: 17px;
}

.button:hover:not(:disabled) {
  transform: translateY(-1px);
}

.button.primary {
  color: #f8fbff;
  border-color: rgba(122, 174, 255, 0.68);
  background: linear-gradient(180deg, #4a8fdc, #2d6eb9);
  box-shadow: 0 8px 22px rgba(31, 105, 180, 0.25), inset 0 1px 0 rgba(255,255,255,0.2);
}

.button.primary.copper {
  border-color: rgba(225, 150, 88, 0.65);
  background: linear-gradient(180deg, #a95c32, #7f3f25);
  box-shadow: 0 8px 22px rgba(113, 54, 28, 0.28), inset 0 1px 0 rgba(255,255,255,0.15);
}

.button.secondary {
  color: var(--text);
  border-color: var(--glass-border);
  background: rgba(255, 255, 255, 0.035);
}

.button.secondary:hover:not(:disabled) {
  border-color: rgba(126, 174, 190, 0.38);
  background: rgba(120, 170, 188, 0.09);
}

.button.text {
  min-height: 34px;
  padding-inline: 8px;
  color: var(--blue);
  background: transparent;
}

.button.danger {
  color: #fff4ed;
  border-color: rgba(222, 111, 85, 0.6);
  background: rgba(151, 59, 41, 0.68);
}

.icon-button {
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 50%;
  display: inline-grid;
  place-items: center;
  color: var(--text-soft);
  background: transparent;
}

.icon-button:hover {
  border-color: var(--glass-border);
  color: var(--text);
  background: rgba(255,255,255,0.045);
}

.icon-button svg {
  width: 19px;
}

.icon-button.subtle {
  width: 32px;
  height: 32px;
}

.app-shell {
  height: 100%;
  min-height: 0;
  overflow: hidden;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
}

.sidebar {
  position: relative;
  z-index: 30;
  min-width: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(192, 218, 222, 0.16);
  background:
    linear-gradient(180deg, rgba(8, 24, 31, 0.97), rgba(5, 15, 20, 0.98)),
    var(--bg);
  box-shadow: 12px 0 42px rgba(0,0,0,0.2);
}

.brand {
  min-height: 82px;
  padding: 0 17px;
  display: flex;
  align-items: center;
  gap: 11px;
  border-bottom: 1px solid rgba(192, 218, 222, 0.12);
}

.brand-mark {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: #e6a16e;
  border: 1px solid rgba(226, 146, 88, 0.35);
  border-radius: 11px;
  background: rgba(216, 198, 155, 0.06);
}

.brand-mark svg {
  width: 25px;
}

.brand > span:nth-child(2) {
  min-width: 0;
  display: grid;
}

.brand b {
  font-size: 16px;
  letter-spacing: 0.015em;
}

.brand small {
  margin-top: 2px;
  color: #d6a16f;
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.sidebar-close {
  display: none;
}

.primary-nav {
  padding: 13px 9px;
  display: grid;
  gap: 4px;
  overflow-y: auto;
}

.nav-item {
  position: relative;
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 9px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  color: #aebdc0;
  background: transparent;
  font-size: 13px;
  text-align: left;
}

.nav-item svg {
  width: 19px;
  height: 19px;
}

.nav-item:hover {
  color: var(--text);
  background: rgba(255,255,255,0.035);
}

.nav-item.selected {
  color: #f6f1e8;
  border-color: rgba(224, 127, 75, 0.32);
  background: linear-gradient(90deg, rgba(158, 75, 43, 0.3), rgba(76, 111, 83, 0.13));
  box-shadow: inset 3px 0 0 var(--copper);
}

.nav-count {
  min-width: 23px;
  height: 21px;
  padding: 0 6px;
  display: grid;
  place-items: center;
  border-radius: 99px;
  color: #ffd8c6;
  background: rgba(161, 74, 49, 0.62);
  font-size: 11px;
  font-weight: 700;
}

.sidebar-bottom {
  margin-top: auto;
  padding: 9px;
  border-top: 1px solid rgba(192, 218, 222, 0.1);
}

.demo-label {
  margin-top: 7px;
  padding: 10px 10px 8px;
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
}

.demo-label > span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--copper);
  box-shadow: 0 0 0 4px rgba(212, 130, 82, 0.1);
}

.demo-label div {
  display: grid;
  gap: 2px;
}

.demo-label b {
  color: var(--muted-strong);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.demo-label small {
  font-size: 10px;
}

.app-main {
  min-width: 0;
  min-height: 0;
  height: 100%;
  overflow: hidden;
  display: grid;
  grid-template-rows: 82px minmax(0, 1fr);
}

.topbar {
  position: relative;
  z-index: 20;
  min-width: 0;
  padding: 0 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-bottom: 1px solid rgba(192, 218, 222, 0.15);
  background: rgba(6, 19, 25, 0.9);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.topbar-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.topbar-title h1 {
  margin: 0;
  font-size: 21px;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.topbar-title p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 11px;
}

.mobile-menu {
  display: none;
}

.topbar-actions {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.sync-state {
  min-height: 48px;
  padding: 6px 10px;
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text-soft);
  background: rgba(255,255,255,0.03);
  text-align: left;
}

.sync-state svg {
  width: 18px;
}

.sync-state.offline svg {
  color: var(--copper);
}

.sync-state.online svg {
  color: var(--sage);
}

.sync-state span,
.user-summary > span:last-child {
  display: grid;
  gap: 2px;
}

.sync-state b,
.user-summary b {
  color: var(--text);
  font-size: 11px;
}

.sync-state small,
.user-summary small {
  color: var(--muted);
  font-size: 9px;
}

.weather-state {
  min-width: 55px;
  display: grid;
  justify-items: center;
  gap: 1px;
}

.weather-state span {
  font-size: 12px;
  font-weight: 700;
}

.weather-state small {
  color: var(--muted);
  font-size: 9px;
}

.user-summary {
  padding-left: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-left: 1px solid var(--glass-border);
}

.avatar {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(213, 225, 226, 0.28);
  border-radius: 50%;
  color: var(--text);
  background: rgba(255,255,255,0.06);
  font-size: 11px;
  font-weight: 700;
}

.workspace {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 100;
  max-width: min(390px, calc(100vw - 32px));
  padding: 13px 16px;
  border: 1px solid rgba(139, 201, 122, 0.34);
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #e9f7df;
  background: rgba(14, 42, 38, 0.95);
  box-shadow: var(--shadow-lg);
  backdrop-filter: blur(18px);
  font-size: 12px;
  font-weight: 650;
  animation: toast-in 220ms ease-out;
}

.toast svg {
  width: 18px;
  color: var(--sage);
}

@keyframes toast-in {
  from { opacity: 0; transform: translateY(8px); }
}

.mobile-bottom-nav {
  display: none;
}

/* Operations */

.operations-workspace {
  height: 100%;
  padding: 12px;
  display: grid;
  grid-template-rows: 68px minmax(0, 1fr);
  gap: 10px;
}

.operations-summary {
  max-width: calc(100% - 330px);
  min-width: 0;
  padding: 7px 10px;
  border: 1px solid var(--glass-border);
  border-radius: var(--radius-md);
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr)) auto;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(203, 117, 67, 0.09), rgba(124, 174, 112, 0.045) 65%, transparent),
    rgba(14, 31, 37, 0.84);
  box-shadow: var(--shadow-md);
}

.summary-item {
  min-width: 0;
  height: 45px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 11px;
  border-right: 1px solid rgba(194, 218, 222, 0.12);
}

.summary-item > span {
  width: 35px;
  height: 35px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,0.04);
}

.summary-item svg {
  width: 18px;
}

.summary-item.tone-green > span { color: var(--sage); background: rgba(124, 174, 92, 0.12); }
.summary-item.tone-amber > span { color: var(--amber); background: rgba(222, 174, 52, 0.12); }
.summary-item.tone-copper > span { color: var(--copper); background: rgba(207, 106, 65, 0.12); }

.summary-item div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.summary-item b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
}

.summary-item small {
  color: var(--muted);
  font-size: 10px;
}

.summary-followup {
  height: 38px;
  padding: 0 8px 0 13px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--blue);
  background: transparent;
  font-size: 11px;
  font-weight: 650;
}

.summary-followup svg {
  width: 14px;
}

.operations-layout {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 10px;
}

.operations-map-stack {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(320px, 1fr) clamp(190px, 26vh, 252px);
  gap: 10px;
}

.map-stage {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(223, 158, 101, 0.26);
  border-radius: var(--radius-lg);
  background: #172426;
  box-shadow: var(--shadow-lg), inset 0 1px 0 rgba(255,255,255,0.04);
}

.mapbox-operations-map,
.interactive-fallback-map,
.static-operations-map {
  position: absolute;
  inset: 0;
}

.mapbox-operations-map .mapboxgl-canvas {
  filter: saturate(0.78) brightness(0.82) contrast(1.14) hue-rotate(-3deg);
}

.mapbox-operations-map::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(7, 23, 29, 0.12), transparent 38%, rgba(5, 19, 25, 0.18)),
    radial-gradient(circle at 50% 42%, transparent 45%, rgba(3, 16, 21, 0.12));
}

.interactive-fallback-map {
  overflow: hidden;
  cursor: grab;
  touch-action: none;
  user-select: none;
  background:
    radial-gradient(circle at 62% 30%, rgba(167, 149, 105, 0.22), transparent 42%),
    linear-gradient(145deg, #5d6354, #3e514b 56%, #34464a);
}

.interactive-fallback-map:active {
  cursor: grabbing;
}

.interactive-fallback-map::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(7, 22, 28, 0.1), transparent 28%, rgba(5, 18, 23, 0.16)),
    radial-gradient(circle at 20% 75%, rgba(54, 76, 63, 0.12), transparent 42%);
  box-shadow: inset 0 0 76px rgba(3, 15, 19, 0.25);
}

.map-tile-plane {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(ellipse at 18% 40%, rgba(221, 210, 176, 0.2), transparent 31%),
    radial-gradient(ellipse at 82% 62%, rgba(18, 42, 42, 0.24), transparent 36%),
    linear-gradient(145deg, #73725e 0%, #58645a 46%, #3e5351 100%);
}

.map-tile-plane::before {
  position: absolute;
  inset: -15%;
  content: "";
  background:
    repeating-radial-gradient(
      ellipse at 22% 50%,
      transparent 0 16px,
      rgba(236, 225, 194, 0.07) 17px 18px,
      transparent 19px 31px
    ),
    repeating-radial-gradient(
      ellipse at 78% 58%,
      transparent 0 22px,
      rgba(9, 35, 36, 0.09) 23px 24px,
      transparent 25px 39px
    );
  opacity: 0.72;
  transform: rotate(-5deg) scale(1.08);
}

.map-tile-plane::after {
  position: absolute;
  inset: 0;
  z-index: 2;
  content: "";
  pointer-events: none;
  background:
    linear-gradient(155deg, rgba(13, 35, 38, 0.07), transparent 54%, rgba(5, 20, 25, 0.18)),
    radial-gradient(circle at 54% 42%, transparent 24%, rgba(3, 17, 21, 0.2) 100%);
}

.map-tile-plane img {
  position: absolute;
  z-index: 1;
  width: 256px;
  height: 256px;
  max-width: none;
  pointer-events: none;
  filter: sepia(0.14) saturate(0.82) brightness(0.76) contrast(1.18) hue-rotate(-4deg);
}

.interactive-zone-layer,
.interactive-road-layer,
.interactive-medical-route {
  position: absolute;
  inset: 0;
  overflow: visible;
  pointer-events: none;
}

.interactive-zone-layer {
  z-index: 2;
}

.interactive-zone-layer polygon {
  fill: rgba(208, 114, 70, 0.12);
  stroke: rgba(238, 173, 117, 0.82);
  stroke-width: 2;
  stroke-dasharray: 7 6;
  vector-effect: non-scaling-stroke;
}

.interactive-road-layer {
  z-index: 2;
}

.interactive-road-layer polyline {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.interactive-road-layer .main-road-line {
  stroke: #d7b38a;
  stroke-width: 4;
  stroke-dasharray: 10 6;
  filter: drop-shadow(0 0 2px rgba(34, 18, 12, 0.95));
}

.interactive-road-layer .access-track-line {
  stroke: rgba(229, 208, 177, 0.86);
  stroke-width: 1.7;
  stroke-dasharray: 4 7;
}

.interactive-medical-route {
  z-index: 4;
}

.interactive-medical-route polyline {
  fill: none;
  stroke: #ef7b6c;
  stroke-width: 3;
  stroke-dasharray: 5 5;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 0 4px rgba(239, 123, 108, 0.42));
}

.interactive-route-layer {
  position: absolute;
  inset: 0;
  z-index: 3;
  overflow: visible;
  pointer-events: none;
}

.interactive-route-layer polyline {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.interactive-route-layer .route-shadow {
  stroke: rgba(4, 11, 15, 0.74);
  stroke-width: 8;
}

.interactive-route-layer .route-line {
  stroke: var(--route-color);
  stroke-width: 3.25;
  stroke-dasharray: 9 7;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.55));
}

.interactive-route-layer .route-kind-planned .route-line {
  stroke-width: 2.65;
  stroke-dasharray: 4 7;
}

.interactive-route-layer .route-waypoint {
  fill: #102a37;
  stroke: var(--route-color);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.75));
}

.interactive-marker {
  z-index: 6;
}

.marker-weather {
  position: absolute;
  top: 35px;
  left: 47px;
  padding: 2px 5px;
  border: 1px solid rgba(232, 184, 127, 0.26);
  border-radius: 5px;
  color: #e9d8bf;
  background: rgba(34, 24, 20, 0.9);
  font-size: 8px;
  font-weight: 750;
  white-space: nowrap;
}

.map-attribution {
  position: absolute;
  z-index: 9;
  right: 12px;
  bottom: 3px;
  color: rgba(236, 225, 207, 0.62);
  font-size: 7px;
  pointer-events: auto;
  text-shadow: 0 1px 2px #000;
}

.map-attribution a {
  color: inherit;
  text-decoration-color: rgba(250, 228, 196, 0.45);
}

.mapbox-field-marker {
  --marker: var(--blue);
  position: relative;
  min-height: 38px;
  padding: 0;
  display: flex;
  align-items: center;
  color: white;
  background: transparent;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.5));
  transition: filter 180ms ease, opacity 180ms ease;
}

.mapbox-marker-symbol {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 2px solid var(--marker);
  border-radius: 50% 50% 50% 8px;
  color: white;
  background: color-mix(in srgb, var(--marker) 35%, #0b202a);
  transform: rotate(-45deg);
  font-size: 13px;
  font-weight: 800;
  transition: width 180ms ease, height 180ms ease, border-width 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.mapbox-marker-symbol i,
.marker-symbol i {
  display: block;
  transform: rotate(45deg);
  font-style: normal;
}

.mapbox-field-marker .mapbox-marker-symbol {
  line-height: 1;
}

.mapbox-field-marker.active .mapbox-marker-symbol {
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--marker) 20%, transparent), 0 0 22px color-mix(in srgb, var(--marker) 34%, transparent);
  transform: rotate(-45deg) scale(1.13);
}

.mapbox-marker-label {
  position: absolute;
  top: 50%;
  left: 46px;
  margin: 0;
  padding: 5px 8px;
  border: 1px solid color-mix(in srgb, var(--marker) 46%, rgba(255,255,255,0.12));
  border-radius: 7px;
  display: grid;
  gap: 1px;
  background: rgba(7, 22, 29, 0.92);
  opacity: 1;
  transform: translateY(-50%);
  text-align: left;
  white-space: nowrap;
  transition: padding 180ms ease, opacity 160ms ease, transform 180ms ease;
}

.mapbox-marker-label b {
  font-size: 11px;
}

.mapbox-marker-label small {
  color: color-mix(in srgb, var(--marker) 70%, white);
  font-size: 8px;
}

.fallback-outpost-cluster {
  position: absolute;
  z-index: 8;
  transform: translate(-50%, -100%);
  pointer-events: auto;
}

.outpost-map-cluster.compact {
  width: 126px;
  padding: 4px;
  gap: 0;
}

.outpost-map-cluster.compact .outpost-site-card {
  min-height: 31px;
  padding: 3px 5px;
  grid-template-columns: 22px 1fr;
}

.outpost-map-cluster.compact .outpost-site-card > svg,
.outpost-map-cluster.compact .outpost-coordinate,
.outpost-map-cluster.compact .outpost-group-stack button small {
  display: none;
}

.outpost-map-cluster.compact .outpost-site-card small {
  display: block;
  overflow: hidden;
  max-width: 88px;
  font-size: 6px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.outpost-map-cluster.compact .outpost-group-stack button {
  min-height: 24px;
  grid-template-columns: 22px 1fr;
}

.map-detail-compact .mapbox-marker-label small,
.map-detail-compact .marker-copy small,
.map-detail-compact .marker-weather,
.map-detail-compact .operational-map-feature b {
  display: none;
}

.map-detail-compact .mapbox-field-marker,
.map-detail-compact .fallback-marker {
  min-width: 30px;
  min-height: 30px;
}

.map-detail-compact .mapbox-marker-symbol,
.map-detail-compact .marker-symbol {
  width: 30px;
  height: 30px;
  border-width: 1.5px;
}

.map-detail-compact .mapbox-marker-symbol svg,
.map-detail-compact .marker-symbol svg {
  width: 16px;
  height: 16px;
}

.map-detail-compact .fallback-marker {
  transform: translate(-15px, -30px);
}

.map-detail-compact .mapbox-marker-label,
.map-detail-compact .marker-copy {
  padding: 3px 6px;
}

.map-detail-compact .mapbox-marker-label {
  left: 35px;
}

.map-detail-compact .mapbox-marker-label b,
.map-detail-compact .marker-copy b {
  font-size: 9px;
}

.map-detail-overview .mapbox-field-marker,
.map-detail-overview .fallback-marker {
  min-width: 22px;
  min-height: 22px;
  opacity: 0.86;
  filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.4));
}

.map-detail-overview .mapbox-marker-symbol,
.map-detail-overview .marker-symbol {
  width: 22px;
  height: 22px;
  border-width: 1px;
}

.map-detail-overview .mapbox-marker-symbol svg,
.map-detail-overview .marker-symbol svg {
  width: 13px;
  height: 13px;
}

.map-detail-overview .fallback-marker {
  transform: translate(-11px, -22px);
}

.map-detail-overview .mapbox-field-marker.active,
.map-detail-overview .fallback-marker.active {
  z-index: 9;
  opacity: 1;
}

.map-detail-overview .mapbox-field-marker.active .mapbox-marker-symbol,
.map-detail-overview .fallback-marker.active .marker-symbol {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--marker) 18%, transparent);
  transform: rotate(-45deg) scale(1.06);
}

.map-detail-overview .mapbox-marker-label,
.map-detail-overview .marker-copy {
  position: absolute;
  top: 50%;
  left: 27px;
  margin: 0;
  padding: 2px 5px;
  opacity: 0;
  visibility: hidden;
  transform: translate(-4px, -50%);
  pointer-events: none;
}

.map-detail-overview .mapbox-field-marker.active .mapbox-marker-label,
.map-detail-overview .fallback-marker.active .marker-copy {
  opacity: 0.96;
  visibility: visible;
  transform: translate(0, -50%);
}

.map-detail-overview .mapbox-marker-label b,
.map-detail-overview .marker-copy b {
  font-size: 8px;
}

.map-detail-overview .mapbox-marker-label small,
.map-detail-overview .marker-copy small,
.map-detail-overview .marker-weather,
.map-detail-overview .operational-map-feature b {
  display: none;
}

.operational-map-feature {
  position: absolute;
  z-index: 7;
  min-height: 28px;
  max-width: 160px;
  padding: 3px 7px 3px 3px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: #f4eadc;
  border: 1px solid rgba(219, 194, 158, 0.3);
  border-radius: 999px;
  background: rgba(6, 22, 29, 0.9);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.38);
  transform: translate(-14px, -32px);
  text-align: left;
  backdrop-filter: blur(10px);
  transition: width 180ms ease, min-height 180ms ease, opacity 180ms ease, transform 180ms ease;
}

.operational-map-feature > span {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--feature-color, var(--sand));
  background: color-mix(in srgb, var(--feature-color, var(--sand)) 15%, #0a2029);
}

.operational-map-feature svg {
  width: 12px;
  height: 12px;
}

.operational-map-feature b {
  overflow: hidden;
  font-size: 8px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operational-map-feature.feature-water { --feature-color: #62c9db; }
.operational-map-feature.feature-hazard { --feature-color: #efaa55; }
.operational-map-feature.feature-medical { --feature-color: #ef7b6c; }
.operational-map-feature.feature-access { --feature-color: #d9c2a3; }
.operational-map-feature.compact { width: 27px; min-height: 27px; padding: 2px; }

.map-detail-compact .operational-map-feature {
  width: 25px;
  min-height: 25px;
  padding: 2px;
}

.map-detail-overview .operational-map-feature {
  width: 20px;
  min-height: 20px;
  padding: 1px;
  opacity: 0.74;
  transform: translate(-10px, -24px);
}

.map-detail-overview .operational-map-feature > span {
  width: 18px;
  height: 18px;
}

.map-detail-overview .operational-map-feature svg {
  width: 10px;
  height: 10px;
}

.mapbox-outpost-cluster {
  pointer-events: auto;
  transition: opacity 180ms ease;
}

.map-detail-overview .mapbox-field-marker,
.map-detail-overview .mapbox-outpost-cluster {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.mapbox-overview-group-cluster {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 180ms ease;
}

.map-detail-overview .mapbox-overview-group-cluster {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.fallback-overview-group-cluster {
  position: absolute;
  z-index: 9;
  transform: translate(-50%, -50%);
}

.map-overview-group-cluster {
  min-width: 112px;
  min-height: 38px;
  padding: 4px 8px 4px 4px;
  border: 1px solid rgba(156, 198, 224, 0.62);
  border-radius: 999px;
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 6px;
  color: var(--text);
  background: rgba(7, 24, 31, 0.94);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.38);
  text-align: left;
  backdrop-filter: blur(10px);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.map-overview-group-cluster > span:first-child {
  width: 28px;
  height: 28px;
  border: 1px solid rgba(121, 180, 226, 0.7);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #8fc3f0;
  background: rgba(68, 139, 201, 0.16);
}

.map-overview-group-cluster svg {
  width: 15px;
  height: 15px;
}

.map-overview-group-cluster > span:last-child {
  display: grid;
  gap: 1px;
}

.map-overview-group-cluster b {
  font-size: 9px;
  white-space: nowrap;
}

.map-overview-group-cluster small {
  color: var(--muted);
  font-size: 6.5px;
  white-space: nowrap;
}

.map-overview-group-cluster:hover,
.map-overview-group-cluster:focus-visible {
  border-color: #8fc3f0;
  box-shadow: 0 0 0 3px rgba(79, 154, 216, 0.14), 0 8px 22px rgba(0, 0, 0, 0.42);
  transform: translateY(-1px);
}

.outpost-map-cluster {
  position: relative;
  width: 180px;
  padding: 7px;
  border: 1px dashed rgba(244, 203, 151, 0.72);
  border-radius: 20px 20px 16px 16px;
  display: grid;
  gap: 4px;
  color: var(--text);
  background:
    radial-gradient(circle at 70% 8%, rgba(202, 105, 66, 0.18), transparent 36%),
    rgba(8, 24, 30, 0.88);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.46), inset 0 0 24px rgba(211, 128, 71, 0.06);
  backdrop-filter: blur(12px);
  transition: width 180ms ease, padding 180ms ease, opacity 180ms ease;
}

.outpost-map-cluster.overview {
  width: 108px;
  padding: 4px;
  border-radius: 14px;
  opacity: 0.9;
}

.outpost-map-cluster.overview .outpost-site-card {
  min-height: 27px;
  padding: 3px 5px;
  grid-template-columns: 20px 1fr;
  gap: 5px;
}

.outpost-map-cluster.overview .outpost-site-card > span:first-child {
  width: 20px;
  height: 20px;
  border-radius: 6px;
}

.outpost-map-cluster.overview .outpost-site-card > svg {
  display: none;
}

.outpost-map-cluster.overview .outpost-site-card b {
  overflow: hidden;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.outpost-map-cluster.overview .outpost-site-card small {
  font-size: 6px;
}

.outpost-map-cluster.overview .outpost-anchor-dot {
  bottom: -5px;
  width: 7px;
  height: 7px;
  border-width: 1px;
  box-shadow: 0 0 0 3px rgba(215, 123, 70, 0.18);
}

.outpost-site-card {
  min-height: 34px;
  padding: 5px 7px;
  border: 1px solid rgba(232, 184, 127, 0.28);
  border-radius: 10px;
  display: grid;
  grid-template-columns: 25px 1fr 13px;
  align-items: center;
  gap: 6px;
  color: var(--text);
  background: rgba(39, 25, 21, 0.86);
  text-decoration: none;
}

.outpost-site-card > span:first-child {
  width: 25px;
  height: 25px;
  border: 1px solid rgba(230, 178, 111, 0.44);
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--sand);
  background: rgba(211, 128, 71, 0.12);
}

.outpost-site-card > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.outpost-site-card b {
  font-size: 10px;
  line-height: 1.1;
}

.outpost-site-card small {
  color: var(--text-muted);
  font-size: 7px;
}

.outpost-site-card svg {
  width: 12px;
  height: 12px;
}

.outpost-site-card:hover,
.outpost-site-card:focus-visible {
  border-color: rgba(241, 194, 127, 0.72);
  background: rgba(55, 32, 24, 0.94);
}

.outpost-group-stack {
  display: grid;
  gap: 3px;
}

.outpost-group-stack button {
  --marker: var(--sage);
  min-height: 27px;
  padding: 3px 6px;
  border: 1px solid color-mix(in srgb, var(--marker) 46%, rgba(255,255,255,0.08));
  border-radius: 8px;
  display: grid;
  grid-template-columns: 24px 1fr auto;
  align-items: center;
  gap: 6px;
  color: var(--text);
  background: color-mix(in srgb, var(--marker) 12%, rgba(6, 23, 29, 0.92));
  text-align: left;
}

.outpost-group-stack button > span {
  width: 23px;
  height: 23px;
  border: 1px solid var(--marker);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--marker);
  background: color-mix(in srgb, var(--marker) 13%, #071a21);
}

.outpost-group-stack button b {
  font-size: 10px;
}

.outpost-group-stack button small {
  color: color-mix(in srgb, var(--marker) 72%, white);
  font-size: 7px;
  white-space: nowrap;
}

.outpost-group-stack button:hover,
.outpost-group-stack button.active {
  border-color: var(--marker);
  background: color-mix(in srgb, var(--marker) 22%, rgba(6, 23, 29, 0.96));
  box-shadow: inset 3px 0 0 var(--marker), 0 0 15px color-mix(in srgb, var(--marker) 15%, transparent);
}

.outpost-coordinate {
  padding: 1px 4px 0;
  color: rgba(239, 217, 183, 0.78);
  font-family: var(--font-mono);
  font-size: 6.5px;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
}

.outpost-anchor-dot {
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 10px;
  height: 10px;
  border: 2px solid #ffe5b5;
  border-radius: 50%;
  background: #d77b46;
  box-shadow: 0 0 0 5px rgba(215, 123, 70, 0.2), 0 0 14px rgba(215, 123, 70, 0.68);
  transform: translate(-50%, 50%);
}

/* Compact operational map language: small independent pins over legible terrain. */
.mapbox-operations-map.map-display-desert .mapboxgl-canvas {
  filter: sepia(0.12) saturate(0.86) brightness(1.03) contrast(0.98);
}

.mapbox-operations-map.map-display-monochrome .mapboxgl-canvas {
  filter: grayscale(1) brightness(1.04) contrast(1.08);
}

.interactive-fallback-map.map-display-desert .map-tile-plane img {
  filter: sepia(0.13) saturate(0.78) brightness(1.04) contrast(0.94);
}

.interactive-fallback-map.map-display-monochrome .map-tile-plane img {
  filter: grayscale(1) brightness(1.06) contrast(1.05);
}

.interactive-fallback-map::after,
.mapbox-operations-map::after {
  background: linear-gradient(180deg, rgba(45, 32, 21, 0.025), transparent 38%, rgba(25, 19, 15, 0.08));
  box-shadow: inset 0 0 42px rgba(34, 25, 18, 0.12);
}

.map-tile-plane {
  background:
    repeating-radial-gradient(ellipse at 48% 50%, transparent 0 22px, rgba(111, 94, 68, 0.08) 23px 24px, transparent 25px 39px),
    linear-gradient(145deg, #e8dcc5, #cdbb9d 56%, #af9c7d);
}

.interactive-route-layer .route-shadow {
  stroke: rgba(28, 24, 20, 0.38);
  stroke-width: 4;
}

.interactive-route-layer .route-line {
  stroke-width: 2;
  stroke-dasharray: 6 6;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.34));
}

.interactive-route-layer .route-kind-planned .route-line {
  stroke-width: 1.7;
  stroke-dasharray: 3 6;
}

.interactive-route-layer .route-waypoint {
  stroke-width: 1.4;
}

.mapbox-field-marker,
.fallback-marker {
  min-width: 26px;
  min-height: 26px;
  filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.38));
}

.mapbox-marker-symbol,
.marker-symbol {
  width: 26px;
  height: 26px;
  border-width: 1.4px;
}

.mapbox-marker-symbol svg,
.marker-symbol svg {
  width: 14px;
  height: 14px;
}

.fallback-marker {
  transform: translate(-13px, -26px);
}

.mapbox-field-marker.active .mapbox-marker-symbol,
.fallback-marker.active .marker-symbol {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--marker) 17%, transparent);
  transform: rotate(-45deg) scale(1.05);
}

.mapbox-marker-label,
.marker-copy {
  left: 31px;
  margin-left: 4px;
  padding: 3px 5px;
  border-radius: 5px;
  background: rgba(7, 22, 29, 0.88);
}

.mapbox-marker-label b,
.marker-copy b {
  font-size: 8.5px;
}

.mapbox-marker-label small,
.marker-copy small {
  font-size: 6.5px;
}

.marker-weather {
  top: 24px;
  left: 31px;
  padding: 1px 3px;
  font-size: 6px;
}

.fallback-marker.group-aspen .marker-copy,
.mapbox-field-marker.group-aspen .mapbox-marker-label,
.fallback-marker.group-juniper .marker-copy,
.mapbox-field-marker.group-juniper .mapbox-marker-label,
.fallback-marker.group-pinyon .marker-copy,
.mapbox-field-marker.group-pinyon .mapbox-marker-label {
  top: 50%;
  right: auto;
  left: 31px;
  transform: translateY(-50%);
  text-align: left;
}

.map-detail-compact .mapbox-field-marker,
.map-detail-compact .fallback-marker {
  min-width: 20px;
  min-height: 20px;
}

.map-detail-compact .mapbox-marker-symbol,
.map-detail-compact .marker-symbol {
  width: 20px;
  height: 20px;
  border-width: 1px;
}

.map-detail-compact .mapbox-marker-symbol svg,
.map-detail-compact .marker-symbol svg {
  width: 11px;
  height: 11px;
}

.map-detail-compact .fallback-marker {
  transform: translate(-10px, -20px);
}

.map-detail-compact .mapbox-marker-label,
.map-detail-compact .marker-copy {
  left: 24px;
  margin-left: 2px;
  padding: 2px 4px;
}

.map-detail-compact .mapbox-marker-label b,
.map-detail-compact .marker-copy b {
  font-size: 7px;
}

.map-detail-overview .mapbox-field-marker,
.map-detail-overview .fallback-marker {
  min-width: 14px;
  min-height: 14px;
  opacity: 0.9;
  visibility: visible;
  pointer-events: auto;
}

.map-detail-overview .mapbox-marker-symbol,
.map-detail-overview .marker-symbol {
  width: 14px;
  height: 14px;
  border-width: 1px;
}

.map-detail-overview .mapbox-marker-symbol svg,
.map-detail-overview .marker-symbol svg {
  width: 8px;
  height: 8px;
}

.map-detail-overview .fallback-marker {
  transform: translate(-7px, -14px);
}

.map-detail-overview .mapbox-marker-label,
.map-detail-overview .marker-copy {
  left: 18px;
  padding: 2px 4px;
}

.map-detail-overview .mapbox-field-marker.active .mapbox-marker-label,
.map-detail-overview .fallback-marker.active .marker-copy {
  opacity: 0.94;
  visibility: visible;
}

.map-detail-compact .camp-group-marker.group-aspen,
.map-detail-overview .camp-group-marker.group-aspen { margin-top: -14px; }
.map-detail-compact .camp-group-marker.group-pinyon,
.map-detail-overview .camp-group-marker.group-pinyon { margin-top: 14px; }

.fallback-outpost-marker {
  position: absolute;
  z-index: 6;
  transform: translate(-50%, -50%);
}

.mapbox-outpost-marker {
  pointer-events: auto;
}

.outpost-map-marker {
  min-width: 18px;
  min-height: 18px;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  color: #f6e7d1;
  background: transparent;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.42));
}

.outpost-map-marker > span:first-child {
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(131, 88, 53, 0.88);
  border-radius: 5px;
  color: #6c452d;
  background: rgba(247, 232, 203, 0.94);
}

.outpost-map-marker svg {
  width: 10px;
  height: 10px;
}

.outpost-marker-copy {
  padding: 2px 4px;
  border: 1px solid rgba(225, 192, 150, 0.34);
  border-radius: 4px;
  display: grid;
  gap: 0;
  background: rgba(23, 25, 23, 0.84);
  text-align: left;
  white-space: nowrap;
}

.outpost-marker-copy b { font-size: 7px; }
.outpost-marker-copy small { color: #d9c8ad; font-size: 5.5px; }
.outpost-map-marker.compact .outpost-marker-copy,
.outpost-map-marker.overview .outpost-marker-copy { display: none; }

.map-display-modes {
  padding: 6px 7px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  border-bottom: 1px solid rgba(217, 178, 125, 0.14);
}

.map-display-modes button {
  min-width: 0;
  padding: 5px 6px;
  border: 1px solid rgba(217, 178, 125, 0.18);
  border-radius: 7px;
  display: grid;
  grid-template-columns: 15px 1fr;
  align-items: center;
  gap: 4px;
  color: var(--muted);
  background: rgba(255,255,255,0.025);
  text-align: left;
}

.map-display-modes button.active {
  border-color: rgba(226, 157, 93, 0.62);
  color: var(--text);
  background: rgba(190, 112, 63, 0.12);
}

.map-display-modes svg { width: 12px; height: 12px; }
.map-display-modes span { min-width: 0; display: grid; }
.map-display-modes b { font-size: 7px; }
.map-display-modes small { overflow: hidden; color: var(--muted); font-size: 5.5px; text-overflow: ellipsis; white-space: nowrap; }

.static-operations-map {
  overflow: hidden;
  background:
    linear-gradient(118deg, transparent 0 44%, rgba(67, 93, 80, 0.12) 45%, transparent 46%),
    linear-gradient(24deg, rgba(37, 74, 79, 0.25), transparent 38%),
    #10272f;
}

.topographic-field {
  position: absolute;
  inset: -20%;
  opacity: 0.62;
  background-image:
    repeating-radial-gradient(ellipse at 24% 62%, transparent 0 14px, rgba(190, 199, 168, 0.12) 15px 16px, transparent 17px 28px),
    repeating-radial-gradient(ellipse at 76% 30%, transparent 0 20px, rgba(190, 199, 168, 0.1) 21px 22px, transparent 23px 35px),
    radial-gradient(circle at 57% 50%, rgba(115, 91, 54, 0.18), transparent 35%);
  transform: rotate(-4deg);
}

.fallback-routes {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.fallback-routes polyline {
  fill: none;
  stroke-width: 0.55;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 1.8 1.2;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 2px 3px rgba(0,0,0,0.5));
}

.route-southwest-basin { stroke: #72a7ff; }
.route-northeast-high-desert { stroke: #8fcf71; }

.fallback-landmark {
  position: absolute;
  z-index: 3;
  max-width: 150px;
  transform: translate(-50%, -50%);
  color: rgba(239, 217, 183, 0.76);
  font-size: 0.63rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-align: center;
  text-shadow: 0 1px 2px #1d0f0a, 0 0 5px #1d0f0a;
  text-transform: uppercase;
  pointer-events: none;
}

.fallback-landmark.corridor {
  max-width: 180px;
  color: rgba(244, 225, 196, 0.9);
  font-size: 0.7rem;
}

.cluster-label {
  position: absolute;
  z-index: 2;
  color: rgba(211, 187, 137, 0.72);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  pointer-events: none;
}

.cluster-southwest { left: 22%; top: 55%; }
.cluster-northeast { right: 12%; top: 18%; }

.fallback-marker {
  --marker: var(--blue);
  position: absolute;
  z-index: 5;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  display: flex;
  align-items: center;
  color: white;
  background: transparent;
  transform: translate(-20px, -40px);
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.48));
  transition: filter 180ms ease, opacity 180ms ease, transform 180ms ease;
}

.marker-symbol {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 2px solid var(--marker);
  border-radius: 50% 50% 50% 8px;
  background: color-mix(in srgb, var(--marker) 34%, #0a2029);
  transform: rotate(-45deg);
  font-size: 12px;
  font-weight: 850;
  transition: width 180ms ease, height 180ms ease, border-width 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.fallback-marker.active {
  z-index: 9;
}

.fallback-marker.active .marker-symbol {
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--marker) 18%, transparent), 0 0 22px color-mix(in srgb, var(--marker) 30%, transparent);
  transform: rotate(-45deg) scale(1.12);
}

.marker-copy {
  margin-left: 6px;
  padding: 5px 8px;
  border: 1px solid color-mix(in srgb, var(--marker) 48%, rgba(255,255,255,0.12));
  border-radius: 7px;
  display: grid;
  gap: 1px;
  background: rgba(7, 22, 29, 0.93);
  opacity: 1;
  text-align: left;
  white-space: nowrap;
  transition: padding 180ms ease, opacity 160ms ease, transform 180ms ease;
}

.marker-copy b { font-size: 11px; }
.marker-copy small { color: color-mix(in srgb, var(--marker) 70%, white); font-size: 8px; }

.fallback-marker.group-aspen .marker-copy,
.mapbox-field-marker.group-aspen .mapbox-marker-label {
  position: absolute;
  left: 47px;
  top: -18px;
  margin: 0;
}

.fallback-marker.group-pinyon .marker-copy,
.mapbox-field-marker.group-pinyon .mapbox-marker-label {
  position: absolute;
  right: 47px;
  top: 24px;
  margin: 0;
  text-align: right;
}

.fallback-marker.group-juniper .marker-copy,
.mapbox-field-marker.group-juniper .mapbox-marker-label {
  position: absolute;
  left: 47px;
  top: 6px;
  margin: 0;
}

.fallback-map-controls {
  position: absolute;
  left: 14px;
  top: 50%;
  z-index: 10;
  display: grid;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  background: rgba(5, 20, 27, 0.86);
  box-shadow: var(--shadow-md);
}

.fallback-map-controls button {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: var(--text-soft);
  border-bottom: 1px solid var(--glass-border);
  background: transparent;
  font-size: 19px;
}

.fallback-map-controls button:last-child { border: 0; }
.fallback-map-controls svg { width: 16px; }

.fallback-scale {
  position: absolute;
  left: 15px;
  bottom: 15px;
  z-index: 10;
  display: flex;
  align-items: flex-end;
  gap: 5px;
  color: var(--text-soft);
  font-size: 8px;
}

.fallback-scale i {
  width: 92px;
  height: 7px;
  display: block;
  border: solid rgba(240, 237, 221, 0.8);
  border-width: 0 1px 1px;
}

.map-notice {
  position: absolute;
  left: 14px;
  top: 14px;
  z-index: 12;
  max-width: 220px;
  padding: 9px 11px;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text-soft);
  background: rgba(16, 24, 25, 0.84);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(12px);
  font-size: 9px;
  line-height: 1.35;
}

.map-notice svg {
  width: 15px;
  color: var(--sage);
}

.map-layer-control {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 12;
  min-width: 190px;
  padding: 10px 12px;
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--text-soft);
  background: rgba(17, 25, 26, 0.88);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(12px);
  text-align: left;
}

.map-layer-control svg {
  width: 21px;
}

.map-layer-control span {
  display: grid;
  gap: 2px;
}

.map-layer-control b { color: var(--text); font-size: 10px; }
.map-layer-control small { color: var(--muted); font-size: 8px; }

.map-operations-key {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 14;
  width: 232px;
  max-height: calc(100% - 28px);
  overflow: hidden auto;
  border-radius: 12px;
  background:
    linear-gradient(145deg, rgba(211, 116, 70, 0.08), transparent 38%),
    rgba(6, 22, 29, 0.9);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(18px);
}

.map-key-toggle {
  width: 100%;
  min-height: 47px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 7px;
  color: var(--text);
  background: transparent;
  text-align: left;
}

.map-key-toggle > svg:first-child {
  width: 18px;
  color: var(--sand);
}

.map-key-toggle > svg:last-child {
  width: 13px;
  color: var(--muted);
  transition: transform 180ms ease;
}

.map-operations-key.open .map-key-toggle > svg:last-child {
  transform: rotate(180deg);
}

.map-key-toggle > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.map-key-toggle b { font-size: 10px; }
.map-key-toggle small { color: var(--muted); font-size: 7px; }

.map-key-groups {
  padding: 7px;
  border-block: 1px solid rgba(190, 215, 219, 0.11);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
}

.map-key-groups button {
  --group-color: var(--sage);
  min-width: 0;
  min-height: 29px;
  padding: 3px 6px;
  border: 1px solid color-mix(in srgb, var(--group-color) 25%, rgba(255,255,255,0.08));
  border-radius: 7px;
  display: grid;
  grid-template-columns: 21px minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  color: var(--text-soft);
  background: color-mix(in srgb, var(--group-color) 8%, rgba(4, 18, 25, 0.7));
  text-align: left;
}

.map-key-groups button.active {
  border-color: var(--group-color);
  color: white;
  box-shadow: inset 2px 0 0 var(--group-color);
}

.map-key-groups button > span {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: var(--group-color);
}

.map-key-groups button b {
  overflow: hidden;
  font-size: 8px;
  text-overflow: ellipsis;
}

.map-key-layers {
  padding: 6px 7px;
  display: grid;
  gap: 2px;
}

.map-key-layers button {
  min-width: 0;
  min-height: 34px;
  padding: 3px 4px;
  border-radius: 7px;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 6px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.map-key-layers button:hover {
  background: rgba(255,255,255,0.04);
}

.map-key-symbol {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: var(--muted);
  background: rgba(255,255,255,0.04);
}

.map-key-symbol svg { width: 13px; }
.map-key-symbol.symbol-water { color: #62c9db; }
.map-key-symbol.symbol-hazards { color: #efaa55; }
.map-key-symbol.symbol-medical { color: #ef7b6c; }
.map-key-symbol.symbol-tracks { color: #8fcf71; }
.map-key-symbol.symbol-roads { color: #d9c2a3; }

.map-key-layers button > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.map-key-layers b { font-size: 8px; }
.map-key-layers small {
  overflow: hidden;
  color: var(--muted);
  font-size: 6.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.map-key-layers i {
  min-height: 17px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(189, 215, 220, 0.13);
  border-radius: 999px;
  color: var(--muted);
  font-size: 6px;
  font-style: normal;
}

.map-key-layers i.on {
  color: var(--sage);
  border-color: rgba(143, 207, 113, 0.28);
  background: rgba(143, 207, 113, 0.08);
}

.map-operations-key > footer {
  padding: 7px 9px 9px;
  border-top: 1px solid rgba(190, 215, 219, 0.1);
  color: var(--muted);
  font-size: 6px;
  line-height: 1.55;
}

.map-operations-key > footer span {
  margin-left: 5px;
  color: var(--sand);
  font-weight: 800;
}

.map-operations-key > footer span:first-child { margin-left: 0; }

.map-route-legend {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 12;
  min-width: 156px;
  padding: 8px 10px;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  display: grid;
  gap: 6px;
  color: var(--text-soft);
  background: rgba(7, 23, 31, 0.9);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(14px);
  pointer-events: none;
}

.map-route-legend span {
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  font-size: 8px;
}

.map-route-legend i {
  height: 2px;
  display: block;
  border-radius: 999px;
}

.map-route-legend .legend-history {
  background: repeating-linear-gradient(90deg, #72a7ff 0 7px, transparent 7px 11px);
}

.map-route-legend .legend-planned {
  background: repeating-linear-gradient(90deg, #8fcf71 0 4px, transparent 4px 9px);
}

.map-route-legend .legend-road {
  height: 3px;
  border-block: 1px solid rgba(25, 14, 9, 0.9);
  background: #d7b38a;
}

.map-coordinate-readout {
  position: absolute;
  right: 218px;
  bottom: 14px;
  z-index: 12;
  min-width: 190px;
  padding: 9px 11px;
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  display: grid;
  gap: 2px;
  color: var(--text-soft);
  background: rgba(17, 25, 26, 0.88);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(12px);
  pointer-events: none;
}

.map-coordinate-readout span,
.map-coordinate-readout small {
  color: var(--muted);
  font-size: 8px;
}

.map-coordinate-readout b {
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}

.group-inspector {
  min-height: 0;
  overflow-y: auto;
  border-radius: var(--radius-lg);
  scrollbar-width: thin;
  scrollbar-color: rgba(146, 174, 181, 0.3) transparent;
}

.inspector-title {
  position: sticky;
  top: 0;
  z-index: 3;
  min-height: 68px;
  padding: 13px 14px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
  background: rgba(9, 27, 36, 0.94);
  backdrop-filter: blur(18px);
}

.inspector-title h2 {
  margin: 0 0 5px;
  font-size: 19px;
  letter-spacing: -0.02em;
}

.group-state {
  min-height: 21px;
  padding: 0 7px;
  border: 1px solid currentColor;
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  color: var(--blue);
  background: rgba(80, 140, 204, 0.1);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.group-state.state-due { color: var(--amber); }
.group-state.state-stale { color: var(--red); }
.group-state.state-follow-up { color: var(--copper); }

.inspector-section {
  margin: 9px 10px 0;
  padding: 10px;
  border: 1px solid rgba(189, 215, 220, 0.12);
  border-radius: 10px;
  background: rgba(255,255,255,0.022);
}

.inspector-section > header {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
}

.inspector-section > header svg {
  width: 15px;
  height: 15px;
  color: var(--muted-strong);
}

.inspector-section > header b {
  font-size: 10px;
}

.inspector-section > header small {
  color: var(--sage);
  font-size: 8px;
}

.inspector-section > div {
  margin-top: 7px;
  padding-left: 24px;
}

.inspector-section strong {
  display: block;
  color: var(--text);
  font-size: 11px;
  line-height: 1.35;
}

.inspector-section p {
  margin: 3px 0 0;
  color: var(--text-soft);
  font-size: 9px;
  line-height: 1.4;
}

.inspector-section > div > small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 8px;
}

.inspector-inline-action {
  margin-top: 6px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--blue);
  background: transparent;
  font-size: 8px;
  font-weight: 700;
}

.inspector-inline-action svg {
  width: 11px;
}

.inline-data {
  padding-left: 0 !important;
  display: flex;
  gap: 24px;
}

.inline-data span {
  color: var(--muted);
  font-size: 9px;
}

.inline-data b {
  display: inline;
  margin-right: 2px;
  color: var(--text);
  font-size: 12px;
}

.field-team-section > div {
  padding-left: 0;
}

.field-team-list {
  display: grid;
  gap: 5px;
}

.field-team-list article {
  min-width: 0;
  padding: 3px 5px;
  border: 1px solid rgba(189, 215, 220, 0.1);
  border-radius: 8px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  background: rgba(255, 255, 255, 0.022);
}

.field-team-list article > span {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(114, 167, 255, 0.3);
  border-radius: 50%;
  color: var(--blue);
  background: rgba(114, 167, 255, 0.08);
}

.field-team-list article svg {
  width: 12px;
}

.field-team-list article > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.field-team-list article b {
  overflow: hidden;
  color: var(--text);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.field-team-list article small {
  color: var(--muted);
  font-size: 7px;
}

.field-team-list article i {
  color: var(--amber);
  font-size: 7px;
  font-style: normal;
}

.field-team-list article i.on-duty {
  color: var(--sage);
}

.protected-placeholder {
  margin: 0;
  padding: 8px;
  border: 1px dashed rgba(189, 215, 220, 0.15);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.35;
}

.protected-placeholder svg {
  width: 14px;
  flex: 0 0 auto;
}

.protected-roster-card {
  margin: 9px 10px 0;
  padding: 10px;
  border: 1px solid rgba(114, 167, 255, 0.22);
  border-radius: 10px;
  display: grid;
  gap: 8px;
  background:
    linear-gradient(135deg, rgba(114, 167, 255, 0.07), transparent 56%),
    rgba(255, 255, 255, 0.022);
}

.protected-roster-card > header {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 8px;
}

.protected-roster-card > header > span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--blue);
  background: rgba(114, 167, 255, 0.1);
}

.protected-roster-card > header svg {
  width: 14px;
}

.protected-roster-card > header > svg {
  color: var(--sage);
}

.protected-roster-card > header div {
  display: grid;
  gap: 2px;
}

.protected-roster-card > header b {
  font-size: 10px;
}

.protected-roster-card > header small {
  color: var(--muted);
  font-size: 7px;
}

.roster-assurance {
  display: flex;
  gap: 5px;
}

.roster-assurance span {
  min-height: 20px;
  padding: 0 6px;
  border: 1px solid rgba(143, 207, 113, 0.2);
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--sage);
  background: rgba(143, 207, 113, 0.06);
  font-size: 7px;
}

.roster-assurance svg {
  width: 11px;
}

.protected-roster-list {
  max-height: 132px;
  overflow-y: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.protected-roster-list > span {
  min-width: 0;
  padding: 6px 7px;
  border: 1px solid rgba(189, 215, 220, 0.1);
  border-radius: 7px;
  display: grid;
  gap: 2px;
  background: rgba(4, 17, 24, 0.34);
}

.protected-roster-list b {
  overflow: hidden;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.protected-roster-list small {
  color: var(--sage);
  font-size: 7px;
}

.roster-error {
  margin: 0;
  color: var(--red);
  font-size: 8px;
  line-height: 1.35;
}

.protected-roster-card > .button {
  width: 100%;
  min-height: 32px;
  justify-content: center;
  font-size: 8px;
}

.inspector-actions {
  position: sticky;
  bottom: 0;
  z-index: 4;
  margin: 0 -10px -13px;
  padding: 11px 10px 13px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 7px;
  border-top: 1px solid var(--glass-border);
  background: rgba(9, 27, 36, 0.94);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.inspector-actions .button {
  min-width: 0;
  min-height: 34px;
  padding-inline: 8px;
  font-size: 8px;
}

.inspector-actions .button.text {
  grid-column: 1 / -1;
  min-height: 24px;
}

.operations-activity-rail {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(410px, 0.75fr);
  gap: 10px;
}

.radio-activity-rail {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.radio-activity-rail > header {
  height: 48px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.radio-activity-rail > header > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.radio-activity-rail > header svg {
  width: 16px;
  color: var(--blue);
}

.radio-activity-rail > header b {
  font-size: 11px;
}

.live-indicator {
  margin-left: 4px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--muted);
  font-size: 8px;
}

.live-indicator i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sage);
  box-shadow: 0 0 0 3px rgba(151, 201, 115, 0.08);
}

.radio-activity-rows {
  display: grid;
}

.radio-activity-row {
  min-width: 0;
  min-height: 45px;
  padding: 0 12px;
  display: grid;
  grid-template-columns: 42px 24px 72px 64px minmax(160px, 1fr) 95px 34px 20px;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  border-bottom: 1px solid rgba(193, 216, 220, 0.09);
  background: transparent;
  text-align: left;
}

.radio-activity-row:last-child { border-bottom: 0; }
.radio-activity-row:hover { background: rgba(114, 167, 255, 0.045); }
.radio-activity-row time { color: var(--muted); font-size: 9px; }
.radio-activity-row b { color: color-mix(in srgb, var(--group-color) 72%, white); font-size: 10px; }
.radio-activity-row p { margin: 0; overflow: hidden; text-overflow: ellipsis; color: var(--muted-strong); font-size: 9px; white-space: nowrap; }
.radio-activity-row > small { color: var(--muted); font-size: 8px; }
.radio-activity-row > svg { width: 14px; }

.radio-group-symbol {
  --group-color: var(--blue);
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  color: var(--group-color);
  border: 1px solid color-mix(in srgb, var(--group-color) 50%, transparent);
  border-radius: 50%;
}

.radio-group-symbol svg { width: 12px; }

.radio-kind {
  min-height: 21px;
  padding: 0 6px;
  border: 1px solid rgba(112, 162, 223, 0.22);
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #9ec4ed;
  background: rgba(54, 111, 172, 0.14);
  font-size: 8px;
}

.wave-mini {
  height: 24px;
  display: flex;
  align-items: center;
  gap: 2px;
  opacity: 0.45;
}

.weekly-operations {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.weekly-operations > header {
  min-height: 48px;
  padding: 0 10px 0 12px;
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.weekly-operations > header > div {
  min-width: 0;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
}

.weekly-operations > header svg {
  width: 15px;
  color: var(--amber);
}

.weekly-operations > header span {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.weekly-operations > header b { font-size: 10px; }
.weekly-operations > header small { color: var(--muted); font-size: 7px; }

.weekly-operation-rows {
  display: grid;
}

.weekly-operation-row {
  min-width: 0;
  min-height: 34px;
  padding: 3px 8px;
  border-bottom: 1px solid rgba(193, 216, 220, 0.08);
  display: grid;
  grid-template-columns: 25px 55px minmax(0, 1fr) auto 13px;
  align-items: center;
  gap: 6px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.weekly-operation-row:last-child { border-bottom: 0; }
.weekly-operation-row:hover { background: rgba(229, 185, 79, 0.045); }
.weekly-operation-row > svg { width: 11px; color: var(--muted); }

.weekly-operation-icon {
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(229, 185, 79, 0.23);
  border-radius: 7px;
  color: var(--amber);
  background: rgba(229, 185, 79, 0.07);
}

.weekly-operation-row.status-ready .weekly-operation-icon { color: var(--sage); border-color: rgba(143, 207, 113, 0.28); }
.weekly-operation-row.status-attention .weekly-operation-icon { color: var(--copper); border-color: rgba(217, 119, 87, 0.28); }
.weekly-operation-icon svg { width: 12px; }

.weekly-operation-time,
.weekly-operation-copy {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.weekly-operation-time b { font-size: 8px; }
.weekly-operation-time small,
.weekly-operation-copy small {
  overflow: hidden;
  color: var(--muted);
  font-size: 6.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weekly-operation-copy b {
  overflow: hidden;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weekly-operation-groups {
  display: flex;
  align-items: center;
}

.weekly-operation-groups i {
  --group-color: var(--blue);
  width: 19px;
  height: 19px;
  margin-left: -3px;
  display: grid;
  place-items: center;
  border: 1px solid var(--group-color);
  border-radius: 50%;
  color: var(--group-color);
  background: #09202a;
  font-style: normal;
}

.wave-mini i {
  width: 1px;
  border-radius: 1px;
  background: var(--text-soft);
}

/* Operations command surface */

.map-operations-key:not(.open) {
  width: 184px;
}

.map-operations-key:not(.open) .map-key-toggle {
  min-height: 42px;
}

.map-coordinate-readout {
  right: 14px;
}

.inspector-title {
  min-height: 76px;
  padding: 10px 12px;
  align-items: center;
}

.inspector-identity {
  --group-color: var(--blue);
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.inspector-group-icon {
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  color: var(--group-color);
  border: 1px solid color-mix(in srgb, var(--group-color) 75%, white 8%);
  border-radius: 50%;
  background:
    radial-gradient(circle, color-mix(in srgb, var(--group-color) 18%, transparent), transparent 68%),
    rgba(5, 20, 27, 0.92);
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--group-color) 8%, transparent);
}

.inspector-identity > div {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 3px 7px;
}

.inspector-identity h2 {
  margin: 0;
  font-size: 18px;
}

.inspector-identity .group-state {
  justify-self: start;
  min-height: 18px;
  padding-inline: 6px;
  font-size: 7px;
}

.inspector-identity small {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 8px;
}

.inspector-telemetry {
  min-height: 58px;
  padding: 0 8px;
  border-bottom: 1px solid var(--glass-border);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: rgba(255, 255, 255, 0.012);
}

.inspector-telemetry > span {
  min-width: 0;
  padding: 9px 5px 8px;
  border-right: 1px solid rgba(189, 215, 220, 0.09);
  display: grid;
  grid-template-columns: 13px minmax(0, 1fr);
  align-content: center;
  gap: 1px 4px;
}

.inspector-telemetry > span:last-child { border-right: 0; }
.inspector-telemetry svg { grid-row: 1 / span 2; width: 12px; color: var(--muted-strong); }
.inspector-telemetry small { overflow: hidden; color: var(--muted); font-size: 6.5px; text-overflow: ellipsis; white-space: nowrap; }
.inspector-telemetry b { overflow: hidden; color: var(--text-soft); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }

.inspector-priority-card,
.inspector-conditions,
.inspector-week {
  margin: 9px 9px 0;
  overflow: hidden;
  border: 1px solid rgba(189, 215, 220, 0.12);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(114, 167, 255, 0.045), transparent 52%),
    rgba(255, 255, 255, 0.018);
}

.inspector-priority-card > header,
.inspector-conditions > header,
.inspector-week > header {
  min-height: 30px;
  padding: 0 9px;
  border-bottom: 1px solid rgba(189, 215, 220, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.inspector-priority-card > header b,
.inspector-conditions > header b,
.inspector-week > header b { font-size: 9px; }

.inspector-priority-card > header small,
.inspector-conditions > header small { color: var(--muted); font-size: 7px; }

.inspector-priority-card > button,
.inspector-week > button {
  width: 100%;
  min-height: 42px;
  padding: 5px 8px;
  border-bottom: 1px solid rgba(189, 215, 220, 0.075);
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr) 13px;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.inspector-priority-card > button:last-child,
.inspector-week > button:last-child { border-bottom: 0; }
.inspector-priority-card > button:hover,
.inspector-week > button:hover { background: rgba(114, 167, 255, 0.045); }
.inspector-priority-card > button > span:nth-child(2),
.inspector-week > button > span:nth-child(2) { min-width: 0; display: grid; gap: 2px; }
.inspector-priority-card button b,
.inspector-week button b { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.inspector-priority-card button small,
.inspector-week button small { overflow: hidden; color: var(--muted); font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.inspector-priority-card button > svg { width: 12px; color: var(--muted); }

.priority-icon {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(114, 167, 255, 0.25);
  border-radius: 8px;
  color: var(--blue);
  background: rgba(114, 167, 255, 0.08);
}

.priority-icon svg { width: 13px; }
.priority-icon.operation-medical-run { color: #c49af0; border-color: rgba(196, 154, 240, 0.25); background: rgba(196, 154, 240, 0.07); }
.priority-icon.operation-intake { color: var(--sage); border-color: rgba(143, 207, 113, 0.25); background: rgba(143, 207, 113, 0.07); }
.priority-icon.operation-outtake,
.priority-icon.operation-appointment { color: var(--amber); border-color: rgba(229, 185, 79, 0.25); background: rgba(229, 185, 79, 0.07); }

.inspector-conditions > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.inspector-conditions > div > span {
  min-width: 0;
  padding: 8px;
  border-right: 1px solid rgba(189, 215, 220, 0.08);
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  gap: 1px 6px;
}

.inspector-conditions > div > span:last-child { border-right: 0; }
.inspector-conditions svg { grid-row: 1 / span 2; width: 15px; color: #62c9db; }
.inspector-conditions > div > span:last-child svg { color: var(--amber); }
.inspector-conditions small { color: var(--muted); font-size: 7px; }
.inspector-conditions b { overflow: hidden; font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }

.inspector-week > header button {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--blue);
  background: transparent;
  font-size: 7px;
}

.inspector-week > header svg { width: 10px; }
.inspector-week > button { grid-template-columns: 27px minmax(0, 1fr) auto; min-height: 38px; }
.inspector-week > button > i {
  padding: 2px 5px;
  border: 1px solid rgba(189, 215, 220, 0.12);
  border-radius: 999px;
  color: var(--muted);
  font-size: 6px;
  font-style: normal;
  text-transform: capitalize;
}
.inspector-week > button > i.status-ready { color: var(--sage); border-color: rgba(143, 207, 113, 0.24); }
.inspector-week > button > i.status-attention { color: var(--copper); border-color: rgba(217, 119, 87, 0.24); }

.field-team-section {
  background: linear-gradient(135deg, rgba(114, 167, 255, 0.035), transparent), rgba(255,255,255,0.018);
}

.operations-activity-rail {
  grid-template-columns: 285px minmax(0, 1fr);
}

.radio-activity-rail,
.weekly-operations {
  display: grid;
  min-height: 0;
}

.radio-activity-rail {
  grid-template-rows: 44px minmax(0, 1fr);
}

.radio-activity-rail > header,
.weekly-operations > header {
  height: 44px;
  min-height: 44px;
}

.radio-activity-rail > header {
  padding-inline: 11px 7px;
}

.radio-activity-rail > header .button {
  min-height: 30px;
  padding-inline: 5px;
  font-size: 7px;
}

.live-indicator {
  margin-left: 0;
  font-size: 6.5px;
}

.radio-activity-rows {
  min-height: 0;
  grid-template-rows: repeat(3, minmax(0, 1fr));
}

.radio-activity-row {
  min-height: 0;
  padding: 4px 8px;
  grid-template-columns: 34px 23px minmax(0, 1fr) auto;
  grid-template-areas:
    "time symbol name kind"
    ". symbol detail detail";
  gap: 2px 6px;
}

.radio-activity-row time { grid-area: time; font-size: 7px; }
.radio-activity-row .radio-group-symbol { grid-area: symbol; }
.radio-activity-row > b { grid-area: name; font-size: 8px; }
.radio-activity-row .radio-kind { grid-area: kind; min-height: 18px; padding-inline: 4px; font-size: 6px; }
.radio-activity-row p { grid-area: detail; font-size: 6.8px; }
.radio-activity-row .wave-mini,
.radio-activity-row > small,
.radio-activity-row > svg { display: none; }

.weekly-operations {
  grid-template-rows: 44px 22px minmax(0, 1fr);
}

.weekly-operation-head,
.weekly-operation-row {
  grid-template-columns: minmax(120px, 1.3fr) 52px 42px minmax(86px, .9fr) minmax(105px, 1fr) 58px 72px 12px;
}

.weekly-operation-head {
  min-width: 0;
  padding: 0 7px;
  border-bottom: 1px solid rgba(189, 215, 220, 0.1);
  display: grid;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.016);
  font-size: 6px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.weekly-operation-rows {
  min-height: 0;
  display: grid;
  grid-template-rows: repeat(6, minmax(0, 1fr));
}

.weekly-operation-row {
  min-height: 0;
  padding: 2px 7px;
  gap: 6px;
}

.weekly-operation-kind {
  min-width: 0;
  display: grid;
  grid-template-columns: 23px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
}

.weekly-operation-kind b,
.weekly-operation-date b {
  overflow: hidden;
  font-size: 7.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weekly-operation-date {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.weekly-operation-date small,
.weekly-operation-window,
.weekly-operation-assignment,
.weekly-operation-row time {
  overflow: hidden;
  color: var(--muted);
  font-size: 6.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weekly-operation-row time { color: var(--text-soft); }
.weekly-operation-status {
  min-width: 0;
  padding: 2px 5px;
  overflow: hidden;
  border: 1px solid rgba(189, 215, 220, 0.12);
  border-radius: 999px;
  color: var(--muted);
  font-size: 6px;
  text-align: center;
  text-overflow: ellipsis;
  text-transform: capitalize;
}
.weekly-operation-status.status-ready { color: var(--sage); border-color: rgba(143, 207, 113, 0.25); }
.weekly-operation-status.status-attention { color: var(--copper); border-color: rgba(217, 119, 87, 0.25); }
.weekly-operation-status.status-recurring { color: var(--blue); border-color: rgba(114, 167, 255, 0.25); }

.weekly-operation-icon {
  margin: 0;
  font-style: normal;
}

/* Call-ins */

.callins-workspace {
  height: 100%;
  padding: 10px;
  display: grid;
  grid-template-columns: 236px minmax(560px, 1fr) 278px;
  gap: 9px;
}

.callin-queue,
.callin-editor,
.callin-workflow {
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  border-radius: var(--radius-md);
  scrollbar-width: thin;
  scrollbar-color: rgba(143, 169, 175, 0.3) transparent;
}

.callin-queue {
  display: flex;
  flex-direction: column;
}

.callin-queue > header {
  padding: 14px 12px 12px;
  border-bottom: 1px solid var(--glass-border);
}

.callin-queue > header > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.callin-queue > header b { font-size: 12px; }
.callin-queue > header span { color: var(--muted); font-size: 9px; }

.queue-progress {
  height: 5px;
  margin-top: 10px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(255,255,255,0.08);
}

.queue-progress i {
  width: 80%;
  height: 100%;
  display: block;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--sage), #6da993);
}

.queue-window {
  padding: 12px 8px 4px;
}

.queue-window > header {
  padding: 0 4px 7px;
  display: grid;
  gap: 2px;
}

.queue-window > header b { color: var(--muted-strong); font-size: 10px; }
.queue-window > header small { color: var(--muted); font-size: 8px; }

.queue-row {
  width: 100%;
  min-height: 58px;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 9px;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.queue-row:hover { background: rgba(255,255,255,0.035); }
.queue-row.selected { border-color: rgba(114,167,255,0.62); background: rgba(63, 122, 183, 0.19); box-shadow: inset 0 0 0 1px rgba(114,167,255,0.08); }
.queue-row > span:nth-child(2) { min-width: 0; display: grid; gap: 3px; }
.queue-row b { font-size: 10px; }
.queue-row small { overflow: hidden; text-overflow: ellipsis; color: var(--muted); font-size: 8px; white-space: nowrap; }
.queue-row time { color: var(--muted-strong); font-size: 8px; }

.queue-state-icon {
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--sage);
}

.queue-state-icon svg { width: 12px; }
.queue-row.state-due .queue-state-icon { color: var(--amber); }
.queue-row.state-review .queue-state-icon { color: var(--copper); }
.queue-row.state-follow-up .queue-state-icon { color: var(--blue); }

.queue-all {
  margin: auto 9px 9px;
  min-height: 38px;
}

.callin-editor {
  background: rgba(8, 25, 34, 0.84);
}

.editor-title {
  min-height: 52px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.editor-title h2 {
  margin: 0;
  font-size: 14px;
}

.editor-title p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 8px;
}

.unsaved-state,
.saved-state {
  min-height: 23px;
  padding: 0 7px;
  border: 1px solid rgba(114, 167, 255, 0.34);
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #91baf2;
  background: rgba(57, 126, 201, 0.1);
  font-size: 8px;
  font-weight: 750;
  text-transform: uppercase;
}

.saved-state {
  color: var(--sage);
  border-color: rgba(151, 201, 115, 0.3);
  background: rgba(99, 156, 79, 0.1);
}

.saved-state svg { width: 12px; }

.callin-stepper {
  min-width: 680px;
  height: 47px;
  padding: 0 9px;
  display: grid;
  grid-template-columns: repeat(7, minmax(72px, 1fr));
  align-items: stretch;
  border-bottom: 1px solid var(--glass-border);
  overflow-x: auto;
}

.callin-stepper button {
  position: relative;
  padding: 0 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--muted);
  background: transparent;
  font-size: 8px;
}

.callin-stepper button::after {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0;
  height: 2px;
  content: "";
  background: transparent;
}

.callin-stepper button.active {
  color: var(--text);
}

.callin-stepper button.active::after {
  background: var(--blue);
  box-shadow: 0 -4px 14px rgba(114,167,255,0.35);
}

.callin-stepper button > span {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 8px;
}

.callin-stepper button.complete > span {
  color: var(--sage);
  background: rgba(120, 172, 96, 0.1);
}

.callin-stepper button > span svg { width: 11px; }

.source-transcript {
  margin: 9px;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  background: rgba(255,255,255,0.02);
}

.source-audio {
  min-height: 50px;
  padding: 7px 10px;
  display: grid;
  grid-template-columns: 32px minmax(110px, 1fr) auto auto;
  align-items: center;
  gap: 9px;
  border-bottom: 1px solid rgba(191, 217, 221, 0.11);
}

.play-button {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: white;
  background: linear-gradient(180deg, #4d8ed4, #3473ba);
}

.play-button svg { width: 13px; fill: currentColor; }

.audio-wave {
  height: 30px;
  display: flex;
  align-items: center;
  gap: 2px;
  overflow: hidden;
}

.audio-wave i {
  width: 2px;
  min-width: 2px;
  border-radius: 2px;
  background: #547791;
  transition: background 140ms ease, transform 140ms ease;
}

.audio-wave.active i {
  background: var(--blue);
  animation: wave-pulse 680ms ease-in-out infinite alternate;
}

.audio-wave.active i:nth-child(3n) { animation-delay: 160ms; }
.audio-wave.active i:nth-child(4n) { animation-delay: 290ms; }

@keyframes wave-pulse {
  to { transform: scaleY(0.55); opacity: 0.58; }
}

.source-audio > time {
  color: var(--muted);
  font-size: 8px;
  white-space: nowrap;
}

.source-audio dl {
  margin: 0;
  display: flex;
  gap: 12px;
}

.source-audio dl div {
  display: grid;
  gap: 2px;
}

.source-audio dt { color: var(--muted); font-size: 7px; }
.source-audio dd { margin: 0; color: var(--text-soft); font-size: 8px; }

.transcript-lines {
  padding: 8px 10px;
}

.transcript-lines p {
  margin: 0 0 3px;
  color: var(--muted-strong);
  font-size: 8px;
  line-height: 1.45;
}

.transcript-lines time { margin-right: 6px; color: var(--muted); }
.transcript-lines span { color: var(--blue); font-weight: 700; }
.transcript-lines details { color: var(--blue); font-size: 8px; }
.transcript-lines summary { cursor: pointer; }
.transcript-lines details p { margin-top: 7px; color: var(--text-soft); }

.callin-disclosure {
  min-height: 37px;
  margin: 0 9px 8px;
  padding: 0 9px;
  display: flex;
  align-items: center;
  gap: 14px;
  border: 1px solid rgba(190, 214, 219, 0.12);
  border-radius: 8px;
  color: var(--muted-strong);
  background: rgba(255,255,255,0.018);
  font-size: 8px;
}

.callin-disclosure span,
.callin-disclosure b {
  display: flex;
  align-items: center;
  gap: 5px;
}

.callin-disclosure svg { width: 12px; }
.callin-disclosure .warning { color: var(--amber); }
.callin-disclosure .resolved { color: var(--sage); }
.callin-disclosure b { margin-left: auto; color: var(--copper); font-weight: 600; }

.field-table {
  min-width: 670px;
  margin: 0 9px 10px;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
}

.field-table-head,
.field-row {
  display: grid;
  grid-template-columns: 20% 29% 22% 29%;
  align-items: center;
}

.field-table-head {
  min-height: 31px;
  padding: 0 9px;
  color: var(--muted);
  border-bottom: 1px solid var(--glass-border);
  background: rgba(255,255,255,0.026);
  font-size: 7px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.structured-field {
  border-bottom: 1px solid rgba(191, 217, 221, 0.095);
}

.structured-field:last-child { border-bottom: 0; }

.field-row {
  min-height: 39px;
  padding: 5px 9px;
  color: var(--text-soft);
  font-size: 8px;
}

.field-row > * {
  min-width: 0;
  padding-right: 8px;
}

.field-label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted-strong);
}

.field-label svg {
  width: 12px;
  color: var(--muted);
}

.field-row strong {
  color: var(--text);
  font-size: 8px;
  line-height: 1.35;
}

.source-state {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--sage);
  font-size: 7px;
  font-weight: 650;
}

.source-state svg { width: 10px; }
.source-needs-clarification { color: var(--amber); }

.field-evidence {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  color: var(--muted);
  white-space: nowrap;
}

.field-evidence button {
  min-height: 25px;
  padding: 0 6px;
  border: 1px solid rgba(114,167,255,0.28);
  border-radius: 5px;
  color: #9cc1ec;
  background: rgba(49, 109, 171, 0.08);
  font-size: 7px;
}

.needs-clarification .field-row {
  background: rgba(211, 155, 61, 0.035);
}

.source-evidence {
  padding: 8px 12px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--text-soft);
  border-top: 1px dashed rgba(114,167,255,0.2);
  background: rgba(73, 123, 166, 0.06);
}

.source-evidence > svg {
  width: 14px;
  color: var(--blue);
}

.source-evidence b { font-size: 8px; }
.source-evidence p { margin: 3px 0 0; color: var(--muted-strong); font-size: 8px; line-height: 1.4; }

.location-confirmation {
  margin: 0 9px 9px;
  padding: 8px;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 10px;
  border: 1px solid rgba(226, 183, 79, 0.24);
  border-radius: 8px;
  background: rgba(192, 137, 47, 0.045);
}

.mini-topographic-map {
  position: relative;
  min-height: 124px;
  overflow: hidden;
  border: 1px solid rgba(207, 216, 191, 0.2);
  border-radius: 7px;
  background:
    repeating-radial-gradient(ellipse at 55% 50%, transparent 0 8px, rgba(30, 54, 47, 0.25) 9px 10px, transparent 11px 17px),
    linear-gradient(140deg, #8c9275, #c1bca0 47%, #747b67);
}

.mini-topographic-map::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(120deg, transparent 30%, rgba(71, 105, 135, 0.35) 31% 32%, transparent 33%);
}

.mini-pin {
  position: absolute;
  left: 54%;
  top: 43%;
  z-index: 2;
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  border: 2px solid white;
  border-radius: 50%;
  color: white;
  background: var(--blue-strong);
  box-shadow: 0 0 0 5px rgba(114,167,255,0.25);
}

.mini-pin svg { width: 13px; }

.mini-scale {
  position: absolute;
  left: 8px;
  bottom: 7px;
  z-index: 2;
  padding: 2px 5px;
  color: #f3eee1;
  background: rgba(24,36,32,0.55);
  font-size: 7px;
}

.mini-topographic-map button {
  position: absolute;
  right: 7px;
  top: 7px;
  z-index: 2;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  color: white;
  background: rgba(20, 35, 38, 0.65);
}

.mini-topographic-map button svg { width: 13px; }

.coordinate-ambiguity {
  padding: 5px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.coordinate-ambiguity > svg {
  width: 16px;
  color: var(--amber);
}

.coordinate-ambiguity b { font-size: 9px; }
.coordinate-ambiguity p { margin: 4px 0 8px; color: var(--muted-strong); font-size: 8px; line-height: 1.45; }

.coordinate-options {
  display: flex;
  gap: 7px;
}

.coordinate-options button {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(114,167,255,0.3);
  border-radius: 6px;
  color: var(--text);
  background: rgba(70, 125, 180, 0.08);
  font-size: 9px;
}

.coordinate-options button:hover {
  border-color: var(--blue);
  background: rgba(70, 125, 180, 0.18);
}

.coordinate-options small {
  margin-left: 5px;
  color: var(--muted);
  font-size: 7px;
}

.callin-workflow {
  display: flex;
  flex-direction: column;
}

.callin-workflow > header {
  min-height: 52px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.callin-workflow > header h2 { margin: 0; font-size: 13px; }
.callin-workflow > header span { color: var(--sage); font-size: 10px; font-weight: 700; }

.completion-ring {
  --completion: 308deg;
  width: 78px;
  height: 78px;
  margin: 17px auto;
  padding: 7px;
  border-radius: 50%;
  background: conic-gradient(var(--sage) var(--completion), rgba(255,255,255,0.08) 0);
}

.completion-ring > span {
  width: 100%;
  height: 100%;
  display: grid;
  place-content: center;
  justify-items: center;
  border-radius: 50%;
  color: var(--text);
  background: #0b212b;
}

.completion-ring b { font-size: 17px; }
.completion-ring small { color: var(--muted); font-size: 7px; }

.workflow-block {
  margin: 0 9px 8px;
  padding: 10px;
  border: 1px solid rgba(193, 217, 221, 0.12);
  border-radius: 9px;
  background: rgba(255,255,255,0.018);
}

.workflow-label {
  display: flex;
  align-items: center;
  gap: 7px;
}

.workflow-label svg {
  width: 14px;
  color: var(--copper);
}

.workflow-label b { font-size: 9px; }
.workflow-label span { margin-left: auto; color: var(--amber); font-size: 8px; }
.workflow-block p { margin: 7px 0 0; color: var(--text-soft); font-size: 8px; line-height: 1.4; }
.workflow-block > small { display: block; margin-top: 3px; color: var(--muted); font-size: 7px; line-height: 1.4; }

.approval-chain {
  display: grid;
  gap: 7px;
}

.approval-step {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}

.approval-step > span {
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--muted);
  font-size: 8px;
}

.approval-step.complete > span { color: var(--sage); background: rgba(124,174,92,0.1); }
.approval-step.pending > span { color: var(--copper); background: rgba(212,130,82,0.1); }
.approval-step svg { width: 11px; }
.approval-step div { display: grid; gap: 2px; }
.approval-step b { font-size: 8px; }
.approval-step small { color: var(--muted); font-size: 7px; }

.reviewer-note {
  margin: 0 9px;
  display: grid;
  gap: 6px;
  color: var(--muted-strong);
  font-size: 8px;
}

.reviewer-note textarea {
  min-height: 62px;
  padding: 8px;
  resize: vertical;
  color: var(--text);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  background: rgba(255,255,255,0.025);
  font-size: 9px;
}

.workflow-actions {
  margin-top: auto;
  padding: 10px 9px;
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--glass-border);
  background: rgba(5, 19, 26, 0.4);
}

.workflow-actions > small {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  color: var(--muted);
  font-size: 7px;
  line-height: 1.4;
}

.workflow-actions > small svg { width: 12px; }

.scheduled-callin-summary {
  max-width: 560px;
  margin: 70px auto;
  padding: 28px;
  display: grid;
  justify-items: center;
  text-align: center;
}

.schedule-symbol {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(114,167,255,0.3);
  border-radius: 50%;
  color: var(--blue);
  background: rgba(114,167,255,0.08);
}

.schedule-symbol.state-due { color: var(--amber); border-color: rgba(226,183,79,0.36); background: rgba(226,183,79,0.08); }
.scheduled-callin-summary h3 { margin: 15px 0 7px; font-size: 20px; }
.scheduled-callin-summary > p { max-width: 480px; color: var(--muted-strong); font-size: 11px; line-height: 1.55; }
.scheduled-callin-summary dl { width: 100%; margin: 18px 0; display: grid; grid-template-columns: repeat(2, 1fr); text-align: left; }
.scheduled-callin-summary dl div { padding: 10px; border: 1px solid var(--glass-border); }
.scheduled-callin-summary dt { color: var(--muted); font-size: 8px; }
.scheduled-callin-summary dd { margin: 4px 0 0; color: var(--text); font-size: 10px; }

.mobile-callin-actions {
  display: none;
}

/* Reports & documents */

.reports-workspace {
  height: 100%;
  padding: 9px;
  display: grid;
  grid-template-columns: 246px minmax(620px, 1fr) 274px;
  gap: 9px;
}

.document-library,
.approval-workflow {
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  border-radius: var(--radius-md);
  scrollbar-width: thin;
  scrollbar-color: rgba(143, 169, 175, 0.3) transparent;
}

.document-library > header {
  min-height: 58px;
  padding: 0 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.document-library > header > div {
  display: grid;
  gap: 3px;
}

.document-library > header b { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; }
.document-library > header small { color: var(--muted); font-size: 8px; }

.document-search {
  height: 38px;
  margin: 8px;
  padding: 0 9px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  background: rgba(255,255,255,0.025);
}

.document-search svg { width: 14px; }
.document-search input { width: 100%; color: var(--text); border: 0; outline: 0; background: transparent; font-size: 9px; }

.library-section {
  padding: 0 7px 7px;
}

.library-section > header,
.template-list > summary {
  min-height: 30px;
  padding: 0 5px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--muted-strong);
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.library-section > header small,
.template-list > summary small {
  min-width: 19px;
  height: 18px;
  display: grid;
  place-items: center;
  border-radius: 99px;
  color: var(--muted-strong);
  background: rgba(255,255,255,0.06);
  font-size: 7px;
}

.document-row {
  width: 100%;
  min-height: 48px;
  padding: 7px;
  border: 1px solid transparent;
  border-radius: 8px;
  display: grid;
  grid-template-columns: 19px minmax(0, 1fr) 15px;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.document-row:hover { background: rgba(255,255,255,0.03); }
.document-row.selected { color: var(--text); border-color: rgba(114,167,255,0.52); background: rgba(55, 119, 181, 0.2); box-shadow: inset 3px 0 0 var(--blue); }
.document-row > svg { width: 14px; color: var(--blue); }
.document-row > svg:last-child { color: var(--copper); }
.document-row > span { min-width: 0; display: grid; gap: 2px; }
.document-row b { overflow: hidden; text-overflow: ellipsis; font-size: 8px; white-space: nowrap; }
.document-row small { color: var(--muted); font-size: 7px; }

.template-list {
  padding: 0 7px 9px;
}

.template-list > summary {
  cursor: pointer;
  list-style: none;
}

.template-list > summary::-webkit-details-marker { display: none; }
.template-list > button {
  width: 100%;
  min-height: 31px;
  padding: 0 6px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted-strong);
  background: transparent;
  text-align: left;
  font-size: 8px;
}

.template-list > button:hover { color: var(--text); background: rgba(255,255,255,0.025); }
.template-list > button svg { width: 12px; }

.document-workspace {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 56px minmax(0, 1fr) 112px;
  gap: 8px;
}

.document-toolbar {
  position: relative;
  z-index: 12;
  padding: 6px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  gap: 6px;
}

.document-toolbar label {
  min-width: 148px;
  height: 42px;
  padding: 5px 8px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  display: grid;
  gap: 1px;
  background: rgba(255,255,255,0.02);
}

.document-toolbar label:nth-child(2) {
  min-width: 108px;
}

.document-toolbar label span {
  color: var(--muted);
  font-size: 7px;
}

.document-toolbar select {
  padding: 0;
  border: 0;
  outline: 0;
  color: var(--text);
  background: transparent;
  font-size: 8px;
}

.document-toolbar > .button:last-child {
  margin-left: auto;
}

.export-menu {
  position: relative;
}

.export-popover {
  position: absolute;
  right: 0;
  top: calc(100% + 7px);
  z-index: 20;
  min-width: 150px;
  padding: 5px;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  background: rgba(8, 25, 34, 0.98);
  box-shadow: var(--shadow-lg);
}

.export-popover button {
  width: 100%;
  min-height: 34px;
  padding: 0 9px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 6px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
  font-size: 9px;
}

.export-popover button:hover { color: var(--text); background: rgba(114,167,255,0.09); }
.export-popover svg { width: 13px; }

.report-paper {
  position: relative;
  min-width: 690px;
  width: min(100%, 840px);
  height: 100%;
  min-height: 620px;
  margin: 0 auto;
  padding: 27px 30px 20px;
  overflow-y: auto;
  color: var(--paper-ink);
  border: 1px solid rgba(88, 76, 54, 0.3);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(109, 88, 52, 0.02), transparent 6%, transparent 94%, rgba(109, 88, 52, 0.02)),
    var(--paper);
  box-shadow: 0 22px 56px rgba(0,0,0,0.48), inset 0 0 50px rgba(106, 88, 54, 0.04);
  font-family: Inter, Arial, sans-serif;
  scrollbar-width: thin;
  scrollbar-color: rgba(67, 67, 59, 0.3) transparent;
}

.report-paper-header {
  position: relative;
  min-height: 64px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 2px solid #283336;
}

.paper-brand {
  display: flex;
  align-items: center;
  gap: 9px;
}

.paper-brand > span {
  width: 39px;
  height: 39px;
  display: grid;
  place-items: center;
  border: 2px solid #273336;
  transform: rotate(45deg);
  font-size: 8px;
  font-weight: 800;
}

.paper-brand > span::first-letter { transform: rotate(-45deg); }

.paper-brand div {
  display: grid;
  gap: 2px;
}

.paper-brand b {
  font-size: 17px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.paper-brand small {
  color: #536064;
  font-size: 7px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.report-paper-header dl {
  margin: 0 110px 0 0;
  display: grid;
  gap: 3px;
}

.report-paper-header dl div {
  display: grid;
  grid-template-columns: 66px 1fr;
  gap: 7px;
  font-size: 7px;
}

.report-paper dt { font-weight: 800; text-transform: uppercase; }
.report-paper dd { margin: 0; }

.paper-watermark {
  position: absolute;
  right: 2px;
  top: 2px;
  width: 92px;
  height: 52px;
  display: grid;
  place-content: center;
  justify-items: center;
  color: #b0613c;
  border: 3px solid currentColor;
  transform: rotate(-6deg);
  opacity: 0.55;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.paper-watermark small {
  font-size: 6px;
  letter-spacing: 0.02em;
}

.paper-watermark.final {
  color: #4d7a4a;
  opacity: 0.72;
}

.report-paper > h2 {
  margin: 13px 0 7px;
  font-size: 15px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.paper-meta-grid {
  display: grid;
  grid-template-columns: 1.5fr 0.8fr 1fr;
  border: 1px solid #8b9390;
}

.paper-meta-grid span {
  min-height: 34px;
  padding: 5px 7px;
  display: grid;
  gap: 2px;
  border-right: 1px solid #8b9390;
  font-size: 7px;
}

.paper-meta-grid span:last-child { border: 0; }
.paper-meta-grid b { font-size: 6px; text-transform: uppercase; }

.ai-disclosure {
  margin: 8px 0;
  padding: 5px 7px;
  display: flex;
  align-items: center;
  gap: 5px;
  border-top: 1px solid #8b9390;
  border-bottom: 1px solid #8b9390;
  font-size: 6.5px;
  line-height: 1.35;
}

.ai-disclosure svg { width: 10px; }

.paper-section-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.paper-section-grid > section {
  min-height: 110px;
  padding: 8px;
  border-right: 1px solid #8b9390;
  border-bottom: 1px solid #8b9390;
}

.paper-section-grid > section:nth-child(even) { border-right: 0; }

.report-paper h3 {
  margin: 0 0 6px;
  font-size: 7px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.paper-section-grid p {
  margin: 0;
  font-size: 7px;
  line-height: 1.55;
}

.report-paper table {
  width: 100%;
  border-collapse: collapse;
  font-size: 6.2px;
}

.report-paper th,
.report-paper td {
  padding: 3px 4px;
  border: 1px solid #9da4a0;
  text-align: left;
  vertical-align: top;
}

.report-paper th {
  font-weight: 700;
}

.report-paper td svg {
  width: 8px;
  height: 8px;
  color: #b15f37;
  vertical-align: middle;
}

.paper-signatures {
  padding: 9px 8px 6px;
  border-bottom: 1px solid #8b9390;
}

.paper-signatures > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid #8b9390;
}

.paper-signatures > div > div {
  min-height: 66px;
  padding: 6px;
  display: grid;
  gap: 3px;
  border-right: 1px solid #8b9390;
}

.paper-signatures > div > div:last-child { border: 0; }
.paper-signatures b { font-size: 6.5px; text-transform: uppercase; }
.paper-signatures small { font-size: 6px; }
.paper-signatures time { color: #576164; font-size: 5.5px; }
.paper-signatures .pending { color: #8f673f; }

.signature-line {
  min-height: 25px;
  padding-bottom: 2px;
  display: flex;
  align-items: flex-end;
  gap: 4px;
  border-bottom: 1px solid #6e7674;
  font-family: Georgia, serif;
  font-size: 8px;
  font-style: italic;
}

.signature-line svg {
  width: 13px;
}

.report-paper > footer {
  min-height: 26px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: #536064;
  font-size: 5.5px;
  text-transform: uppercase;
}

.report-paper > footer svg { width: 9px; }
.report-paper > footer span { margin-left: auto; }

.source-revision-drawer {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.drawer-tabs {
  height: 32px;
  padding: 0 7px;
  display: flex;
  align-items: flex-end;
  gap: 6px;
  border-bottom: 1px solid var(--glass-border);
}

.drawer-tabs button {
  height: 31px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  border-bottom: 2px solid transparent;
  background: transparent;
  font-size: 8px;
}

.drawer-tabs button.active { color: var(--blue); border-bottom-color: var(--blue); }
.drawer-tabs svg { width: 12px; }

.source-reference {
  height: 78px;
  padding: 8px 11px;
  display: grid;
  grid-template-columns: 22px minmax(150px, 1fr) minmax(200px, 1.2fr) auto;
  align-items: center;
  gap: 9px;
}

.source-reference > span {
  width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(151,201,115,0.4);
  border-radius: 50%;
  color: var(--sage);
}

.source-reference > span svg { width: 10px; }
.source-reference b { font-size: 9px; }
.source-reference p { margin: 3px 0 0; color: var(--muted); font-size: 7px; }
.source-reference dl { margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px 10px; }
.source-reference dl div { display: grid; grid-template-columns: 45px 1fr; font-size: 7px; }
.source-reference dt { color: var(--muted); }
.source-reference dd { margin: 0; color: var(--text-soft); }

.revision-list {
  padding: 8px 11px;
  display: grid;
  gap: 5px;
}

.revision-list div {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  color: var(--text-soft);
  font-size: 8px;
}

.revision-list span,
.revision-list time { color: var(--muted); }

.approval-workflow {
  display: flex;
  flex-direction: column;
}

.approval-workflow > header {
  min-height: 58px;
  padding: 0 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.approval-workflow > header h2 { margin: 0; font-size: 12px; }
.approval-workflow > header p { margin: 3px 0 0; color: var(--muted); font-size: 8px; }
.approval-workflow > header svg { width: 17px; color: var(--sage); }

.approval-workflow section {
  margin: 8px 8px 0;
  padding: 9px;
  border: 1px solid rgba(193,217,221,0.12);
  border-radius: 9px;
  background: rgba(255,255,255,0.018);
}

.approval-workflow h3 {
  margin: 0 0 8px;
  color: var(--muted-strong);
  font-size: 8px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.approval-rail-step {
  min-height: 45px;
  display: grid;
  grid-template-columns: 24px minmax(0,1fr) auto;
  align-items: center;
  gap: 7px;
}

.approval-rail-step > span {
  width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--copper);
}

.approval-rail-step.complete > span { color: var(--sage); }
.approval-rail-step svg { width: 11px; }
.approval-rail-step div { display: grid; gap: 2px; }
.approval-rail-step b { font-size: 8px; }
.approval-rail-step small { color: var(--muted); font-size: 7px; }
.approval-rail-step > i { color: var(--sage); font-size: 7px; font-style: normal; }
.approval-rail-step.pending > i { color: var(--copper); }

.workflow-data dl {
  margin: 0;
  display: grid;
  gap: 6px;
}

.workflow-data dl div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 7px;
}

.workflow-data dt { color: var(--muted); }
.workflow-data dd { margin: 0; color: var(--text-soft); text-align: right; }

.workflow-warning header,
.workflow-comment header {
  display: flex;
  align-items: center;
  gap: 6px;
}

.workflow-warning header svg,
.workflow-comment header svg { width: 13px; color: var(--copper); }
.workflow-warning header b,
.workflow-comment header b { font-size: 8px; }
.workflow-warning header span { margin-left: auto; color: var(--copper); font-size: 8px; }
.workflow-warning p,
.workflow-comment p { margin: 7px 0 0; color: #e5b49c; font-size: 7.5px; line-height: 1.45; }
.workflow-warning.resolved p { color: var(--sage); }
.workflow-comment p { color: var(--text-soft); }
.workflow-comment small { display: block; margin-top: 5px; color: var(--muted); font-size: 7px; }

.sources-reviewed span {
  min-height: 30px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid rgba(151,201,115,0.16);
  border-radius: 6px;
  color: var(--text-soft);
  background: rgba(91,139,75,0.06);
  font-size: 7px;
}

.sources-reviewed span svg { width: 12px; color: var(--sage); }

.approval-actions {
  margin-top: auto;
  padding: 10px 8px;
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--glass-border);
}

.approval-actions small {
  color: var(--muted);
  font-size: 6.5px;
  line-height: 1.45;
  text-align: center;
}

.dialog-backdrop {
  position: fixed;
  inset: 0;
  z-index: 200;
  padding: 20px;
  display: grid;
  place-items: center;
  background: rgba(1, 8, 12, 0.72);
  backdrop-filter: blur(7px);
}

.approval-dialog {
  width: min(560px, 100%);
  max-height: 90vh;
  overflow-y: auto;
  border-radius: var(--radius-lg);
  box-shadow: 0 35px 100px rgba(0,0,0,0.7);
}

.approval-dialog > header {
  min-height: 74px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.approval-dialog > header > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.approval-dialog > header > div > svg {
  width: 24px;
  color: var(--sage);
}

.approval-dialog h2 { margin: 0; font-size: 17px; }
.approval-dialog header p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }

.dialog-summary {
  padding: 14px 16px;
}

.dialog-summary dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

.dialog-summary dl div {
  padding: 9px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  background: rgba(255,255,255,0.02);
}

.dialog-summary dt { color: var(--muted); font-size: 8px; }
.dialog-summary dd { margin: 4px 0 0; color: var(--text); font-size: 10px; }

.approval-confirmation {
  margin: 0 16px 14px;
  padding: 12px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border: 1px solid rgba(226,183,79,0.24);
  border-radius: 9px;
  background: rgba(192,137,47,0.045);
}

.approval-confirmation input {
  width: 18px;
  height: 18px;
  accent-color: var(--sage);
}

.approval-confirmation span {
  display: grid;
  gap: 4px;
}

.approval-confirmation b { font-size: 10px; }
.approval-confirmation small { color: var(--muted); font-size: 8px; line-height: 1.45; }

.approval-dialog > footer {
  padding: 12px 16px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  border-top: 1px solid var(--glass-border);
}

/* Secondary workspaces */

.standard-workspace {
  height: 100%;
  padding: 22px;
  overflow-y: auto;
}

.page-intro {
  min-height: 62px;
  margin-bottom: 14px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.page-intro h2 {
  margin: 0;
  font-size: 22px;
  letter-spacing: -0.025em;
}

.page-intro p {
  max-width: 680px;
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.context-label {
  min-height: 35px;
  padding: 0 10px;
  border: 1px solid var(--glass-border);
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  background: rgba(255,255,255,0.025);
  font-size: 9px;
  font-weight: 650;
}

.context-label svg { width: 14px; color: var(--blue); }

.radio-capture-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 12px;
}

.capture-panel,
.source-integrity {
  border-radius: var(--radius-lg);
}

.capture-panel > header {
  min-height: 64px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--glass-border);
}

.capture-panel > header b { font-size: 11px; }
.capture-panel > header .button { margin-left: auto; }
.ready-dot,
.recording-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--sage); }
.recording-dot { background: var(--red); box-shadow: 0 0 0 5px rgba(216,110,85,0.1); }

.capture-wave {
  height: 210px;
  padding: 20px 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.capture-wave i {
  width: 3px;
  border-radius: 3px;
  background: #4f7184;
}

.capture-wave.active i {
  background: var(--blue);
  animation: wave-pulse 600ms ease-in-out infinite alternate;
}

.capture-wave time {
  position: absolute;
  margin-top: 160px;
  color: var(--muted);
  font-size: 10px;
}

.capture-methods {
  padding: 12px;
  display: flex;
  gap: 8px;
  border-top: 1px solid var(--glass-border);
}

.capture-methods label input { display: none; }

.source-integrity {
  padding: 24px;
}

.source-integrity > svg {
  width: 28px;
  color: var(--sage);
}

.source-integrity h3 { margin: 14px 0 7px; font-size: 16px; }
.source-integrity p { color: var(--muted); font-size: 10px; line-height: 1.55; }
.source-integrity dl { margin: 20px 0 0; display: grid; gap: 10px; }
.source-integrity dl div { display: grid; gap: 3px; }
.source-integrity dt { color: var(--muted); font-size: 8px; }
.source-integrity dd { margin: 0; color: var(--text); font-size: 10px; }

.next-step-panel {
  margin-top: 12px;
  padding: 13px 15px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.next-step-panel > div { display: flex; align-items: center; gap: 10px; }
.next-step-panel > div > svg { width: 23px; color: var(--sage); }
.next-step-panel b { font-size: 11px; }
.next-step-panel p { margin: 3px 0 0; color: var(--muted); font-size: 9px; }

.data-table-panel {
  overflow-x: auto;
  border-radius: var(--radius-md);
}

.data-table-panel table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
}

.data-table-panel th {
  height: 43px;
  padding: 0 13px;
  color: var(--muted);
  border-bottom: 1px solid var(--glass-border);
  font-size: 8px;
  letter-spacing: 0.05em;
  text-align: left;
  text-transform: uppercase;
}

.data-table-panel td {
  min-height: 50px;
  padding: 12px 13px;
  color: var(--text-soft);
  border-bottom: 1px solid rgba(191,216,220,0.09);
  font-size: 10px;
}

.data-table-panel tr:last-child td { border: 0; }
.data-table-panel tbody tr { cursor: pointer; }
.data-table-panel tbody tr:hover,
.data-table-panel tbody tr.selected { background: rgba(114,167,255,0.05); }
.data-table-panel td:first-child { display: flex; align-items: center; gap: 8px; }

.table-group-symbol {
  --group-color: var(--blue);
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border: 1px solid var(--group-color);
  border-radius: 50%;
  color: var(--group-color);
  font-size: 8px;
  font-weight: 800;
}

.table-status {
  min-height: 22px;
  padding: 0 7px;
  border: 1px solid currentColor;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  color: var(--sage);
  font-size: 7px;
  text-transform: capitalize;
}

.table-status.state-due { color: var(--amber); }
.table-status.state-follow-up { color: var(--copper); }
.table-status.state-stale { color: var(--red); }

.selected-group-summary {
  margin-top: 12px;
  padding: 16px;
  border-radius: var(--radius-md);
  display: grid;
  grid-template-columns: 270px 1fr;
  gap: 24px;
}

.selected-group-summary > div {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.selected-group-summary > div > svg { width: 23px; color: var(--blue); }
.selected-group-summary small { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.selected-group-summary h3 { margin: 3px 0; font-size: 17px; }
.selected-group-summary p { margin: 0; color: var(--muted); font-size: 9px; }
.selected-group-summary dl { margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.selected-group-summary dl div { display: grid; gap: 3px; }
.selected-group-summary dt { color: var(--muted); font-size: 8px; }
.selected-group-summary dd { margin: 0; color: var(--text-soft); font-size: 10px; }

.review-workspace-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 12px;
}

.review-list,
.review-detail-panel {
  border-radius: var(--radius-md);
}

.review-list {
  display: grid;
}

.review-list > button {
  min-height: 76px;
  padding: 12px;
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: center;
  gap: 10px;
  color: var(--text-soft);
  border-bottom: 1px solid var(--glass-border);
  background: transparent;
  text-align: left;
}

.review-list > button:last-child { border: 0; }
.review-list > button.selected { background: rgba(114,167,255,0.07); box-shadow: inset 3px 0 0 var(--blue); }
.review-list > button.approved { opacity: 0.7; }
.review-list > button > span { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--glass-border); border-radius: 50%; color: var(--sage); }
.review-list svg { width: 15px; }
.review-list b { font-size: 11px; }
.review-list p { margin: 4px 0; color: var(--muted-strong); font-size: 9px; }
.review-list small { color: var(--muted); font-size: 8px; }

.review-detail-panel { padding: 18px; }
.review-detail-panel h3 { margin: 15px 0 7px; font-size: 17px; }
.review-detail-panel > p { color: var(--muted-strong); font-size: 10px; line-height: 1.5; }
.review-detail-panel dl { margin: 18px 0; display: grid; gap: 8px; }
.review-detail-panel dl div { display: flex; justify-content: space-between; font-size: 9px; }
.review-detail-panel dt { color: var(--muted); }
.review-detail-panel dd { margin: 0; color: var(--text-soft); }
.review-detail-panel label { display: grid; gap: 6px; color: var(--muted); font-size: 8px; }
.review-detail-panel textarea { min-height: 95px; padding: 10px; color: var(--text); border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(255,255,255,0.025); font-size: 9px; }
.review-detail-panel > div:last-child { margin-top: 10px; display: flex; gap: 8px; }

.table-action {
  min-height: 28px;
  padding: 0 8px;
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  color: var(--blue);
  background: rgba(114,167,255,0.05);
  font-size: 8px;
}

.timeline-panel,
.audit-panel {
  border-radius: var(--radius-md);
}

.timeline-panel article {
  min-height: 70px;
  padding: 0 16px;
  display: grid;
  grid-template-columns: 50px 34px 1fr;
  align-items: center;
  gap: 11px;
  border-bottom: 1px solid var(--glass-border);
}

.timeline-panel article:last-child { border: 0; }
.timeline-panel time { color: var(--muted); font-size: 9px; }
.timeline-panel article > span { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--glass-border); border-radius: 50%; color: var(--blue); }
.timeline-panel svg { width: 14px; }
.timeline-panel b { font-size: 10px; }
.timeline-panel p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }

.audit-panel > div {
  min-height: 57px;
  padding: 0 14px;
  display: grid;
  grid-template-columns: 28px 48px 1fr 220px;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--glass-border);
}

.audit-panel > div:last-child { border: 0; }
.audit-panel > div > span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; color: var(--sage); background: rgba(151,201,115,0.08); }
.audit-panel svg { width: 12px; }
.audit-panel time { color: var(--muted); font-size: 8px; }
.audit-panel p { margin: 0; font-size: 9px; }
.audit-panel small { color: var(--muted); font-size: 8px; text-align: right; }

.settings-panel {
  padding: 18px;
  border-radius: var(--radius-md);
}

.settings-fields {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.settings-fields label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 8px;
}

.settings-fields input,
.settings-fields select {
  height: 42px;
  padding: 0 10px;
  color: var(--text);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  background: rgba(255,255,255,0.025);
  font-size: 10px;
}

.settings-buttons {
  margin-top: 16px;
  display: flex;
  gap: 8px;
}

.security-notice {
  margin: 12px 0 0;
  padding: 12px 14px;
  border: 1px solid rgba(226,183,79,0.2);
  border-radius: 9px;
  display: flex;
  align-items: center;
  gap: 9px;
  color: #d7c69f;
  background: rgba(174,126,47,0.05);
  font-size: 9px;
  line-height: 1.45;
}

.security-notice svg { width: 16px; color: var(--amber); }

/* Auth */

.auth-screen {
  min-height: 100%;
  padding: 34px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 24px;
  background:
    radial-gradient(circle at 18% 78%, rgba(139, 58, 35, 0.2), transparent 32%),
    linear-gradient(135deg, rgba(165, 88, 48, 0.14), transparent 42%),
    repeating-radial-gradient(ellipse at 75% 30%, transparent 0 28px, rgba(219, 152, 94, 0.06) 29px 30px, transparent 31px 43px),
    var(--bg-deep);
}

.auth-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--text);
  font-size: 20px;
  font-weight: 750;
}

.auth-brand > span {
  width: 45px;
  height: 45px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(226, 146, 88, 0.42);
  border-radius: 12px;
  color: #e6a16e;
  background: rgba(212, 111, 61, 0.08);
}

.auth-brand > span svg { width: 27px; }
.auth-brand > div { display: grid; gap: 1px; }
.auth-brand small { color: #bda882; font-size: 9px; letter-spacing: 0.18em; text-transform: uppercase; }

.auth-loading {
  min-width: 280px;
  padding: 24px;
  border: 1px solid var(--glass-border);
  border-radius: var(--radius-lg);
  display: grid;
  justify-items: center;
  gap: 10px;
  color: var(--muted-strong);
  background: var(--panel);
  box-shadow: var(--shadow-lg);
}

.auth-loading svg { color: var(--blue); }
.auth-loading p { margin: 0; font-size: 11px; }

.login-panel {
  width: min(440px, 100%);
  padding: 26px;
  border: 1px solid var(--glass-border);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(226, 151, 92, 0.08), transparent 40%),
    rgba(12, 28, 34, 0.92);
  box-shadow: var(--shadow-lg);
  backdrop-filter: blur(20px);
}

.login-intro {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.login-intro > svg {
  width: 25px;
  color: var(--sage);
}

.login-intro h1 { margin: 0; font-size: 20px; }
.login-intro p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }

.login-panel form {
  margin-top: 22px;
  display: grid;
  gap: 12px;
}

.login-panel form label {
  display: grid;
  gap: 6px;
  color: var(--muted-strong);
  font-size: 9px;
}

.login-panel input {
  height: 44px;
  padding: 0 11px;
  color: var(--text);
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  background: rgba(255,255,255,0.025);
  font-size: 11px;
}

.auth-submit { width: 100%; margin-top: 3px; }
.auth-error { margin: 0; color: #f2a08c; font-size: 9px; }
.auth-method-toggle { width: 100%; margin-top: 8px; color: #e7a878; }
.email-method-note { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.5; }
.email-code-input {
  font-size: 18px !important;
  font-weight: 750;
  letter-spacing: 0.38em;
  text-align: center;
}

.offline-option {
  margin-top: 20px;
  padding-top: 17px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border-top: 1px solid var(--glass-border);
}

.offline-option > svg { width: 18px; color: var(--copper); }
.offline-option b { font-size: 10px; }
.offline-option p { margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.offline-demo-button { width: 100%; margin-top: 11px; }
.login-panel > small { display: block; margin-top: 15px; color: var(--muted); font-size: 7px; line-height: 1.5; text-align: center; }

/* Final map marker scale overrides live after legacy map rules. */
.mapbox-field-marker,
.fallback-marker {
  min-width: 22px;
  min-height: 22px;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.34));
}

.mapbox-marker-symbol,
.marker-symbol {
  width: 22px;
  height: 22px;
  border-width: 1.2px;
}

.mapbox-marker-symbol svg,
.marker-symbol svg {
  width: 12px;
  height: 12px;
}

.fallback-marker { transform: translate(-11px, -22px); }

.mapbox-field-marker.active .mapbox-marker-symbol,
.fallback-marker.active .marker-symbol {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--marker) 16%, transparent);
  transform: rotate(-45deg) scale(1.04);
}

.mapbox-marker-label,
.marker-copy {
  left: 26px;
  margin-left: 3px;
  padding: 2px 4px;
  border-radius: 4px;
  background: rgba(7, 22, 29, 0.86);
}

.mapbox-marker-label b,
.marker-copy b { font-size: 8px; }
.mapbox-marker-label small,
.marker-copy small { font-size: 6px; }

.fallback-marker.group-aspen .marker-copy,
.mapbox-field-marker.group-aspen .mapbox-marker-label,
.fallback-marker.group-juniper .marker-copy,
.mapbox-field-marker.group-juniper .mapbox-marker-label,
.fallback-marker.group-pinyon .marker-copy,
.mapbox-field-marker.group-pinyon .mapbox-marker-label {
  top: 50%;
  right: auto;
  left: 26px;
  transform: translateY(-50%);
  text-align: left;
}

.camp-group-marker.group-aspen { margin-top: -18px; }
.camp-group-marker.group-pinyon { margin-top: 18px; }

.mapbox-field-marker,
.interactive-marker { z-index: 8; }

.map-detail-compact .mapbox-field-marker,
.map-detail-compact .fallback-marker {
  min-width: 18px;
  min-height: 18px;
}
.map-detail-compact .mapbox-marker-symbol,
.map-detail-compact .marker-symbol { width: 18px; height: 18px; border-width: 1px; }
.map-detail-compact .mapbox-marker-symbol svg,
.map-detail-compact .marker-symbol svg { width: 10px; height: 10px; }
.map-detail-compact .fallback-marker { transform: translate(-9px, -18px); }
.map-detail-compact .mapbox-marker-label,
.map-detail-compact .marker-copy { left: 22px; margin-left: 2px; padding: 1px 3px; }
.map-detail-compact .mapbox-marker-label b,
.map-detail-compact .marker-copy b { font-size: 7px; }

.map-detail-overview .mapbox-field-marker,
.map-detail-overview .fallback-marker {
  min-width: 12px;
  min-height: 12px;
  opacity: 0.9;
  visibility: visible;
  pointer-events: auto;
}
.map-detail-overview .mapbox-marker-symbol,
.map-detail-overview .marker-symbol { width: 12px; height: 12px; border-width: 1px; }
.map-detail-overview .mapbox-marker-symbol svg,
.map-detail-overview .marker-symbol svg { width: 7px; height: 7px; }
.map-detail-overview .fallback-marker { transform: translate(-6px, -12px); }
.map-detail-overview .mapbox-marker-label,
.map-detail-overview .marker-copy { left: 16px; padding: 1px 3px; }
.map-detail-overview .mapbox-field-marker.active .mapbox-marker-label,
.map-detail-overview .fallback-marker.active .marker-copy {
  opacity: 0.94;
  visibility: visible;
}

.marker-weather { top: 21px; left: 26px; padding: 1px 3px; font-size: 5.5px; }

.outpost-map-marker { position: relative; }
.outpost-marker-copy {
  position: absolute;
  top: 50%;
  right: 22px;
  transform: translateY(-50%);
}

.interactive-fallback-map .operational-map-feature,
.mapbox-operations-map .operational-map-feature {
  width: 20px;
  min-height: 20px;
  max-width: 20px;
  padding: 1px;
  overflow: hidden;
  opacity: 0.82;
  transform: translate(-10px, -22px);
}

.interactive-fallback-map .operational-map-feature > span,
.mapbox-operations-map .operational-map-feature > span {
  width: 18px;
  height: 18px;
}

.interactive-fallback-map .operational-map-feature b,
.mapbox-operations-map .operational-map-feature b { display: none; }

.interactive-fallback-map .operational-map-feature:hover,
.interactive-fallback-map .operational-map-feature:focus-visible,
.mapbox-operations-map .operational-map-feature:hover,
.mapbox-operations-map .operational-map-feature:focus-visible {
  width: auto;
  max-width: 150px;
  padding-right: 6px;
  overflow: visible;
  opacity: 1;
}

.interactive-fallback-map .operational-map-feature:hover b,
.interactive-fallback-map .operational-map-feature:focus-visible b,
.mapbox-operations-map .operational-map-feature:hover b,
.mapbox-operations-map .operational-map-feature:focus-visible b { display: block; }

/* Live terrain and weather: legible warm topo base with independently degradable overlays. */
.map-stage {
  background: #c8b795;
}

.interactive-fallback-map {
  background: linear-gradient(145deg, #e7dcc6, #c9b894 58%, #a99472);
}

.interactive-fallback-map.map-display-desert .map-tile-plane img {
  filter: sepia(0.24) saturate(0.72) brightness(1.05) contrast(1.02) hue-rotate(-4deg);
}

.interactive-fallback-map::after,
.mapbox-operations-map::after {
  background:
    linear-gradient(180deg, rgba(68, 45, 26, 0.01), transparent 60%, rgba(52, 37, 24, 0.07)),
    radial-gradient(circle at 50% 45%, transparent 64%, rgba(53, 38, 25, 0.08));
  box-shadow: inset 0 0 34px rgba(62, 44, 29, 0.09);
}

.map-radar-plane {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  pointer-events: none;
  opacity: 0.48;
  mix-blend-mode: multiply;
}

.map-radar-plane img {
  position: absolute;
  max-width: none;
  image-rendering: auto;
}

.map-wind-field {
  position: absolute;
  inset: 0;
  z-index: 3;
  overflow: hidden;
  opacity: var(--wind-field-opacity);
  pointer-events: none;
  mask-image: radial-gradient(ellipse at center, #000 22%, rgba(0, 0, 0, 0.88) 64%, transparent 96%);
}

.map-wind-streams {
  position: absolute;
  left: -32%;
  top: -32%;
  width: 164%;
  height: 164%;
  transform: rotate(var(--wind-flow-angle));
  transform-origin: center;
}

.map-wind-streams i {
  position: absolute;
  left: -12%;
  top: var(--wind-y);
  width: var(--wind-length);
  height: 1.5px;
  border-radius: 999px;
  opacity: var(--wind-alpha);
  background: linear-gradient(90deg, transparent, rgba(104, 202, 211, 0.88) 34%, rgba(232, 250, 240, 0.94) 72%, rgba(247, 218, 177, 0.7));
  box-shadow: 0 0 5px rgba(63, 156, 173, 0.38);
  animation: map-wind-drift var(--wind-duration) linear var(--wind-delay) infinite;
}

.map-wind-streams i::after {
  position: absolute;
  right: -4px;
  top: -1px;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  content: "";
  background: rgba(231, 249, 241, 0.72);
}

@keyframes map-wind-drift {
  from { transform: translate3d(0, 0, 0) scaleX(0.7); }
  14% { transform: translate3d(22vw, 0, 0) scaleX(1); }
  to { transform: translate3d(126vw, 0, 0) scaleX(0.82); }
}

.map-weather-panel {
  position: absolute;
  right: 14px;
  bottom: 18px;
  z-index: 12;
  width: 306px;
  overflow: hidden;
  border: 1px solid rgba(239, 208, 164, 0.3);
  border-radius: 13px;
  color: #f8eee1;
  background:
    radial-gradient(circle at 10% 0%, rgba(218, 141, 76, 0.15), transparent 36%),
    rgba(6, 24, 31, 0.91);
  box-shadow: 0 16px 34px rgba(20, 13, 9, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(16px) saturate(1.2);
}

.map-weather-panel > header {
  min-height: 42px;
  padding: 7px 8px;
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr) 27px;
  align-items: center;
  gap: 7px;
  border-bottom: 1px solid rgba(230, 197, 153, 0.14);
}

.weather-heading-icon,
.map-weather-panel > header > button {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(232, 187, 124, 0.25);
  border-radius: 8px;
  color: #f0ba68;
  background: rgba(231, 155, 75, 0.09);
}

.map-weather-panel > header > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.map-weather-panel > header b { font-size: 9px; }
.map-weather-panel > header small { color: #b9c2bd; font-size: 6.5px; }
.map-weather-panel svg { width: 14px; height: 14px; }
.map-weather-panel .is-loading { animation: weather-spin 800ms linear infinite; }

@keyframes weather-spin { to { transform: rotate(360deg); } }

.weather-metrics {
  padding: 7px 8px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
}

.weather-metrics > span {
  min-width: 0;
  padding: 5px;
  display: grid;
  grid-template-columns: 13px minmax(0, 1fr);
  gap: 1px 3px;
  border: 1px solid rgba(219, 198, 167, 0.12);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.025);
}

.weather-metrics svg { grid-row: 1 / 3; color: #e7aa62; }
.weather-metrics small { overflow: hidden; color: #9eaaa7; font-size: 5.5px; text-overflow: ellipsis; white-space: nowrap; }
.weather-metrics b { font-size: 8px; white-space: nowrap; }
.weather-metrics i { grid-column: 1 / -1; color: #aeb8b4; font-size: 5.5px; font-style: normal; white-space: nowrap; }

.weather-map-controls {
  padding: 0 8px 7px;
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 5px;
}

.wind-direction-glyph {
  min-height: 32px;
  padding: 4px 7px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 4px;
  border: 1px solid rgba(116, 190, 206, 0.22);
  border-radius: 8px;
  color: #83c9d7;
  background: rgba(50, 142, 160, 0.08);
}

.wind-direction-glyph.active {
  border-color: rgba(91, 193, 213, 0.48);
  color: #8fd9e8;
  background: rgba(40, 148, 170, 0.14);
}

.wind-direction-glyph i {
  font-size: 16px;
  font-style: normal;
  transform: rotate(var(--wind-bearing));
}

.wind-direction-glyph span { min-width: 0; display: grid; gap: 1px; text-align: left; }
.wind-direction-glyph b { font-size: 7px; }
.wind-direction-glyph small { overflow: hidden; color: #9eaaa7; font-size: 5.5px; text-overflow: ellipsis; white-space: nowrap; }

.map-water-sources {
  position: absolute;
  left: 14px;
  bottom: 18px;
  z-index: 13;
  width: 224px;
  overflow: hidden;
  border: 1px solid rgba(126, 194, 192, 0.3);
  border-radius: 12px;
  color: #f5eee1;
  background: rgba(7, 27, 32, 0.9);
  box-shadow: 0 14px 30px rgba(18, 14, 10, 0.27);
  backdrop-filter: blur(16px) saturate(1.16);
}

.map-water-sources.open { width: 320px; }

.map-water-toggle {
  width: 100%;
  min-height: 43px;
  padding: 6px 8px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 7px;
  color: inherit;
  background: linear-gradient(90deg, rgba(62, 154, 165, 0.12), rgba(255, 255, 255, 0.018));
  text-align: left;
}

.map-water-toggle > span:first-child {
  width: 27px;
  height: 27px;
  border: 1px solid rgba(92, 188, 202, 0.34);
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: #79d2df;
  background: rgba(50, 145, 161, 0.1);
}

.map-water-toggle > span:nth-child(2) { min-width: 0; display: grid; gap: 2px; }
.map-water-toggle b { font-size: 8.5px; }
.map-water-toggle small { overflow: hidden; color: #aebbb7; font-size: 6px; text-overflow: ellipsis; white-space: nowrap; }
.map-water-toggle svg { width: 14px; }
.map-water-toggle > svg { transition: transform 160ms ease; }
.map-water-sources.open .map-water-toggle > svg { transform: rotate(180deg); }

.map-water-source-list {
  padding: 4px 7px 7px;
  border-top: 1px solid rgba(193, 225, 222, 0.1);
  display: grid;
}

.map-water-source-list > button {
  min-height: 52px;
  padding: 6px 2px;
  border-bottom: 1px solid rgba(190, 217, 222, 0.08);
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  color: #edf3ef;
  background: transparent;
  text-align: left;
}

.map-water-source-list > button:hover { background: rgba(77, 165, 172, 0.08); }
.map-water-source-list > button > span:nth-child(2) { min-width: 0; display: grid; gap: 2px; }
.map-water-source-list b { font-size: 7.5px; }
.map-water-source-list small { overflow: hidden; color: #aeb8b4; font-size: 5.7px; text-overflow: ellipsis; white-space: nowrap; }
.map-water-source-list i { color: #83c9d7; font-size: 5.5px; font-style: normal; }
.map-water-source-list em { max-width: 74px; color: #f1bd70; font-size: 5.7px; font-style: normal; text-align: right; }

.water-status {
  width: 27px;
  height: 27px;
  border: 1px solid rgba(96, 186, 199, 0.32);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #7fd0dc;
  background: rgba(58, 147, 164, 0.1);
}

.water-status svg { width: 13px; }
.water-status.status-planned { color: #cfb267; border-color: rgba(207, 178, 103, 0.34); }
.map-water-source-list p { margin: 6px 2px 1px; display: flex; gap: 5px; color: #9faeaa; font-size: 5.7px; line-height: 1.45; }
.map-water-source-list p svg { width: 12px; flex: 0 0 auto; color: #e6b060; }

.weather-map-controls > button {
  min-height: 32px;
  padding: 4px 7px;
  display: grid;
  grid-template-columns: 22px 1fr;
  align-items: center;
  gap: 5px;
  border: 1px solid rgba(124, 179, 199, 0.2);
  border-radius: 8px;
  color: #c5cfcc;
  background: rgba(36, 94, 111, 0.08);
  text-align: left;
}

.weather-map-controls > button.active {
  border-color: rgba(91, 193, 213, 0.48);
  color: #8fd9e8;
  background: rgba(40, 148, 170, 0.14);
}

.weather-map-controls > button span { display: grid; gap: 1px; }
.weather-map-controls > button b { font-size: 7.5px; }
.weather-map-controls > button small { color: #9eaaa7; font-size: 5.5px; }

.weather-advisory {
  width: 100%;
  min-height: 34px;
  padding: 6px 9px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  color: #dce4df;
  border-top: 1px solid rgba(229, 190, 137, 0.14);
  background: rgba(255, 255, 255, 0.018);
  text-align: left;
}

.weather-advisory span { display: grid; gap: 1px; }
.weather-advisory b { font-size: 7px; }
.weather-advisory small { color: #aab4b0; font-size: 5.8px; }
.weather-risk-watch .weather-advisory { color: #f2c36d; background: rgba(232, 164, 55, 0.08); }
.weather-risk-alert .weather-advisory { color: #ff907c; background: rgba(222, 82, 55, 0.12); }

.map-stage:has(.map-weather-panel) .map-attribution {
  right: 328px;
}

@media (max-width: 1060px) {
  .map-weather-panel { width: 270px; }
  .map-stage:has(.map-weather-panel) .map-attribution { right: 292px; }
  .weather-metrics > span:nth-child(3) { display: none; }
  .weather-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .map-weather-panel {
    right: 8px;
    bottom: 22px;
    width: min(240px, calc(100% - 16px));
  }
  .map-weather-panel > header { min-height: 36px; padding-block: 4px; }
  .weather-metrics { padding-block: 5px; }
  .weather-map-controls { padding-bottom: 5px; }
  .weather-advisory { display: none; }
  .map-stage:has(.map-weather-panel) .map-attribution { display: none; }
  .map-water-sources { left: 8px; bottom: 190px; width: min(210px, calc(100% - 16px)); }
  .map-water-sources.open { width: min(290px, calc(100% - 16px)); }
  .map-wind-field { opacity: calc(var(--wind-field-opacity) * 0.8); }
}

@media (min-width: 1480px) {
  .operations-summary {
    max-width: calc(100% - 330px);
  }

  .map-operations-key.open {
    left: 14px;
    right: auto;
    width: 188px;
  }

  .map-stage:has(.map-operations-key.open) .map-water-sources {
    left: 216px;
  }

  .map-operations-key.open .map-key-groups {
    grid-template-columns: 1fr;
  }

  .map-operations-key.open .map-key-layers button {
    min-height: 31px;
  }

  .map-operations-key.open .map-key-layers small {
    display: none;
  }

  .map-operations-key.open + .open-inspector-button {
    right: 14px;
  }

  .map-stage:has(.map-operations-key.open) .map-notice {
    left: 214px;
  }

  .map-stage:has(.map-operations-key.open) .fallback-map-controls {
    left: 214px;
  }

  .map-stage:has(.map-operations-key.open) .mapboxgl-ctrl-top-left {
    left: 200px;
  }
}

/* Responsive */

@media (max-width: 1420px) {
  .callins-workspace {
    grid-template-columns: 220px minmax(0, 1fr);
    overflow-y: auto;
  }

  .callin-workflow {
    grid-column: 1 / -1;
    min-height: 260px;
    overflow: visible;
    display: grid;
    grid-template-columns: 120px repeat(3, 1fr) 220px;
    align-items: start;
  }

  .callin-workflow > header {
    grid-column: 1 / -1;
  }

  .completion-ring {
    margin: 15px auto;
  }

  .workflow-actions {
    align-self: stretch;
    margin: 8px;
    border: 1px solid var(--glass-border);
    border-radius: 9px;
  }

  .reviewer-note {
    display: none;
  }
}

@media (max-width: 1240px) {
  .app-shell { grid-template-columns: 176px minmax(0, 1fr); }
  .operations-summary { max-width: calc(100% - 296px); grid-template-columns: repeat(4, 1fr); }
  .summary-followup { display: none; }
  .operations-layout { grid-template-columns: minmax(0, 1fr) 286px; }
  .callins-workspace { grid-template-columns: 210px minmax(520px, 1fr) 250px; }
  .reports-workspace { grid-template-columns: 220px minmax(590px, 1fr) 244px; }
  .document-toolbar label { min-width: 120px; }
  .operations-activity-rail { grid-template-columns: 245px minmax(0, 1fr); }
  .weekly-operation-head > span:nth-child(4),
  .weekly-operation-head > span:nth-child(7),
  .weekly-operation-window,
  .weekly-operation-groups { display: none; }
  .weekly-operation-head,
  .weekly-operation-row { grid-template-columns: minmax(105px, 1.25fr) 46px 38px minmax(90px, 1fr) 52px 11px; gap: 4px; }
}

@media (max-width: 1060px) {
  .app-shell { grid-template-columns: 78px minmax(0, 1fr); }
  .brand { padding: 0; justify-content: center; }
  .brand > span:nth-child(2),
  .nav-item > span:nth-child(2),
  .nav-count,
  .demo-label div { display: none; }
  .nav-item { grid-template-columns: 1fr; justify-items: center; padding: 0; }
  .demo-label { justify-content: center; }
  .operations-summary { max-width: calc(100% - 286px); }
  .operations-layout { grid-template-columns: minmax(0, 1fr) 276px; }
  .summary-item { padding-inline: 8px; }
  .summary-item > span { display: none; }
  .callins-workspace { grid-template-columns: 190px minmax(520px, 1fr); overflow: auto; }
  .callin-workflow { grid-column: 1 / -1; min-height: 260px; overflow: visible; display: grid; grid-template-columns: 120px repeat(3, 1fr) 220px; align-items: start; }
  .callin-workflow > header { grid-column: 1 / -1; }
  .completion-ring { margin: 15px auto; }
  .workflow-actions { align-self: stretch; margin: 8px; border: 1px solid var(--glass-border); border-radius: 9px; }
  .reviewer-note { display: none; }
  .reports-workspace { grid-template-columns: 205px minmax(620px, 1fr); overflow: auto; }
  .approval-workflow { grid-column: 1 / -1; min-height: 260px; overflow: visible; display: grid; grid-template-columns: repeat(4, 1fr); align-items: start; }
  .approval-workflow > header { grid-column: 1 / -1; }
  .approval-actions { margin: 8px; border: 1px solid var(--glass-border); border-radius: 9px; }
}

@media (max-width: 760px) {
  body { overflow: hidden; }
  .app-shell { grid-template-columns: 1fr; }
  .sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(310px, 88vw);
    transform: translateX(-102%);
    transition: transform 200ms ease;
  }
  .sidebar.mobile-open { transform: translateX(0); }
  .brand { padding: 0 17px; justify-content: flex-start; }
  .brand > span:nth-child(2),
  .nav-item > span:nth-child(2),
  .nav-count,
  .demo-label div { display: grid; }
  .nav-item { grid-template-columns: 22px minmax(0,1fr) auto; justify-items: stretch; padding: 0 12px; }
  .demo-label { justify-content: flex-start; }
  .sidebar-close {
    width: 36px;
    height: 36px;
    margin-left: auto;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--muted-strong);
    background: transparent;
  }
  .sidebar-close svg { width: 18px; }
  .app-main { grid-template-rows: 66px minmax(0, 1fr); }
  .topbar { padding: 0 12px; }
  .mobile-menu {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: var(--text-soft);
    background: rgba(255,255,255,0.04);
  }
  .mobile-menu svg { width: 19px; }
  .topbar-title h1 { font-size: 16px; }
  .topbar-title p { font-size: 8px; }
  .weather-state,
  .topbar-actions > .icon-button,
  .user-summary > span:last-child { display: none; }
  .sync-state { min-height: 39px; padding: 4px 8px; }
  .sync-state small { display: none; }
  .sync-state b { font-size: 9px; }
  .user-summary { padding-left: 6px; }
  .avatar { width: 32px; height: 32px; }
  .workspace { overflow-y: auto; padding-bottom: 72px; }
  .mobile-bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 80;
    height: 70px;
    padding: 4px 8px max(4px, env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    border-top: 1px solid var(--glass-border);
    background: rgba(4, 17, 24, 0.96);
    box-shadow: 0 -14px 34px rgba(0,0,0,0.36);
    backdrop-filter: blur(20px);
  }
  .mobile-bottom-nav button {
    position: relative;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 4px;
    color: var(--muted);
    background: transparent;
    font-size: 8px;
  }
  .mobile-bottom-nav button.selected { color: var(--copper); }
  .mobile-bottom-nav svg { width: 19px; }
  .mobile-bottom-nav i { position: absolute; top: 5px; right: 18%; width: 16px; height: 16px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--copper); font-size: 7px; font-style: normal; }
  .toast { right: 12px; bottom: 82px; }

  .operations-workspace { height: auto; min-height: calc(100dvh - 138px); padding: 8px; grid-template-rows: auto auto; }
  .operations-summary {
    max-width: none;
    overflow-x: auto;
    grid-template-columns: repeat(4, minmax(135px, 1fr));
    scrollbar-width: none;
  }
  .operations-summary::-webkit-scrollbar { display: none; }
  .summary-item > span { display: grid; }
  .operations-layout { grid-template-columns: 1fr; grid-template-rows: auto 360px; }
  .operations-map-stack { grid-template-rows: 380px auto; }
  .group-inspector {
    position: relative;
    overflow-x: hidden;
    border-radius: 18px 18px 12px 12px;
  }
  .inspector-title { min-height: 55px; }
  .inspector-section { margin-top: 7px; }
  .inspector-section:nth-of-type(n+4) { display: none; }
  .inspector-actions { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .inspector-actions .button { min-width: 0; }
  .inspector-actions .button.text { grid-column: 1/-1; }
  .map-notice { max-width: calc(100% - 28px); }
  .map-route-legend { top: auto; right: auto; left: 9px; bottom: 45px; min-width: 145px; }
  .map-coordinate-readout { display: none; }
  .map-layer-control { right: 10px; bottom: 10px; min-width: 160px; }
  .cluster-label { font-size: 7px; }
  .marker-copy { padding: 4px 6px; }
  .marker-copy small { display: none; }
  .radio-activity-rail { overflow-x: auto; }
  .radio-activity-row { min-width: 720px; }
  .operations-activity-rail { grid-template-columns: 1fr; }
  .map-operations-key {
    top: 56px;
    right: 9px;
    width: 210px;
    max-height: 300px;
  }
  .map-key-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .map-key-groups button { grid-template-columns: 20px; justify-content: center; }
  .map-key-groups button b { display: none; }
  .map-key-layers button { min-height: 30px; }
  .map-key-layers small,
  .map-operations-key > footer { display: none; }
  .weekly-operations { min-height: 230px; }
  .weekly-operation-head { display: none; }
  .weekly-operations { grid-template-rows: 44px minmax(0, 1fr); }
  .weekly-operation-head,
  .weekly-operation-row { grid-template-columns: minmax(118px, 1.25fr) 48px 42px minmax(92px, 1fr) 58px 13px; }
  .weekly-operation-window,
  .weekly-operation-groups { display: none; }

  .callins-workspace { height: auto; min-height: calc(100dvh - 138px); padding: 8px; display: block; overflow: visible; }
  .callin-queue { max-height: 168px; margin-bottom: 8px; display: block; overflow-x: auto; white-space: nowrap; }
  .callin-queue > header { position: sticky; left: 0; }
  .queue-window { display: inline-block; vertical-align: top; padding-top: 8px; }
  .queue-window > header { display: none; }
  .queue-row { width: 180px; display: inline-grid; margin-right: 5px; white-space: normal; }
  .queue-all { display: none; }
  .callin-editor { overflow: visible; }
  .editor-title { min-height: 58px; padding: 8px 10px; }
  .editor-title h2 { font-size: 13px; }
  .callin-stepper { min-width: 0; height: 74px; grid-template-columns: repeat(5, minmax(62px, 1fr)); overflow-x: auto; }
  .callin-stepper button:nth-child(3),
  .callin-stepper button:nth-child(6) { display: none; }
  .callin-stepper button { flex-direction: column; gap: 4px; font-size: 8px; }
  .source-audio { grid-template-columns: 34px 1fr auto; }
  .source-audio dl { display: none; }
  .transcript-lines p:nth-child(n+3) { display: none; }
  .callin-disclosure { min-height: auto; padding: 8px; flex-wrap: wrap; gap: 7px 12px; }
  .callin-disclosure b { width: 100%; margin-left: 0; padding-top: 7px; border-top: 1px solid var(--glass-border); }
  .field-table { min-width: 0; border: 0; }
  .field-table-head { display: none; }
  .structured-field { margin-bottom: 6px; overflow: hidden; border: 1px solid var(--glass-border); border-radius: 9px; }
  .field-row { min-height: 63px; grid-template-columns: 1fr auto; gap: 5px; }
  .field-label { grid-column: 1; }
  .field-row strong { grid-column: 1; font-size: 10px; }
  .source-state { grid-column: 2; grid-row: 1; justify-self: end; }
  .field-evidence { grid-column: 2; grid-row: 2; }
  .field-evidence { font-size: 0; }
  .field-evidence button { min-height: 30px; font-size: 8px; }
  .location-confirmation { grid-template-columns: 1fr; }
  .mini-topographic-map { min-height: 190px; }
  .coordinate-options { display: grid; }
  .coordinate-options button { min-height: 46px; display: flex; align-items: center; justify-content: space-between; }
  .callin-workflow { margin-top: 8px; display: block; overflow: visible; }
  .completion-ring,
  .callin-workflow .workflow-block:nth-of-type(2),
  .reviewer-note { display: none; }
  .callin-workflow > header { position: static; }
  .workflow-actions { display: none; }
  .mobile-callin-actions {
    position: sticky;
    bottom: 68px;
    z-index: 30;
    margin-top: 8px;
    padding: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    border: 1px solid var(--glass-border);
    border-radius: 14px;
    background: rgba(5, 19, 26, 0.94);
    box-shadow: 0 -12px 34px rgba(0,0,0,0.32);
    backdrop-filter: blur(20px);
  }
  .mobile-callin-actions small { grid-column: 1/-1; color: var(--muted); font-size: 7px; text-align: center; }
  .scheduled-callin-summary { margin: 20px auto; padding: 18px; }

  .reports-workspace { height: auto; padding: 8px; display: block; overflow: visible; }
  .document-library { max-height: 230px; margin-bottom: 8px; }
  .document-search,
  .template-list { display: none; }
  .library-section { display: inline-block; width: 230px; vertical-align: top; }
  .document-workspace { display: block; }
  .document-toolbar { position: sticky; top: 0; z-index: 20; overflow-x: auto; }
  .document-toolbar label { display: none; }
  .document-toolbar .button { min-width: max-content; }
  .report-paper { min-width: 0; width: 100%; height: auto; min-height: 800px; margin-top: 8px; padding: 18px 16px; }
  .report-paper-header dl { display: none; }
  .paper-watermark { width: 72px; height: 43px; font-size: 13px; }
  .paper-meta-grid { grid-template-columns: 1fr; }
  .paper-meta-grid span { border-right: 0; border-bottom: 1px solid #8b9390; }
  .paper-meta-grid span:last-child { border-bottom: 0; }
  .paper-section-grid { grid-template-columns: 1fr; }
  .paper-section-grid > section { border-right: 0; }
  .paper-signatures > div { grid-template-columns: 1fr; }
  .paper-signatures > div > div { border-right: 0; border-bottom: 1px solid #8b9390; }
  .source-revision-drawer { margin-top: 8px; min-height: 125px; }
  .source-reference { height: auto; grid-template-columns: 22px 1fr; }
  .source-reference dl,
  .source-reference .button { grid-column: 2; }
  .approval-workflow { margin-top: 8px; display: block; overflow: visible; }

  .standard-workspace { height: auto; min-height: calc(100dvh - 138px); padding: 14px 10px; }
  .page-intro { min-height: 0; }
  .page-intro h2 { font-size: 18px; }
  .page-intro p { font-size: 9px; }
  .page-intro > .button,
  .page-intro > .context-label { flex: 0 0 auto; }
  .radio-capture-layout,
  .review-workspace-layout,
  .selected-group-summary { grid-template-columns: 1fr; }
  .capture-wave { height: 150px; gap: 2px; }
  .capture-wave i { width: 2px; }
  .capture-methods { display: grid; }
  .next-step-panel { align-items: flex-start; gap: 10px; }
  .settings-fields { grid-template-columns: 1fr; }
  .settings-buttons { display: grid; }
  .audit-panel > div { grid-template-columns: 28px 42px 1fr; }
  .audit-panel small { display: none; }
}

@media (max-width: 420px) {
  .topbar-title p { display: none; }
  .sync-state span { display: none; }
  .sync-state { width: 38px; justify-content: center; border-radius: 50%; }
  .user-summary { border: 0; }
  .operations-workspace { grid-template-rows: auto 710px auto; }
  .operations-layout { grid-template-rows: 360px 340px; }
  .map-notice { top: 9px; left: 9px; font-size: 8px; }
  .map-layer-control { min-width: 0; padding: 8px; }
  .map-layer-control span { display: none; }
  .map-operations-key { right: 8px; width: min(205px, calc(100% - 16px)); }
  .marker-copy {
    padding: 3px 5px;
    display: grid;
  }
  .marker-copy b { font-size: 8px; }
  .fallback-marker.group-coyotes .marker-copy,
  .mapbox-field-marker.group-coyotes .mapbox-marker-label {
    position: absolute;
    right: 47px;
    margin: 0;
    text-align: right;
  }
  .fallback-marker { transform: translate(-20px, -38px); }
  .source-audio { grid-template-columns: 32px 1fr; }
  .source-audio > time { display: none; }
  .callin-stepper { grid-template-columns: repeat(5, 64px); justify-content: flex-start; }
  .paper-brand b { font-size: 14px; }
  .paper-brand small { font-size: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  .map-wind-streams i {
    animation: none !important;
    transform: translate3d(58vw, 0, 0);
  }
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}

@media print {
  :root { color-scheme: light; }
  body { overflow: visible; background: white; }
  body::before,
  .sidebar,
  .topbar,
  .mobile-bottom-nav,
  .document-library,
  .document-toolbar,
  .source-revision-drawer,
  .approval-workflow,
  .toast { display: none !important; }
  #root,
  .app-shell,
  .app-main,
  .workspace,
  .reports-workspace,
  .document-workspace {
    width: auto;
    height: auto;
    min-height: 0;
    display: block;
    overflow: visible;
    padding: 0;
    background: white;
  }
  .report-paper {
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
}
/*
 * Kept as the final style import so Vercel's Linux CSS bundler preserves
 * the desktop inspector and radio activity cascade as an independent block.
 */

.inspector-actions {
  position: sticky;
  bottom: 0;
  z-index: 4;
  margin: 0 -10px -13px;
  padding: 11px 10px 13px;
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--glass-border);
  background: rgba(9, 27, 36, 0.94);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.inspector-actions .button {
  min-height: 36px;
}

.radio-activity-rail {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.radio-activity-rail > header {
  height: 48px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--glass-border);
}

.radio-activity-rail > header > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.radio-activity-rail > header svg {
  width: 16px;
  color: var(--blue);
}

.radio-activity-rail > header b {
  font-size: 11px;
}

.live-indicator {
  margin-left: 4px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--muted);
  font-size: 8px;
}

.live-indicator i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sage);
  box-shadow: 0 0 0 3px rgba(151, 201, 115, 0.08);
}

.radio-activity-rows {
  display: grid;
}

.radio-activity-row {
  min-width: 0;
  min-height: 45px;
  padding: 0 12px;
  display: grid;
  grid-template-columns: 42px 24px 72px 64px minmax(160px, 1fr) 95px 34px 20px;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  border-bottom: 1px solid rgba(193, 216, 220, 0.09);
  background: transparent;
  text-align: left;
}

.radio-activity-row:last-child {
  border-bottom: 0;
}

.radio-activity-row:hover {
  background: rgba(114, 167, 255, 0.045);
}

.radio-activity-row time {
  color: var(--muted);
  font-size: 9px;
}

.radio-activity-row b {
  color: color-mix(in srgb, var(--group-color) 72%, white);
  font-size: 10px;
}

.radio-activity-row p {
  margin: 0;
  overflow: hidden;
  color: var(--muted-strong);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.radio-activity-row > small {
  color: var(--muted);
  font-size: 8px;
}

.radio-activity-row > svg {
  width: 14px;
}

.radio-group-symbol {
  --group-color: var(--blue);
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  color: var(--group-color);
  border: 1px solid color-mix(in srgb, var(--group-color) 50%, transparent);
  border-radius: 50%;
}

.radio-group-symbol svg {
  width: 12px;
}

.radio-kind {
  min-height: 21px;
  padding: 0 6px;
  border: 1px solid rgba(112, 162, 223, 0.22);
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #9ec4ed;
  background: rgba(54, 111, 172, 0.14);
  font-size: 8px;
}

.wave-mini {
  height: 24px;
  display: flex;
  align-items: center;
  gap: 2px;
  opacity: 0.45;
}

.wave-mini i {
  width: 1px;
  border-radius: 1px;
  background: var(--text-soft);
}

@media (max-width: 1240px) {
  .radio-activity-row {
    grid-template-columns: 38px 23px 62px 54px minmax(130px, 1fr) 70px 30px 16px;
  }
}

@media (max-width: 760px) {
  .inspector-actions {
    grid-template-columns: 1fr 1fr;
  }

  .inspector-actions .button.text {
    grid-column: 1 / -1;
  }

  .radio-activity-rail {
    overflow-x: auto;
  }

  .radio-activity-row {
    min-width: 720px;
  }
}
.screen-surface {
  height: 100%;
  min-height: 0;
}

.screen-surface[hidden] {
  display: none !important;
}

.topbar-actions {
  position: relative;
}

.topbar-popover {
  position: absolute;
  z-index: 80;
  top: calc(100% + 14px);
  width: min(390px, calc(100vw - 28px));
  padding: 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(21, 31, 35, 0.96), rgba(13, 21, 24, 0.94));
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(28px) saturate(150%);
}

.system-popover {
  right: 310px;
}

.system-popover > header {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  color: #eef8f2;
}

.system-popover > header > svg {
  width: 22px;
  color: #86d5ad;
}

.system-popover header div,
.notifications-popover header div,
.notifications-popover > button div {
  display: grid;
  gap: 3px;
}

.system-popover small,
.notifications-popover small {
  color: #9dafaa;
  line-height: 1.45;
}

.system-popover dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 14px 0;
}

.system-popover dl div {
  padding: 9px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.035);
}

.system-popover dt,
.system-popover dd {
  margin: 0;
}

.system-popover dt {
  color: #7f948e;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.system-popover dd {
  margin-top: 3px;
  color: #e7f2ec;
  font-size: 0.78rem;
}

.notifications-popover {
  right: 72px;
  padding: 8px;
}

.notifications-popover > header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 8px 10px;
}

.notifications-popover > button {
  width: 100%;
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 0;
  border-radius: 12px;
  color: #eaf4ef;
  text-align: left;
  background: transparent;
}

.notifications-popover > button:hover,
.notifications-popover > button:focus-visible {
  background: rgba(255, 255, 255, 0.07);
}

.notifications-popover > button > span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.07);
}

.notifications-popover > button svg {
  width: 16px;
}

.notification-button {
  position: relative;
}

.notification-button i {
  position: absolute;
  top: 3px;
  right: 3px;
  min-width: 15px;
  height: 15px;
  display: grid;
  place-items: center;
  padding: 0 3px;
  border: 2px solid #172226;
  border-radius: 999px;
  background: #dc835e;
  color: #111b1e;
  font-size: 0.56rem;
  font-style: normal;
  font-weight: 800;
}

.operations-layout.inspector-closed {
  grid-template-columns: minmax(0, 1fr);
}

.fallback-map-content {
  position: absolute;
  inset: 0;
  transform-origin: 50% 50%;
  transition: transform 220ms ease;
}

.map-layer-popover {
  position: absolute;
  z-index: 18;
  top: 72px;
  left: 18px;
  width: min(330px, calc(100% - 36px));
  padding: 10px;
}

.map-layer-popover > header {
  display: flex;
  justify-content: space-between;
  padding: 4px 6px 10px;
}

.map-layer-popover > header small,
.map-layer-popover > p {
  color: #94aaa3;
}

.map-layer-popover > button {
  width: 100%;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 20px;
  gap: 10px;
  align-items: center;
  padding: 10px 8px;
  border: 0;
  border-radius: 11px;
  color: #edf6f1;
  text-align: left;
  background: transparent;
}

.map-layer-popover > button:hover {
  background: rgba(255, 255, 255, 0.06);
}

.map-layer-popover > button > span {
  display: grid;
  gap: 2px;
}

.map-layer-popover > button small {
  color: #8fa39d;
}

.map-layer-popover > button > svg:last-child {
  width: 17px;
  color: #7fc79e;
}

.map-layer-popover code {
  color: #e0a27d;
}

.open-inspector-button {
  position: absolute;
  z-index: 12;
  top: 18px;
  right: 18px;
}

.filter-panel {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  margin-bottom: 12px;
}

.filter-panel button {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 999px;
  color: #b9c9c4;
  background: rgba(255, 255, 255, 0.035);
}

.filter-panel button.active {
  border-color: rgba(105, 201, 151, 0.4);
  color: #e8fff2;
  background: rgba(105, 201, 151, 0.14);
}

.filter-panel button small {
  min-width: 20px;
  padding: 2px 6px;
  border-radius: 999px;
  color: #8ea39d;
  background: rgba(0, 0, 0, 0.22);
}

.data-table-panel tr[role="button"]:focus-visible {
  outline: 2px solid #72c89a;
  outline-offset: -2px;
}

.logistics-map-view {
  display: grid;
  grid-template-columns: minmax(300px, 1fr) minmax(250px, 0.65fr);
  gap: 14px;
  padding: 14px;
  margin-bottom: 12px;
}

.logistics-map-canvas {
  position: relative;
  min-height: 210px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 14px;
  background:
    radial-gradient(circle at 20% 65%, rgba(213, 128, 87, 0.24), transparent 28%),
    radial-gradient(circle at 76% 27%, rgba(100, 180, 135, 0.22), transparent 30%),
    repeating-radial-gradient(ellipse at 40% 50%, transparent 0 22px, rgba(255, 255, 255, 0.035) 23px 24px),
    #172427;
}

.logistics-map-canvas > svg {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 70px;
  height: 70px;
  color: rgba(255, 255, 255, 0.06);
  transform: translate(-50%, -50%);
}

.route-node {
  position: absolute;
  padding: 5px 8px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: #eff8f3;
  background: rgba(20, 31, 34, 0.9);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  font-size: 0.72rem;
}

.route-node.southwest { left: 24%; top: 63%; }
.route-node.coyotes { left: 42%; top: 75%; }
.route-node.northeast { left: 73%; top: 24%; }

.logistics-map-view > div:last-child {
  display: grid;
  gap: 8px;
}

.logistics-map-view > div:last-child span {
  display: grid;
  gap: 3px;
  padding: 13px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.035);
}

.logistics-map-view small {
  color: #8fa39d;
}

.table-action:disabled {
  cursor: default;
  opacity: 0.72;
}

.handoff-draft {
  padding: 16px;
  margin-bottom: 14px;
}

.handoff-draft > header,
.handoff-draft > footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.handoff-draft > header small {
  color: #e2a27e;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.handoff-draft > header span {
  display: flex;
  gap: 6px;
  align-items: center;
  color: #83cfa8;
}

.handoff-draft pre {
  margin: 14px 0;
  padding: 16px;
  overflow: auto;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  color: #dce9e3;
  background: rgba(4, 10, 12, 0.35);
  font: inherit;
  line-height: 1.6;
  white-space: pre-wrap;
}

.queue-register-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin: 8px 10px;
}

.queue-register-summary div {
  display: grid;
  gap: 2px;
  padding: 8px 5px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 10px;
  text-align: center;
  background: rgba(255, 255, 255, 0.03);
}

.queue-register-summary small {
  color: #849993;
  font-size: 0.62rem;
}

.mini-topographic-map.recentered .mini-pin {
  animation: recenter-pin 500ms ease;
}

@keyframes recenter-pin {
  50% { transform: translate(-50%, -50%) scale(1.22); }
}

.source-detail {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  margin-top: 8px;
  border: 1px solid rgba(111, 198, 151, 0.18);
  border-radius: 12px;
  color: #dceae3;
  background: rgba(65, 135, 98, 0.09);
}

.source-detail > svg {
  color: #7fcaa3;
}

.source-detail div {
  display: grid;
  gap: 5px;
}

.source-detail p {
  margin: 0;
  color: #bccdc7;
}

.source-detail small,
.library-empty {
  color: #879b95;
}

.library-empty {
  margin: 14px 10px;
  padding: 12px;
  border: 1px dashed rgba(255, 255, 255, 0.12);
  border-radius: 11px;
  text-align: center;
}

.settings-buttons button {
  min-width: 170px;
}

@media (max-width: 900px) {
  .system-popover,
  .notifications-popover {
    position: fixed;
    top: 70px;
    right: 14px;
  }

  .logistics-map-view {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .topbar-popover {
    top: 62px;
    right: 10px;
    width: calc(100vw - 20px);
  }

  .system-popover dl {
    grid-template-columns: 1fr;
  }

  .map-layer-popover {
    top: 62px;
    left: 10px;
    width: calc(100% - 20px);
  }

  .open-inspector-button {
    top: 10px;
    right: 10px;
  }

  .filter-panel {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .filter-panel button {
    flex: 0 0 auto;
  }

  .handoff-draft > header,
  .handoff-draft > footer {
    align-items: stretch;
    flex-direction: column;
  }

  .handoff-draft > footer button {
    width: 100%;
  }

  .logistics-map-view {
    padding: 10px;
  }
}

@media print {
  .topbar-popover,
  .filter-panel,
  .logistics-map-view,
  .handoff-draft {
    display: none !important;
  }
}
.shed-workspace {
  display: grid;
  grid-template-columns: 250px minmax(640px, 1fr) 320px;
  gap: 10px;
  min-height: calc(100vh - 92px);
}

.callin-gear-draft {
  margin: 10px 12px;
  overflow: hidden;
  border: 1px solid rgba(222, 120, 78, 0.28);
  border-radius: 9px;
  background: rgba(222, 120, 78, 0.045);
}

.callin-gear-draft > header,
.callin-gear-draft > footer {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px;
}

.callin-gear-draft > header {
  border-bottom: 1px solid var(--line);
}

.callin-gear-draft > header > div {
  display: grid;
  gap: 3px;
}

.callin-gear-draft > header span {
  display: flex;
  gap: 5px;
  align-items: center;
  color: #8ebdff;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.callin-gear-draft > header span svg {
  width: 13px;
}

.callin-gear-draft h3 {
  margin: 0;
  color: var(--text);
  font-size: 0.9rem;
}

.callin-gear-draft > header > b {
  color: #e4ad61;
  font-size: 0.68rem;
}

.callin-gear-rows {
  display: grid;
}

.callin-gear-rows > button {
  display: grid;
  grid-template-columns: 1.1fr 1.3fr 36px 74px 92px 84px;
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border-bottom: 1px solid var(--line);
  color: var(--text);
  text-align: left;
  background: transparent;
}

.callin-gear-rows > button:hover {
  background: rgba(255, 255, 255, 0.025);
}

.callin-gear-rows > button > span {
  display: grid;
  gap: 2px;
}

.callin-gear-rows small {
  color: var(--muted);
  font-size: 0.62rem;
}

.callin-gear-draft > footer {
  color: var(--muted);
  font-size: 0.68rem;
}

.callin-gear-draft > footer > span {
  display: flex;
  gap: 5px;
  align-items: center;
}

.callin-gear-draft > footer svg {
  width: 14px;
}

.shed-workspace > .glass-panel {
  min-width: 0;
  overflow: hidden;
}

.shed-compliance,
.inventory-inspector {
  align-self: stretch;
}

.shed-compliance > header,
.inventory-inspector > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 66px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}

.shed-compliance > header div,
.inventory-inspector > header div {
  display: grid;
  gap: 3px;
}

.shed-compliance > header b,
.inventory-inspector > header b {
  color: var(--text);
  font-size: 1rem;
}

.shed-compliance > header small,
.inventory-inspector > header small {
  color: var(--muted);
}

.shed-compliance > header svg,
.inventory-inspector > header svg {
  width: 19px;
  color: var(--copper);
}

.call-window-headings {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 12px 52px 12px 72px;
  border-bottom: 1px solid var(--line);
}

.call-window-headings span {
  display: grid;
  gap: 3px;
  text-align: center;
}

.call-window-headings span:first-child {
  border-right: 1px solid var(--line);
}

.call-window-headings small {
  color: var(--muted);
}

.call-window-headings b {
  color: var(--sand);
  font-size: 1.08rem;
}

.compliance-group-list {
  display: grid;
  padding: 8px;
}

.compliance-group-list > button {
  display: grid;
  grid-template-columns: 32px minmax(78px, 1fr) 24px 24px 16px;
  gap: 7px;
  align-items: center;
  min-height: 58px;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: var(--text);
  text-align: left;
  background: transparent;
}

.compliance-group-list > button:hover,
.compliance-group-list > button.selected {
  border-color: rgba(222, 120, 78, 0.42);
  background: rgba(222, 120, 78, 0.09);
}

.compliance-group-list > button > span:nth-child(2) {
  display: grid;
  gap: 2px;
}

.compliance-group-list small {
  color: var(--muted);
  font-size: 0.68rem;
}

.compliance-group-list > button > svg {
  width: 15px;
  color: #70857f;
}

.compliance-symbol {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--group-color) 65%, transparent);
  border-radius: 50%;
  color: var(--group-color);
  background: color-mix(in srgb, var(--group-color) 10%, transparent);
  font-weight: 800;
}

.compliance-icon {
  display: grid;
  place-items: center;
}

.compliance-icon svg {
  width: 18px;
}

.compliance-icon.state-complete { color: #76c590; }
.compliance-icon.state-due { color: #e1a148; }
.compliance-icon.state-missing { color: #e06f51; }
.compliance-icon.state-not-due { color: #697d78; }

.compliance-legend {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px 8px;
  padding: 10px 14px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-size: 0.68rem;
}

.compliance-legend span {
  display: flex;
  gap: 5px;
  align-items: center;
}

.compliance-legend svg {
  width: 13px;
}

.compliance-summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 10px;
}

.compliance-summary div {
  display: grid;
  gap: 3px;
  padding: 11px 8px;
  border: 1px solid var(--line);
  border-radius: 9px;
  text-align: center;
  background: rgba(255, 255, 255, 0.025);
}

.compliance-summary b {
  color: var(--sand);
  font-size: 1.05rem;
}

.compliance-summary small {
  color: var(--muted);
  font-size: 0.65rem;
}

.shed-compliance > .button {
  margin: 0 10px 12px;
  width: calc(100% - 20px);
}

.gear-draft {
  align-self: start;
}

.gear-draft-header {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 16px 18px;
  border-bottom: 1px solid var(--line);
}

.gear-draft-header > div {
  display: grid;
  gap: 5px;
}

.gear-draft-header h2 {
  margin: 0;
  color: var(--text);
  font-size: 1.12rem;
}

.gear-draft-header p {
  max-width: 650px;
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
}

.eyebrow {
  display: flex;
  gap: 6px;
  align-items: center;
  color: #8ebdff;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.eyebrow svg {
  width: 14px;
}

.fulfillment-status {
  flex: 0 0 auto;
  padding: 6px 8px;
  border: 1px solid rgba(225, 161, 72, 0.35);
  border-radius: 6px;
  color: #e7b260;
  background: rgba(225, 161, 72, 0.08);
  font-size: 0.68rem;
  font-weight: 800;
}

.fulfillment-status.status-reserved,
.fulfillment-status.status-picked,
.fulfillment-status.status-sent {
  border-color: rgba(118, 197, 144, 0.35);
  color: #83cfa1;
  background: rgba(118, 197, 144, 0.08);
}

.gear-source-strip {
  display: grid;
  grid-template-columns: 32px minmax(180px, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  margin: 12px 14px 8px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.025);
}

.gear-source-strip > svg {
  width: 18px;
  color: var(--copper);
}

.gear-source-strip > div {
  display: grid;
  gap: 2px;
}

.gear-source-strip small,
.gear-source-strip time {
  color: var(--muted);
  font-size: 0.7rem;
}

.gear-source-strip button {
  display: flex;
  gap: 5px;
  align-items: center;
  color: #8ebdff;
  background: transparent;
}

.gear-source-strip button svg {
  width: 14px;
}

.human-review-note {
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 0 14px 10px;
  padding: 8px 10px;
  border-left: 2px solid var(--copper);
  color: var(--sand);
  background: rgba(222, 120, 78, 0.06);
}

.human-review-note > svg {
  width: 16px;
}

.human-review-note span {
  display: flex;
  gap: 8px;
  align-items: baseline;
}

.human-review-note small {
  color: var(--muted);
}

.gear-needs-table {
  overflow-x: auto;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.gear-needs-head,
.gear-need-row {
  display: grid;
  grid-template-columns: minmax(100px, 1.1fr) minmax(120px, 1.25fr) 46px 74px 84px 72px 82px 34px;
  gap: 8px;
  align-items: center;
  min-width: 740px;
  padding: 8px 12px;
}

.gear-needs-head {
  min-height: 34px;
  color: var(--muted);
  background: rgba(4, 13, 17, 0.42);
  font-size: 0.66rem;
  font-weight: 700;
}

.gear-need-row {
  min-height: 58px;
  border-top: 1px solid var(--line);
  color: var(--text);
  font-size: 0.75rem;
}

.gear-need-row:hover,
.gear-need-row.editing {
  background: rgba(255, 255, 255, 0.025);
}

.gear-need-row select,
.gear-need-row input {
  width: 100%;
  min-height: 32px;
  padding: 5px 6px;
  border: 1px solid rgba(222, 120, 78, 0.4);
  border-radius: 6px;
  color: var(--text);
  background: #0b1b20;
}

.gear-person,
.gear-item {
  display: flex;
  gap: 7px;
  align-items: center;
}

.gear-person > svg {
  width: 16px;
  color: #8ebdff;
}

.gear-person > span,
.gear-item {
  display: grid;
  gap: 2px;
}

.gear-person small,
.gear-item small {
  color: var(--muted);
  font-size: 0.65rem;
}

.urgency {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  font-weight: 800;
}

.urgency::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.urgency-high { color: #e87857; }
.urgency-medium { color: #e1a148; }
.urgency-low { color: #8fbf8f; }

.evidence-link {
  display: flex;
  gap: 5px;
  align-items: center;
  color: #8ebdff;
  background: transparent;
}

.evidence-link svg {
  width: 14px;
}

.confidence {
  display: flex;
  gap: 5px;
  align-items: center;
  color: #9dd2ae;
}

.confidence.low {
  color: #e1a148;
}

.confidence i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.need-status {
  padding: 4px 6px;
  border: 1px solid var(--line);
  border-radius: 5px;
  color: var(--muted);
  text-align: center;
  font-size: 0.63rem;
}

.need-status.status-reserved,
.need-status.status-picked,
.need-status.status-sent {
  border-color: rgba(118, 197, 144, 0.3);
  color: #83cfa1;
}

.edit-need {
  width: 30px;
  height: 30px;
}

.gear-draft-footer {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 12px 14px;
}

.gear-draft-footer small {
  display: flex;
  gap: 5px;
  align-items: center;
  margin-left: auto;
  color: var(--muted);
  font-size: 0.66rem;
}

.gear-draft-footer small svg {
  flex: 0 0 auto;
  width: 14px;
}

.fulfillment-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 0 14px 12px;
  padding: 12px 10px;
  border: 1px solid var(--line);
  border-radius: 9px;
}

.fulfillment-timeline div {
  position: relative;
  display: grid;
  gap: 5px;
  justify-items: center;
  color: #667a75;
  font-size: 0.65rem;
  text-align: center;
}

.fulfillment-timeline div::after {
  position: absolute;
  z-index: 0;
  top: 12px;
  left: calc(50% + 16px);
  width: calc(100% - 32px);
  height: 1px;
  content: "";
  background: #40504c;
}

.fulfillment-timeline div:last-child::after {
  display: none;
}

.fulfillment-timeline span {
  z-index: 1;
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border: 1px solid #40504c;
  border-radius: 50%;
  background: #122228;
}

.fulfillment-timeline span svg {
  width: 13px;
}

.fulfillment-timeline .active {
  color: var(--copper);
}

.fulfillment-timeline .active span {
  border-color: var(--copper);
}

.fulfillment-timeline .complete {
  color: #83cfa1;
}

.fulfillment-timeline .complete span {
  border-color: #68aa82;
  background: rgba(104, 170, 130, 0.12);
}

.shed-notes {
  position: relative;
  display: grid;
  gap: 5px;
  margin: 0 14px 14px;
  color: var(--muted);
  font-size: 0.7rem;
}

.shed-notes textarea {
  min-height: 70px;
  resize: vertical;
}

.shed-notes > small {
  position: absolute;
  right: 8px;
  bottom: 6px;
}

.no-gear-needs {
  display: grid;
  justify-items: center;
  padding: 44px 20px;
  color: var(--muted);
  text-align: center;
}

.no-gear-needs > svg {
  width: 36px;
  height: 36px;
  color: #7dbd94;
}

.no-gear-needs h3 {
  margin: 10px 0 4px;
  color: var(--text);
}

.no-gear-needs p {
  margin: 0 0 14px;
}

.inventory-search {
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 10px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(3, 11, 15, 0.42);
}

.inventory-search svg {
  width: 16px;
  color: var(--muted);
}

.inventory-search input {
  min-width: 0;
  padding: 0;
  border: 0;
  color: var(--text);
  background: transparent;
  outline: none;
}

.inventory-result-list {
  display: grid;
  max-height: 188px;
  overflow-y: auto;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.inventory-result-list button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 12px;
  border-bottom: 1px solid var(--line);
  color: var(--text);
  text-align: left;
  background: transparent;
}

.inventory-result-list button:hover,
.inventory-result-list button.selected {
  background: rgba(222, 120, 78, 0.08);
}

.inventory-result-list button > span {
  display: grid;
  gap: 2px;
}

.inventory-result-list button > span:last-child {
  color: #86c99d;
  text-align: right;
}

.inventory-result-list button > span.low {
  color: #e87857;
}

.inventory-result-list small {
  color: var(--muted);
  font-size: 0.64rem;
}

.inventory-focus {
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.inventory-focus-title {
  display: flex;
  gap: 9px;
  align-items: center;
}

.inventory-focus-title > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(222, 120, 78, 0.28);
  border-radius: 8px;
  color: var(--copper);
  background: rgba(222, 120, 78, 0.08);
}

.inventory-focus-title svg {
  width: 17px;
}

.inventory-focus-title h3,
.inventory-focus-title p {
  margin: 0;
}

.inventory-focus-title p {
  color: var(--muted);
  font-size: 0.7rem;
}

.low-stock {
  display: flex;
  gap: 4px;
  align-items: center;
  margin-left: auto;
  color: #e87857;
  font-size: 0.67rem;
}

.stock-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 14px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.stock-metrics div {
  display: grid;
  gap: 3px;
  padding: 10px 4px;
  text-align: center;
}

.stock-metrics div + div {
  border-left: 1px solid var(--line);
}

.stock-metrics dt,
.inventory-metadata dt,
.reservation-summary dt {
  color: var(--muted);
  font-size: 0.66rem;
}

.stock-metrics dd {
  margin: 0;
  color: var(--sand);
  font-size: 1.1rem;
}

.inventory-metadata,
.reservation-summary dl {
  display: grid;
  gap: 6px;
}

.inventory-metadata div,
.reservation-summary dl div {
  display: flex;
  justify-content: space-between;
}

.inventory-metadata dd,
.reservation-summary dd {
  margin: 0;
  color: var(--text);
}

.reservation-summary {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}

.reservation-summary header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 9px;
}

.reservation-summary header span {
  color: var(--copper);
  font-size: 0.68rem;
}

.shed-action-stack {
  display: grid;
  gap: 7px;
  padding: 12px;
}

.shed-action-stack .button {
  width: 100%;
}

.action-gate {
  display: flex;
  gap: 6px;
  align-items: flex-start;
  margin: 0 12px 14px;
  color: var(--muted);
  font-size: 0.67rem;
}

.action-gate svg {
  flex: 0 0 auto;
  width: 14px;
}

@media (max-width: 1420px) {
  .shed-workspace {
    grid-template-columns: 230px minmax(600px, 1fr);
  }

  .inventory-inspector {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 280px 1fr 260px;
  }

  .inventory-inspector > header,
  .inventory-search,
  .inventory-result-list {
    grid-column: 1;
  }

  .inventory-focus {
    grid-column: 2;
    grid-row: 1 / span 3;
    border-left: 1px solid var(--line);
  }

  .reservation-summary,
  .shed-action-stack,
  .action-gate {
    grid-column: 3;
  }
}

@media (max-width: 900px) {
  .shed-workspace {
    grid-template-columns: 1fr;
  }

  .shed-compliance,
  .gear-draft,
  .inventory-inspector {
    grid-column: 1;
  }

  .inventory-inspector {
    display: block;
  }

  .gear-draft-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .gear-draft-footer small {
    margin: 3px 0 0;
  }
}

@media (max-width: 620px) {
  .gear-draft-header,
  .gear-source-strip {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .gear-draft-header {
    flex-direction: column;
  }

  .human-review-note span {
    display: grid;
  }
}

@media print {
  .sidebar,
  .topbar,
  .shed-compliance,
  .inventory-search,
  .inventory-result-list,
  .shed-action-stack,
  .gear-draft-footer,
  .shed-notes,
  .mobile-bottom-nav {
    display: none !important;
  }

  .app-main,
  .workspace,
  .shed-workspace {
    display: block;
    padding: 0;
    background: white;
  }

  .gear-draft,
  .inventory-inspector {
    margin-bottom: 12px;
    color: #111;
    background: white;
    box-shadow: none;
  }
}
/* Real-time field clock, icon language, radio command, and document editor. */

.button svg,
.context-label svg,
.page-intro svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  stroke-width: 1.75;
}

.nav-item svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.75;
}

.nav-item.selected svg {
  color: #f09a6e;
  filter: drop-shadow(0 0 8px rgba(224, 113, 70, 0.24));
}

.field-clock,
.next-window {
  height: 52px;
  border: 1px solid var(--glass-border);
  border-radius: 11px;
  display: flex;
  align-items: center;
  color: var(--text-soft);
  background: rgba(255, 255, 255, 0.025);
}

.field-clock {
  min-width: 154px;
  padding: 0 12px;
  gap: 9px;
}

.field-clock > svg,
.next-window > svg {
  width: 18px;
  color: var(--copper);
}

.field-clock > span,
.next-window > span {
  display: grid;
  gap: 2px;
}

.field-clock small,
.next-window small {
  color: var(--muted);
  font-size: 7px;
  letter-spacing: 0.035em;
}

.field-clock b,
.next-window b {
  color: var(--text);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

.field-clock b i {
  color: var(--muted);
  font-size: 7px;
  font-style: normal;
}

.next-window {
  min-width: 174px;
  padding: 0 10px;
  gap: 8px;
  text-align: left;
}

.next-window:hover {
  border-color: rgba(225, 125, 81, 0.42);
  background: rgba(164, 74, 42, 0.09);
}

.next-window > i {
  margin-left: auto;
  padding: 4px 6px;
  border: 1px solid rgba(229, 185, 79, 0.26);
  border-radius: 6px;
  color: var(--amber);
  background: rgba(229, 185, 79, 0.07);
  font-size: 7px;
  font-style: normal;
  white-space: nowrap;
}

.user-summary .avatar svg {
  width: 18px;
  color: #f0a174;
}

.user-summary > span:nth-child(2) {
  display: grid;
  gap: 2px;
}

.operator-initials {
  display: none;
}

/* Three Peaks operating geography */

.interactive-zone-layer,
.interactive-road-layer,
.interactive-route-layer {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
}

.interactive-road-layer polyline {
  fill: none;
  stroke: rgba(225, 193, 151, 0.92);
  stroke-width: 2.25;
  stroke-dasharray: 5 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 0 1px #130d09) drop-shadow(0 0 4px rgba(226, 161, 112, 0.24));
}

.interactive-zone-layer polygon {
  fill: rgba(197, 88, 50, 0.08);
  stroke: rgba(232, 124, 82, 0.82);
  stroke-width: 2;
  stroke-dasharray: 7 5;
  filter: drop-shadow(0 0 8px rgba(191, 78, 45, 0.22));
}

.fallback-outpost-label {
  position: absolute;
  z-index: 7;
  transform: translate(-50%, -50%);
  padding: 7px 9px;
  border: 1px solid rgba(230, 125, 80, 0.52);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  color: #f4b08b;
  background: rgba(32, 18, 15, 0.88);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.34);
  text-align: center;
  pointer-events: none;
}

.fallback-outpost-label b {
  font-size: 9px;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

.fallback-outpost-label small {
  color: #d8a48b;
  font-size: 7px;
}

.fallback-road-label {
  position: absolute;
  z-index: 7;
  transform: translate(8px, -50%) rotate(88deg);
  transform-origin: left center;
  padding: 3px 6px;
  border-radius: 5px;
  color: #ddc5a6;
  background: rgba(30, 18, 13, 0.78);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.32);
  font-size: 7px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
}

.map-coordinate-readout {
  right: 14px;
  left: auto;
}

.marker-symbol i,
.mapbox-marker-symbol {
  display: grid;
  place-items: center;
}

.marker-symbol svg,
.mapbox-marker-symbol svg {
  width: 18px;
  height: 18px;
  stroke-width: 1.75;
}

/* Radio command */

.radio-command-workspace {
  height: 100%;
  min-height: 0;
  padding: 9px;
  display: grid;
  grid-template-rows: 72px minmax(0, 1fr) 68px;
  gap: 9px;
}

.radio-command-header {
  min-width: 0;
  padding: 0 16px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.radio-command-header > div {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 11px;
}

.radio-command-header h2 {
  margin: 0;
  font-size: 18px;
}

.radio-command-header p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 9px;
}

.signal-orb {
  position: relative;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(226, 126, 81, 0.36);
  border-radius: 11px;
  display: grid;
  place-items: center;
  color: var(--copper);
  background: rgba(177, 75, 43, 0.1);
}

.signal-orb svg { width: 21px; }
.signal-orb.active::after {
  content: "";
  position: absolute;
  inset: -5px;
  border: 1px solid rgba(105, 203, 147, 0.42);
  border-radius: 14px;
  animation: radio-pulse 1.8s ease-out infinite;
}

@keyframes radio-pulse {
  from { opacity: 0.9; transform: scale(0.9); }
  to { opacity: 0; transform: scale(1.22); }
}

.radio-command-header dl {
  margin: 0;
  display: flex;
  align-items: stretch;
}

.radio-command-header dl div {
  min-width: 118px;
  padding: 3px 13px;
  border-left: 1px solid var(--glass-border);
  display: grid;
  align-content: center;
  gap: 3px;
}

.radio-command-header dt {
  color: var(--muted);
  font-size: 7px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}

.radio-command-header dd {
  margin: 0;
  color: var(--text);
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}

.radio-command-header dd small {
  display: block;
  margin-top: 2px;
  color: var(--amber);
  font-size: 7px;
}

.radio-command-layout {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: 238px minmax(440px, 1fr) 286px;
  gap: 9px;
}

.radio-roster,
.live-transmission,
.ai-process-rail {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
}

.radio-roster {
  display: flex;
  flex-direction: column;
}

.radio-roster > header,
.ai-process-rail > header {
  min-height: 58px;
  padding: 0 12px;
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.radio-roster > header > div,
.ai-process-rail > header > div,
.streaming-transcript > header > div,
.radio-input-footer > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.radio-roster > header svg,
.ai-process-rail > header svg,
.streaming-transcript > header svg,
.radio-input-footer > div > svg {
  width: 17px;
  color: var(--copper);
}

.radio-roster header span,
.ai-process-rail header span,
.streaming-transcript header span,
.radio-input-footer span {
  display: grid;
  gap: 2px;
}

.radio-roster header b,
.ai-process-rail header b,
.streaming-transcript header b,
.radio-input-footer b { font-size: 10px; }
.radio-roster header small,
.ai-process-rail header small,
.streaming-transcript header small,
.radio-input-footer small { color: var(--muted); font-size: 7px; }

.radio-roster > header > i,
.ai-process-rail > header > i {
  color: var(--green);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.radio-roster-list {
  min-height: 0;
  padding: 7px;
  display: grid;
  align-content: start;
  gap: 5px;
  overflow-y: auto;
}

.radio-roster-row {
  min-height: 58px;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: 9px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto 16px;
  align-items: center;
  gap: 7px;
  color: var(--text-soft);
  background: rgba(255, 255, 255, 0.018);
  text-align: left;
}

.radio-roster-row:hover,
.radio-roster-row.state-receiving,
.radio-roster-row.selected {
  border-color: rgba(115, 169, 255, 0.38);
  background: rgba(75, 132, 183, 0.1);
}

.radio-roster-row.selected {
  box-shadow: inset 3px 0 0 var(--blue), 0 0 0 1px rgba(115, 169, 255, 0.08);
}

.radio-roster-row.state-receiving {
  box-shadow: inset 3px 0 0 var(--blue);
}

.group-icon-tile {
  width: 33px;
  height: 33px;
  border: 1px solid color-mix(in srgb, var(--group-color) 42%, transparent);
  border-radius: 10px;
  display: grid;
  place-items: center;
  color: var(--group-color);
  background: color-mix(in srgb, var(--group-color) 10%, transparent);
}

.group-icon-tile svg { width: 18px; }
.radio-roster-row > span:nth-child(2) { min-width: 0; display: grid; gap: 3px; }
.radio-roster-row b { font-size: 10px; }
.radio-roster-row small { overflow: hidden; color: var(--muted); font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.radio-roster-row time { color: var(--muted-strong); font-size: 8px; font-variant-numeric: tabular-nums; }
.radio-roster-row > svg { width: 14px; color: var(--green); }
.radio-roster-row.state-due > svg { color: var(--amber); }
.radio-roster-row.state-review > svg { color: var(--copper); }
.roster-action { margin: auto 8px 8px; justify-content: center; }

.live-transmission {
  display: grid;
  grid-template-rows: 64px 88px auto 54px minmax(0, 1fr);
}

.live-transmission > header {
  padding: 0 13px;
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.live-transmission > header > div:first-child {
  display: flex;
  align-items: center;
  gap: 10px;
}

.live-transmission > header > div:first-child > span:last-child {
  display: grid;
  gap: 3px;
}

.live-transmission header b { font-size: 11px; }
.live-transmission header small { color: var(--muted); font-size: 8px; }

.receiving-state {
  height: 25px;
  padding: 0 8px;
  border: 1px solid rgba(139, 162, 170, 0.24);
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--muted-strong);
  background: rgba(255, 255, 255, 0.03);
  font-size: 7px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.receiving-state i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.receiving-state.active {
  color: #ff9a72;
  border-color: rgba(221, 105, 72, 0.46);
  background: rgba(148, 55, 39, 0.18);
}

.receiving-state.active i {
  animation: status-blink 1s ease-in-out infinite;
}

@keyframes status-blink {
  50% { opacity: 0.25; }
}

.signal-strength {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--green);
}

.signal-strength svg { width: 17px; }
.signal-strength span { display: grid; gap: 1px; }
.signal-strength b { font-size: 9px; }
.signal-strength small { font-size: 7px; }

.live-waveform {
  position: relative;
  padding: 12px 14px 24px;
  display: flex;
  align-items: center;
  gap: 2px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(70, 130, 175, 0.06), rgba(200, 93, 55, 0.04)),
    rgba(2, 12, 18, 0.25);
}

.live-waveform::before {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  top: 50%;
  height: 1px;
  background: rgba(120, 177, 210, 0.13);
}

.live-waveform i {
  z-index: 1;
  width: 2px;
  min-height: 5px;
  border-radius: 2px;
  background: #599fce;
  opacity: 0.44;
  transition: height 180ms ease;
}

.live-waveform.active i {
  opacity: 0.82;
  box-shadow: 0 0 4px rgba(80, 157, 210, 0.22);
}

.live-waveform time {
  position: absolute;
  right: 13px;
  bottom: 8px;
  color: var(--text-soft);
  font-size: 9px;
  font-variant-numeric: tabular-nums;
}

.transmission-controls {
  padding: 6px 9px;
  border-top: 1px solid var(--glass-border);
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.transmission-controls .button { min-height: 34px; }

.channel-control {
  height: 34px;
  padding: 0 9px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.025);
}

.channel-control svg { width: 14px; }
.channel-control span { font-size: 7px; }
.channel-control select { color: var(--text); border: 0; outline: 0; background: transparent; font-size: 8px; }

.audio-monitor-button.active {
  color: #9ee7d1;
  border-color: rgba(98, 211, 169, 0.46);
  background: rgba(54, 157, 123, 0.14);
}

.radio-volume-control {
  min-width: 86px;
  height: 34px;
  padding: 0 8px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--blue);
  background: rgba(255, 255, 255, 0.025);
}

.radio-volume-control svg { width: 13px; flex: 0 0 auto; }
.radio-volume-control input { width: 58px; accent-color: var(--blue); }
.icon-only-radio-control { width: 34px; padding: 0 !important; justify-content: center; }

.radio-field-context {
  min-width: 0;
  padding: 6px 9px;
  border-bottom: 1px solid var(--glass-border);
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr auto;
  align-items: center;
  gap: 5px;
  background: linear-gradient(90deg, rgba(79, 145, 177, 0.055), rgba(106, 168, 133, 0.045));
}

.radio-field-context > span {
  min-width: 0;
  padding: 3px 6px;
  display: grid;
  grid-template-columns: 15px minmax(0, 1fr);
  gap: 1px 4px;
  border-right: 1px solid rgba(190, 217, 222, 0.08);
}

.radio-field-context > span svg { grid-row: 1 / 3; width: 13px; color: #78c5d5; }
.radio-field-context small { overflow: hidden; color: var(--muted); font-size: 6px; text-overflow: ellipsis; white-space: nowrap; }
.radio-field-context b { overflow: hidden; color: var(--text-soft); font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.radio-field-context .button { min-height: 28px; padding-inline: 6px; font-size: 7px; }

.transcript-empty {
  min-height: 90px;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.5;
  text-align: center;
}

.transcript-empty svg { width: 18px; color: var(--amber); }

.streaming-transcript {
  min-height: 0;
  display: grid;
  grid-template-rows: 48px minmax(0, 1fr);
}

.streaming-transcript > header {
  padding: 0 12px;
  border-bottom: 1px solid var(--glass-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.streaming-transcript > header > i {
  color: var(--blue);
  font-size: 7px;
  font-style: normal;
}

.streaming-transcript > div {
  min-height: 0;
  padding: 5px 11px 12px;
  overflow-y: auto;
}

.streaming-transcript article {
  min-height: 39px;
  padding: 7px 0;
  display: grid;
  grid-template-columns: 56px 64px minmax(0, 1fr);
  gap: 8px;
  border-bottom: 1px solid rgba(190, 217, 222, 0.08);
}

.streaming-transcript article time { color: var(--muted); font-size: 8px; }
.streaming-transcript article b { color: var(--blue); font-size: 8px; }
.streaming-transcript article p { margin: 0; color: var(--text-soft); font-size: 9px; line-height: 1.45; }

.transcript-cursor {
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 8px;
}

.transcript-cursor i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--green);
  animation: status-blink 1s ease-in-out infinite;
}

.ai-process-rail {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}

.pipeline-list {
  padding: 8px 10px;
  display: grid;
}

.pipeline-list > div {
  min-height: 42px;
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  border-bottom: 1px solid rgba(190, 217, 222, 0.09);
}

.pipeline-list > div > span {
  width: 26px;
  height: 26px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--muted);
}

.pipeline-list svg { width: 13px; }
.pipeline-list > div > div { display: grid; gap: 3px; }
.pipeline-list b { color: var(--muted-strong); font-size: 9px; }
.pipeline-list small { color: var(--muted); font-size: 7px; }
.pipeline-list > div > i { color: var(--muted); font-size: 8px; font-style: normal; }
.pipeline-list .complete > span { color: var(--green); border-color: rgba(104, 199, 143, 0.3); background: rgba(104, 199, 143, 0.07); }
.pipeline-list .complete b { color: var(--text-soft); }
.pipeline-list .active > span { color: var(--blue); border-color: rgba(114, 167, 255, 0.42); background: rgba(114, 167, 255, 0.09); animation: processing-pulse 1.4s ease-in-out infinite; }
.pipeline-list .active b { color: var(--blue); }

@keyframes processing-pulse {
  50% { box-shadow: 0 0 0 5px rgba(114, 167, 255, 0.05); }
}

.ai-safety-note {
  margin: 0 10px;
  padding: 8px;
  border: 1px solid rgba(226, 126, 81, 0.24);
  border-radius: 9px;
  display: flex;
  gap: 8px;
  background: rgba(158, 72, 43, 0.06);
}

.ai-safety-note svg { width: 16px; flex: 0 0 auto; color: var(--copper); }
.ai-safety-note b { font-size: 9px; }
.ai-safety-note p { margin: 3px 0 0; color: var(--muted); font-size: 7px; line-height: 1.45; }

.radio-operator-actions {
  margin-top: auto;
  padding: 8px 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.radio-operator-actions .button { justify-content: center; min-height: 38px; padding-inline: 8px; }

.radio-input-footer {
  padding: 8px 12px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  gap: 7px;
}

.radio-input-footer > div:first-child { margin-right: auto; }
.radio-input-footer label input { display: none; }
.radio-input-footer .source-ready { color: var(--green); border-color: rgba(104, 199, 143, 0.34); }

.local-recording-player {
  min-width: 240px;
  max-width: 360px;
  padding: 5px 7px;
  border: 1px solid rgba(114, 167, 255, 0.24);
  border-radius: 9px;
  display: grid !important;
  grid-template-columns: minmax(90px, 1fr) 150px;
  align-items: center;
  gap: 6px !important;
  background: rgba(56, 107, 145, 0.07);
}

.local-recording-player > span {
  min-width: 0;
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 1px 4px;
}

.local-recording-player svg { grid-row: 1 / 3; width: 13px; color: var(--blue); }
.local-recording-player b,
.local-recording-player small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.local-recording-player b { font-size: 7px; }
.local-recording-player small { color: var(--muted); font-size: 6px; }
.local-recording-player audio { width: 150px; height: 28px; }

/* Editable reports */

.reports-workspace {
  grid-template-columns: 224px minmax(620px, 1fr) 304px;
}

.document-workspace {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 52px 42px minmax(0, 1fr) 104px;
}

.document-toolbar {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  flex-wrap: nowrap;
  overflow: visible;
}

.document-toolbar .button {
  min-height: 36px;
  padding-inline: 9px;
  white-space: nowrap;
}

.document-toolbar .icon-button {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border-color: var(--glass-border);
}

.send-review-button {
  margin-left: auto;
}

.document-edit-status {
  min-width: 0;
  padding: 5px 8px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  gap: 7px;
  overflow: hidden;
}

.document-edit-status > span {
  min-width: max-content;
  height: 28px;
  padding: 0 8px;
  border-right: 1px solid var(--glass-border);
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--muted-strong);
  font-size: 7px;
}

.document-edit-status > span svg { width: 12px; color: var(--blue); }
.document-edit-status > span.dirty { color: var(--copper); }
.document-edit-status > span.saved { color: var(--green); }

.document-edit-status label {
  min-width: 108px;
  height: 30px;
  padding: 3px 7px;
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  display: grid;
  gap: 1px;
}

.document-edit-status label:first-of-type { margin-left: auto; min-width: 142px; }
.document-edit-status label small { color: var(--muted); font-size: 6px; }
.document-edit-status select { padding: 0; color: var(--text); border: 0; outline: 0; background: transparent; font-size: 7px; }

.report-paper.editing {
  outline: 1px solid rgba(114, 167, 255, 0.2);
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.48), 0 0 0 4px rgba(58, 127, 194, 0.035);
}

.editable-report-field {
  position: relative;
  width: 100%;
  display: inline-flex;
}

.editable-report-field input,
.editable-report-field textarea {
  width: 100%;
  min-width: 0;
  padding: 4px 6px;
  border: 1px solid rgba(53, 85, 94, 0.26);
  border-radius: 4px;
  outline: 0;
  color: #1d282b;
  background: rgba(255, 255, 255, 0.52);
  font: inherit;
  line-height: 1.35;
  resize: vertical;
}

.editable-report-field textarea { min-height: 42px; }

.editable-report-field input:hover,
.editable-report-field textarea:hover {
  border-color: rgba(51, 119, 175, 0.45);
  background: rgba(248, 253, 255, 0.9);
}

.editable-report-field.selected input,
.editable-report-field.selected textarea,
.editable-report-field input:focus,
.editable-report-field textarea:focus {
  border-color: #397fba;
  background: #f6fbff;
  box-shadow: 0 0 0 2px rgba(57, 127, 186, 0.14);
}

.editable-report-field.dirty input,
.editable-report-field.dirty textarea {
  border-left: 3px solid #ca6b42;
  padding-left: 5px;
}

.editable-report-field > i {
  position: absolute;
  right: -3px;
  top: -3px;
  width: 7px;
  height: 7px;
  border: 1px solid #fff8ee;
  border-radius: 50%;
  background: #d46f43;
}

.report-field-preview {
  white-space: pre-wrap;
}

.paper-incident-section {
  grid-column: 1 / -1;
}

.document-inspector {
  scrollbar-gutter: stable;
}

.document-inspector > header {
  position: sticky;
  top: 0;
  z-index: 3;
  background: rgba(7, 23, 31, 0.96);
}

.ai-extraction-summary,
.field-evidence-list {
  margin: 8px;
  border: 1px solid var(--glass-border);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.018);
}

.ai-extraction-summary {
  padding: 10px;
}

.ai-extraction-summary > header,
.field-evidence-list > header {
  display: flex;
  align-items: center;
  gap: 7px;
}

.ai-extraction-summary > header svg,
.field-evidence-list > header svg {
  width: 15px;
  color: var(--blue);
}

.ai-extraction-summary > header b,
.field-evidence-list > header b { font-size: 9px; }
.ai-extraction-summary > header span { margin-left: auto; color: var(--green); font-size: 10px; font-weight: 800; }

.ai-extraction-summary dl {
  margin: 10px 0 8px;
  display: grid;
  gap: 5px;
}

.ai-extraction-summary dl div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.ai-extraction-summary dt { color: var(--muted); font-size: 7px; }
.ai-extraction-summary dd { margin: 0; color: var(--text-soft); font-size: 7px; }
.ai-extraction-summary dd.warning { color: var(--copper); }

.confidence-meter {
  height: 4px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(255, 255, 255, 0.07);
}

.confidence-meter i {
  height: 100%;
  display: block;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), var(--green));
}

.field-evidence-list {
  padding: 9px;
}

.field-evidence-list > header {
  margin-bottom: 7px;
}

.field-evidence-list > button {
  width: 100%;
  min-height: 39px;
  padding: 5px 6px;
  border: 1px solid transparent;
  border-radius: 6px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 6px;
  color: var(--text-soft);
  background: transparent;
  text-align: left;
}

.field-evidence-list > button:hover,
.field-evidence-list > button.selected {
  border-color: rgba(114, 167, 255, 0.28);
  background: rgba(114, 167, 255, 0.06);
}

.field-evidence-list > button.accepted {
  background: rgba(104, 199, 143, 0.045);
}

.field-evidence-list > button > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.field-evidence-list > button b { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.field-evidence-list > button small { color: var(--muted); font-size: 6px; }
.field-evidence-list > button > i { font-size: 7px; font-style: normal; }
.field-evidence-list > button > i.high { color: var(--green); }
.field-evidence-list > button > i.medium { color: var(--amber); }
.field-evidence-list > button > i.low { color: var(--copper); }
.field-evidence-list > button > svg { width: 12px; color: var(--blue); }
.field-evidence-list > button.accepted > svg { color: var(--green); }

.field-evidence-actions {
  margin-top: 7px;
  padding: 8px;
  border-top: 1px solid var(--glass-border);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 5px;
}

.field-evidence-actions > span { min-width: 0; display: grid; gap: 2px; }
.field-evidence-actions b { font-size: 8px; }
.field-evidence-actions small { overflow: hidden; color: var(--muted); font-size: 6px; text-overflow: ellipsis; white-space: nowrap; }
.field-evidence-actions button {
  min-height: 27px;
  padding: 0 6px;
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--text-soft);
  background: rgba(255, 255, 255, 0.025);
  font-size: 7px;
}
.field-evidence-actions button:hover:not(:disabled) { color: var(--text); border-color: rgba(114, 167, 255, 0.38); }
.field-evidence-actions button svg { width: 11px; }

.document-inspector .workflow-warning .button.text {
  min-height: 25px;
  padding: 0;
  font-size: 7px;
}

.document-inspector .workflow-comment header span {
  margin-left: auto;
  color: var(--muted);
  font-size: 7px;
}

.document-inspector .approval-actions {
  position: sticky;
  bottom: 0;
  background: rgba(7, 23, 31, 0.96);
  box-shadow: 0 -10px 24px rgba(3, 11, 15, 0.28);
}

@media (max-width: 1420px) {
  .field-clock { display: flex; min-width: 144px; }
  .weather-state { display: none; }
  .next-window { min-width: 148px; }
  .topbar-actions { gap: 6px; }
  .user-summary > span:nth-child(2) { display: grid; gap: 2px; }
  .user-summary > span:nth-child(2) small { display: none; }
  .reports-workspace { grid-template-columns: 206px minmax(600px, 1fr) 284px; overflow-x: auto; }
  .radio-command-layout { grid-template-columns: 220px minmax(430px, 1fr) 270px; }
  .radio-command-header dl div { min-width: 105px; padding-inline: 9px; }
  .document-toolbar { padding: 4px; gap: 3px; }
  .document-toolbar .button { min-height: 32px; padding-inline: 5px; gap: 4px; font-size: 6px; }
  .document-toolbar .button svg { width: 13px; }
  .document-toolbar .icon-button { width: 32px; height: 32px; }
  .document-toolbar > .button:last-child { margin-left: 0; }
  .fallback-outpost-label { padding: 4px 6px; }
  .fallback-outpost-label small { display: none; }
}

@media (max-width: 1100px) {
  .next-window { display: none; }
  .radio-command-workspace { height: auto; min-height: calc(100dvh - 92px); grid-template-rows: auto auto auto; overflow: visible; }
  .radio-command-layout { grid-template-columns: 220px minmax(520px, 1fr); overflow-x: auto; }
  .ai-process-rail { grid-column: 1 / -1; min-height: 440px; }
  .radio-command-header dl div:nth-child(2) { display: none; }
  .radio-input-footer { min-width: 760px; flex-wrap: wrap; }
  .local-recording-player { order: 2; flex-basis: 100%; max-width: none; grid-template-columns: minmax(120px, 1fr) minmax(240px, 2fr); }
  .local-recording-player audio { width: 100%; }
}

@media (max-width: 720px) {
  .field-clock {
    min-width: 86px;
    height: 39px;
    padding: 0 7px;
    gap: 5px;
  }
  .field-clock > svg { width: 15px; }
  .field-clock small,
  .field-clock b i { display: none; }
  .field-clock b { font-size: 9px; }
  .user-summary > span:nth-child(2) { display: none; }
  .radio-command-workspace { padding: 7px; }
  .radio-command-header { padding: 11px; display: grid; gap: 11px; }
  .radio-command-header dl { width: 100%; }
  .radio-command-header dl div { flex: 1; min-width: 0; padding-left: 8px; }
  .radio-command-layout { display: grid; grid-template-columns: 1fr; overflow: visible; }
  .radio-roster,
  .live-transmission,
  .ai-process-rail { min-height: 430px; }
  .live-transmission { grid-template-rows: 72px 90px auto auto minmax(300px, 1fr); }
  .transmission-controls { flex-wrap: wrap; }
  .radio-field-context { grid-template-columns: 1fr 1fr; padding-block: 8px; }
  .radio-field-context > span:nth-child(3) { grid-column: 1 / -1; }
  .radio-field-context .button { justify-content: center; }
  .radio-input-footer { min-width: 0; display: grid; grid-template-columns: 1fr; }
  .radio-input-footer > div { margin: 0 0 4px; }
  .local-recording-player { min-width: 0; grid-template-columns: 1fr; }
  .local-recording-player audio { width: 100%; }
  .document-edit-status { overflow-x: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .signal-orb.active::after,
  .receiving-state.active i,
  .pipeline-list .active > span,
  .transcript-cursor i {
    animation: none !important;
  }
}

@media print {
  .document-edit-status {
    display: none !important;
  }

  .editable-report-field input,
  .editable-report-field textarea {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    resize: none;
  }
}
.map-wind-streams {
  transform: rotate(var(--wind-css-angle));
}

.map-wind-streams i {
  height: 2px;
  border-radius: 999px;
  opacity: var(--wind-alpha);
  background: linear-gradient(90deg, transparent 0%, rgba(104, 202, 211, 0.5) 26%, rgba(232, 250, 240, 0.94) 76%, rgba(247, 218, 177, 0.82) 100%);
  box-shadow: 0 0 5px rgba(63, 156, 173, 0.3);
  will-change: transform, opacity;
}

.map-wind-streams i::after {
  right: -6px;
  top: -2px;
  width: 0;
  height: 0;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  border-left: 6px solid rgba(232, 250, 240, 0.82);
  border-radius: 0;
  background: transparent;
}

.map-wind-streams-gust {
  opacity: calc(0.28 + var(--wind-gust-strength) * 0.32);
}

.map-wind-streams-gust i {
  filter: blur(0.15px);
  animation-name: map-wind-gust-drift;
}

@keyframes map-wind-gust-drift {
  0% {
    transform: translate3d(0, 0, 0) scaleX(0.55);
    opacity: 0.15;
  }

  18% {
    opacity: var(--wind-alpha);
  }

  44% {
    transform: translate3d(54vw, 0, 0) scaleX(1.16);
    opacity: calc(var(--wind-alpha) * 0.72);
  }

  100% {
    transform: translate3d(132vw, 0, 0) scaleX(0.82);
    opacity: 0.08;
  }
}

.weather-station-check {
  width: 100%;
  min-height: 34px;
  padding: 6px 9px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  border-top: 1px solid rgba(113, 176, 199, 0.16);
  color: #dcecf0;
  background: rgba(58, 132, 155, 0.055);
  text-align: left;
}

button.weather-station-check:hover {
  background: rgba(58, 132, 155, 0.11);
}

.weather-station-check > svg {
  width: 15px;
  height: 15px;
  color: #83c9d7;
}

.weather-station-check > span {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.weather-station-check b {
  font-size: 7px;
}

.weather-station-check small {
  overflow: hidden;
  color: #9eaaa7;
  font-size: 5.7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weather-station-check > i {
  max-width: 112px;
  overflow: hidden;
  color: #bcdce4;
  font-size: 6px;
  font-style: normal;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weather-station-check.unavailable {
  grid-template-columns: 18px minmax(0, 1fr);
  opacity: 0.68;
}

@media (max-width: 760px) {
  .weather-station-check {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .map-wind-streams-gust i {
    animation: none !important;
  }
}
