.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{position:absolute;left:0;top:0}.maplibregl-map:fullscreen{width:100%;height:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.maplibregl-ctrl-top-left{top:0;left:0}.maplibregl-ctrl-top-right{top:0;right:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{right:0;bottom:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{margin:10px 0 0 10px;float:left}.maplibregl-ctrl-top-right .maplibregl-ctrl{margin:10px 10px 0 0;float:right}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{margin:0 0 10px 10px;float:left}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin:0 10px 10px 0;float:right}.maplibregl-ctrl-group{border-radius:4px;background:#fff}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{width:29px;height:29px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:transparent;cursor:pointer}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media (hover:hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:rgba(0,0,0,.05)}}.maplibregl-ctrl button:not(:disabled):active{background-color:rgba(0,0,0,.05)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5%22%2F%3E%3C%2Fsvg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5%22%2F%3E%3C%2Fsvg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5%22%2F%3E%3C%2Fsvg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1z%22%2F%3E%3C%2Fsvg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1z%22%2F%3E%3C%2Fsvg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1z%22%2F%3E%3C%2Fsvg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22m10.5%2014%204-8%204%208z%22%2F%3E%3Cpath%20fill%3D%22%23ccc%22%20d%3D%22m10.5%2016%204%208%204-8z%22%2F%3E%3C%2Fsvg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22m10.5%2014%204-8%204%208z%22%2F%3E%3Cpath%20fill%3D%22%23ccc%22%20d%3D%22m10.5%2016%204%208%204-8z%22%2F%3E%3C%2Fsvg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22m10.5%2014%204-8%204%208z%22%2F%3E%3Cpath%20fill%3D%22%23ccc%22%20d%3D%22m10.5%2016%204%208%204-8z%22%2F%3E%3C%2Fsvg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20viewBox%3D%220%200%2022%2022%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228.5%22%2F%3E%3Cpath%20d%3D%22M17.5%2011c0%204.819-3.02%208.5-6.5%208.5S4.5%2015.819%204.5%2011%207.52%202.5%2011%202.5s6.5%203.681%206.5%208.5Z%22%2F%3E%3Cpath%20d%3D%22M13.5%2011c0%202.447-.331%204.64-.853%206.206-.262.785-.562%201.384-.872%201.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831%2015.64%208.5%2013.446%208.5%2011s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872%201.777.522%201.565.853%203.76.853%206.206Z%22%2F%3E%3Cpath%20d%3D%22M11%207.5c-1.909%200-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3%201.3%200%200%201-.224-.138q.07-.058.224-.138c.299-.151.763-.302%201.379-.434C7.378%205.666%209.091%205.5%2011%205.5s3.622.166%204.845.428c.616.132%201.08.283%201.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm0%209c-1.909%200-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3%201.3%200%200%201-.224-.138%201.3%201.3%200%200%201%20.224-.138c.299-.151.763-.302%201.379-.434C7.378%2014.666%209.091%2014.5%2011%2014.5s3.622.166%204.845.428c.616.132%201.08.283%201.379.434.105.053.177.1.224.138a1.3%201.3%200%200%201-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm0-4c-2.46%200-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5%201.5%200%200%201-.39-.272.3.3%200%200%201-.047-.064.3.3%200%200%201%20.048-.064c.066-.073.189-.167.389-.272.399-.21%201.009-.413%201.805-.59C6.328%209.722%208.54%209.5%2011%209.5s4.672.222%206.256.574c.795.177%201.405.38%201.804.59.2.105.323.2.39.272a.3.3%200%200%201%20.047.064.3.3%200%200%201-.048.064%201.4%201.4%200%200%201-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0%20.018v.002zm17.002.002v-.002zm0-.018v-.002z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22none%22%20stroke%3D%22%2333b5e5%22%20viewBox%3D%220%200%2022%2022%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228.5%22%2F%3E%3Cpath%20d%3D%22M17.5%2011c0%204.819-3.02%208.5-6.5%208.5S4.5%2015.819%204.5%2011%207.52%202.5%2011%202.5s6.5%203.681%206.5%208.5Z%22%2F%3E%3Cpath%20d%3D%22M13.5%2011c0%202.447-.331%204.64-.853%206.206-.262.785-.562%201.384-.872%201.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831%2015.64%208.5%2013.446%208.5%2011s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872%201.777.522%201.565.853%203.76.853%206.206Z%22%2F%3E%3Cpath%20d%3D%22M11%207.5c-1.909%200-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3%201.3%200%200%201-.224-.138q.07-.058.224-.138c.299-.151.763-.302%201.379-.434C7.378%205.666%209.091%205.5%2011%205.5s3.622.166%204.845.428c.616.132%201.08.283%201.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm0%209c-1.909%200-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3%201.3%200%200%201-.224-.138%201.3%201.3%200%200%201%20.224-.138c.299-.151.763-.302%201.379-.434C7.378%2014.666%209.091%2014.5%2011%2014.5s3.622.166%204.845.428c.616.132%201.08.283%201.379.434.105.053.177.1.224.138a1.3%201.3%200%200%201-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm0-4c-2.46%200-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5%201.5%200%200%201-.39-.272.3.3%200%200%201-.047-.064.3.3%200%200%201%20.048-.064c.066-.073.189-.167.389-.272.399-.21%201.009-.413%201.805-.59C6.328%209.722%208.54%209.5%2011%209.5s4.672.222%206.256.574c.795.177%201.405.38%201.804.59.2.105.323.2.39.272a.3.3%200%200%201%20.047.064.3.3%200%200%201-.048.064%201.4%201.4%200%200%201-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0%20.018v.002zm17.002.002v-.002zm0-.018v-.002z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2022%2022%22%3E%3Cpath%20d%3D%22m1.754%2013.406%204.453-4.851%203.09%203.09%203.281%203.277.969-.969-3.309-3.312%203.844-4.121%206.148%206.886h1.082v-.855l-7.207-8.07-4.84%205.187L6.169%206.57l-5.48%205.965v.871ZM.688%2016.844h20.625v1.375H.688Zm0%200%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22%2333b5e5%22%20viewBox%3D%220%200%2022%2022%22%3E%3Cpath%20d%3D%22m1.754%2013.406%204.453-4.851%203.09%203.09%203.281%203.277.969-.969-3.309-3.312%203.844-4.121%206.148%206.886h1.082v-.855l-7.207-8.07-4.84%205.187L6.169%206.57l-5.48%205.965v.871ZM.688%2016.844h20.625v1.375H.688Zm0%200%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23aaa%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20fill%3D%22red%22%20d%3D%22m14%205%201%201-9%209-1-1z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%2333b5e5%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23e58978%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%2333b5e5%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23e54e33%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23999%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20fill%3D%22red%22%20d%3D%22m14%205%201%201-9%209-1-1z%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%2333b5e5%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23e58978%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%2333b5e5%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23e54e33%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3C%2Fsvg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2229%22%20fill%3D%22%23666%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1m0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20fill%3D%22red%22%20d%3D%22m14%205%201%201-9%209-1-1z%22%2F%3E%3C%2Fsvg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-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%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2288%22%20height%3D%2223%22%20fill%3D%22none%22%3E%3Cpath%20fill%3D%22%23000%22%20fill-opacity%3D%22.4%22%20fill-rule%3D%22evenodd%22%20d%3D%22M17.408%2016.796h-1.827l2.501-12.095h.198l3.324%206.533.988%202.19.988-2.19%203.258-6.533h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.929%205.644h-.098l-2.914-5.644-.757-1.71-.345%201.71zm1.958-3.42-.726%203.663a1.255%201.255%200%200%201-1.232%201.011h-1.827a1.255%201.255%200%200%201-1.229-1.509l2.501-12.095a1.255%201.255%200%200%201%201.23-1.001h.197a1.25%201.25%200%200%201%201.12.685l3.19%206.273%203.125-6.263a1.25%201.25%200%200%201%201.123-.695h.181a1.255%201.255%200%200%201%201.227.991l1.443%206.71a5%205%200%200%201%20.314-.787l.009-.016a4.6%204.6%200%200%201%201.777-1.887c.782-.46%201.668-.667%202.611-.667a4.6%204.6%200%200%201%201.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255%201.255%200%200%201%201.212.925%201.255%201.255%200%200%201%201.212-.925h1.711c.284%200%20.545.094.755.252.613-.3%201.312-.45%202.075-.45%201.356%200%202.557.445%203.482%201.4q.47.48.763%201.064V4.701a1.255%201.255%200%200%201%201.255-1.255h1.86A1.255%201.255%200%200%201%2054.44%204.7v9.194h2.217c.19%200%20.37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42%202.42%200%200%201-.682-1.71c0-.665.267-1.253.735-1.7a2.45%202.45%200%200%201%201.722-.674%202.43%202.43%200%200%201%201.705.675q.318.302.504.683V4.7a1.255%201.255%200%200%201%201.255-1.255h1.744A1.255%201.255%200%200%201%2065.812%204.7v3.335a4.8%204.8%200%200%201%201.526-.246c.938%200%201.817.214%202.59.69a4.47%204.47%200%200%201%201.67%201.743v-.98a1.255%201.255%200%200%201%201.256-1.256h1.777c.233%200%20.451.064.639.174a3.4%203.4%200%200%201%201.567-.372c.346%200%20.861.02%201.285.232a1.25%201.25%200%200%201%20.689%201.004%204.7%204.7%200%200%201%20.853-.588c.795-.44%201.675-.647%202.61-.647%201.385%200%202.65.39%203.525%201.396.836.938%201.168%202.173%201.168%203.528q-.001.515-.056%201.051a1.255%201.255%200%200%201-.947%201.09l.408.952a1.255%201.255%200%200%201-.477%201.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06%200-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8%205.8%200%200%201-.548-2.512q0-.429.053-.843a1.3%201.3%200%200%201-.333-.086l-.166-.004c-.223%200-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255%201.255%200%200%201-1.256%201.256h-1.777a1.255%201.255%200%200%201-1.256-1.256V15.69l-.032.057a4.8%204.8%200%200%201-1.86%201.833%205.04%205.04%200%200%201-2.484.634%204.5%204.5%200%200%201-1.935-.424%201.25%201.25%200%200%201-.764.258h-1.71a1.255%201.255%200%200%201-1.256-1.255V7.687a2.4%202.4%200%200%201-.428.625c.253.23.412.561.412.93v7.553a1.255%201.255%200%200%201-1.256%201.255h-1.843a1.25%201.25%200%200%201-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255%201.255%200%200%201-1.256-1.255v-1.251l-.061.117a4.7%204.7%200%200%201-1.782%201.884%204.77%204.77%200%200%201-2.485.67%205.6%205.6%200%200%201-1.485-.188l.009%202.764a1.255%201.255%200%200%201-1.255%201.259h-1.729a1.255%201.255%200%200%201-1.255-1.255v-3.537a1.255%201.255%200%200%201-1.167.793h-1.679a1.25%201.25%200%200%201-.77-.263%204.5%204.5%200%200%201-1.945.429c-.885%200-1.724-.21-2.495-.632l-.017-.01a5%205%200%200%201-1.081-.836%201.255%201.255%200%200%201-1.254%201.312h-1.81a1.255%201.255%200%200%201-1.228-.99l-.782-3.625-2.044%203.939a1.25%201.25%200%200%201-1.115.676h-.098a1.25%201.25%200%200%201-1.116-.68l-2.061-3.994zM35.92%2016.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033%201.332h1.678V9.242h-1.694l-.033%201.267q-.133-.329-.526-.658l-.032-.028a3.2%203.2%200%200%200-.668-.428l-.27-.12a3.3%203.3%200%200%200-1.235-.23q-1.136-.001-1.974.493a3.36%203.36%200%200%200-1.3%201.382q-.445.89-.444%202.074%200%201.2.51%202.107a3.8%203.8%200%200%200%201.382%201.381%203.9%203.9%200%200%200%201.893.477q.795%200%201.455-.33zm-2.789-5.38q-.576.675-.575%201.762%200%201.102.559%201.794.576.675%201.645.675a2.25%202.25%200%200%200%20.934-.19%202.2%202.2%200%200%200%20.468-.29l.178-.161a2.2%202.2%200%200%200%20.397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2%202.2%200%200%200-.633-.709l-.13-.086-.047-.028a2.1%202.1%200%200%200-1.073-.285q-1.052%200-1.629.692zm2.316%202.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96%200%200%200-.353-.389.85.85%200%200%200-.464-.127c-.4%200-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945%200%20.506.122.801.27.99.097.11.266.224.68.224.303%200%20.504-.09.687-.269zm7.545%201.705a2.6%202.6%200%200%200%20.331.423q.319.33.755.548l.173.074q.65.255%201.49.255%201.02%200%201.844-.493a3.45%203.45%200%200%200%201.316-1.4q.493-.904.493-2.089%200-1.909-.988-2.913-.988-1.02-2.584-1.02-.898%200-1.575.347a3%203%200%200%200-.415.262l-.199.166a3.4%203.4%200%200%200-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296%201.119.297%201.07%200%201.645-.675.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.435%200-.835.16a2%202%200%200%200-.284.136%202%202%200%200%200-.363.254%202.2%202.2%200%200%200-.46.569l-.082.162a2.6%202.6%200%200%200-.213%201.072v.115q0%20.707.296%201.267l.135.211zm.964-.818a1.1%201.1%200%200%200%20.367.385.94.94%200%200%200%20.476.118c.423%200%20.59-.117.687-.23.159-.194.28-.478.28-.95%200-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1%201%200%200%200-.503.135l-.012.007a.86.86%200%200%200-.335.343c-.073.133-.132.324-.132.614v.115a1.4%201.4%200%200%200%20.14.66zm15.7-6.222q.347-.346.346-.856a1.05%201.05%200%200%200-.345-.79%201.18%201.18%200%200%200-.84-.329q-.51%200-.855.33a1.05%201.05%200%200%200-.346.79q0%20.51.346.855.345.346.856.346.51%200%20.839-.346zm4.337%209.314.033-1.332q.191.403.59.747l.098.081a4%204%200%200%200%20.316.224l.223.122a3.2%203.2%200%200%200%201.44.322%203.8%203.8%200%200%200%201.875-.477%203.5%203.5%200%200%200%201.382-1.366q.527-.89.526-2.09%200-1.184-.444-2.073a3.24%203.24%200%200%200-1.283-1.399q-.823-.51-1.942-.51a3.5%203.5%200%200%200-1.527.344l-.086.043-.165.09a3%203%200%200%200-.33.214q-.432.315-.656.707a2%202%200%200%200-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5%202.5%200%200%200%20.566.7q.117.098.245.18l.144.08a2.1%202.1%200%200%200%20.975.232q1.07%200%201.645-.675.576-.69.576-1.778%200-1.102-.576-1.777-.56-.691-1.645-.692a2.2%202.2%200%200%200-1.015.235q-.22.113-.415.282l-.15.142a2.1%202.1%200%200%200-.42.594q-.223.479-.223%201.1v.115q0%20.705.293%201.26zm2.616-.293c.157-.191.28-.479.28-.967%200-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87%200%200%200-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0%20.285.057.499.144.669a1.1%201.1%200%200%200%20.367.405c.137.082.28.123.455.123.423%200%20.59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493%200%20.642.099l.247-1.794q-.196-.099-.717-.099a2.3%202.3%200%200%200-.545.063%202%202%200%200%200-.411.148%202.2%202.2%200%200%200-.4.249%202.5%202.5%200%200%200-.485.499%202.7%202.7%200%200%200-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5%201.5%200%200%201%20.466-.636%202.5%202.5%200%200%201%20.399-.253%202%202%200%200%201%20.224-.099zm9.784%202.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46%203.46%200%200%200-1.4%201.382q-.493.906-.493%202.106%200%201.07.428%201.975.428.89%201.332%201.432.906.526%202.255.526.973%200%201.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954%200-1.497-.444a1.6%201.6%200%200%201-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1%201%200%200%200-.156-.176q-.46-.428-1.316-.428-.986%200-1.494.604-.379.45-.494%201.234zm-27.053%202.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22m19.63%2011.151-.757-1.71-.345%201.71-1.12%205.644h-1.827L18.083%204.7h.197l3.325%206.533.988%202.19.988-2.19L26.839%204.7h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.93%205.644h-.098l-2.913-5.644zm14.836%205.81q-1.02%200-1.893-.478a3.8%203.8%200%200%201-1.381-1.382q-.51-.906-.51-2.106%200-1.185.444-2.074a3.36%203.36%200%200%201%201.3-1.382q.839-.494%201.974-.494a3.3%203.3%200%200%201%201.234.231%203.3%203.3%200%200%201%20.97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02%201.053a3.17%203.17%200%200%201-1.662.444zm.296-1.482q.938%200%201.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2%202.2%200%200%200-.807-.872%202.1%202.1%200%200%200-1.119-.313q-1.053%200-1.629.692-.575.675-.575%201.76%200%201.103.559%201.795.577.675%201.645.675zm6.521-6.237h1.711v1.4q.906-1.597%202.83-1.597%201.596%200%202.584%201.02.988%201.005.988%202.914%200%201.185-.493%202.09a3.46%203.46%200%200%201-1.316%201.399%203.5%203.5%200%200%201-1.844.493q-.954%200-1.662-.329a2.67%202.67%200%200%201-1.086-.97l.017%205.134h-1.728zm4.048%206.22q1.07%200%201.645-.674.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.592%200-1.12.296-.51.28-.822.823-.296.527-.296%201.234v.115q0%20.708.296%201.267.313.543.823.855.51.296%201.119.297z%22%2F%3E%3Cpath%20fill%3D%22%23e1e3e9%22%20d%3D%22M51.325%204.7h1.86v10.45h3.473v1.646h-5.333zm7.12%204.542h1.843v7.553h-1.843zm.905-1.415a1.16%201.16%200%200%201-.856-.346%201.17%201.17%200%200%201-.346-.856%201.05%201.05%200%200%201%20.346-.79q.346-.329.856-.329.494%200%20.839.33a1.05%201.05%200%200%201%20.345.79%201.16%201.16%200%200%201-.345.855q-.33.346-.84.346zm7.875%209.133a3.17%203.17%200%200%201-1.662-.444q-.723-.46-1.004-1.053l-.033%201.332h-1.71V4.701h1.743v4.657l-.082%201.283q.279-.658%201.086-1.119a3.5%203.5%200%200%201%201.778-.477q1.119%200%201.942.51a3.24%203.24%200%200%201%201.283%201.4q.445.888.444%202.072%200%201.201-.526%202.09a3.5%203.5%200%200%201-1.382%201.366%203.8%203.8%200%200%201-1.876.477zm-.296-1.481q1.069%200%201.645-.675.577-.69.577-1.778%200-1.102-.577-1.776-.56-.691-1.645-.692a2.12%202.12%200%200%200-1.58.659q-.642.641-.642%201.694v.115q0%20.71.296%201.267a2.4%202.4%200%200%200%20.807.872%202.1%202.1%200%200%200%201.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14%202.14%200%200%201%201.349-.46q.527%200%20.724.098l-.247%201.794q-.149-.099-.642-.099-.774%200-1.416.494-.626.493-.626%201.58v3.883h-1.777V9.242zm9.534%207.718q-1.35%200-2.255-.526-.904-.543-1.332-1.432a4.6%204.6%200%200%201-.428-1.975q0-1.2.493-2.106a3.46%203.46%200%200%201%201.4-1.382q.889-.495%202.007-.494%201.744%200%202.584.97.855.956.856%202.7%200%20.444-.05.92h-5.43q.18%201.005.708%201.45.542.443%201.497.443.79%200%201.3-.131a4%204%200%200%200%20.938-.362l.542%201.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728%200-1.991%201.86z%22%2F%3E%3Cpath%20d%3D%22M5.074%2015.948a.484.657%200%200%200-.486.659v1.84a.484.657%200%200%200%20.486.659h4.101a.484.657%200%200%200%20.486-.659v-1.84a.484.657%200%200%200-.486-.659zm3.56%201.16H5.617v.838h3.017z%22%20style%3D%22fill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A1.03600001%22%2F%3E%3Cg%20style%3D%22stroke-width%3A1.12603545%22%3E%3Cpath%20d%3D%22M-9.408-1.416c-3.833-.025-7.056%202.912-7.08%206.615-.02%203.08%201.653%204.832%203.107%206.268.903.892%201.721%201.74%202.32%202.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87%201.87%200%200%200-.362%201.121l-.011%201.877c-.003.402.104.787.347%201.125.244.338.688.653%201.23.656l4.142.028c.542.003.99-.306%201.238-.641a1.87%201.87%200%200%200%20.363-1.121l.012-1.875a1.87%201.87%200%200%200-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145%201.425-1.983%202.348-2.87%201.473-1.414%203.18-3.149%203.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006%201.1v.002c3.274.02%205.92%202.532%205.9%205.6-.017%202.706-1.39%204.026-2.863%205.44-1.034.994-2.118%202.033-2.814%203.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34%200%200%201-.226.084.34.34%200%200%201-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067%202.7-5.545%205.975-5.523m-.02%202.826c-1.62-.01-2.944%201.315-2.955%202.96-.01%201.646%201.295%202.988%202.916%202.999h.002c1.621.01%202.943-1.316%202.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005%201.1c1.017.006%201.829.83%201.822%201.89s-.83%201.874-1.848%201.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874%201.848-1.868m-2.155%2011.857%204.14.025c.271.002.49.305.487.676l-.013%201.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668%22%20style%3D%22color%3A%23000%3Bfont-style%3Anormal%3Bfont-variant%3Anormal%3Bfont-weight%3A400%3Bfont-stretch%3Anormal%3Bfont-size%3Amedium%3Bline-height%3Anormal%3Bfont-family%3Asans-serif%3Bfont-variant-ligatures%3Anormal%3Bfont-variant-position%3Anormal%3Bfont-variant-caps%3Anormal%3Bfont-variant-numeric%3Anormal%3Bfont-variant-alternates%3Anormal%3Bfont-feature-settings%3Anormal%3Btext-indent%3A0%3Btext-align%3Astart%3Btext-decoration%3Anone%3Btext-decoration-line%3Anone%3Btext-decoration-style%3Asolid%3Btext-decoration-color%3A%23000%3Bletter-spacing%3Anormal%3Bword-spacing%3Anormal%3Btext-transform%3Anone%3Bwriting-mode%3Alr-tb%3Bdirection%3Altr%3Btext-orientation%3Amixed%3Bdominant-baseline%3Aauto%3Bbaseline-shift%3Abaseline%3Btext-anchor%3Astart%3Bwhite-space%3Anormal%3Bshape-padding%3A0%3Bclip-rule%3Aevenodd%3Bdisplay%3Ainline%3Boverflow%3Avisible%3Bvisibility%3Avisible%3Bopacity%3A1%3Bisolation%3Aauto%3Bmix-blend-mode%3Anormal%3Bcolor-interpolation%3AsRGB%3Bcolor-interpolation-filters%3AlinearRGB%3Bsolid-color%3A%23000%3Bsolid-opacity%3A1%3Bvector-effect%3Anone%3Bfill%3A%23000%3Bfill-opacity%3A.4%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-linecap%3Abutt%3Bstroke-linejoin%3Amiter%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-dashoffset%3A0%3Bstroke-opacity%3A1%3Bcolor-rendering%3Aauto%3Bimage-rendering%3Aauto%3Bshape-rendering%3Aauto%3Btext-rendering%3Aauto%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-9.415-.316C-12.69-.338-15.37%202.14-15.39%205.207c-.017%202.716%201.326%204.041%202.78%205.477%201.013%201%202.081%202.055%202.78%203.67l.092.076a.34.34%200%200%200%20.225.086.34.34%200%200%200%20.227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6%201.78-2.64%202.814-3.634%201.473-1.414%202.847-2.733%202.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057%208.784c1.621.011%202.944-1.315%202.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945%201.315-2.955%202.96s1.295%202.989%202.916%203%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23e1e3e9%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-11.594%2015.465c-.27-.002-.492.297-.494.668l-.012%201.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23fff%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2288%22%20height%3D%2223%22%20fill%3D%22none%22%3E%3Cpath%20fill%3D%22%23000%22%20fill-opacity%3D%22.4%22%20fill-rule%3D%22evenodd%22%20d%3D%22M17.408%2016.796h-1.827l2.501-12.095h.198l3.324%206.533.988%202.19.988-2.19%203.258-6.533h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.929%205.644h-.098l-2.914-5.644-.757-1.71-.345%201.71zm1.958-3.42-.726%203.663a1.255%201.255%200%200%201-1.232%201.011h-1.827a1.255%201.255%200%200%201-1.229-1.509l2.501-12.095a1.255%201.255%200%200%201%201.23-1.001h.197a1.25%201.25%200%200%201%201.12.685l3.19%206.273%203.125-6.263a1.25%201.25%200%200%201%201.123-.695h.181a1.255%201.255%200%200%201%201.227.991l1.443%206.71a5%205%200%200%201%20.314-.787l.009-.016a4.6%204.6%200%200%201%201.777-1.887c.782-.46%201.668-.667%202.611-.667a4.6%204.6%200%200%201%201.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255%201.255%200%200%201%201.212.925%201.255%201.255%200%200%201%201.212-.925h1.711c.284%200%20.545.094.755.252.613-.3%201.312-.45%202.075-.45%201.356%200%202.557.445%203.482%201.4q.47.48.763%201.064V4.701a1.255%201.255%200%200%201%201.255-1.255h1.86A1.255%201.255%200%200%201%2054.44%204.7v9.194h2.217c.19%200%20.37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42%202.42%200%200%201-.682-1.71c0-.665.267-1.253.735-1.7a2.45%202.45%200%200%201%201.722-.674%202.43%202.43%200%200%201%201.705.675q.318.302.504.683V4.7a1.255%201.255%200%200%201%201.255-1.255h1.744A1.255%201.255%200%200%201%2065.812%204.7v3.335a4.8%204.8%200%200%201%201.526-.246c.938%200%201.817.214%202.59.69a4.47%204.47%200%200%201%201.67%201.743v-.98a1.255%201.255%200%200%201%201.256-1.256h1.777c.233%200%20.451.064.639.174a3.4%203.4%200%200%201%201.567-.372c.346%200%20.861.02%201.285.232a1.25%201.25%200%200%201%20.689%201.004%204.7%204.7%200%200%201%20.853-.588c.795-.44%201.675-.647%202.61-.647%201.385%200%202.65.39%203.525%201.396.836.938%201.168%202.173%201.168%203.528q-.001.515-.056%201.051a1.255%201.255%200%200%201-.947%201.09l.408.952a1.255%201.255%200%200%201-.477%201.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06%200-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8%205.8%200%200%201-.548-2.512q0-.429.053-.843a1.3%201.3%200%200%201-.333-.086l-.166-.004c-.223%200-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255%201.255%200%200%201-1.256%201.256h-1.777a1.255%201.255%200%200%201-1.256-1.256V15.69l-.032.057a4.8%204.8%200%200%201-1.86%201.833%205.04%205.04%200%200%201-2.484.634%204.5%204.5%200%200%201-1.935-.424%201.25%201.25%200%200%201-.764.258h-1.71a1.255%201.255%200%200%201-1.256-1.255V7.687a2.4%202.4%200%200%201-.428.625c.253.23.412.561.412.93v7.553a1.255%201.255%200%200%201-1.256%201.255h-1.843a1.25%201.25%200%200%201-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255%201.255%200%200%201-1.256-1.255v-1.251l-.061.117a4.7%204.7%200%200%201-1.782%201.884%204.77%204.77%200%200%201-2.485.67%205.6%205.6%200%200%201-1.485-.188l.009%202.764a1.255%201.255%200%200%201-1.255%201.259h-1.729a1.255%201.255%200%200%201-1.255-1.255v-3.537a1.255%201.255%200%200%201-1.167.793h-1.679a1.25%201.25%200%200%201-.77-.263%204.5%204.5%200%200%201-1.945.429c-.885%200-1.724-.21-2.495-.632l-.017-.01a5%205%200%200%201-1.081-.836%201.255%201.255%200%200%201-1.254%201.312h-1.81a1.255%201.255%200%200%201-1.228-.99l-.782-3.625-2.044%203.939a1.25%201.25%200%200%201-1.115.676h-.098a1.25%201.25%200%200%201-1.116-.68l-2.061-3.994zM35.92%2016.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033%201.332h1.678V9.242h-1.694l-.033%201.267q-.133-.329-.526-.658l-.032-.028a3.2%203.2%200%200%200-.668-.428l-.27-.12a3.3%203.3%200%200%200-1.235-.23q-1.136-.001-1.974.493a3.36%203.36%200%200%200-1.3%201.382q-.445.89-.444%202.074%200%201.2.51%202.107a3.8%203.8%200%200%200%201.382%201.381%203.9%203.9%200%200%200%201.893.477q.795%200%201.455-.33zm-2.789-5.38q-.576.675-.575%201.762%200%201.102.559%201.794.576.675%201.645.675a2.25%202.25%200%200%200%20.934-.19%202.2%202.2%200%200%200%20.468-.29l.178-.161a2.2%202.2%200%200%200%20.397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2%202.2%200%200%200-.633-.709l-.13-.086-.047-.028a2.1%202.1%200%200%200-1.073-.285q-1.052%200-1.629.692zm2.316%202.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96%200%200%200-.353-.389.85.85%200%200%200-.464-.127c-.4%200-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945%200%20.506.122.801.27.99.097.11.266.224.68.224.303%200%20.504-.09.687-.269zm7.545%201.705a2.6%202.6%200%200%200%20.331.423q.319.33.755.548l.173.074q.65.255%201.49.255%201.02%200%201.844-.493a3.45%203.45%200%200%200%201.316-1.4q.493-.904.493-2.089%200-1.909-.988-2.913-.988-1.02-2.584-1.02-.898%200-1.575.347a3%203%200%200%200-.415.262l-.199.166a3.4%203.4%200%200%200-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296%201.119.297%201.07%200%201.645-.675.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.435%200-.835.16a2%202%200%200%200-.284.136%202%202%200%200%200-.363.254%202.2%202.2%200%200%200-.46.569l-.082.162a2.6%202.6%200%200%200-.213%201.072v.115q0%20.707.296%201.267l.135.211zm.964-.818a1.1%201.1%200%200%200%20.367.385.94.94%200%200%200%20.476.118c.423%200%20.59-.117.687-.23.159-.194.28-.478.28-.95%200-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1%201%200%200%200-.503.135l-.012.007a.86.86%200%200%200-.335.343c-.073.133-.132.324-.132.614v.115a1.4%201.4%200%200%200%20.14.66zm15.7-6.222q.347-.346.346-.856a1.05%201.05%200%200%200-.345-.79%201.18%201.18%200%200%200-.84-.329q-.51%200-.855.33a1.05%201.05%200%200%200-.346.79q0%20.51.346.855.345.346.856.346.51%200%20.839-.346zm4.337%209.314.033-1.332q.191.403.59.747l.098.081a4%204%200%200%200%20.316.224l.223.122a3.2%203.2%200%200%200%201.44.322%203.8%203.8%200%200%200%201.875-.477%203.5%203.5%200%200%200%201.382-1.366q.527-.89.526-2.09%200-1.184-.444-2.073a3.24%203.24%200%200%200-1.283-1.399q-.823-.51-1.942-.51a3.5%203.5%200%200%200-1.527.344l-.086.043-.165.09a3%203%200%200%200-.33.214q-.432.315-.656.707a2%202%200%200%200-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5%202.5%200%200%200%20.566.7q.117.098.245.18l.144.08a2.1%202.1%200%200%200%20.975.232q1.07%200%201.645-.675.576-.69.576-1.778%200-1.102-.576-1.777-.56-.691-1.645-.692a2.2%202.2%200%200%200-1.015.235q-.22.113-.415.282l-.15.142a2.1%202.1%200%200%200-.42.594q-.223.479-.223%201.1v.115q0%20.705.293%201.26zm2.616-.293c.157-.191.28-.479.28-.967%200-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87%200%200%200-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0%20.285.057.499.144.669a1.1%201.1%200%200%200%20.367.405c.137.082.28.123.455.123.423%200%20.59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493%200%20.642.099l.247-1.794q-.196-.099-.717-.099a2.3%202.3%200%200%200-.545.063%202%202%200%200%200-.411.148%202.2%202.2%200%200%200-.4.249%202.5%202.5%200%200%200-.485.499%202.7%202.7%200%200%200-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5%201.5%200%200%201%20.466-.636%202.5%202.5%200%200%201%20.399-.253%202%202%200%200%201%20.224-.099zm9.784%202.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46%203.46%200%200%200-1.4%201.382q-.493.906-.493%202.106%200%201.07.428%201.975.428.89%201.332%201.432.906.526%202.255.526.973%200%201.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954%200-1.497-.444a1.6%201.6%200%200%201-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1%201%200%200%200-.156-.176q-.46-.428-1.316-.428-.986%200-1.494.604-.379.45-.494%201.234zm-27.053%202.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22m19.63%2011.151-.757-1.71-.345%201.71-1.12%205.644h-1.827L18.083%204.7h.197l3.325%206.533.988%202.19.988-2.19L26.839%204.7h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.93%205.644h-.098l-2.913-5.644zm14.836%205.81q-1.02%200-1.893-.478a3.8%203.8%200%200%201-1.381-1.382q-.51-.906-.51-2.106%200-1.185.444-2.074a3.36%203.36%200%200%201%201.3-1.382q.839-.494%201.974-.494a3.3%203.3%200%200%201%201.234.231%203.3%203.3%200%200%201%20.97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02%201.053a3.17%203.17%200%200%201-1.662.444zm.296-1.482q.938%200%201.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2%202.2%200%200%200-.807-.872%202.1%202.1%200%200%200-1.119-.313q-1.053%200-1.629.692-.575.675-.575%201.76%200%201.103.559%201.795.577.675%201.645.675zm6.521-6.237h1.711v1.4q.906-1.597%202.83-1.597%201.596%200%202.584%201.02.988%201.005.988%202.914%200%201.185-.493%202.09a3.46%203.46%200%200%201-1.316%201.399%203.5%203.5%200%200%201-1.844.493q-.954%200-1.662-.329a2.67%202.67%200%200%201-1.086-.97l.017%205.134h-1.728zm4.048%206.22q1.07%200%201.645-.674.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.592%200-1.12.296-.51.28-.822.823-.296.527-.296%201.234v.115q0%20.708.296%201.267.313.543.823.855.51.296%201.119.297z%22%2F%3E%3Cpath%20fill%3D%22%23e1e3e9%22%20d%3D%22M51.325%204.7h1.86v10.45h3.473v1.646h-5.333zm7.12%204.542h1.843v7.553h-1.843zm.905-1.415a1.16%201.16%200%200%201-.856-.346%201.17%201.17%200%200%201-.346-.856%201.05%201.05%200%200%201%20.346-.79q.346-.329.856-.329.494%200%20.839.33a1.05%201.05%200%200%201%20.345.79%201.16%201.16%200%200%201-.345.855q-.33.346-.84.346zm7.875%209.133a3.17%203.17%200%200%201-1.662-.444q-.723-.46-1.004-1.053l-.033%201.332h-1.71V4.701h1.743v4.657l-.082%201.283q.279-.658%201.086-1.119a3.5%203.5%200%200%201%201.778-.477q1.119%200%201.942.51a3.24%203.24%200%200%201%201.283%201.4q.445.888.444%202.072%200%201.201-.526%202.09a3.5%203.5%200%200%201-1.382%201.366%203.8%203.8%200%200%201-1.876.477zm-.296-1.481q1.069%200%201.645-.675.577-.69.577-1.778%200-1.102-.577-1.776-.56-.691-1.645-.692a2.12%202.12%200%200%200-1.58.659q-.642.641-.642%201.694v.115q0%20.71.296%201.267a2.4%202.4%200%200%200%20.807.872%202.1%202.1%200%200%200%201.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14%202.14%200%200%201%201.349-.46q.527%200%20.724.098l-.247%201.794q-.149-.099-.642-.099-.774%200-1.416.494-.626.493-.626%201.58v3.883h-1.777V9.242zm9.534%207.718q-1.35%200-2.255-.526-.904-.543-1.332-1.432a4.6%204.6%200%200%201-.428-1.975q0-1.2.493-2.106a3.46%203.46%200%200%201%201.4-1.382q.889-.495%202.007-.494%201.744%200%202.584.97.855.956.856%202.7%200%20.444-.05.92h-5.43q.18%201.005.708%201.45.542.443%201.497.443.79%200%201.3-.131a4%204%200%200%200%20.938-.362l.542%201.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728%200-1.991%201.86z%22%2F%3E%3Cpath%20d%3D%22M5.074%2015.948a.484.657%200%200%200-.486.659v1.84a.484.657%200%200%200%20.486.659h4.101a.484.657%200%200%200%20.486-.659v-1.84a.484.657%200%200%200-.486-.659zm3.56%201.16H5.617v.838h3.017z%22%20style%3D%22fill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A1.03600001%22%2F%3E%3Cg%20style%3D%22stroke-width%3A1.12603545%22%3E%3Cpath%20d%3D%22M-9.408-1.416c-3.833-.025-7.056%202.912-7.08%206.615-.02%203.08%201.653%204.832%203.107%206.268.903.892%201.721%201.74%202.32%202.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87%201.87%200%200%200-.362%201.121l-.011%201.877c-.003.402.104.787.347%201.125.244.338.688.653%201.23.656l4.142.028c.542.003.99-.306%201.238-.641a1.87%201.87%200%200%200%20.363-1.121l.012-1.875a1.87%201.87%200%200%200-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145%201.425-1.983%202.348-2.87%201.473-1.414%203.18-3.149%203.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006%201.1v.002c3.274.02%205.92%202.532%205.9%205.6-.017%202.706-1.39%204.026-2.863%205.44-1.034.994-2.118%202.033-2.814%203.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34%200%200%201-.226.084.34.34%200%200%201-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067%202.7-5.545%205.975-5.523m-.02%202.826c-1.62-.01-2.944%201.315-2.955%202.96-.01%201.646%201.295%202.988%202.916%202.999h.002c1.621.01%202.943-1.316%202.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005%201.1c1.017.006%201.829.83%201.822%201.89s-.83%201.874-1.848%201.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874%201.848-1.868m-2.155%2011.857%204.14.025c.271.002.49.305.487.676l-.013%201.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668%22%20style%3D%22color%3A%23000%3Bfont-style%3Anormal%3Bfont-variant%3Anormal%3Bfont-weight%3A400%3Bfont-stretch%3Anormal%3Bfont-size%3Amedium%3Bline-height%3Anormal%3Bfont-family%3Asans-serif%3Bfont-variant-ligatures%3Anormal%3Bfont-variant-position%3Anormal%3Bfont-variant-caps%3Anormal%3Bfont-variant-numeric%3Anormal%3Bfont-variant-alternates%3Anormal%3Bfont-feature-settings%3Anormal%3Btext-indent%3A0%3Btext-align%3Astart%3Btext-decoration%3Anone%3Btext-decoration-line%3Anone%3Btext-decoration-style%3Asolid%3Btext-decoration-color%3A%23000%3Bletter-spacing%3Anormal%3Bword-spacing%3Anormal%3Btext-transform%3Anone%3Bwriting-mode%3Alr-tb%3Bdirection%3Altr%3Btext-orientation%3Amixed%3Bdominant-baseline%3Aauto%3Bbaseline-shift%3Abaseline%3Btext-anchor%3Astart%3Bwhite-space%3Anormal%3Bshape-padding%3A0%3Bclip-rule%3Aevenodd%3Bdisplay%3Ainline%3Boverflow%3Avisible%3Bvisibility%3Avisible%3Bopacity%3A1%3Bisolation%3Aauto%3Bmix-blend-mode%3Anormal%3Bcolor-interpolation%3AsRGB%3Bcolor-interpolation-filters%3AlinearRGB%3Bsolid-color%3A%23000%3Bsolid-opacity%3A1%3Bvector-effect%3Anone%3Bfill%3A%23000%3Bfill-opacity%3A.4%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-linecap%3Abutt%3Bstroke-linejoin%3Amiter%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-dashoffset%3A0%3Bstroke-opacity%3A1%3Bcolor-rendering%3Aauto%3Bimage-rendering%3Aauto%3Bshape-rendering%3Aauto%3Btext-rendering%3Aauto%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-9.415-.316C-12.69-.338-15.37%202.14-15.39%205.207c-.017%202.716%201.326%204.041%202.78%205.477%201.013%201%202.081%202.055%202.78%203.67l.092.076a.34.34%200%200%200%20.225.086.34.34%200%200%200%20.227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6%201.78-2.64%202.814-3.634%201.473-1.414%202.847-2.733%202.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057%208.784c1.621.011%202.944-1.315%202.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945%201.315-2.955%202.96s1.295%202.989%202.916%203%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23e1e3e9%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-11.594%2015.465c-.27-.002-.492.297-.494.668l-.012%201.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23fff%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2288%22%20height%3D%2223%22%20fill%3D%22none%22%3E%3Cpath%20fill%3D%22%23000%22%20fill-opacity%3D%22.4%22%20fill-rule%3D%22evenodd%22%20d%3D%22M17.408%2016.796h-1.827l2.501-12.095h.198l3.324%206.533.988%202.19.988-2.19%203.258-6.533h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.929%205.644h-.098l-2.914-5.644-.757-1.71-.345%201.71zm1.958-3.42-.726%203.663a1.255%201.255%200%200%201-1.232%201.011h-1.827a1.255%201.255%200%200%201-1.229-1.509l2.501-12.095a1.255%201.255%200%200%201%201.23-1.001h.197a1.25%201.25%200%200%201%201.12.685l3.19%206.273%203.125-6.263a1.25%201.25%200%200%201%201.123-.695h.181a1.255%201.255%200%200%201%201.227.991l1.443%206.71a5%205%200%200%201%20.314-.787l.009-.016a4.6%204.6%200%200%201%201.777-1.887c.782-.46%201.668-.667%202.611-.667a4.6%204.6%200%200%201%201.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255%201.255%200%200%201%201.212.925%201.255%201.255%200%200%201%201.212-.925h1.711c.284%200%20.545.094.755.252.613-.3%201.312-.45%202.075-.45%201.356%200%202.557.445%203.482%201.4q.47.48.763%201.064V4.701a1.255%201.255%200%200%201%201.255-1.255h1.86A1.255%201.255%200%200%201%2054.44%204.7v9.194h2.217c.19%200%20.37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42%202.42%200%200%201-.682-1.71c0-.665.267-1.253.735-1.7a2.45%202.45%200%200%201%201.722-.674%202.43%202.43%200%200%201%201.705.675q.318.302.504.683V4.7a1.255%201.255%200%200%201%201.255-1.255h1.744A1.255%201.255%200%200%201%2065.812%204.7v3.335a4.8%204.8%200%200%201%201.526-.246c.938%200%201.817.214%202.59.69a4.47%204.47%200%200%201%201.67%201.743v-.98a1.255%201.255%200%200%201%201.256-1.256h1.777c.233%200%20.451.064.639.174a3.4%203.4%200%200%201%201.567-.372c.346%200%20.861.02%201.285.232a1.25%201.25%200%200%201%20.689%201.004%204.7%204.7%200%200%201%20.853-.588c.795-.44%201.675-.647%202.61-.647%201.385%200%202.65.39%203.525%201.396.836.938%201.168%202.173%201.168%203.528q-.001.515-.056%201.051a1.255%201.255%200%200%201-.947%201.09l.408.952a1.255%201.255%200%200%201-.477%201.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06%200-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8%205.8%200%200%201-.548-2.512q0-.429.053-.843a1.3%201.3%200%200%201-.333-.086l-.166-.004c-.223%200-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255%201.255%200%200%201-1.256%201.256h-1.777a1.255%201.255%200%200%201-1.256-1.256V15.69l-.032.057a4.8%204.8%200%200%201-1.86%201.833%205.04%205.04%200%200%201-2.484.634%204.5%204.5%200%200%201-1.935-.424%201.25%201.25%200%200%201-.764.258h-1.71a1.255%201.255%200%200%201-1.256-1.255V7.687a2.4%202.4%200%200%201-.428.625c.253.23.412.561.412.93v7.553a1.255%201.255%200%200%201-1.256%201.255h-1.843a1.25%201.25%200%200%201-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255%201.255%200%200%201-1.256-1.255v-1.251l-.061.117a4.7%204.7%200%200%201-1.782%201.884%204.77%204.77%200%200%201-2.485.67%205.6%205.6%200%200%201-1.485-.188l.009%202.764a1.255%201.255%200%200%201-1.255%201.259h-1.729a1.255%201.255%200%200%201-1.255-1.255v-3.537a1.255%201.255%200%200%201-1.167.793h-1.679a1.25%201.25%200%200%201-.77-.263%204.5%204.5%200%200%201-1.945.429c-.885%200-1.724-.21-2.495-.632l-.017-.01a5%205%200%200%201-1.081-.836%201.255%201.255%200%200%201-1.254%201.312h-1.81a1.255%201.255%200%200%201-1.228-.99l-.782-3.625-2.044%203.939a1.25%201.25%200%200%201-1.115.676h-.098a1.25%201.25%200%200%201-1.116-.68l-2.061-3.994zM35.92%2016.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033%201.332h1.678V9.242h-1.694l-.033%201.267q-.133-.329-.526-.658l-.032-.028a3.2%203.2%200%200%200-.668-.428l-.27-.12a3.3%203.3%200%200%200-1.235-.23q-1.136-.001-1.974.493a3.36%203.36%200%200%200-1.3%201.382q-.445.89-.444%202.074%200%201.2.51%202.107a3.8%203.8%200%200%200%201.382%201.381%203.9%203.9%200%200%200%201.893.477q.795%200%201.455-.33zm-2.789-5.38q-.576.675-.575%201.762%200%201.102.559%201.794.576.675%201.645.675a2.25%202.25%200%200%200%20.934-.19%202.2%202.2%200%200%200%20.468-.29l.178-.161a2.2%202.2%200%200%200%20.397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2%202.2%200%200%200-.633-.709l-.13-.086-.047-.028a2.1%202.1%200%200%200-1.073-.285q-1.052%200-1.629.692zm2.316%202.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96%200%200%200-.353-.389.85.85%200%200%200-.464-.127c-.4%200-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945%200%20.506.122.801.27.99.097.11.266.224.68.224.303%200%20.504-.09.687-.269zm7.545%201.705a2.6%202.6%200%200%200%20.331.423q.319.33.755.548l.173.074q.65.255%201.49.255%201.02%200%201.844-.493a3.45%203.45%200%200%200%201.316-1.4q.493-.904.493-2.089%200-1.909-.988-2.913-.988-1.02-2.584-1.02-.898%200-1.575.347a3%203%200%200%200-.415.262l-.199.166a3.4%203.4%200%200%200-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296%201.119.297%201.07%200%201.645-.675.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.435%200-.835.16a2%202%200%200%200-.284.136%202%202%200%200%200-.363.254%202.2%202.2%200%200%200-.46.569l-.082.162a2.6%202.6%200%200%200-.213%201.072v.115q0%20.707.296%201.267l.135.211zm.964-.818a1.1%201.1%200%200%200%20.367.385.94.94%200%200%200%20.476.118c.423%200%20.59-.117.687-.23.159-.194.28-.478.28-.95%200-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1%201%200%200%200-.503.135l-.012.007a.86.86%200%200%200-.335.343c-.073.133-.132.324-.132.614v.115a1.4%201.4%200%200%200%20.14.66zm15.7-6.222q.347-.346.346-.856a1.05%201.05%200%200%200-.345-.79%201.18%201.18%200%200%200-.84-.329q-.51%200-.855.33a1.05%201.05%200%200%200-.346.79q0%20.51.346.855.345.346.856.346.51%200%20.839-.346zm4.337%209.314.033-1.332q.191.403.59.747l.098.081a4%204%200%200%200%20.316.224l.223.122a3.2%203.2%200%200%200%201.44.322%203.8%203.8%200%200%200%201.875-.477%203.5%203.5%200%200%200%201.382-1.366q.527-.89.526-2.09%200-1.184-.444-2.073a3.24%203.24%200%200%200-1.283-1.399q-.823-.51-1.942-.51a3.5%203.5%200%200%200-1.527.344l-.086.043-.165.09a3%203%200%200%200-.33.214q-.432.315-.656.707a2%202%200%200%200-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5%202.5%200%200%200%20.566.7q.117.098.245.18l.144.08a2.1%202.1%200%200%200%20.975.232q1.07%200%201.645-.675.576-.69.576-1.778%200-1.102-.576-1.777-.56-.691-1.645-.692a2.2%202.2%200%200%200-1.015.235q-.22.113-.415.282l-.15.142a2.1%202.1%200%200%200-.42.594q-.223.479-.223%201.1v.115q0%20.705.293%201.26zm2.616-.293c.157-.191.28-.479.28-.967%200-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87%200%200%200-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0%20.285.057.499.144.669a1.1%201.1%200%200%200%20.367.405c.137.082.28.123.455.123.423%200%20.59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493%200%20.642.099l.247-1.794q-.196-.099-.717-.099a2.3%202.3%200%200%200-.545.063%202%202%200%200%200-.411.148%202.2%202.2%200%200%200-.4.249%202.5%202.5%200%200%200-.485.499%202.7%202.7%200%200%200-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5%201.5%200%200%201%20.466-.636%202.5%202.5%200%200%201%20.399-.253%202%202%200%200%201%20.224-.099zm9.784%202.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46%203.46%200%200%200-1.4%201.382q-.493.906-.493%202.106%200%201.07.428%201.975.428.89%201.332%201.432.906.526%202.255.526.973%200%201.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954%200-1.497-.444a1.6%201.6%200%200%201-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1%201%200%200%200-.156-.176q-.46-.428-1.316-.428-.986%200-1.494.604-.379.45-.494%201.234zm-27.053%202.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22m19.63%2011.151-.757-1.71-.345%201.71-1.12%205.644h-1.827L18.083%204.7h.197l3.325%206.533.988%202.19.988-2.19L26.839%204.7h.181l2.6%2012.095h-1.81l-1.218-5.644-.362-1.71-.658%201.71-2.93%205.644h-.098l-2.913-5.644zm14.836%205.81q-1.02%200-1.893-.478a3.8%203.8%200%200%201-1.381-1.382q-.51-.906-.51-2.106%200-1.185.444-2.074a3.36%203.36%200%200%201%201.3-1.382q.839-.494%201.974-.494a3.3%203.3%200%200%201%201.234.231%203.3%203.3%200%200%201%20.97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02%201.053a3.17%203.17%200%200%201-1.662.444zm.296-1.482q.938%200%201.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2%202.2%200%200%200-.807-.872%202.1%202.1%200%200%200-1.119-.313q-1.053%200-1.629.692-.575.675-.575%201.76%200%201.103.559%201.795.577.675%201.645.675zm6.521-6.237h1.711v1.4q.906-1.597%202.83-1.597%201.596%200%202.584%201.02.988%201.005.988%202.914%200%201.185-.493%202.09a3.46%203.46%200%200%201-1.316%201.399%203.5%203.5%200%200%201-1.844.493q-.954%200-1.662-.329a2.67%202.67%200%200%201-1.086-.97l.017%205.134h-1.728zm4.048%206.22q1.07%200%201.645-.674.577-.69.576-1.762%200-1.119-.576-1.777-.558-.675-1.645-.675-.592%200-1.12.296-.51.28-.822.823-.296.527-.296%201.234v.115q0%20.708.296%201.267.313.543.823.855.51.296%201.119.297z%22%2F%3E%3Cpath%20fill%3D%22%23e1e3e9%22%20d%3D%22M51.325%204.7h1.86v10.45h3.473v1.646h-5.333zm7.12%204.542h1.843v7.553h-1.843zm.905-1.415a1.16%201.16%200%200%201-.856-.346%201.17%201.17%200%200%201-.346-.856%201.05%201.05%200%200%201%20.346-.79q.346-.329.856-.329.494%200%20.839.33a1.05%201.05%200%200%201%20.345.79%201.16%201.16%200%200%201-.345.855q-.33.346-.84.346zm7.875%209.133a3.17%203.17%200%200%201-1.662-.444q-.723-.46-1.004-1.053l-.033%201.332h-1.71V4.701h1.743v4.657l-.082%201.283q.279-.658%201.086-1.119a3.5%203.5%200%200%201%201.778-.477q1.119%200%201.942.51a3.24%203.24%200%200%201%201.283%201.4q.445.888.444%202.072%200%201.201-.526%202.09a3.5%203.5%200%200%201-1.382%201.366%203.8%203.8%200%200%201-1.876.477zm-.296-1.481q1.069%200%201.645-.675.577-.69.577-1.778%200-1.102-.577-1.776-.56-.691-1.645-.692a2.12%202.12%200%200%200-1.58.659q-.642.641-.642%201.694v.115q0%20.71.296%201.267a2.4%202.4%200%200%200%20.807.872%202.1%202.1%200%200%200%201.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14%202.14%200%200%201%201.349-.46q.527%200%20.724.098l-.247%201.794q-.149-.099-.642-.099-.774%200-1.416.494-.626.493-.626%201.58v3.883h-1.777V9.242zm9.534%207.718q-1.35%200-2.255-.526-.904-.543-1.332-1.432a4.6%204.6%200%200%201-.428-1.975q0-1.2.493-2.106a3.46%203.46%200%200%201%201.4-1.382q.889-.495%202.007-.494%201.744%200%202.584.97.855.956.856%202.7%200%20.444-.05.92h-5.43q.18%201.005.708%201.45.542.443%201.497.443.79%200%201.3-.131a4%204%200%200%200%20.938-.362l.542%201.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728%200-1.991%201.86z%22%2F%3E%3Cpath%20d%3D%22M5.074%2015.948a.484.657%200%200%200-.486.659v1.84a.484.657%200%200%200%20.486.659h4.101a.484.657%200%200%200%20.486-.659v-1.84a.484.657%200%200%200-.486-.659zm3.56%201.16H5.617v.838h3.017z%22%20style%3D%22fill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A1.03600001%22%2F%3E%3Cg%20style%3D%22stroke-width%3A1.12603545%22%3E%3Cpath%20d%3D%22M-9.408-1.416c-3.833-.025-7.056%202.912-7.08%206.615-.02%203.08%201.653%204.832%203.107%206.268.903.892%201.721%201.74%202.32%202.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87%201.87%200%200%200-.362%201.121l-.011%201.877c-.003.402.104.787.347%201.125.244.338.688.653%201.23.656l4.142.028c.542.003.99-.306%201.238-.641a1.87%201.87%200%200%200%20.363-1.121l.012-1.875a1.87%201.87%200%200%200-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145%201.425-1.983%202.348-2.87%201.473-1.414%203.18-3.149%203.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006%201.1v.002c3.274.02%205.92%202.532%205.9%205.6-.017%202.706-1.39%204.026-2.863%205.44-1.034.994-2.118%202.033-2.814%203.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34%200%200%201-.226.084.34.34%200%200%201-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067%202.7-5.545%205.975-5.523m-.02%202.826c-1.62-.01-2.944%201.315-2.955%202.96-.01%201.646%201.295%202.988%202.916%202.999h.002c1.621.01%202.943-1.316%202.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005%201.1c1.017.006%201.829.83%201.822%201.89s-.83%201.874-1.848%201.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874%201.848-1.868m-2.155%2011.857%204.14.025c.271.002.49.305.487.676l-.013%201.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668%22%20style%3D%22color%3A%23000%3Bfont-style%3Anormal%3Bfont-variant%3Anormal%3Bfont-weight%3A400%3Bfont-stretch%3Anormal%3Bfont-size%3Amedium%3Bline-height%3Anormal%3Bfont-family%3Asans-serif%3Bfont-variant-ligatures%3Anormal%3Bfont-variant-position%3Anormal%3Bfont-variant-caps%3Anormal%3Bfont-variant-numeric%3Anormal%3Bfont-variant-alternates%3Anormal%3Bfont-feature-settings%3Anormal%3Btext-indent%3A0%3Btext-align%3Astart%3Btext-decoration%3Anone%3Btext-decoration-line%3Anone%3Btext-decoration-style%3Asolid%3Btext-decoration-color%3A%23000%3Bletter-spacing%3Anormal%3Bword-spacing%3Anormal%3Btext-transform%3Anone%3Bwriting-mode%3Alr-tb%3Bdirection%3Altr%3Btext-orientation%3Amixed%3Bdominant-baseline%3Aauto%3Bbaseline-shift%3Abaseline%3Btext-anchor%3Astart%3Bwhite-space%3Anormal%3Bshape-padding%3A0%3Bclip-rule%3Aevenodd%3Bdisplay%3Ainline%3Boverflow%3Avisible%3Bvisibility%3Avisible%3Bopacity%3A1%3Bisolation%3Aauto%3Bmix-blend-mode%3Anormal%3Bcolor-interpolation%3AsRGB%3Bcolor-interpolation-filters%3AlinearRGB%3Bsolid-color%3A%23000%3Bsolid-opacity%3A1%3Bvector-effect%3Anone%3Bfill%3A%23000%3Bfill-opacity%3A.4%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-linecap%3Abutt%3Bstroke-linejoin%3Amiter%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-dashoffset%3A0%3Bstroke-opacity%3A1%3Bcolor-rendering%3Aauto%3Bimage-rendering%3Aauto%3Bshape-rendering%3Aauto%3Btext-rendering%3Aauto%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-9.415-.316C-12.69-.338-15.37%202.14-15.39%205.207c-.017%202.716%201.326%204.041%202.78%205.477%201.013%201%202.081%202.055%202.78%203.67l.092.076a.34.34%200%200%200%20.225.086.34.34%200%200%200%20.227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6%201.78-2.64%202.814-3.634%201.473-1.414%202.847-2.733%202.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057%208.784c1.621.011%202.944-1.315%202.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945%201.315-2.955%202.96s1.295%202.989%202.916%203%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23e1e3e9%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3Cpath%20d%3D%22M-11.594%2015.465c-.27-.002-.492.297-.494.668l-.012%201.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z%22%20style%3D%22clip-rule%3Aevenodd%3Bfill%3A%23fff%3Bfill-opacity%3A1%3Bfill-rule%3Aevenodd%3Bstroke%3Anone%3Bstroke-width%3A2.47727823%3Bstroke-miterlimit%3A4%3Bstroke-dasharray%3Anone%3Bstroke-opacity%3A.4%22%20transform%3D%22translate(15.553%202.85)scale(.88807)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{padding:0 5px;background-color:hsla(0,0%,100%,.5);margin:0}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;color:#000;border-radius:12px;box-sizing:content-box}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E");background-color:hsla(0,0%,100%,.5);width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgba(0,0,0,.05)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;right:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;left:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E")}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);font-size:10px;white-space:nowrap;border-color:#333;border-style:none solid solid;border-width:medium 2px 2px;padding:0 5px;color:#333;box-sizing:border-box}.maplibregl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{width:0;height:0;border:10px solid transparent;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}[dir=rtl] .maplibregl-popup-anchor-left{flex-direction:row-reverse}[dir=rtl] .maplibregl-popup-anchor-right{flex-direction:row}[dir=rtl] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-start}[dir=rtl] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-start}.maplibregl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:transparent}.maplibregl-popup-close-button:hover{background-color:rgba(0,0,0,.05)}.maplibregl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{position:absolute;top:0;left:0;will-change:transform;transition:opacity .2s}.maplibregl-marker-draggable{cursor:grab}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.maplibregl-user-location-dot:before{content:"";position:absolute;animation:maplibregl-user-location-dot-pulse 2s infinite}.maplibregl-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 rgba(0,0,0,.35)}@media (prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}.maplibregl-cooperative-gesture-screen{background:rgba(0,0,0,.4);position:absolute;inset:0;display:flex;justify-content:center;align-items:center;color:#fff;padding:1rem;font-size:1.4em;line-height:1.2;opacity:0;pointer-events:none;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(pointer:coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{position:fixed!important;width:100%!important;height:100%!important;top:0!important;left:0!important;z-index:99999}Warning: truncated output (original token count: 39457)
Total output lines: 1509

:root{font-family:Inter,system-ui,sans-serif;color:#111827;background:#f8fafc;font-synthesis:none;--blue:#0b5ee8;--ink:#111827;--muted:#64748b;--line:#e2e8f0;--surface:#fff}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{border:1px solid var(--line);background:white;border-radius:9px;padding:10px 14px;color:#14223a;display:inline-flex;align-items:center;gap:9px;justify-content:center;cursor:pointer;transition:.18s ease}button:hover{border-color:#9cbcf5;background:#f8fbff}button svg{width:18px;height:18px}.primary,.enter{background:var(--blue)!important;color:white!important;border-color:var(--blue)!important}.shell{display:grid;grid-template-columns:265px minmax(0,1fr);height:100vh;overflow:hidden}.sidebar{background:#fff;border-right:1px solid var(--line);padding:26px 16px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 10px}.brand-mark{color:var(--blue);width:45px;height:45px;display:grid;place-items:center}.brand-mark svg{width:42px;height:42px;stroke-width:2.5}.brand strong{display:block;font-size:21px}.brand span{font-size:12px;color:#53627a;margin-top:3px;display:block}.sidebar nav{display:flex;flex-direction:column;gap:6px;margin-top:42px}.sidebar nav a{display:flex;align-items:center;gap:15px;text-decoration:none;color:#41516b;padding:14px;border-radius:10px}.sidebar nav a svg{width:22px}.sidebar nav a.active{background:#eaf2ff;color:var(--blue);font-weight:600}.privacy{margin-top:auto;display:flex;gap:10px;background:#fafafa;padding:16px;border-radius:10px;font-size:12px;line-height:1.6}.privacy svg{width:22px;flex:none}.privacy p{color:#64748b;margin:5px 0}.privacy a{color:var(--blue)}.project{display:flex;align-items:center;gap:9px;border:1px solid var(--line);padding:12px;border-radius:10px;margin-top:20px;font-size:11px}.project svg{background:#edf1f7;border-radius:50%;padding:5px;width:34px;height:34px}.project div{flex:1}.project span{display:block;color:#64748b;margin-top:4px}.main{min-width:0;overflow:auto}.topbar{height:86px;display:flex;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.search{height:48px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 13px;flex:1;max-width:470px}.search input{border:0;outline:0;flex:1;min-width:0}.search kbd{background:#f3f4f6;padding:5px 8px;border-radius:6px;color:#64748b}.congregation{height:48px}.congregation span{margin-left:auto}.head-actions{display:flex;gap:10px;margin-left:auto}.head-actions button{height:48px}.mobile-menu{display:none}.page{padding:26px;animation:pagein .25s ease}.page h1{font-size:24px;margin:0}.page-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.page-title p,.detail-head span{color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:16px}.stat{background:white;border:1px solid var(--line);border-radius:11px;min-height:102px;padding:17px;display:flex;gap:14px;align-items:flex-start}.stat-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;flex:none}.stat-icon svg{width:21px}.stat-icon.blue{background:#e8f0ff;color:#2563eb}.stat-icon.green{background:#e8f8ec;color:#16a34a}.stat-icon.purple{background:#f3e8ff;color:#9333ea}.stat-icon.orange{background:#fff0e8;color:#f97316}.stat-icon.teal{background:#e7f7f5;color:#0891b2}.stat span,.stat small{display:block;color:#64748b;font-size:12px}.stat strong{display:block;font-size:20px;margin:4px 0}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:16px}.map-card,.inspector,.detail-info section,.print-zone,.edit-panel,.validation{background:#fff;border:1px solid var(--line);border-radius:11px}.map-card{height:calc(100vh - 232px);min-height:540px;position:relative;overflow:hidden}.map{width:100%;height:100%;background:#edf2ed}.map-legend{position:absolute;z-index:2;top:12px;left:12px;background:#fff;padding:13px;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;gap:9px;font-size:12px;box-shadow:0 6px 20px #31507418}.map-legend span{display:flex;align-items:center;gap:8px}.dot{width:11px;height:11px;border-radius:50%}.dot.blue{background:#5288e8}.dot.green{background:#45ae65}.dot.orange{background:#f59e0b}.pin{color:#a244da}.map-card footer{position:absolute;bottom:0;left:0;right:0;background:#fff;padding:13px 15px;z-index:2;display:flex;justify-content:space-between;color:#64748b;font-size:12px}.inspector{overflow:auto}.inspector-head{display:flex;align-items:center;gap:8px;padding:18px}.inspector-head h2{margin:0;font-size:19px}.inspector-head svg{margin-left:auto}.inspector dl,.edit-panel dl{display:grid;grid-template-columns:1fr auto;gap:16px;padding:0 18px;font-size:13px}.inspector dt,.edit-panel dt{color:#334155}.inspector dd,.edit-panel dd{margin:0}.inspector h3{font-size:13px;padding:0 18px}.action-stack{display:flex;flex-direction:column;gap:7px;padding:0 14px}.action-stack button{justify-content:flex-start}.outline-blue{color:var(--blue);border-color:#82afff!important}.outline-green{color:#118137;border-color:#9cdeb3!important;background:#f6fff8!important}.preview{border-top:1px solid var(--line);margin-top:14px;padding:14px;font-size:12px;text-align:center}.preview>b{display:block;text-align:left}.paper{height:170px;border:1px solid #cbd5e1;margin-top:10px;padding:10px}.paper div{height:115px;margin-top:9px;background:#edf2ff}.status{font-size:11px;padding:4px 9px;border-radius:6px;white-space:nowrap;background:#eaf1ff;color:#1355c5}.status.en-progreso,.status.completado{background:#e5f7ea;color:#14823c}.status.pendiente{background:#fff1e7;color:#f26916}.tabs,.filters{display:flex;gap:9px;margin-bottom:16px;overflow:auto}.tabs{border:1px solid var(--line);padding:5px;border-radius:10px;width:max-content;max-width:100%}.tabs button{border:0;padding:9px 16px}.tabs button.active{background:#eaf2ff;color:var(--blue)}.tabs b{margin-left:8px;padding:3px 6px;background:#f2f4f7;border-radius:6px}.filters button{min-width:175px}.table-wrap{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th,td{padding:15px 14px;border-bottom:1px solid var(--line);text-align:left}th{font-weight:500;color:#475569;background:#fbfcfe}td:first-child b{color:var(--blue)}td:last-child{display:flex;gap:7px}.icon-btn{padding:9px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:18px 0;color:#64748b;font-size:12px}.pagination>div{display:flex;gap:5px}.pagination button{padding:9px 13px}.pagination .active{color:var(--blue);border-color:#93b4ef}.detail-head{display:flex;justify-content:space-between;align-items:center}.detail-head h1{margin-top:10px}.subtabs{display:flex;border-bottom:1px solid var(--line);margin-top:14px}.subtabs button{border:0;border-radius:0}.subtabs .active{color:var(--blue);border-bottom:2px solid var(--blue)}.detail-grid{display:grid;grid-template-columns:42% 58%;gap:18px;margin-top:18px}.detail-info{display:flex;flex-direction:column;gap:12px}.detail-info section{padding:14px}.detail-info h3,.print-zone h3{font-size:14px;margin:0 0 10px}.detail-info p{color:#52627a;font-size:12px}.info-map{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;height:245px}.info-map dl{display:grid;grid-template-columns:1fr auto;font-size:12px}.info-map dd{margin:0;font-weight:600}.info-map .map{border-radius:8px;overflow:hidden}.dual-actions{display:flex;gap:10px}.dual-actions button{flex:1}.print-zone{padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.print-zone>div{display:flex;flex-direction:column;gap:10px}.print-paper{border:1px solid #d4d7dd;height:360px;padding:18px;font-family:Georgia,serif;text-align:center}.paper-fields{text-align:left;font-size:10px;margin-top:15px}.map-slot{height:220px;background:#f0f3ff;margin-top:5px}.grid-paper{height:285px;margin-top:18px;background:repeating-linear-gradient(0deg,#888 0 1px,transparent 1px 18px),repeating-linear-gradient(90deg,#888 0 1px,transparent 1px 45px)}.editor-page{height:100%;background:#f8fafc}.editor-head{height:86px;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#fff;border-bottom:1px solid var(--line)}.editor-head h1{font-size:22px}.editor-head>div{display:flex;gap:10px}.editor-body{height:calc(100% - 86px);padding:16px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px}.editor-body main{min-width:0;display:flex;flex-direction:column;gap:14px}.toolstrip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.toolstrip button{justify-content:flex-start}.toolstrip button.active,.map-toolbar button.active{border-color:#72a3ff;background:#edf4ff;color:var(--blue)}.toolstrip span{display:flex;flex-direction:column;text-align:left}.toolstrip small{font-size:10px;color:#64748b;margin-top:4px}.editor-body .map{border-radius:10px;border:1px solid var(--line);min-height:500px}.edit-panel{padding:18px;overflow:auto}.edit-panel h2{margin:0 0 18px}.edit-panel label{display:grid;grid-template-columns:1fr 145px;align-items:center;font-size:12px;margin:12px 0}.edit-panel input,.edit-panel select,.print-options select{border:1px solid var(--line);padding:9px;border-radius:7px;background:#fff;min-width:0}.assistant-card{border-top:1px solid var(--line);margin:18px -18px 0;padding:16px}.assistant-card h3{margin:0 0 20px}.assistant-card h3 span,.validation h2 span{color:var(--blue);background:#eaf2ff;font-size:10px;padding:4px;border-radius:4px}.assistant-card b{font-size:12px}.assistant-card b svg{width:18px;vertical-align:middle;color:var(--blue)}.assistant-card p{font-size:12px;line-height:1.6;color:#52627a}.split-preview{height:120px;background:linear-gradient(110deg,#dbe9ff 48%,white 49% 51%,#ddf7e5 52%);display:grid;place-items:center;font-weight:700;color:#1355c5;border-radius:8px;margin:12px 0}.assistant-card button{margin:4px}.editor-title{display:block!important}.editor-title h1{margin:0}.editor-title span{color:#64748b}.congregation-body{height:calc(100% - 86px);padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px}.congregation-body main{display:flex;flex-direction:column;gap:12px;min-width:0}.congregation-body .map{min-height:560px;border-radius:10px;overflow:hidden}.map-toolbar{display:flex;gap:6px;background:#fff;padding:7px;border:1px solid var(--line);border-radius:10px;overflow:auto}.map-toolbar button{white-space:nowrap}.map-toolbar i{flex:1}.validation{padding:18px;overflow:auto}.validation h2{font-size:17px;margin:0}.validation p{color:#64748b;font-size:12px}.warning{border:1px solid var(--line);padding:13px;border-radius:9px;margin:10px 0;display:grid;grid-template-columns:20px 1fr;gap:8px;font-size:12px;line-height:1.5}.warning svg{color:#f97316;width:18px}.warning button{grid-column:2;padding:7px;color:var(--blue)}.validation ul{list-style:none;padding:0;border:1px solid var(--line);border-radius:8px}.validation li{padding:11px;border-bottom:1px solid var(--line);font-size:12px}.validation li b{float:right;color:#168547}.tip{display:flex;gap:8px;padding:12px;background:#eef5ff;color:#17498e;font-size:11px;line-height:1.6}.tip svg{width:18px;flex:none}.print-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}.print-options article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;gap:18px}.print-options article>svg{width:38px;height:38px;color:var(--blue);padding:8px;background:#eaf2ff;border-radius:9px}.print-options h2{margin:0;font-size:18px}.print-options p{color:#64748b;font-size:13px;min-height:42px}.print-options label{display:flex;flex-direction:column;gap:8px;font-size:12px}.print-options article div div{display:flex;gap:10px;margin-top:20px}.placeholder{display:grid;place-content:center;height:70vh;text-align:center}.placeholder p{color:#64748b}.login{height:100vh;display:grid;grid-template-columns:1fr 1.15fr;background:white}.login-visual{position:relative;background:linear-gradient(120deg,#eef5ff,#fff);overflow:hidden}.login-visual:after{content:"";position:absolute;width:620px;height:620px;border:1px solid #bad2ff;border-radius:42% 58% 55% 45%;bottom:-160px;right:-180px;background:repeating-linear-gradient(35deg,transparent 0 48px,#dbe8fd 49px 50px);opacity:.55}.login-copy{position:relative;z-index:1;padding:12vh 7vw}.login-copy h1{font-size:36px;line-height:1.3}.login-copy>p{color:#53627a;line-height:1.6}.benefits{display:flex;flex-direction:column;gap:34px;margin-top:70px}.benefits>div{display:flex;align-items:center;gap:16px;width:250px}.benefits svg{color:var(--blue);background:white;padding:12px;border-radius:10px;width:54px;height:54px;box-shadow:0 6px 18px #31507418;flex:none}.benefits span{color:#53627a;font-size:13px;line-height:1.6}.benefits b{display:block;color:#111827;font-size:15px}.offline{position:absolute;z-index:2;bottom:50px;left:7vw;background:#fff;padding:15px;border-radius:10px;display:flex;gap:12px;font-size:12px;color:#53627a}.offline b{display:block;color:#111827}.offline svg{color:var(--blue)}.login-side{display:grid;place-items:center;position:relative}.login-tools{position:absolute;right:28px;top:28px;display:flex;gap:10px}.login-panel{width:min(560px,80%);padding:38px 45px;border-radius:20px;box-shadow:0 20px 50px #28446d14}.login-panel>.brand{justify-content:center;flex-direction:column;text-align:center}.login-panel .brand strong{font-size:36px}.login-panel .brand-mark{width:60px;height:60px}.login-panel .brand-mark svg{width:60px;height:60px}.login-panel .brand span{font-size:16px}.access-list{display:flex;flex-direction:column;gap:8px;margin-top:25px}.access-list button{justify-content:flex-start;text-align:left}.access-list button>svg{color:var(--blue);background:#eaf2ff;padding:9px;width:42px;height:42px}.access-list button span{flex:1}.access-list b,.access-list small{display:block}.access-list small{color:#64748b;margin-top:5px}.divider{display:flex;align-items:center;gap:8px;color:#64748b;font-size:12px;margin:26px 0 14px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.divider svg{width:14px}.password{width:100%;padding:14px;border:1px solid var(--line);border-radius:8px}.remember{display:flex;gap:8px;margin:15px 0;font-size:13px}.enter{width:100%;justify-content:space-between}.help{display:block;text-align:center;color:var(--blue);font-size:12px;margin-top:25px}.local-note{position:absolute;bottom:25px;text-align:center;color:#53627a;font-size:12px;line-height:1.6}.local-note svg{width:18px;vertical-align:middle;color:var(--blue)}@keyframes pagein{from{opacity:0;transform:translateY(5px)}}
@media(max-width:1100px){.shell{grid-template-columns:80px 1fr}.sidebar{padding:22px 10px}.sidebar .brand div:last-child,.sidebar nav a:not(.active){font-size:0}.sidebar nav a{justify-content:center}.sidebar nav a.active{font-size:0}.privacy,.project{display:none}.head-actions button:not(.primary),.congregation{display:none}.stats{grid-template-columns:repeat(3,1fr)}.stat:nth-child(n+4){display:none}.dashboard-grid{grid-template-columns:1fr 300px}.detail-grid{grid-template-columns:1fr}.editor-body,.congregation-body{grid-template-columns:1fr}.edit-panel,.validation{display:none}.toolstrip{overflow:auto;display:flex}.toolstrip button{min-width:180px}}
@media(max-width:720px){.shell{display:block}.sidebar{position:fixed;bottom:0;left:0;right:0;height:68px;z-index:30;padding:6px;border:0;border-top:1px solid var(--line)}.sidebar>.brand,.sidebar .privacy,.sidebar .project{display:none}.sidebar nav{margin:0;flex-direction:row;justify-content:space-around}.sidebar nav a{padding:10px;font-size:0}.sidebar nav a svg{width:21px}.main{height:calc(100vh - 68px)}.topbar{height:68px;padding:10px 14px}.mobile-menu{display:none}.search{height:44px}.search kbd,.head-actions,.congregation{display:none}.page{padding:15px}.stats{grid-template-columns:repeat(3,minmax(135px,1fr));overflow:auto}.dashboard-grid{display:block}.inspector{display:none}.map-card{height:calc(100vh - 205px);min-height:420px}.map-card footer span:last-child{display:none}.tabs,.filters{width:100%}.table-wrap{margin:0 -15px;border-radius:0}.pagination>span{display:none}.pagination{justify-content:center}.detail-head button{font-size:0;padding:10px}.info-map{grid-template-columns:1fr;height:auto}.info-map .map{height:230px}.print-zone{grid-template-columns:1fr}.print-zone>div:nth-child(2){display:none}.editor-head{height:68px;padding:10px}.editor-head h1{font-size:16px}.editor-head>button{font-size:0}.editor-head>div button:not(.primary){display:none}.editor-body,.congregation-body{height:calc(100% - 68px);padding:9px}.toolstrip span{display:none}.toolstrip button{min-width:auto}.editor-title span{display:none}.congregation-editor .editor-head>div:last-child button:not(.primary){display:none}.map-toolbar button{font-size:0}.map-toolbar i{display:none}.print-options{grid-template-columns:1fr}.login{display:block;overflow:auto}.login-visual{display:none}.login-side{min-height:100vh;padding:70px 0}.login-panel{width:92%;padding:25px 20px;box-shadow:none}.login-panel .brand strong{font-size:30px}.local-note{position:static;margin-top:30px}.login-tools{top:15px;right:15px}}
.login-panel label.remember{display:flex;align-items:flex-start;gap:10px;margin:16px 0;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);line-height:1.35}
.login-panel label.remember input{width:18px;height:18px;min-height:18px;flex:none;margin:2px 0 0;accent-color:var(--blue)}
.login-panel label.remember span{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}
.login-panel label.remember small{color:var(--muted);font-size:12px;line-height:1.45;white-space:normal}
.recovery-explanation{padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);color:var(--muted);font-size:13px;line-height:1.55}
html,body,#root{max-width:100%;overflow-x:hidden}
/* Real-data, onboarding and secure local project states */
.empty-state{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;border:1px dashed #cbd5e1;border-radius:14px;background:#fff;padding:36px;color:#52627a}.empty-state h2{margin:0;color:#101828}.empty-state p{max-width:520px;margin:0}.empty-state>div{display:flex;gap:10px;margin-top:8px}.dashboard-empty{min-height:calc(100vh - 310px)}
.onboarding{min-height:100svh;background:#f7f9fc;padding:24px;display:grid;grid-template-rows:auto auto 1fr}.onboarding>header{display:flex;justify-content:space-between;align-items:center;max-width:1080px;width:100%;margin:auto}.onboarding-progress{display:flex;gap:8px;justify-content:center;margin:30px 0}.onboarding-progress i{width:44px;height:4px;border-radius:4px;background:#dbe3ef}.onboarding-progress i.active{background:#0757da}.onboarding-stage{width:min(620px,100%);margin:0 auto;align-self:start;background:#fff;border:1px solid #e3e8f0;border-radius:18px;padding:42px;box-shadow:0 18px 50px #18315312}.onboarding-stage>span{display:block;color:#64748b;font-size:13px;margin-top:16px}.onboarding-stage h1{font-size:30px;margin:7px 0 10px}.onboarding-stage>p{color:#52627a;line-height:1.6}.onboarding-icon{width:44px;height:44px;color:#0757da}.onboarding-icon.success{color:#16a34a}.onboarding-stage label{display:grid;gap:7px;margin:18px 0;font-weight:600}.onboarding-stage input,.onboarding-stage select{min-height:46px;border:1px solid #ccd5e2;border-radius:9px;padding:0 13px;font:inherit}.onboarding-stage footer{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.onboarding-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.onboarding-choices button{display:grid;justify-items:start;gap:8px;text-align:left;padding:20px;min-height:150px}.onboarding-choices button.selected{border-color:#0757da;background:#f2f7ff}.onboarding-choices svg{color:#0757da}.onboarding-note{padding:14px;background:#f0f7ff;color:#164e9f;border-radius:9px;display:flex;gap:9px}.recovery-key{display:block;padding:16px;background:#101828;color:#fff;border-radius:10px;letter-spacing:1.5px;font-weight:700;word-break:break-word}.recovery-actions{display:flex;gap:8px;margin:14px 0 24px}
.tour-offer{display:flex;align-items:center;gap:10px;padding:12px 16px;margin-bottom:12px;border:1px solid #bcd2f5;background:#f4f8ff;border-radius:10px}.tour-offer>div{display:grid;margin-right:auto}.tour-offer span{font-size:13px;color:#52627a}.tour-overlay{position:fixed;inset:0;z-index:1000;background:#07152e99;display:grid;place-items:center;padding:20px}.tour-overlay section{width:min(430px,100%);background:#fff;border-radius:16px;padding:28px}.tour-overlay section>span{color:#0757da}.tour-overlay section>div{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
.project label{min-width:0;display:grid;flex:1}.project label b,.project label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project select{position:absolute;opacity:0;inset:0;cursor:pointer}.project{position:relative}.project>button{position:relative;z-index:2;width:34px;height:34px;padding:7px}.project-management,.protection-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.project-management input,.project-management select,.protection-form input{min-height:40px;border:1px solid #d5dce7;border-radius:8px;padding:0 11px}.recovery-banner{display:flex;gap:16px;align-items:flex-start;padding:18px;border:1px solid #9bc0f9;background:#f2f7ff;border-radius:12px}.recovery-banner div{display:grid;gap:4px;margin-right:auto}.recovery-banner p{margin:0}.recovery-banner output{font-weight:700;letter-spacing:1px;word-break:break-word}.configured{color:#15803d;font-weight:700}
.shared-view{height:100svh;display:grid;grid-template-rows:auto 1fr;background:#f7f9fc}.shared-view>header{height:72px;padding:0 22px;display:flex;align-items:center;gap:24px;border-bottom:1px solid #e3e8ef;background:#fff}.shared-view>header>div:last-child{display:grid}.shared-view>header span{font-size:12px;color:#64748b}.shared-map{position:relative;min-height:0}.shared-map .map-shell,.shared-map .map{height:100%}.shared-actions{position:absolute;z-index:4;left:16px;bottom:max(18px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px}.shared-actions button{min-height:44px;background:#fff;box-shadow:0 3px 12px #10233b28}.shared-actions span{background:#fff;padding:9px 12px;border-radius:8px;box-shadow:0 3px 12px #10233b20;font-size:13px}.shared-error{display:grid;place-content:center;justify-items:center;text-align:center}.map-user-location{display:block;width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:#1677ff;box-shadow:0 0 0 8px #1677ff33,0 2px 8px #0004}
.text-button{border:0!important;color:#0757da!important;background:transparent!important}.login-panel h2{margin:20px 0 4px}.login-panel label{display:grid;gap:6px;margin:12px 0}.login-panel select,.login-panel label input{min-height:44px;border:1px solid #d7deea;border-radius:8px;padding:0 12px}
@media(max-width:900px){.onboarding{padding:16px}.onboarding-stage{padding:28px}.onboarding-choices{grid-template-columns:1fr}.tour-offer{align-items:flex-start;flex-wrap:wrap}.tour-offer>div{flex-basis:100%}.shared-view>header{height:64px}.shared-view .brand>div:last-child{display:none}.project-management{align-items:stretch}.project-management>*{flex:1 1 180px}}
@media(max-width:520px){.onboarding-stage{padding:24px 20px;border-radius:14px}.onboarding-stage h1{font-size:25px}.onboarding-progress i{width:28px}.onboarding-stage footer,.recovery-actions{display:grid;grid-template-columns:1fr}.onboarding-stage footer button{width:100%}.empty-state>div{flex-direction:column;width:100%}.empty-state>div button{width:100%}.shared-actions{right:12px;left:12px;align-items:flex-end;flex-direction:column}.shared-actions span{max-width:100%}.recovery-banner{flex-wrap:wrap}}
@media(max-width:720px){body .dashboard .stats{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px}body .dashboard .stat:nth-child(n+4){display:flex}.dashboard .stat{scroll-snap-align:start}}
.brand-mark{overflow:hidden;background:#fbf7ed}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}.danger-action{color:#a22b2b!important;border-color:#efc8c3!important;background:#fff!important}.danger-action:hover{background:#fff5f3!important}.danger-confirm{color:#fff!important;background:#b52b27!important;border-color:#b52b27!important}.delete-territory-dialog .dialog-warning{color:#b52b27}
.spotlight-tour{position:fixed;inset:0;z-index:1200;pointer-events:none}.spotlight-dim{position:absolute;inset:0;background:rgba(13,27,22,.66);pointer-events:auto}.spotlight-hole{position:fixed;border:2px solid #f3ce6b;border-radius:14px;box-shadow:0 0 0 9999px rgba(13,27,22,.66),0 0 0 8px rgba(243,206,107,.2);animation:tour-pulse 1.7s ease-in-out infinite;pointer-events:none}.spotlight-popover{position:fixed;width:min(320px,calc(100vw - 24px));padding:20px;background:#fffdf8;border:1px solid #eadfc7;border-radius:16px;box-shadow:0 18px 55px rgba(15,38,29,.28);pointer-events:auto}.spotlight-popover>span{font-size:12px;color:#557166}.spotlight-popover h2{margin:6px 0 8px}.spotlight-popover p{margin:0 0 18px;color:#4b6259;line-height:1.5}.spotlight-popover>div{display:flex;justify-content:flex-end;gap:8px}.spotlight-close{position:absolute;right:10px;top:10px;border:0;background:transparent;padding:6px}.spotlight-close svg{width:17px}@keyframes tour-pulse{50%{box-shadow:0 0 0 9999px rgba(13,27,22,.66),0 0 0 14px rgba(243,206,107,.08)}}
.territory-checks label>span{min-width:0;display:grid;gap:4px}.territory-checks label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.territory-checks label small{display:flex;gap:10px;align-items:center;min-width:0;color:#66756f}.territory-checks label small strong{flex:none;color:#24483b}.temporary-locality{display:grid;gap:7px;margin:14px 0;padding:13px;border-radius:12px;background:#fbf7ed;color:#334f44;font-weight:650}.temporary-locality small{font-weight:400;color:#6b7d76}
.multi-print-controls .territory-checks{grid-template-columns:1fr}.multi-print-controls .territory-checks label{justify-content:flex-start;padding:10px 12px}.onboarding{overflow-x:hidden}.onboarding-stage{min-width:0;overflow-wrap:anywhere}
@media(max-width:720px){.spotlight-popover{left:12px!important;right:12px;width:auto}.detail-head>div:last-child{flex-wrap:wrap}.danger-action{min-height:44px}.onboarding>header{gap:8px}.onboarding>header .brand{padding:0;gap:8px}.onboarding>header .brand-mark{width:40px;height:40px}.onboarding>header .brand strong{font-size:18px}.onboarding>header button{padding:9px 10px;white-space:nowrap}}

/* Design-system foundations · warm, cartographic and restrained. */
@font-face{font-family:"IBM Plex Sans";src:url("/assets/ibm-plex-sans-400-CDDApCn2.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Sans";src:url("/assets/ibm-plex-sans-500-6ng42L7E.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Sans";src:url("/assets/ibm-plex-sans-600-CuJfVYMP.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Sans";src:url("/assets/ibm-plex-sans-700-Bxkt5Cjx.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Serif";src:url("/assets/ibm-plex-serif-600-By66rOWU.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
:root{--paper:#F7F2E5;--canvas:#FCFAF4;--ink:#252821;--map-green:#54735A;--road-ochre:#D8B45C;--pin-red:#B84A3E;--boundary:#343A32;--muted:#6E746F;--line:#d9d5c9;--surface:var(--canvas);--blue:var(--map-green);font-family:"IBM Plex Sans",Inter,system-ui,sans-serif;color:var(--ink);background:var(--paper)}
body{color:var(--ink);background:var(--paper)}h1,h2,.brand strong{color:var(--ink)}.onboarding-stage h1,.login-panel h2{font-family:"IBM Plex Serif",Georgia,serif;font-weight:600}.shell,.main,.page,.editor-page{background:var(--paper)}.sidebar,.topbar,.editor-head{background:var(--canvas);border-color:var(--line)}.sidebar nav a{color:#4f5750}.sidebar nav a.active{color:var(--map-green);background:#e4eadf}.privacy{background:#f3eee2}.project,.search,.map-card,.inspector,.detail-info section,.print-zone,.edit-panel,.validation,.stat,.multi-print-controls,.multi-sheet-preview,.onboarding-stage,.login-panel{background:var(--canvas);border-color:var(--line);border-radius:9px;box-shadow:none}
button{color:var(--ink);background:var(--canvas);border-color:#cfcabe;border-radius:7px}button:hover{color:var(--map-green);border-color:#8ea18f;background:#f4f1e8}.primary,.enter{color:#fff!important;background:var(--map-green)!important;border-color:var(--map-green)!important}.primary:hover,.enter:hover{background:#405f48!important;border-color:#405f48!important}.danger-action{color:var(--pin-red)!important;border-color:#dba29b!important;background:var(--canvas)!important}.danger-confirm{background:var(--pin-red)!important;border-color:var(--pin-red)!important}.outline-blue{color:var(--map-green);border-color:#91aa94!important}.outline-green{color:#416347;border-color:#a8bca5!important;background:#eff3eb!important}
input,select,textarea,.search{color:var(--ink);background:var(--canvas)!important;border-color:#cdc8bb!important}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--road-ochre) 58%,transparent);outline-offset:2px}.brand-mark{background:transparent}.brand-mark img{border-radius:22%}.brand span,.page-title p,.detail-head span,.stat span,.stat small{color:var(--muted)}
.status{color:var(--boundary);background:#eee8dc;border:1px solid #ddd5c6}.status.disponible{background:#eef3e9;color:#4f554e}.status.asignado{background:#f5ddd8;color:#8a3028;border-color:#d99c94}.status.en-progreso{background:repeating-linear-gradient(135deg,#e8ecee 0 5px,#d7dde0 5px 7px);color:#39464a;border-color:#bbc4c7}.status.pendiente,.status.parcial{background:#f3e3b7;color:#6b5218;border-color:#dfc67d}.status.completado{background:#dce8d5;color:#36563d;border-color:#b9ccb4}
.stat-icon.blue,.stat-icon.green,.stat-icon.purple,.stat-icon.teal{color:var(--map-green);background:#e4eadf}.stat-icon.orange{color:#7a5b16;background:#f3e3b7}.tabs button.active,.toolstrip button.active,.map-toolbar button.active{color:var(--map-green);background:#e4eadf;border-color:#91aa94}.tour-offer,.onboarding-note,.tip{color:#415d47;background:#e8eee4;border-color:#b9c8b6}.onboarding-progress i.active{background:var(--map-green)}.onboarding-icon,.onboarding-choices svg{color:var(--map-green)}.onboarding-choices button.selected{border-color:var(--map-green);background:#edf1e9}.spotlight-hole{border-color:var(--road-ochre)}.spotlight-popover{background:var(--canvas);border-color:#d9cfb7}.empty-state{color:var(--ink)}

/* Brand-sheet fidelity: semantic states, metric accents and bounded workspaces. */
.stat-icon.total{color:var(--boundary);background:#e8e5db}.stat-icon.available{color:#3f6548;background:#dce8d5}.stat-icon.assigned{color:#725514;background:#f1dfae}.stat-icon.oldest{color:#88483b;background:#f3d9c9}.stat-icon.latest{color:#405f48;background:#d8e3d8}.stat-icon-glyph{width:24px;height:24px;display:grid;place-items:center;line-height:0}.stat-icon-glyph svg{display:block;width:20px;height:20px;stroke-width:2}
.dot.assigned{background:#f1dfae;border:2px solid #d29b19}.dot.available{background:#f7f2e5;border:1.5px dashed var(--map-green)}.dot.progress{border-radius:2px;background:repeating-linear-gradient(135deg,#e8ecee 0 3px,#6f8796 3px 4px);border:1px solid #6f8796}.pin{color:var(--pin-red)}
.login-visual{background:linear-gradient(120deg,var(--paper),var(--canvas))}.login-visual:after{border-color:#cfc6ae;background:repeating-linear-gradient(35deg,transparent 0 48px,#e2dac7 49px 50px)}.benefits svg,.offline svg,.local-note svg,.text-button,.help{color:var(--map-green)!important}.access-list button>svg{color:var(--map-green);background:#e4eadf}.recovery-banner{border-color:#b9c8b6;background:#e8eee4}.onboarding{background:var(--paper)}.onboarding-progress i{background:#ddd7c9}.onboarding-note,.tip,.locality-suggestion,.tour-offer{background:#e8eee4;color:#415d47}.assistant-card h3 span,.validation h2 span{color:#415d47;background:#e4eadf}.split-preview{background:linear-gradient(110deg,#e7eadf 48%,var(--canvas) 49% 51%,#dce8d5 52%);color:#3d5f46}
.multi-print-layout{min-height:520px;display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:18px;overflow:visible}.multi-print-controls,.multi-sheet-preview{min-height:0;overflow-y:auto;overscroll-behavior:contain}.multi-print-controls{display:flex;flex-direction:column;padding:16px}.multi-print-controls .territory-checks{min-height:180px;overflow-y:auto;flex:1;padding-right:4px}.multi-print-controls>.primary{flex:none;min-height:46px}.multi-sheet-preview{display:grid;place-items:center;padding:18px}.multi-sheet-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain}.print-center{min-height:calc(100dvh - 86px);height:auto;overflow:visible;display:block}.print-center>.print-tab-panel{min-width:0}.territory-checks label small strong:after{content:"·";margin-left:10px;color:var(--muted)}
.trash-list,.version-list{display:grid;gap:10px}.trash-list article,.version-list article{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);background:var(--canvas);border-radius:9px}.trash-list article>div,.version-list article>div{display:grid;gap:3px;margin-right:auto}.trash-list span,.version-list span,.trash-list small,.version-list small{color:var(--muted);font-size:12px}.version-kind{flex:none;padding:5px 8px;border-radius:999px;background:#eee8dc;color:var(--boundary)!important}.version-kind.automatic{background:#dce8d5;color:#36563d!important}.version-kind.before{background:#f1dfae;color:#725514!important}.version-preview-list{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;max-height:260px;overflow:auto;margin:18px 0}.version-preview-list span{padding:7px;background:var(--paper);border-radius:5px}
@media(max-width:900px){.multi-print-layout{height:auto;min-height:0;overflow:visible;grid-template-columns:1fr}.print-center{height:auto;overflow:visible}.multi-print-controls{max-height:48dvh}.multi-sheet-preview{min-height:420px;max-height:60dvh}.trash-list article,.version-list article{align-items:stretch;flex-wrap:wrap}.trash-list article>div,.version-list article>div{flex-basis:100%}}
.export-map-adjuster{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;width:min(760px,100%);margin:0 auto 14px}.export-map-adjuster>div{grid-column:1/-1;aspect-ratio:1488/584;min-height:180px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.export-map-adjuster small{color:var(--muted)}
.territory-check-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.territory-check-row>label{min-width:0}.territory-check-row>button{padding:8px}.export-adjust-dialog{width:min(820px,calc(100vw - 24px));padding:18px;background:var(--canvas);border-radius:10px}.export-adjust-dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.export-adjust-dialog header>div{display:grid}.export-adjust-dialog header span,.export-adjust-dialog p{color:var(--muted);font-size:12px}
.backup-content-options{display:grid;grid-template-columns:repeat(3,auto);gap:10px 16px;border:1px solid var(--line);border-radius:8px;padding:12px;margin:12px 0}.backup-content-options label{display:flex!important;align-items:center;gap:6px;margin:0!important}.backup-content-options small{grid-column:1/-1;color:var(--muted)}
.multi-print-controls>.primary{flex:0 0 46px!important;min-height:46px;max-height:46px}
.version-preview{width:min(760px,calc(100vw - 24px));max-height:calc(100svh - 24px);overflow:auto;overscroll-behavior:contain}.version-preview-map{height:300px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.version-preview-map .map{height:100%}.version-preview>div:last-child{position:sticky;bottom:0;padding-top:12px;background:var(--canvas);z-index:2}
@media(max-width:600px){.version-preview{height:calc(100svh - 16px);max-height:none;padding-bottom:max(18px,env(safe-area-inset-bottom))}.version-preview-map{height:min(46svh,360px)}.version-preview>div:last-child{padding-bottom:max(4px,env(safe-area-inset-bottom))}}
.toast-region{position:fixed;z-index:10000;top:max(16px,env(safe-area-inset-top));right:16px;display:flex;flex-direction:column;gap:9px;width:min(380px,calc(100vw - 32px));pointer-events:none}.app-toast{pointer-events:auto;display:grid;grid-template-columns:22px 1fr 28px;align-items:center;gap:10px;padding:12px 12px 12px 14px;background:var(--canvas);border:1px solid var(--line);border-left:4px solid var(--muted);border-radius:9px;box-shadow:0 12px 32px #25282122;color:var(--ink)}.app-toast>svg{width:20px}.app-toast button{border:0;padding:5px;background:transparent}.app-toast button svg{width:16px}.app-toast.success{border-left-color:var(--map-green)}.app-toast.warning{border-left-color:var(--road-ochre)}.app-toast.error{border-left-color:var(--pin-red)}.app-toast.info{border-left-color:var(--muted)}
@media(max-width:720px){.toast-region{left:12px;right:12px;top:max(10px,env(safe-area-inset-top));width:auto}}
.assignment-dialog{display:grid;gap:12px}.assignment-dialog label,.meeting-point-panel label,.s13-controls label{display:grid;gap:6px;font-size:13px}.assignment-dialog input,.assignment-dialog textarea,.meeting-point-panel input,.meeting-point-panel textarea,.s13-controls select{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--canvas)}.assignment-dialog footer,.meeting-point-panel footer{display:flex;justify-content:flex-end;gap:8px}.meeting-point-panel{position:fixed;z-index:80;right:22px;top:110px;width:min(360px,calc(100vw - 24px));display:grid;gap:11px;padding:18px;background:var(--canvas);border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 50px #2528212b}.meeting-point-panel h2{margin:0}.meeting-point-panel .check{display:flex;align-items:center}.meeting-point-panel .check input{width:auto}.map-legend-toggle,.map-legend button{padding:5px 8px;font-size:11px}.s13-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;height:calc(100dvh - 190px)}.s13-controls{background:var(--canvas);border:1px solid var(--line);border-radius:9px;padding:18px;display:flex;flex-direction:column;gap:14px}.s13-preview{min-height:0;display:grid;place-items:center;background:#ddd8ce;padding:18px;overflow:auto}.s13-preview img{max-width:100%;max-height:100%;box-shadow:0 10px 30px #0002}.detail-tab-panel{background:var(--canvas);border:1px solid var(--line);border-radius:9px;padding:20px;display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.detail-tab-panel h2,.detail-tab-panel p{flex-basis:100%;margin:0}.dot.assigned{background:#B84A3E}.dot.available{background:#dce8d5}.dot.progress{background:#7E8B91}
@media(max-width:720px){.meeting-point-panel{left:12px;right:12px;top:auto;bottom:calc(76px + env(safe-area-inset-bottom));width:auto}.assignment-dialog footer{flex-direction:column-reverse}.assignment-dialog footer button{width:100%}.s13-layout{grid-template-columns:1fr;height:auto}.s13-preview{min-height:460px}}
.meeting-point-panel{max-width:calc(100vw - 24px);overflow:hidden}.meeting-point-panel footer{flex-wrap:wrap}.meeting-point-panel footer button{flex:1 1 140px;min-width:0}.meeting-point-panel.meeting-point-summary{max-height:calc(100vh - 130px);overflow:auto}
.collaboration-settings{display:grid;gap:14px}.collaboration-settings>div:…19457 tokens truncated…*{min-width:0}
.outings-calendar-card input[type=month]{min-width:0;max-width:100%}
.outing-form input[type=radio]{width:auto!important;min-width:18px;min-height:18px;padding:0;flex:none;accent-color:var(--map-green)}
.outing-conductor-mode label{align-items:center;min-height:38px;cursor:pointer}
.outing-recurrence small{color:var(--muted);font-size:10px;font-weight:400}
.outing-rotation{grid-column:1/-1;display:grid;gap:9px;padding-top:4px}
.outing-rotation>p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}
.outing-rotation-pool{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.outing-rotation-pool label{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--canvas);font-size:10.5px;cursor:pointer}
.outing-rotation-pool label.checked{background:#edf1e9;border-color:#91aa94}
.outing-rotation-pool input{width:auto!important;flex:none;accent-color:var(--map-green)}
.publishers-title-actions{display:flex;gap:8px;flex-wrap:wrap}
.publisher-holoteles-link{display:flex!important;align-items:center;gap:5px;margin-top:5px;color:var(--map-green)!important;font-size:10px}
.publisher-holoteles-link svg{width:13px}
.vmc-people-panel{margin-bottom:16px;padding:16px;border:1px solid #91aa94;border-radius:12px;background:#edf1e9}
.vmc-people-panel>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.vmc-people-panel h2{margin:3px 0 4px;font-size:18px}
.vmc-people-panel p{margin:0;color:var(--muted);font-size:11px}
.vmc-people-panel>header>button{border:0;background:transparent;padding:7px}
.vmc-people-list{display:grid;gap:7px;margin-top:12px}
.vmc-people-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}
.vmc-people-list article small{display:block;margin-top:2px;color:var(--muted);font-size:10px}
.person-link-status{display:inline-flex;align-items:center;gap:5px;color:var(--map-green);font-size:10px;font-weight:800;white-space:nowrap}
.person-link-status svg{width:14px}
.vmc-people-empty{padding:14px!important;text-align:center}
.group-reports-connect,.group-reports-groups,.group-report-link-card,.group-report-inbox,.group-routing-inbox{background:var(--canvas);border:1px solid var(--line);border-radius:12px;padding:16px}
.group-reports-connect{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center}
.group-reports-connect>svg{width:24px;color:var(--map-green)}
.group-reports-connect h2{margin:0 0 4px;font-size:18px}
.group-reports-connect p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.group-reports-groups{display:flex;align-items:end;justify-content:space-between;gap:12px}
.group-reports-groups label{display:grid;gap:6px;font-size:11px;color:var(--muted)}
.group-reports-groups select,.group-reports-new-group input{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:9px;background:var(--canvas)}
.group-first-setup{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #dce3d8;border-radius:10px;background:#f4f7f1;margin-bottom:12px}.group-first-setup>svg{width:20px;color:var(--map-green);flex:none}.group-first-setup b{display:block;font-size:12px}.group-first-setup p{margin:4px 0 0;color:var(--muted);font-size:10.5px;line-height:1.45}
.group-reports-new-group{display:flex;gap:8px}
.group-report-link-card{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.group-report-link-card>div:first-child{display:flex;align-items:flex-start;gap:10px}
.group-report-link-card svg{width:19px;color:var(--map-green);flex:none}
.group-report-link-card small{display:block;margin-top:3px;color:var(--muted);font-size:10.5px}
.group-report-links{grid-column:1/-1;display:grid!important;gap:7px!important;border-top:1px solid var(--line);padding-top:10px}
.group-report-links article{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#f8f5ee}
.group-report-links article span,.group-report-links article small{display:block}
.group-report-links article button{display:flex;align-items:center;gap:5px}
.group-report-links article button svg{width:14px}
.group-routing-inbox{margin-top:14px}.group-routing-inbox>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px solid var(--line)}.group-routing-inbox>header>div{display:flex;gap:9px;align-items:flex-start}.group-routing-inbox>header svg{width:19px;color:var(--map-green);flex:none}.group-routing-inbox>header b,.group-routing-inbox>header small{display:block}.group-routing-inbox>header small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.4}.group-routing-inbox>header>strong{min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#edf1e9;color:var(--map-green);font-size:11px}.group-routing-inbox>div{display:grid;gap:8px;margin-top:12px}.group-routing-inbox article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:9px}.group-routing-inbox article small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.group-routing-inbox article button{max-width:180px}
.group-report-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
.group-report-stats span{display:grid;gap:2px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#f8f5ee}
.group-report-stats b{font-size:18px}.group-report-stats small{color:var(--muted);font-size:10px}
.group-report-inbox>header{padding-bottom:12px;border-bottom:1px solid var(--line)}
.group-report-inbox>header>div{display:flex;gap:9px;align-items:center}.group-report-inbox>header svg{width:19px;color:var(--map-green)}
.group-report-inbox>header b,.group-report-inbox>header small{display:block}.group-report-inbox>header small{color:var(--muted);font-size:10px}
.group-report-inbox>div{display:grid;gap:8px;margin-top:12px}
.group-report-inbox article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px;border:1px solid var(--line);border-radius:9px}
.group-report-inbox article.unidentified{background:#fff8e7}
.group-report-copy b,.group-report-copy small,.group-report-copy i{display:block}
.group-report-copy small{margin-top:3px;color:var(--muted);font-size:10.5px}.group-report-copy p{margin:5px 0 0;font-size:11px}.group-report-copy i{margin-top:5px;color:var(--muted);font-size:9.5px;font-style:normal}
.report-unidentified{font-size:10px;font-weight:800;color:#8a6415}
.group-report-empty{display:grid;justify-items:center;text-align:center;padding:30px;color:var(--muted)}.group-report-empty svg{width:32px}.group-report-empty p{font-size:11px}
.public-report-page{min-height:100dvh;display:grid;place-items:start center;padding:22px 14px 48px;background:linear-gradient(180deg,#f3f0e7 0,#eee9dd 100%)}
.public-report-card{width:min(540px,100%);padding:22px;border:1px solid rgba(75,87,72,.16);border-radius:22px;background:#fffdf8;box-shadow:0 18px 52px #25282112}
.public-report-header{display:flex;align-items:flex-start;gap:12px}.public-report-card h1{margin:4px 0;font-size:28px;line-height:1.05}.public-report-header p{margin:0;color:var(--muted);font-size:12px}
.public-report-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#e4eadf;color:var(--map-green);flex:none}.public-report-icon svg{width:23px}
.public-report-group-context{display:grid;gap:9px;margin:18px 0 12px;padding:14px;border:1px solid #dce3d8;border-radius:16px;background:#f4f7f1}
.public-report-group-context>div{display:flex;gap:9px;align-items:center}.public-report-group-context>div>svg{width:19px;color:var(--map-green)}.public-report-group-context>div span{display:grid}.public-report-group-context small{font-size:10px;color:var(--muted);font-weight:500}
.public-report-group-context p{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;padding-top:7px;border-top:1px solid #e3e8df;font-size:11px}.public-report-group-context p span{text-align:right;color:#475569}
.public-report-month-summary{display:grid;gap:4px;margin:12px 0 18px;padding:15px 16px;border-radius:16px;background:#263d34;color:#fff}.public-report-month-summary>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.74}.public-report-month-summary>b{font-size:20px}.public-report-month-summary>button{justify-self:start;padding:0;border:0;background:none;color:#d9eadf;font-size:11px;text-decoration:underline}.public-report-secondary-field{margin-top:8px;color:#fff!important}.public-report-secondary-field input{margin-top:5px;background:#fff!important;color:#252821}
.public-report-card form{display:grid;gap:15px}.public-report-card form>label{display:grid;gap:6px;font-size:12px;font-weight:650;color:#35453e}.public-report-card label small{font-weight:500;color:var(--muted)}
.public-report-card input,.public-report-card textarea{width:100%;min-height:48px;border:1px solid #d8d9d2;border-radius:12px;padding:11px 12px;background:#fff;box-shadow:none;font:inherit;color:#252821}.public-report-card textarea{min-height:82px;resize:vertical}
.public-report-remembered{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border-radius:14px;background:#f7f5ef}.public-report-remembered span{display:grid;gap:2px}.public-report-remembered small{color:var(--muted);font-size:10px}.public-report-remembered b{font-size:14px}.public-report-remembered button{padding:7px 9px;background:transparent;color:var(--map-green);font-size:11px}.public-report-remembered button svg{width:14px}
.public-report-profile,.public-report-participation{display:grid;gap:8px;margin:0;padding:0;border:0}.public-report-profile legend,.public-report-participation legend{font-size:12px;font-weight:700;color:#35453e}.public-report-profile>p{margin:0;color:var(--muted);font-size:10px}.public-report-profile>div{display:grid;grid-template-columns:1fr;gap:7px}.public-report-profile button,.public-report-participation button{min-height:44px;border:1px solid #d8d9d2;border-radius:12px;background:#fff;color:#35453e;justify-content:flex-start}.public-report-profile button.active,.public-report-participation button.active{border-color:#6f927d;background:#edf3ee;color:#28513e;box-shadow:inset 0 0 0 1px #6f927d}.radio-dot{width:12px;height:12px;border:2px solid currentColor;border-radius:50%}.public-report-profile button.active .radio-dot{box-shadow:inset 0 0 0 3px #edf3ee;background:currentColor}
.public-report-participation>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.public-report-participation button{justify-content:center;font-size:14px;font-weight:700}
.public-report-privacy{margin:2px 0 0;padding:10px 12px;border-radius:12px;background:#f1f4ef;color:#5f6c65;font-size:10.5px;line-height:1.45}
.public-report-submit{min-height:52px;justify-content:center;font-size:14px}.public-report-message.error{margin:0;color:#a33a2e;font-size:11px}
.public-report-success,.public-report-error{text-align:center}.public-report-success>svg,.public-report-error>svg{width:42px;height:42px;color:var(--map-green)}.public-report-success p,.public-report-error p{color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:720px){
  .outings-layout{width:100%;overflow:hidden}
  .outings-calendar-card>header{display:grid;grid-template-columns:minmax(0,1fr)}
  .outings-calendar-card input[type=month]{width:100%}
  .outing-form-row{grid-template-columns:1fr}
  .outing-rotation-pool{grid-template-columns:1fr}
  .publishers-title-actions{display:grid;width:100%}.publishers-title-actions button{width:100%}
  .publisher-editor{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:96px}
  .publisher-editor>footer{bottom:0}
  .vmc-people-list article{grid-template-columns:auto minmax(0,1fr)}.vmc-people-list article>button,.vmc-people-list article>.person-link-status{grid-column:1/-1;justify-self:stretch;justify-content:center}
  .group-reports-connect{grid-template-columns:1fr}.group-reports-connect>button{width:100%}
  .group-reports-groups{display:grid}.group-reports-new-group{display:grid;grid-template-columns:1fr}
  .group-report-link-card{grid-template-columns:1fr}.group-report-link-card>button{width:100%}
  .group-report-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .group-report-inbox article{grid-template-columns:auto minmax(0,1fr)}.group-report-inbox article>button,.group-report-inbox article>.person-link-status,.group-report-inbox article>.report-unidentified{grid-column:1/-1;justify-self:start}
  .public-report-page{padding:8px 8px 32px}.public-report-card{padding:16px;border-radius:18px}.public-report-card h1{font-size:25px}.public-report-group-context p{grid-template-columns:1fr}.public-report-group-context p span{text-align:left}.public-report-submit{position:sticky;bottom:8px;z-index:2;box-shadow:0 8px 24px #163e2b2b}
}


.editor-layer-notice{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.editor-layer-notice b{color:var(--map-green)}

.holoteles-login-stack{display:grid;gap:12px}
.holoteles-login-card.secondary{background:var(--surface-subtle,rgba(127,127,127,.06))}
.holoteles-password-panel{display:grid;gap:10px;margin-top:10px}
.holoteles-password-panel>button{justify-self:start}
.holoteles-password-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.holoteles-password-form label{display:grid;gap:6px}
@media(max-width:640px){.holoteles-password-form{grid-template-columns:1fr}.holoteles-password-form button{width:100%}}

.onboarding-cloud-entry{width:min(620px,100%);display:grid;gap:14px;margin:22px 0 8px;padding:18px;border:1px solid rgba(57,93,77,.18);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 12px 34px rgba(28,52,42,.07)}
.onboarding-cloud-heading{display:flex;gap:12px;align-items:center}.onboarding-cloud-heading>svg{width:26px;height:26px}.onboarding-cloud-heading span{display:grid;gap:3px}.onboarding-cloud-heading small{color:#66756f}
.onboarding-cloud-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.onboarding-cloud-form label{display:grid;gap:6px}.onboarding-cloud-form button{grid-column:1/-1;justify-self:start}
.onboarding-cloud-projects{display:grid;gap:10px}.onboarding-cloud-connected{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:700}.onboarding-cloud-connected svg{width:17px}
.onboarding-cloud-projects>button{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-align:left;padding:13px 14px}.onboarding-cloud-projects>button span{display:grid;gap:3px}.onboarding-cloud-projects>button small{color:inherit;opacity:.72}
.onboarding-cloud-empty{margin:0;padding:12px 13px;border-radius:12px;background:rgba(148,163,184,.12);font-size:13px;line-height:1.5}
.onboarding-local-divider{width:min(620px,100%);display:flex;align-items:center;gap:12px;color:#74847e;font-size:12px}.onboarding-local-divider:before,.onboarding-local-divider:after{content:"";height:1px;background:rgba(84,108,98,.18);flex:1}
@media(max-width:640px){.onboarding-cloud-form{grid-template-columns:1fr}.onboarding-cloud-form button{grid-column:auto;width:100%}.onboarding-cloud-entry{padding:14px}.onboarding-cloud-projects>button{grid-template-columns:auto 1fr auto}}

.login-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.login-auth-tabs button{min-height:44px;background:var(--canvas);color:var(--muted)}
.login-auth-tabs button.active{border-color:#91aa94;background:#edf1e9;color:var(--map-green);box-shadow:inset 0 -2px 0 var(--map-green)}
.login-cloud-explanation{margin:8px 0 16px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);color:var(--muted);font-size:12.5px;line-height:1.5}
@media(max-width:520px){.login-auth-tabs{grid-template-columns:1fr}.login-auth-tabs button{justify-content:flex-start}}

.holoteles-remote-list article.canonical{border-color:#91aa94;background:#edf1e9}
.holoteles-canonical-tag,.holoteles-history-tag{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border-radius:999px;font-size:9.5px;font-weight:800}
.holoteles-canonical-tag{background:#dce8da;color:var(--map-green)}
.holoteles-canonical-tag svg{width:12px;height:12px}
.holoteles-history-tag{background:#eee9dd;color:#6b675d}
.holoteles-remote-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
@media(max-width:640px){.holoteles-remote-actions{display:grid;grid-template-columns:1fr}.holoteles-remote-actions button{width:100%}}

.pwa-install-invitation{position:fixed;z-index:10020;right:18px;bottom:18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;width:min(560px,calc(100vw - 28px));padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--canvas);box-shadow:0 16px 40px #25282124}
.pwa-install-invitation>img{width:42px;height:42px;border-radius:10px}
.pwa-install-invitation>div{min-width:0}.pwa-install-invitation b{display:block;font-size:13px}.pwa-install-invitation p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.pwa-install-invitation small{display:flex;align-items:center;gap:5px;margin-top:5px;color:var(--muted);font-size:10px}.pwa-install-invitation small svg{width:14px}
.pwa-install-close{width:34px;height:34px;padding:0;border:0;background:transparent;color:var(--muted)}
@media(max-width:640px){.pwa-install-invitation{left:12px;right:12px;bottom:calc(82px + env(safe-area-inset-bottom));width:auto;grid-template-columns:auto minmax(0,1fr) auto}.pwa-install-invitation>.primary{grid-column:2/-1;width:100%}.pwa-install-close{grid-column:3;grid-row:1;align-self:start}}
.holoteles-about-panel{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--canvas)}
.holoteles-about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.holoteles-about-grid article{display:flex;gap:10px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-about-grid article>svg{width:20px;color:var(--map-green);flex:none}.holoteles-about-grid h3{margin:0;font-size:13px}.holoteles-about-grid p{margin:4px 0 0;color:var(--muted);font-size:10.5px;line-height:1.5}
.beta-badge{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#eee9dd;color:#665f52;font-size:10px;font-weight:800}
@media(max-width:640px){.holoteles-about-grid{grid-template-columns:1fr}}

.holoteles-profile-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-profile-panel>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.holoteles-profile-panel label{display:grid;gap:6px;color:var(--muted);font-size:11px}.holoteles-profile-panel input{width:100%;min-height:42px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--canvas);color:var(--ink)}
@media(max-width:640px){.holoteles-profile-panel{grid-template-columns:1fr}.holoteles-profile-panel>div{grid-template-columns:1fr}.holoteles-profile-panel>button{width:100%}}


/* Compact Holoteles shell header */
.global-search{position:relative;flex:1;min-width:0;max-width:470px}
.head-actions{align-items:center}
.head-account-menu{position:relative}
.head-account-button{width:48px;height:48px;padding:0;border-radius:12px}
.head-account-popover{position:absolute;z-index:120;right:0;top:calc(100% + 8px);display:grid;width:min(330px,calc(100vw - 24px));padding:7px;border:1px solid var(--line);border-radius:13px;background:var(--canvas);box-shadow:0 18px 48px #2528212b}
.head-account-popover button{justify-content:flex-start;width:100%;min-height:54px;padding:10px 11px;border:0;background:transparent;text-align:left}
.head-account-popover button:hover{background:var(--wash)}
.head-account-popover button>svg{flex:none;color:var(--map-green)}
.head-account-popover button>span{display:grid;gap:2px;min-width:0}
.head-account-popover button b{font-size:12px}
.head-account-popover button small{color:var(--muted);font-size:10px;line-height:1.35}
@media(max-width:960px){
  .topbar{gap:8px;padding-inline:14px}
  .global-search{flex:0 0 auto;max-width:none}
  .global-search:not(.open) .search{width:46px;max-width:46px;padding:0;justify-content:center;cursor:pointer}
  .global-search:not(.open) .search input{position:absolute;width:1px;min-width:1px;opacity:0;pointer-events:none}
  .global-search:not(.open) .search kbd{display:none}
  .global-search.open{position:absolute;z-index:130;left:12px;right:12px;top:10px;max-width:none}
  .global-search.open .search{width:100%;max-width:none;background:var(--canvas);box-shadow:0 12px 30px #25282122}
  .global-search.open .global-search-results{width:100%;max-height:min(70dvh,560px);overflow:auto}
  .head-actions{margin-left:auto;gap:7px}
  .head-actions button{height:46px}
  .head-create{min-width:46px;padding-inline:12px}
  .head-create span,.head-create-chevron{display:none}
  .head-account-button{width:46px;height:46px}
}
@media(max-width:520px){
  .cloud-status-badge span{display:none}
  .topbar{padding-inline:10px}
}

/* Telephone CSV import review */
.telephone-csv-dialog{width:min(760px,calc(100vw - 28px));display:grid;gap:12px}
.telephone-csv-dialog>p{margin:0}
.telephone-csv-columns,.telephone-csv-preview article{display:grid;grid-template-columns:1.1fr 1fr 1.2fr 1.2fr;gap:10px;align-items:center}
.telephone-csv-columns{padding:0 10px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.telephone-csv-preview{display:grid;gap:6px;max-height:min(42svh,340px);overflow:auto}
.telephone-csv-preview article{padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);font-size:11px}
.telephone-csv-preview article b{color:var(--map-green)}
.telephone-csv-preview article span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.telephone-csv-more,.telephone-csv-note{color:var(--muted);font-size:11px;line-height:1.45}
.telephone-csv-dialog footer{display:flex;justify-content:flex-end;gap:8px}
@media(max-width:640px){
  .telephone-csv-dialog{width:min(100%,calc(100vw - 16px));max-height:calc(100svh - 20px);overflow:auto}
  .telephone-csv-columns{display:none}
  .telephone-csv-preview article{grid-template-columns:1fr;gap:3px}
  .telephone-csv-preview article span{white-space:normal}
  .telephone-csv-dialog footer{display:grid;grid-template-columns:1fr}
  .telephone-csv-dialog footer button{width:100%}
}

.holoteles-consolidate-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:14px 0;padding:18px;border:1px solid #9caf9e;border-radius:14px;background:#edf1e9}
.holoteles-consolidate-card.needs-primary{border-color:var(--line);background:#f8f5ee}
.holoteles-consolidate-card h3{margin:7px 0 5px;font-size:16px}
.holoteles-consolidate-card p{margin:0;color:var(--ink);font-size:12px;line-height:1.5}
.holoteles-consolidate-card small{display:block;margin-top:5px;color:var(--muted);font-size:10.5px;line-height:1.45}
.holoteles-consolidate-card>button{min-height:44px;white-space:nowrap}
.holoteles-advanced-copies{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.holoteles-advanced-copies>summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:700;list-style:none}
.holoteles-advanced-copies>summary::-webkit-details-marker{display:none}
.holoteles-advanced-copies[open]>summary{margin-bottom:10px}
@media(max-width:720px){
  .holoteles-consolidate-card{grid-template-columns:1fr}
  .holoteles-consolidate-card>button{width:100%}
}

/* Outings responsive + recurring scope */
.outings-layout>*{min-width:0}
.outing-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}
.outing-copy{overflow:hidden}
.outing-copy strong,.outing-copy small,.outing-copy i{overflow-wrap:anywhere}
.outing-series-controls{display:grid;gap:9px}
.outing-series-controls>fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;padding:10px;border:1px solid var(--line);border-radius:10px}
.outing-series-controls>fieldset legend{padding:0 5px;color:#475569;font-size:11px;font-weight:700}
.outing-series-controls>fieldset button{display:grid;justify-items:start;gap:3px;min-width:0;padding:10px;text-align:left;background:var(--canvas)}
.outing-series-controls>fieldset button b{font-size:11px}
.outing-series-controls>fieldset button small{color:var(--muted);font-size:9.5px;line-height:1.35}
.outing-series-controls>fieldset button.selected{border-color:#91aa94;background:#edf1e9;color:var(--map-green);box-shadow:inset 0 0 0 1px #91aa94}
.outing-series-scope-warning{margin:0;padding:9px 10px;border-radius:8px;background:#fff8e7;color:#7a5a19;font-size:10.5px;line-height:1.45}
@media(min-width:1400px){
  .outings-layout{grid-template-columns:minmax(420px,1.15fr) minmax(330px,.8fr) minmax(360px,.9fr)}
  .outings-calendar-card,.outings-agenda-card,.outing-editor{min-height:0}
}
@media(min-width:901px) and (max-width:1199px){
  .outings-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)}
  .outing-editor{grid-column:1/-1;position:static}
}
@media(max-width:720px){
  .outings-page{padding-bottom:92px}
  .outings-title-actions{grid-template-columns:1fr}
  .outings-title-actions button{width:100%;min-height:44px}
  .outings-calendar-card,.outings-agenda-card{overflow:hidden}
  .outings-agenda-card>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .outings-day-list{gap:9px}
  .outing-card{min-height:76px;padding:12px}
  .outing-time{min-width:54px}
  .outing-editor{
    position:fixed;
    z-index:10010;
    inset:58px 8px max(8px,env(safe-area-inset-bottom)) 8px;
    grid-column:auto;
    max-height:none;
    overflow:auto;
    overscroll-behavior:contain;
    padding:14px;
    box-shadow:0 18px 54px #18221d3b
  }
  .outing-editor>header{position:sticky;top:-14px;z-index:3;background:var(--canvas);padding:14px 0 10px}
  .outing-editor>footer{position:sticky;bottom:-14px;z-index:3;display:grid;grid-template-columns:1fr 1fr;background:var(--canvas);padding:12px 0 max(14px,env(safe-area-inset-bottom));margin-top:16px}
  .outing-editor>footer>span{display:none}
  .outing-editor>footer .danger-button{grid-column:1/-1}
  .outing-editor>footer button{width:100%;min-height:44px}
  .outing-form-row{grid-template-columns:1fr}
  .outing-series-controls>fieldset{grid-template-columns:1fr}
  .outings-calendar-grid{gap:3px}
  .outings-calendar-grid>button,.outings-calendar-grid>.calendar-empty{min-width:0}
}
@media(max-width:380px){
  .outings-calendar-card,.outings-agenda-card{padding:10px}
  .outings-weekdays,.outings-calendar-grid{gap:2px}
  .outings-calendar-grid>button{padding:3px;font-size:11px}
  .outings-calendar-grid>button i{right:2px;bottom:2px;min-width:14px;height:14px;font-size:8px}
}

/* Territorios Cloud collaboration */
.holoteles-collaboration-panel{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--canvas)}
.holoteles-collaboration-panel>header>div{display:flex;gap:10px;align-items:flex-start}
.holoteles-collaboration-panel>header svg{width:21px;color:var(--map-green);flex:none}
.holoteles-collaboration-panel>header span{display:grid;gap:3px}
.holoteles-collaboration-panel>header small{color:var(--muted);font-size:10.5px;line-height:1.45}
.holoteles-invitations,.holoteles-collaborator-list{display:grid;gap:7px}
.holoteles-invitations article,.holoteles-collaborator-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-invitations span,.holoteles-collaborator-list span{display:grid;gap:2px;min-width:0}
.holoteles-invitations small,.holoteles-collaborator-list small{color:var(--muted);font-size:10px;overflow-wrap:anywhere}
.holoteles-collaborator-invite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid #cdd9ce;border-radius:11px;background:#f2f6f0}
.holoteles-collaborator-invite>div{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.7fr);gap:8px}
.holoteles-collaborator-invite label{display:grid;gap:5px;color:var(--muted);font-size:10.5px}
.holoteles-collaborator-invite input,.holoteles-collaborator-invite select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:9px;background:var(--canvas)}
.holoteles-collaborator-invite>p{grid-column:1/-1;margin:0;color:var(--muted);font-size:10px;line-height:1.45}
@media(max-width:720px){
  .holoteles-collaborator-invite{grid-template-columns:1fr}
  .holoteles-collaborator-invite>div{grid-template-columns:1fr}
  .holoteles-collaborator-invite>button{width:100%}
  .holoteles-invitations article,.holoteles-collaborator-list article{display:grid}
  .holoteles-invitations article>button,.holoteles-collaborator-list article>button{width:100%}
}

.holoteles-shared-projects{display:grid;gap:8px;padding:12px;border:1px solid #d7dfd4;border-radius:11px;background:#f8faf6}
.holoteles-shared-projects>b{font-size:12px}
.holoteles-shared-projects article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}
.holoteles-shared-projects article span{display:grid;gap:2px;min-width:0}
.holoteles-shared-projects article small{color:var(--muted);font-size:10px;line-height:1.4}
.holoteles-collaboration-note{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:720px){
  .holoteles-shared-projects article{display:grid}
  .holoteles-shared-projects article>button{width:100%}
}

.holoteles-signup-secondary{display:grid;gap:8px;padding-top:4px}
.holoteles-signup-secondary>button{justify-self:start;border:0;background:transparent;color:var(--muted);padding:4px 0;text-decoration:underline;font-size:11px}
.holoteles-signup-secondary>div{display:grid;gap:8px;padding:11px;border:1px dashed var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-signup-secondary p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}
.holoteles-signup-secondary>div>button{justify-self:start}
@media(max-width:640px){.holoteles-signup-secondary>div>button{width:100%}}

.holoteles-shared-merge-review{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid #d2dccf;border-radius:14px;background:var(--canvas)}
.holoteles-shared-merge-review>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.holoteles-shared-merge-review>header>div{display:flex;gap:10px;align-items:flex-start}
.holoteles-shared-merge-review>header svg{width:20px;color:var(--map-green);flex:none}
.holoteles-shared-merge-review>header span{display:grid;gap:3px}
.holoteles-shared-merge-review>header small,.holoteles-shared-merge-review>p{color:var(--muted);font-size:10.5px;line-height:1.45}
.holoteles-shared-merge-review>p{margin:0}
.holoteles-shared-merge-list{display:grid;gap:8px;max-height:420px;overflow:auto}
.holoteles-shared-merge-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-shared-merge-list article>div:first-child{display:grid;gap:2px;min-width:0}
.holoteles-shared-merge-list article small{color:var(--muted);font-size:9.5px;overflow-wrap:anywhere}
.holoteles-shared-merge-actions{display:flex;gap:7px;flex-wrap:wrap}
.holoteles-shared-merge-actions button.selected{border-color:#91aa94;background:#edf1e9;color:var(--map-green);box-shadow:inset 0 0 0 1px #91aa94}
.holoteles-shared-merge-review>footer{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
@media(max-width:720px){
  .holoteles-shared-merge-list article{grid-template-columns:1fr}
  .holoteles-shared-merge-actions{display:grid;grid-template-columns:1fr}
  .holoteles-shared-merge-actions button{width:100%}
  .holoteles-shared-merge-review>footer{display:grid;grid-template-columns:1fr}
  .holoteles-shared-merge-review>footer button{width:100%}
}

/* Holoteles common recognized-account and recovery UX */
.holoteles-recognized-account{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:15px;border:1px solid #cfd9cd;border-radius:13px;background:#f3f7f0}
.holoteles-recognized-account>div:nth-child(2){display:grid;gap:3px}
.holoteles-recognized-account h3{margin:0;font-size:16px}
.holoteles-recognized-account small,.holoteles-recognized-account p{color:var(--muted);font-size:10.5px;line-height:1.45}
.holoteles-recognized-account p{margin:5px 0 0}
.holoteles-recognized-account>div:last-child{grid-column:1/-1;display:flex;gap:8px}
.holoteles-recovery-help{display:flex;gap:10px;align-items:flex-start;padding:11px;border:1px solid #d8dfd3;border-radius:10px;background:#f5f8f2}
.holoteles-recovery-help>svg{width:18px;flex:none;color:var(--map-green)}
.holoteles-recovery-help>span{display:grid;gap:2px}
.holoteles-recovery-help b{font-size:11px}
.holoteles-recovery-help small{color:var(--muted);font-size:10px;line-height:1.45}
@media(max-width:640px){
  .holoteles-recognized-account>div:last-child{display:grid;grid-template-columns:1fr}
  .holoteles-recognized-account>div:last-child button{width:100%}
}

.login-recovery-note{display:block;margin-top:-4px;color:var(--muted);font-size:10px;line-height:1.45}

.holoteles-account-recovery{display:grid;gap:4px;margin-top:10px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.holoteles-account-recovery b{font-size:11px}
.holoteles-account-recovery p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}

.onboarding-password-option{display:grid;gap:8px;padding:9px 0;border-top:1px solid var(--line)}
.onboarding-password-option>summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:700}
.onboarding-password-option[open]>summary{margin-bottom:5px}
.onboarding-password-option button{width:100%}

.holoteles-recovery-methods{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-top:8px}
.holoteles-recovery-methods>span{display:grid;gap:2px;min-width:0}
.holoteles-recovery-methods strong{font-size:11px}
.holoteles-recovery-methods small{color:var(--muted);font-size:9.5px}
.holoteles-recovery-codes{display:grid;gap:8px;margin-top:8px;padding:10px;border:1px solid #cfd9cd;border-radius:9px;background:var(--canvas)}
.holoteles-recovery-codes>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.holoteles-recovery-codes code{padding:7px;border-radius:7px;background:#f0eee8;font-size:11px;text-align:center;user-select:all}
.holoteles-recovery-codes small{color:var(--muted);font-size:9.5px;line-height:1.4}
.login-cloud-code-recovery{display:grid;gap:9px;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee}
.login-cloud-code-recovery p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}
.login-cloud-code-recovery .enter{margin-top:2px}
@media(max-width:640px){
  .holoteles-recovery-methods{grid-template-columns:1fr}
  .holoteles-recovery-methods button{width:100%}
  .holoteles-recovery-codes>div{grid-template-columns:1fr}
}

/* Publisher archive + cross-app status */
.publisher-status-note{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#f8f5ee}
.publisher-status-note span{font-size:11px;font-weight:700}
.publisher-status-note small{color:var(--muted);font-size:9.5px;line-height:1.4}
.vmc-status-suggestions{display:grid;gap:10px;margin:14px 0;padding:14px;border:1px solid #dfc888;border-radius:13px;background:#fff9e9}
.vmc-status-suggestions>header h2{margin:2px 0 3px;font-size:15px}
.vmc-status-suggestions>header p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}
.vmc-status-suggestions>div{display:grid;gap:7px}
.vmc-status-suggestions article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid #eadba9;border-radius:9px;background:var(--canvas)}
.vmc-status-suggestions article>span{display:grid;gap:2px;min-width:0}
.vmc-status-suggestions article small{color:var(--muted);font-size:10px}
.vmc-status-suggestions article>div{display:flex;gap:7px;flex-wrap:wrap}
@media(max-width:680px){
  .vmc-status-suggestions article{display:grid}
  .vmc-status-suggestions article>div{display:grid;grid-template-columns:1fr}
  .vmc-status-suggestions article button{width:100%}
}

.holoteles-merge-review-summary{display:grid;gap:10px;margin:12px 0;padding:13px;border:1px solid #cfd9cd;border-radius:11px;background:#f5f8f2}
.holoteles-merge-review-summary>div:first-child{display:grid;gap:2px}
.holoteles-merge-review-summary>div:first-child span{color:var(--muted);font-size:10.5px}
.holoteles-merge-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.holoteles-merge-stats span{display:grid;gap:2px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--canvas);font-size:9.5px;color:var(--muted)}
.holoteles-merge-stats strong{font-size:15px;color:var(--ink)}
.holoteles-merge-review-summary details>summary{cursor:pointer;font-size:10.5px;font-weight:700;color:var(--muted)}
.holoteles-merge-conflicts{display:grid;gap:6px;max-height:360px;overflow:auto;margin-top:8px}
.holoteles-merge-conflicts article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--canvas)}
.holoteles-merge-conflicts article>span{display:grid;gap:2px;min-width:0}
.holoteles-merge-conflicts small{color:var(--muted);font-size:9px;line-height:1.4}
.holoteles-merge-conflicts p{margin:0;color:var(--muted);font-size:10px}
@media(max-width:680px){
  .holoteles-merge-stats{grid-template-columns:1fr}
  .holoteles-merge-conflicts article{grid-template-columns:1fr}
}

.holoteles-merge-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.canonical-conflict-card{display:grid;gap:12px!important;padding:13px!important}
.holoteles-merge-conflicts article.canonical-conflict-card{grid-template-columns:minmax(0,1fr)}
.canonical-conflict-group{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--canvas) 72%,white)}
.canonical-conflict-group>h3{margin:0;color:var(--muted);font-size:11px;font-weight:650;line-height:1.4}
.canonical-conflict-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.canonical-conflict-card>header>span{display:grid;gap:4px;min-width:0}
.canonical-conflict-card>header h3{margin:0;font-size:13px}
.canonical-recovery-list{display:grid;gap:8px;padding:11px;border:1px solid #d1b987;border-radius:10px;background:#fffaf0}
.canonical-recovery-list>summary{cursor:pointer;font-size:11px;font-weight:700}
.canonical-recovery-list>div{display:grid;gap:7px}
.canonical-recovery-list article{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px;border:1px solid #eadba9;border-radius:8px;background:white}
.canonical-recovery-list article>span{display:grid;gap:3px;min-width:0}
.canonical-recovery-list article small{color:var(--muted);font-size:10px;line-height:1.4}
.canonical-recovery-list button{min-height:44px}
.canonical-conflict-card>header h3{margin:0;font-size:13px}
.canonical-conflict-card>header small,.canonical-conflict-scope{color:var(--muted);font-size:11px;line-height:1.45}
.canonical-conflict-versions{display:grid;gap:12px}
.canonical-conflict-versions>section{display:grid;gap:7px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:white}
.canonical-conflict-versions h4{margin:0;font-size:13px}
.canonical-conflict-versions section>small{color:var(--muted);font-size:10px;overflow-wrap:anywhere}
.canonical-conflict-versions ul{display:grid;gap:4px;margin:0;padding-left:20px;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.canonical-conflict-dependencies{display:grid;gap:5px;padding:9px;border:1px solid #c4d5c6;border-radius:8px;background:#f3f8f3;font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.canonical-conflict-dependencies ul{margin:0}
.canonical-conflict-actions{display:flex;flex-wrap:wrap;gap:8px}
.canonical-conflict-actions button,.canonical-defer{min-height:42px}
.canonical-defer{justify-self:start}
.territory-geometry-compare{display:grid;gap:6px}
.territory-geometry-compare svg{width:100%;height:auto;max-height:240px;border:1px solid var(--line);border-radius:8px;background:#f8faf8}
.territory-geometry-compare path{stroke-width:4;vector-effect:non-scaling-stroke}
.territory-geometry-compare .primary-geometry{fill:#5e9b694c;stroke:#357849}
.territory-geometry-compare .historical-geometry{fill:#c76c534c;stroke:#a84c36}
.territory-geometry-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;color:var(--muted)}
.territory-geometry-legend span{display:inline-flex;align-items:center;gap:5px}
.territory-geometry-legend i{width:11px;height:11px;border:2px solid currentColor;border-radius:3px}
.primary-geometry-key{color:#357849}.historical-geometry-key{color:#a84c36}
.territory-geometry-unavailable{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:680px){
  .canonical-conflict-card>header{display:grid}
  .canonical-conflict-actions{display:grid;grid-template-columns:1fr}
  .canonical-conflict-actions button,.canonical-defer{width:100%;min-height:44px}
  .canonical-recovery-list article{display:grid}
  .canonical-recovery-list button{width:100%}
}

.head-account-button{position:relative}
.account-sync-dot{position:absolute;right:5px;bottom:5px;width:9px;height:9px;border-radius:999px;border:2px solid var(--canvas);box-sizing:content-box}
.account-sync-dot.synced{background:#4f8f5f}
.account-sync-dot.syncing,.account-sync-dot.pending{background:#c99634}
.account-sync-dot.conflict,.account-sync-dot.error{background:#b9544b}

.whats-new-header-actions{display:flex;align-items:center;gap:6px}
.whats-new-header-actions .whats-new-mark-all{display:flex;align-items:center;gap:5px;width:auto;padding:6px 8px;font-size:10px;color:var(--muted)}
.whats-new-header-actions .whats-new-mark-all svg{width:14px;height:14px}
.whats-new-launched .whats-new-item{appearance:none;width:100%;border:0;background:transparent;color:inherit;text-align:left;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px;border-radius:10px;cursor:pointer}
.whats-new-launched .whats-new-item:hover,.whats-new-launched .whats-new-item:focus-visible{background:#f4f1ea}
.whats-new-launched .whats-new-item.read{opacity:.72}
.whats-new-item-heading{display:flex;align-items:center;gap:7px}
.whats-new-item-heading>i{width:7px;height:7px;border-radius:999px;background:#b25b4b;flex:none}

.holoteles-login-separator{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:10px;text-transform:lowercase}
.holoteles-login-separator::before,.holoteles-login-separator::after{content:"";height:1px;background:var(--line);flex:1}
.holoteles-login-separator span{padding:0 4px}
.map .maplibregl-canvas {
  outline: none;
}
.map-shell {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
}
.map-shell > .map {
  width: 100%;
  height: 100%;
}
.map-fit-control {
  position: absolute;
  right: 12px;
  bottom: 56px;
  z-index: 6;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #d9e2ef;
  border-radius: 10px;
  background: #fff;
  color: #17365f;
  box-shadow: 0 5px 16px #183b6826;
}
.map-fit-control svg {
  width: 20px;
  height: 20px;
}
.editable-map > .map-fit-control {
  bottom: 14px;
}
.map-fit-control:hover {
  color: var(--blue);
  border-color: #9dbcf2;
}

.map .maplibregl-ctrl-group {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 14px #31507418;
}

.map .maplibregl-ctrl button {
  width: 38px;
  height: 38px;
}

.map-card .maplibregl-ctrl-bottom-left {
  bottom: 44px;
}

.editable-map {
  height: 100%;
  min-height: 500px;
  position: relative;
}
.editable-map > .map {
  height: 100%;
}
.edit-instruction {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 3;
  background: #fff;
  border: 1px solid #bfd3f7;
  border-radius: 8px;
  padding: 9px 12px;
  color: #0757da;
  font-size: 12px;
  box-shadow: 0 5px 18px #31507418;
}
.vertex-handle,
.midpoint-handle {
  position: absolute !important;
  display: grid !important;
  place-items: center;
  flex: none !important;
  box-sizing: border-box !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  appearance: none;
  -webkit-appearance: none;
  touch-action: none;
  cursor: grab;
}
.vertex-handle::before,
.midpoint-handle::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  flex: none;
  box-sizing: border-box;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  pointer-events: none;
}
.vertex-handle::before {
  width: 15px;
  height: 15px;
  border: 3px solid #0863ed;
  background: #fff;
  box-shadow: 0 2px 7px #123a7940;
}
.vertex-handle:active {
  cursor: grabbing;
}
.midpoint-handle { cursor: copy; }
.midpoint-handle::before {
  width: 10px;
  height: 10px;
  background: #bdd4fa;
  border: 2px solid #fff;
  box-shadow: 0 2px 7px #123a7940;
  opacity: 0.9;
}
.edit-message,
.edit-help {
  margin-top: 18px;
  padding: 13px;
  border-radius: 9px;
  font-size: 12px;
  line-height: 1.5;
}
.edit-message {
  display: flex;
  gap: 9px;
  background: #fff7ed;
  color: #9a3412;
  border: 1px solid #fed7aa;
}
.edit-message svg {
  width: 18px;
  flex: none;
}
.edit-message.success {
  background: #f0fdf4;
  color: #166534;
  border-color: #bbf7d0;
}
.edit-help {
  background: #eef5ff;
  color: #17498e;
}
.edit-help p {
  margin-bottom: 0;
}
.toolstrip button:disabled,
.map-toolbar button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

@media (max-width: 1100px) {
  .editor-body .edit-panel,
  .congregation-body .validation {
    display: block;
    max-height: 260px;
    overflow: auto;
  }
  .editor-body,
  .congregation-body {
    overflow: auto;
  }
  .editable-map {
    min-height: 480px;
  }
}
@media (max-width: 720px) {
  .editor-body .edit-panel,
  .congregation-body .validation {
    max-height: none;
  }
  .editable-map {
    min-height: 430px;
  }
  .editor-head {
    flex-wrap: wrap;
  }
  .editor-head > div:last-child {
    width: 100%;
    display: flex;
  }
  .editor-head > div:last-child button {
    flex: 1;
  }
  .toolstrip span {
    display: flex;
  }
  .toolstrip small {
    display: none;
  }
  .toolstrip button {
    min-width: 94px;
    padding: 8px;
  }
  .toolstrip b {
    font-size: 10px;
  }
}
.road-tools {
  display: flex;
  overflow-x: auto;
  padding-bottom: 4px;
}
.road-tools button {
  min-width: 145px;
}
.road-suggestion {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid #a7d7b5;
  background: #f2fbf5;
  border-radius: 10px;
}
.road-suggestion > p {
  font-size: 12px;
  line-height: 1.55;
  color: #315b3d;
}
.road-suggestion > button {
  width: 100%;
  min-height: 44px;
  margin-top: 7px;
}
.road-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 10px 0;
}
.road-metrics span {
  padding: 9px;
  background: #fff;
  border-radius: 7px;
  font-size: 11px;
}
.road-metrics b {
  display: block;
  margin-top: 4px;
  color: #0757da;
}
.road-suggestion + .edit-message {
  display: none;
}
.save-indicator {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  color: #52705c;
  font-size: 11px;
  margin-left: auto;
}
.save-indicator svg {
  width: 15px;
  height: 15px;
  color: #168547;
}
.save-indicator.error {
  color: #b42318;
}
.save-indicator.error svg {
  color: #b42318;
}
.spin {
  animation: storage-spin 0.8s linear infinite;
}
@keyframes storage-spin {
  to {
    transform: rotate(360deg);
  }
}
.app-loading {
  height: 100vh;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 14px;
  color: #334155;
}
.app-loading span {
  width: 32px;
  height: 32px;
  border: 3px solid #dbeafe;
  border-top-color: var(--blue);
  border-radius: 50%;
  animation: storage-spin 0.8s linear infinite;
}
.settings-page {
  max-width: 1000px;
}
.settings-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 22px;
}
.settings-section > div {
  display: flex;
  align-items: center;
  gap: 14px;
}
.settings-section > div > svg {
  width: 38px;
  height: 38px;
  padding: 9px;
  border-radius: 9px;
  background: #edf4ff;
  color: var(--blue);
}
.settings-section span {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.settings-section small {
  color: #64748b;
  line-height: 1.5;
}
.danger-button {
  color: #b42318 !important;
  border-color: #f3b5ae !important;
  background: #fff8f7 !important;
}
.settings-result {
  color: #166534;
  background: #f0fdf4;
  padding: 12px;
  border-radius: 8px;
}
.settings-error {
  color: #b42318;
}
.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 100;
  background: #10182870;
  display: grid;
  place-items: center;
  padding: 20px;
  animation: modal-in 0.16s ease;
}
.confirm-dialog {
  position: relative;
  width: min(460px, 100%);
  background: #fff;
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 24px 70px #10182835;
}
.confirm-dialog h2 {
  font-size: 20px;
  margin: 12px 0 8px;
}
.confirm-dialog p {
  color: #64748b;
  line-height: 1.55;
  font-size: 13px;
}
.confirm-dialog > div {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 22px;
  flex-wrap: wrap;
}
.dialog-warning {
  width: 38px;
  height: 38px;
  padding: 8px;
  border-radius: 50%;
  color: #b54708;
  background: #fffaeb;
}
.dialog-close {
  position: absolute;
  right: 16px;
  top: 16px;
  padding: 8px;
}
.exit-actions button {
  flex: 1;
  white-space: nowrap;
}
@keyframes modal-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (max-width: 1250px) {
  .save-indicator {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .head-actions button:not(.primary) {
    display: none;
  }
}
@media (max-width: 720px) {
  .topbar {
    padding-top: max(10px, env(safe-area-inset-top));
  }
  .sidebar {
    height: calc(68px + env(safe-area-inset-bottom));
    padding-bottom: max(6px, env(safe-area-inset-bottom));
  }
  .main {
    height: calc(100svh - 68px - env(safe-area-inset-bottom));
  }
  .save-indicator {
    position: fixed;
    right: 12px;
    bottom: calc(76px + env(safe-area-inset-bottom));
    z-index: 20;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 5px 9px;
    max-width: 180px;
    box-shadow: 0 4px 14px #183b681a;
  }
  .editor-head {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 8px;
    flex-wrap: nowrap;
  }
  .editor-head > div:last-child {
    width: auto;
    display: block;
  }
  .editor-head > div:last-child .primary {
    width: 44px;
    height: 44px;
    padding: 0;
    font-size: 0;
  }
  .editor-head h1 {
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .road-tools {
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    padding-bottom: 7px;
  }
  .road-tools button {
    scroll-snap-align: start;
    min-height: 48px;
  }
  .editor-body {
    padding-bottom: calc(190px + env(safe-area-inset-bottom));
  }
  .editor-body .edit-panel {
    position: fixed;
    left: 9px;
    right: 9px;
    bottom: calc(68px + env(safe-area-inset-bottom));
    z-index: 7;
    height: 174px;
    max-height: none;
    overflow: auto;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -12px 30px #183b6820;
    padding: 16px 18px;
  }
  .edit-panel h2 {
    font-size: 18px;
    margin-bottom: 12px;
  }
  .confirm-dialog {
    padding: 22px;
  }
  .confirm-dialog > div {
    flex-direction: column-reverse;
  }
  .confirm-dialog > div button {
    width: 100%;
    min-height: 46px;
  }
  .settings-section {
    align-items: flex-start;
    flex-direction: column;
  }
  .settings-section > button {
    width: 100%;
  }
}
@media (max-width: 720px) {
  .save-indicator {
    bottom: calc(252px + env(safe-area-inset-bottom));
  }
  .editor-head > button {
    gap: 0;
  }
  .editor-head > button svg {
    display: block;
    width: 20px;
    min-width: 20px;
    height: 20px;
    flex: none;
  }
}

.settings-actions {
  display: flex !important;
  gap: 10px;
  flex-wrap: wrap;
}
.backup-settings {
  margin-bottom: 14px;
}
.backup-dialog label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-top: 14px;
  font-size: 12px;
  font-weight: 600;
}
.backup-dialog input {
  min-height: 46px;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 11px 12px;
  outline: none;
}
.backup-dialog input:focus {
  border-color: #76a5f8;
  box-shadow: 0 0 0 3px #dbeafe;
}
.dialog-backup-icon {
  width: 42px;
  height: 42px;
  padding: 9px;
  border-radius: 11px;
  background: #eaf2ff;
  color: var(--blue);
}
.dialog-error {
  color: #b42318 !important;
  background: #fff2f0;
  padding: 10px;
  border-radius: 8px;
}
.backup-summary {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 11px;
  background: #f8fafc;
  border-radius: 10px;
  padding: 14px;
  font-size: 13px;
}
.backup-summary dt {
  color: #64748b;
}
.backup-summary dd {
  margin: 0;
  font-weight: 600;
}
.restore-warning {
  display: flex;
  gap: 9px;
  color: #92400e !important;
  background: #fffbeb;
  padding: 11px;
  border-radius: 9px;
}
.restore-warning svg {
  width: 18px;
  flex: none;
}
.delete-offer-actions {
  flex-wrap: wrap;
}
.mobile-territory-card,
.mobile-editor-actions,
.mobile-tools-head,
.sheet-handle,
.sheet-summary {
  display: none;
}

@media (max-width: 720px), (max-height: 500px) and (orientation: landscape) {
  body:has(.editor-page) .topbar {
    display: none;
  }
  body:has(.editor-page) .main {
    height: calc(100svh - 68px - env(safe-area-inset-bottom));
    overflow: hidden;
  }
  .dashboard {
    padding-bottom: 118px;
  }
  .dashboard .stats {
    display: none;
  }
  .dashboard-grid {
    height: calc(100svh - 98px - env(safe-area-inset-bottom));
  }
  .dashboard .map-card {
    height: 100%;
    min-height: 0;
    border-radius: 12px;
  }
  .dashboard .map-card footer {
    display: none;
  }
  .dashboard .map-legend {
    padding: 9px;
    gap: 6px;
    font-size: 10px;
  }
  .mobile-territory-card {
    display: flex;
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(76px + env(safe-area-inset-bottom));
    z-index: 22;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 15px;
    box-shadow: 0 12px 30px #183b6830;
  }
  .mobile-territory-card div {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }
  .mobile-territory-card span,
  .mobile-territory-card small {
    font-size: 10px;
    color: #64748b;
  }
  .mobile-territory-card b {
    font-size: 15px;
    margin: 2px 0;
  }
  .mobile-territory-card button {
    min-height: 44px;
    white-space: nowrap;
    padding: 10px 12px;
  }
  .editor-page {
    height: 100%;
    position: relative;
  }
  .editor-head {
    height: 56px;
    padding: max(6px, env(safe-area-inset-top)) 8px 6px;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }
  .editor-head h1 {
    font-size: 15px;
  }
  .editor-head > div:last-child {
    visibility: hidden;
  }
  .editor-head > button {
    width: 44px;
    height: 44px;
    padding: 0;
  }
  .editor-body {
    position: absolute;
    inset: 56px 0 0;
    height: auto;
    padding: 0 0 calc(64px + env(safe-area-inset-bottom));
    display: block;
    overflow: hidden;
  }
  .editor-body main {
    height: 100%;
    gap: 0;
  }
  .editor-body .editable-map,
  .editor-body .map {
    min-height: 0;
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .edit-instruction {
    left: 10px;
    right: 10px;
    bottom: 132px;
    text-align: center;
    padding: 7px 10px;
    font-size: 10px;
  }
  .map .maplibregl-ctrl-bottom-left {
    bottom: 128px;
  }
  .save-indicator {
    display: none;
  }
  .road-tools {
    display: none;
    position: fixed;
    left: 8px;
    right: 8px;
    bottom: calc(132px + env(safe-area-inset-bottom));
    z-index: 45;
    max-height: min(64svh, 520px);
    overflow: auto;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 10px;
    box-shadow: 0 -18px 48px #183b6835;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .road-tools.mobile-open {
    display: grid;
  }
  .road-tools .mobile-tools-head {
    display: flex;
    grid-column: 1/-1;
    align-items: center;
    justify-content: space-between;
    padding: 2px 4px 8px;
  }
  .mobile-tools-head button {
    width: 44px;
    height: 44px;
    padding: 0;
  }
  .road-tools button {
    min-width: 0;
    min-height: 52px;
    padding: 8px;
    scroll-snap-align: none;
  }
  .road-tools button span {
    display: flex;
  }
  .road-tools button small {
    display: none;
  }
  .road-tools button b {
    font-size: 11px;
  }
  .editor-body .edit-panel.mobile-sheet {
    display: block;
    position: fixed;
    left: 8px;
    right: 8px;
    bottom: calc(132px + env(safe-area-inset-bottom));
    z-index: 18;
    height: 58px;
    max-height: none;
    overflow: hidden;
    border-radius: 17px 17px 0 0;
    padding: 9px 16px 16px;
    box-shadow: 0 -10px 30px #183b6826;
    transition: height 0.22s ease;
  }
  .editor-body .edit-panel.sheet-mid {
    height: 260px;
    overflow: auto;
  }
  .editor-body .edit-panel.sheet-full {
    height: min(62svh, 540px);
    overflow: auto;
  }
  .sheet-handle {
    display: grid;
    width: 100%;
    height: 18px;
    padding: 0;
    border: 0;
    background: transparent;
  }
  .sheet-handle span {
    width: 42px;
    height: 4px;
    border-radius: 99px;
    background: #cbd5e1;
  }
  .mobile-sheet h2 {
    font-size: 14px;
    margin: 0 !important;
  }
  .sheet-summary {
    display: block;
    margin: 2px 0 10px;
    font-size: 10px;
    color: #64748b;
  }
  .sheet-min dl,
  .sheet-min .edit-message,
  .sheet-min .road-suggestion,
  .sheet-min .edit-help {
    display: none;
  }
  .mobile-sheet dl {
    margin-top: 15px;
    padding: 0;
  }
  .mobile-sheet .edit-message,
  .mobile-sheet .edit-help,
  .mobile-sheet .road-suggestion {
    margin-top: 12px;
  }
  .mobile-editor-actions {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    position: fixed;
    left: 0;
    right: 0;
    bottom: calc(68px + env(safe-area-inset-bottom));
    z-index: 40;
    height: 64px;
    background: #fff;
    border-top: 1px solid var(--line);
    padding: 5px 4px;
  }
  .mobile-editor-actions button {
    min-width: 0;
    min-height: 52px;
    border: 0;
    border-radius: 8px;
    padding: 4px;
    gap: 2px;
    flex-direction: column;
    font-size: 9px;
  }
  .mobile-editor-actions button svg {
    width: 19px;
    height: 19px;
  }
  .mobile-editor-actions button.active {
    color: var(--blue);
    background: #edf4ff;
  }
  .mobile-editor-actions button:disabled {
    opacity: 0.35;
  }
  .mobile-editor-actions .primary {
    border-radius: 10px;
  }
  .settings-actions {
    width: 100%;
    flex-direction: column;
  }
  .settings-actions button {
    width: 100%;
    min-height: 46px;
  }
  .backup-dialog {
    max-height: calc(
      100svh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)
    );
    overflow: auto;
  }
  .backup-dialog label input {
    font-size: 16px;
  }
  .delete-offer-actions {
    flex-direction: column-reverse !important;
  }
}
@media (max-width: 370px) {
  .mobile-editor-actions button span {
    font-size: 8px;
  }
  .mobile-territory-card button {
    font-size: 11px;
  }
  .road-tools {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-height: 500px) and (orientation: landscape) {
  .shell {
    display: block;
  }
  .editor-head {
    height: 52px;
  }
  .editor-body {
    inset: 52px 0 0;
  }
  .editor-body .edit-panel.mobile-sheet {
    left: auto;
    width: 290px;
    bottom: calc(64px + env(safe-area-inset-bottom));
  }
  .mobile-editor-actions {
    bottom: 0;
  }
  .sidebar {
    display: none;
  }
  .main {
    width: 100%;
    height: 100svh !important;
  }
  .road-tools {
    left: auto;
    width: 390px;
    bottom: 64px;
  }
  .edit-instruction {
    bottom: 70px;
  }
  .map .maplibregl-ctrl-bottom-left {
    bottom: 70px;
  }
}

/* Official territory card export */
.territory-card-zone {
  display: block;
}
.territory-card-zone > div {
  max-width: 540px;
  margin: auto;
}
.official-card-teaser {
  aspect-ratio: 3/4;
  border: 1px solid #b8bec8;
  background: #fff;
  padding: 7% 6%;
  font-family: Georgia, serif;
  color: #111;
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 5%;
}
.official-card-teaser > strong {
  font-size: 16px;
}
.official-card-teaser > span {
  text-align: left;
  font-size: 10px;
}
.official-card-teaser > div {
  flex: 1;
  border: 1px solid #adb5c1;
  background: #f2f4f7;
  display: grid;
  place-content: center;
  gap: 8px;
  color: #53627a;
}
.official-card-teaser > div svg {
  margin: auto;
}
.official-card-teaser > div small {
  font-family: Inter, sans-serif;
}
.official-card-teaser > small {
  text-align: left;
}
.export-card-button {
  width: 100%;
  min-height: 48px;
}
.print-modal {
  z-index: 120;
  padding: 18px;
}
.card-export-dialog {
  width: min(980px, 100%);
  max-height: calc(100svh - 36px);
  background: #eef1f4;
  border-radius: 14px;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  box-shadow: 0 24px 80px #10182844;
}
.card-export-dialog > header {
  height: 72px;
  padding: 12px 18px;
  background: #fff;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.card-export-dialog header span {
  font-size: 12px;
  color: #64748b;
}
.card-export-dialog h2 {
  font-size: 19px;
  margin: 4px 0 0;
}
.card-export-dialog header button {
  padding: 9px;
}
.card-preview-stage {
  min-height: 0;
  padding: 22px;
  display: grid;
  place-items: center;
  overflow: auto;
}
.card-preview-stage > img {
  display: block;
  max-width: 100%;
  height: auto;
  max-height: calc(100svh - 215px);
  box-shadow: 0 8px 28px #14223a28;
  background: #fff;
}
.card-export-dialog > footer {
  padding: 12px 18px;
  background: #fff;
  border-top: 1px solid var(--line);
  display: flex;
  align-items: end;
  gap: 10px;
}
.card-export-dialog footer label {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  color: #52627a;
}
.card-export-dialog input {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  color: #111827;
}
.locality-step {
  margin: auto;
  width: min(430px, 100%);
  padding: 42px 28px;
  text-align: center;
}
.locality-step > svg {
  width: 42px;
  height: 42px;
  padding: 9px;
  border-radius: 50%;
  background: #eaf2ff;
  color: var(--blue);
}
.locality-step h3 {
  margin: 14px 0 7px;
}
.locality-step p {
  color: #64748b;
  font-size: 13px;
  line-height: 1.5;
}
.locality-step label {
  display: flex;
  flex-direction: column;
  text-align: left;
  gap: 6px;
  margin: 22px 0;
  font-size: 12px;
}
.locality-step button {
  width: 100%;
  min-height: 46px;
}
.print-error {
  color: #b42318 !important;
}
.print-progress {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #475569;
}
.print-progress.error {
  max-width: 420px;
  flex-direction: column;
  text-align: center;
}
.spinner {
  width: 22px;
  height: 22px;
  border: 3px solid #d7e3f8;
  border-top-color: var(--blue);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 720px) {
  .detail-grid {
    display: block;
  }
  .territory-card-zone {
    margin-top: 12px;
  }
  .print-modal {
    padding: 0;
    align-items: stretch;
  }
  .card-export-dialog {
    height: 100svh;
    max-height: none;
    border-radius: 0;
  }
  .card-export-dialog > header {
    height: 64px;
  }
  .card-preview-stage {
    padding: 12px;
  }
  .card-preview-stage > img {
    max-height: calc(100svh - 205px);
  }
  .card-export-dialog > footer {
    padding: 10px max(12px, env(safe-area-inset-right))
      calc(10px + env(safe-area-inset-bottom))
      max(12px, env(safe-area-inset-left));
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .card-export-dialog footer label {
    grid-column: 1/-1;
  }
  .card-export-dialog footer button {
    min-height: 44px;
    padding: 9px;
  }
  .official-card-teaser {
    max-height: 55svh;
  }
  .detail {
    padding-bottom: 24px;
  }
}

.official-card-teaser {
  aspect-ratio: 1.4142/1;
}
.card-export-dialog > footer select,
.multi-print-controls input {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #fff;
}
.card-export-dialog > footer {
  flex-wrap: wrap;
}
.card-export-dialog > footer label {
  min-width: 155px;
}
.multi-print-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 18px;
}
.multi-print-controls,
.multi-sheet-preview {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 18px;
}
.multi-print-controls > label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font-size: 12px;
}
.territory-checks {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 18px 0;
}
.territory-checks label {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  cursor: pointer;
}
.territory-checks label:has(input:checked) {
  border-color: #76a5f7;
  background: #edf4ff;
  color: var(--blue);
  font-weight: 700;
}
.selection-actions,
.multi-export-actions {
  display: flex;
  gap: 8px;
}
.selection-actions {
  margin-bottom: 10px;
}
.selection-actions button,
.multi-print-controls > .primary {
  flex: 1;
  width: 100%;
}
.print-message {
  font-size: 12px;
  color: #52627a;
  line-height: 1.5;
}
.multi-export-actions {
  flex-direction: column;
  margin-top: 12px;
}
.multi-sheet-preview {
  min-height: 540px;
  background: #e9edf2;
  display: grid;
  place-items: center;
  overflow: auto;
}
.multi-sheet-preview > img {
  max-width: 100%;
  max-height: calc(100vh - 190px);
  box-shadow: 0 8px 30px #10213a28;
}
.multi-sheet-preview > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  color: #64748b;
}
.multi-sheet-preview > div svg {
  width: 42px;
  height: 42px;
}
.multi-sheet-preview > div b {
  color: #24324a;
}
.multi-sheet-preview > div span {
  font-size: 12px;
}
@media (max-width: 850px) {
  .multi-print-layout {
    grid-template-columns: 1fr;
  }
  .multi-sheet-preview {
    min-height: 360px;
  }
  .multi-sheet-preview > img {
    max-height: none;
  }
  .card-export-dialog > footer {
    grid-template-columns: 1fr 1fr;
  }
  .card-export-dialog > footer label {
    grid-column: auto;
  }
  .card-export-dialog > footer button {
    min-height: 44px;
  }
  .card-preview-stage > img {
    max-height: calc(100svh - 275px);
  }
}

@media (max-width: 720px) {
  .dashboard {
    padding-bottom: 178px;
  }
  .mobile-territory-card {
    display: grid;
    grid-template-columns: 1fr;
    bottom: calc(76px + env(safe-area-inset-bottom));
    padding: 10px;
    gap: 8px;
  }
  .mobile-territory-card > div:first-child {
    display: flex;
  }
  .mobile-territory-actions {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
  }
  .mobile-territory-actions button {
    min-width: 0;
    min-height: 46px;
    padding: 5px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 9px;
  }
  .mobile-territory-actions button svg {
    width: 19px;
    height: 19px;
  }
  .mobile-territory-more {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
  }
  .mobile-territory-more button {
    min-height: 44px;
    padding: 8px;
    font-size: 11px;
  }
  .mobile-sheet.sheet-min .road-suggestion {
    display: block;
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(202px + env(safe-area-inset-bottom));
    z-index: 48;
    margin: 0;
    padding: 12px;
    border-radius: 15px;
    box-shadow: 0 -10px 30px #183b6835;
  }
  .mobile-sheet.sheet-min .road-suggestion p {
    margin: 6px 0;
  }
  .mobile-sheet.sheet-min .road-suggestion button {
    display: inline-flex;
    width: calc(50% - 4px);
    min-height: 44px;
    margin: 2px 0;
  }
  .mobile-sheet.sheet-min .road-suggestion button + button {
    margin-left: 4px;
  }
  .mobile-sheet.sheet-min:has(.road-suggestion) {
    background: transparent;
    border: 0;
    box-shadow: none;
    pointer-events: none;
  }
  .mobile-sheet.sheet-min:has(.road-suggestion) .road-suggestion {
    pointer-events: auto;
  }
  .mobile-sheet.sheet-min:has(.road-suggestion) > .sheet-handle,
  .mobile-sheet.sheet-min:has(.road-suggestion) > h2,
  .mobile-sheet.sheet-min:has(.road-suggestion) > .sheet-summary {
    display: none;
  }
}
/* Local import, locality and base-map configuration */
.stat .stat-icon {
  display: grid;
  place-items: center;
  padding: 0;
  line-height: 0;
}
.stat .stat-icon-glyph {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  line-height: 0;
  color: inherit;
}
.stat .stat-icon-glyph svg {
  display: block;
  width: 21px;
  height: 21px;
  transform: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 1100px) and (min-width: 721px) {
  .save-indicator {
    max-width: 220px;
    overflow: visible;
    text-overflow: clip;
  }
  .search {
    max-width: none;
  }
}
@media (max-width: 850px) and (min-width: 721px) {
  .head-actions .primary {
    width: 48px;
    padding: 0;
    font-size: 0;
  }
  .head-actions .primary svg {
    margin: 0;
  }
  .save-indicator {
    max-width: none;
  }
}
.stat-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  line-height: 0;
}
.stat-icon svg {
  display: block;
  width: 21px;
  height: 21px;
  transform: translateY(-0.5px);
  stroke-linecap: round;
  stroke-linejoin: round;
}
.topbar .head-actions {
  margin-left: 0;
}
.save-indicator {
  line-height: 1.25;
}
.save-indicator svg {
  flex: none;
}
.dashboard-grid.inspector-closed {
  grid-template-columns: minmax(0, 1fr);
}
.inspector-head .inspector-close {
  margin-left: auto;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  flex: none;
}
.inspector-head .inspector-close svg {
  width: 19px;
  height: 19px;
  margin: 0;
}
.inspector-head h2 {
  line-height: 1.2;
}
.stat > div {
  min-width: 0;
}
.stat strong {
  line-height: 1.2;
}
.action-stack button svg,
.map-legend svg {
  flex: none;
}
@media (max-width: 720px) {
  .territory-locality > div input {
    flex-basis: 100%;
  }
}
@media (max-width: 720px) {
  .dashboard .map-fit-control {
    right: 10px;
    bottom: 128px;
  }
  .editable-map > .map-fit-control {
    right: 10px;
    bottom: 140px;
  }
  .editor-page:has(.edit-panel.sheet-mid) .editable-map > .map-fit-control {
    bottom: 280px;
  }
  .editor-page:has(.edit-panel.sheet-full) .editable-map > .map-fit-control {
    bottom: min(65svh, 560px);
  }
}

/* The framing action belongs with map navigation, not the page footer. */
.dashboard .map-fit-control {
  top: 12px;
  right: 12px;
  bottom: auto;
}
@media (max-width: 720px) {
  .dashboard .map-fit-control {
    top: 10px;
    right: 10px;
    bottom: auto;
  }
}
.map-workspace-page .dashboard-grid {
  height: calc(100vh - 138px);
  min-height: 0;
}
.map-workspace-page .map-card {
  height: 100%;
  min-height: 0;
}
.map-fit-control {
  color: var(--boundary);
  background: var(--canvas);
  border-color: #c9c5ba;
  border-radius: 8px;
  box-shadow: 0 3px 10px #2528211a;
}
.map-fit-control:hover {
  color: var(--map-green);
  border-color: #8ea18f;
}
.maplibregl-ctrl-group {
  border-radius: 7px !important;
  box-shadow: 0 2px 8px #2528211a !important;
}
.maplibregl-ctrl-group button {
  background-color: var(--canvas) !important;
}
.map-legend {
  background: var(--canvas);
  border-color: var(--line);
  box-shadow: 0 4px 12px #25282114;
}

/* Editor safety, compact GIS tools and map-first workspace */
.map-workspace-page .dashboard-grid {
  min-height: calc(100vh - 122px);
}
.map-workspace-page .map-card {
  min-height: 680px;
}
.editor-head {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #fff;
}
.editor-head h1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
}
.editor-dirty-state {
  font-size: 10px;
  font-weight: 500;
  color: var(--muted);
}
.road-tools {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  overflow: visible;
  gap: 6px;
  padding: 6px;
}
.road-tools button {
  min-width: 0;
  min-height: 48px;
  padding: 6px 7px;
  justify-content: center;
}
.road-tools button > span {
  min-width: 0;
}
.road-tools button b {
  font-size: 10px;
  white-space: nowrap;
}
.road-tools button small {
  display: none;
}
.editor-locality {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: end;
}
.editor-locality label {
  min-width: 0;
}
.editor-locality > button {
  height: 42px;
}
.editor-locality > button svg {
  width: 16px;
}
.editor-locality .locality-suggestion {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 7px;
  margin: 0;
}
.editor-locality .locality-suggestion span {
  display: block;
}
.editor-locality .locality-suggestion small {
  display: block;
  margin-top: 4px;
}
.mixed-save-actions {
  align-items: stretch;
}
.mixed-save-actions button {
  white-space: normal;
}
.geographic-settings {
  margin-bottom: 14px;
}
.detail-head > div:last-child {
  display: flex;
  gap: 8px;
}
.mobile-territory-actions .primary,
.mobile-territory-actions .primary span,
.mobile-territory-actions .primary svg,
.mobile-editor-actions .primary,
.mobile-editor-actions .primary span,
.mobile-editor-actions .primary svg {
  color: #fff !important;
}
@media (max-width: 1100px) and (min-width: 721px) {
  .road-tools {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .map-workspace-page .map-card {
    min-height: 620px;
  }
}
@media (max-width: 720px) {
  .map-workspace-page .dashboard-grid {
    min-height: 0;
  }
  .map-workspace-page .map-card {
    min-height: 0;
  }
  .editor-locality {
    grid-template-columns: 1fr;
  }
  .editor-locality > button,
  .editor-locality .locality-suggestion {
    grid-column: 1;
  }
  .editor-locality .locality-suggestion {
    grid-template-columns: 1fr 1fr;
  }
  .editor-locality .locality-suggestion span {
    grid-column: 1/-1;
  }
  .editor-head h1 {
    gap: 1px;
  }
  .editor-dirty-state {
    font-size: 8px;
  }
  .detail-head > div:last-child {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .geographic-settings .settings-actions {
    display: grid !important;
    grid-template-columns: 1fr;
  }
  .road-tools {
    display: none;
  }
}
.import-drop {
  min-height: 420px;
  border: 1px dashed #9bb7e8;
  background: #fff;
  display: grid;
  place-content: center;
  text-align: center;
  justify-items: center;
  border-radius: 14px;
  padding: 36px;
}
.import-drop > svg {
  width: 56px;
  height: 56px;
  color: var(--blue);
  background: #eaf2ff;
  padding: 14px;
  border-radius: 14px;
}
.import-drop p,
.import-summary small,
.import-destination small,
.provider-grid small,
.settings-heading small,
.boundary-offer small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.import-summary,
.import-destination,
.boundary-offer,
.import-footer,
.map-provider-settings {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.import-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 18px;
  margin-bottom: 14px;
}
.import-summary > div,
.settings-heading,
.boundary-offer {
  display: flex;
  align-items: center;
  gap: 12px;
}
.import-summary svg,
.settings-heading > svg {
  color: var(--blue);
}
.import-summary span {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.import-destination {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 8px;
  margin-bottom: 14px;
}
.import-destination label {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid transparent;
  border-radius: 9px;
}
.import-destination label.selected {
  border-color: #8fb5fb;
  background: #f5f9ff;
}
.import-review {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
}
.import-review header,
.import-review article {
  display: grid;
  grid-template-columns: 60px minmax(180px, 1.2fr) 110px minmax(220px, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
}
.import-review header {
  font-size: 11px;
  color: var(--muted);
  background: #f8fafc;
  border-bottom: 1px solid var(--line);
}
.import-review article {
  border-bottom: 1px solid var(--line);
}
.import-review article.invalid {
  background: #fff9f7;
}
.import-review input[type="text"],
.import-review input:not([type]),
.import-review input[type="number"],
.territory-locality input,
.google-key input {
  width: 100%;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.import-review article > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.import-review article > div small {
  width: 100%;
  color: #b45309;
}
.import-ok,
.import-warning {
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 5px;
}
.import-ok {
  color: #168547;
}
.import-warning {
  color: #c2410c;
}
.import-ok svg,
.import-warning svg {
  width: 16px;
}
.boundary-offer {
  padding: 14px;
  margin-top: 14px;
}
.import-footer {
  position: sticky;
  bottom: 12px;
  margin-top: 14px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  box-shadow: 0 10px 30px #1e3a5f18;
}
.import-footer span {
  margin-right: auto;
  color: var(--muted);
  font-size: 13px;
}
.territory-locality {
  padding: 14px !important;
}
.territory-locality > div {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.territory-locality > div input {
  flex: 1;
}
.territory-locality > small {
  display: block;
  margin-top: 10px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
}
.locality-suggestion {
  margin-top: 12px;
  padding: 10px;
  background: #eef6ff;
  border-radius: 9px;
  align-items: center;
}
.locality-suggestion span {
  flex: 1;
}
.locality-suggestion small {
  width: 100%;
  color: var(--muted);
}
.map-provider-settings {
  padding: 20px;
  margin-bottom: 16px;
}
.provider-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 18px 0;
}
.provider-grid button {
  position: relative;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  text-align: left;
  min-height: 150px;
}
.provider-grid button.selected {
  border-color: #6d9ff4;
  background: #f6f9ff;
}
.provider-grid em {
  position: absolute;
  right: 10px;
  top: 10px;
  color: var(--blue);
  font-size: 10px;
  font-style: normal;
}
.provider-preview {
  height: 58px;
  width: 100%;
  border-radius: 7px;
  background-color: #edf1ea;
  background-image:
    linear-gradient(25deg, transparent 48%, #fff 49% 54%, transparent 55%),
    linear-gradient(100deg, transparent 42%, #b8d1f8 43% 45%, transparent 46%);
}
.provider-openstreetmap {
  filter: saturate(0.65);
}
.provider-google {
  filter: grayscale(1);
  opacity: 0.5;
}
.google-key {
  display: flex;
  align-items: end;
  gap: 8px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}
.google-key label {
  flex: 1;
  font-size: 12px;
}
.provider-note {
  font-size: 11px;
  color: var(--muted);
  margin-top: 15px;
}
.settings-heading span {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 720px) {
  .import-page .page-title {
    align-items: flex-start;
  }
  .import-destination {
    grid-template-columns: 1fr;
  }
  .import-review {
    overflow: visible;
    border: 0;
    background: transparent;
  }
  .import-review header {
    display: none;
  }
  .import-review article {
    grid-template-columns: 34px 1fr 80px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 10px;
    margin-bottom: 10px;
    padding: 12px;
  }
  .import-review article > div {
    grid-column: 2/4;
  }
  .import-footer {
    bottom: 4px;
  }
  .import-footer span {
    display: none;
  }
  .provider-grid {
    grid-template-columns: 1fr;
  }
  .google-key {
    align-items: stretch;
    flex-direction: column;
  }
  .territory-locality > div button {
    flex: 1;
  }
  .import-drop {
    min-height: 55vh;
    padding: 22px;
  }
}

/* Keep map guidance clear of native and custom controls. */
.editable-map > .edit-instruction {
  left: 64px;
  right: 72px;
  width: max-content;
  max-width: calc(100% - 136px);
  margin-inline: auto;
  line-height: 1.35;
  text-align: center;
}
@media (min-width: 721px) {
  .editable-map > .edit-instruction {
    top: 12px;
    bottom: auto;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    max-width: calc(100% - 180px);
    color: var(--map-green);
    border-color: #b9c8b6;
    background: var(--canvas);
  }
}
.road-tools button {
  min-width: 0;
  min-height: 54px;
  padding: 6px 4px;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  overflow: visible;
}
.road-tools button > svg {
  width: 17px;
  height: 17px;
  flex: none;
}
.road-tools button > span {
  min-width: 0;
  width: 100%;
  justify-content: center;
}
.road-tools button b {
  display: block;
  width: 100%;
  font-size: 9.5px;
  line-height: 1.15;
  white-space: nowrap;
  text-align: center;
}
@media (max-width: 720px) {
  .editable-map > .edit-instruction {
    left: 60px;
    right: 60px;
    bottom: 140px;
    width: auto;
    max-width: none;
    margin: 0;
    padding: 7px 9px;
    font-size: 10px;
    line-height: 1.3;
  }
  .road-tools button {
    min-height: 52px;
    flex-direction: row;
  }
  .road-tools button > span {
    width: auto;
  }
  .road-tools button b {
    font-size: 11px;
    text-align: left;
  }
}

/* Configurable base-map providers */
.map-provider-error {
  position: absolute;
  z-index: 8;
  top: 12px;
  left: 50%;
  transform: translateX(-50%);
  max-width: min(520px, calc(100% - 28px));
  padding: 10px 14px;
  border: 1px solid #fecaca;
  border-radius: 10px;
  background: #fff7f7;
  color: #b42318;
  font-size: 12px;
  box-shadow: 0 8px 24px #4a152018;
}
.maptoolkit-attribution-logo {
  position: absolute;
  z-index: 7;
  top: 10px;
  right: 10px;
  display: block;
  height: 24px;
  line-height: 0;
}
.maptoolkit-attribution-logo img {
  display: block;
  width: auto;
  height: 24px;
  max-width: 160px;
  object-fit: contain;
}
.provider-explanation {
  margin-top: 16px;
  padding: 12px 14px;
  border-radius: 9px;
  background: #f5f8fc;
  color: #41536d;
  font-size: 12px;
  line-height: 1.55;
}
.provider-group {
  margin-top: 22px;
}
.provider-group > header {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.provider-group > header small {
  color: var(--muted);
  font-size: 11px;
}
.provider-title {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.provider-title i {
  padding: 3px 6px;
  border-radius: 99px;
  font-size: 9px;
  font-style: normal;
  white-space: nowrap;
}
.provider-title .configured {
  color: #166534;
  background: #dcfce7;
}
.provider-title .unconfigured {
  color: #9a3412;
  background: #ffedd5;
}
.provider-update {
  color: #166534 !important;
}
.provider-maptoolkit {
  background-color: #dcebd9;
  background-image:
    linear-gradient(25deg, transparent 47%, #fff 48% 54%, transparent 55%),
    linear-gradient(100deg, transparent 43%, #8ac39a 44% 46%, transparent 47%);
}
.provider-maptiler-streets {
  background-color: #e7edf5;
  background-image:
    linear-gradient(35deg, transparent 46%, #fff 47% 54%, transparent 55%),
    linear-gradient(110deg, transparent 40%, #7eb0e9 41% 44%, transparent 45%);
}
.provider-stadia-osm {
  background-color: #f0eadf;
  background-image:
    linear-gradient(18deg, transparent 47%, #fff 48% 54%, transparent 55%),
    linear-gradient(95deg, transparent 42%, #d99a65 43% 46%, transparent 47%);
}
.provider-stadia-satellite {
  background-color: #3d5f4e;
  background-image:
    radial-gradient(circle at 28% 30%, #718e5b 0 16%, transparent 17%),
    linear-gradient(25deg, transparent 47%, #d8d4ba 48% 51%, transparent 52%);
}
.provider-keys {
  margin-top: 24px;
  border-top: 1px solid var(--line);
  padding-top: 18px;
}
.provider-keys h3 {
  margin: 0 0 4px;
}
.provider-keys > p {
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 11px;
}
.provider-key-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: end;
  margin-top: 10px;
}
.provider-key-row label {
  font-size: 11px;
}
.provider-key-row input {
  display: block;
  width: 100%;
  min-height: 42px;
  margin-top: 5px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px 11px;
}
.provider-key-row button {
  min-height: 42px;
}
@media (max-width: 720px) {
  .provider-key-row {
    grid-template-columns: 1fr 1fr;
  }
  .provider-key-row label {
    grid-column: 1/-1;
  }
  .provider-grid {
    grid-template-columns: 1fr;
  }
  .map-provider-error {
    top: 8px;
  }
}
.provider-keys {
  scroll-margin-block: 24px;
}
.provider-key-row {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
}
.provider-key-help {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 4px;
  color: var(--blue);
  font-size: 11px;
  white-space: nowrap;
}
.provider-key-help svg,
.settings-error a svg {
  width: 13px;
  height: 13px;
}
.settings-error a {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
}
@media (max-width: 720px) {
  .provider-key-row {
    grid-template-columns: 1fr 1fr;
  }
  .provider-key-help {
    justify-self: start;
  }
}

/* iPad and intermediate-width responsive polish */
.tablet-save-action {
  display: none;
}
.provider-attribution {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0 3px;
}
.provider-attribution a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.provider-attribution a:hover {
  color: var(--blue);
}
.provider-grid .provider-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  min-height: 150px;
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  color: #14223a;
  text-align: left;
  cursor: pointer;
  transition: 0.18s ease;
}
.provider-grid .provider-card:hover,
.provider-grid .provider-card:focus-visible {
  border-color: #9cbcf5;
  background: #f8fbff;
  outline: none;
}
.provider-grid .provider-card.selected {
  border-color: #6d9ff4;
  background: #f6f9ff;
}
.provider-grid .provider-card.disabled {
  cursor: not-allowed;
  opacity: 0.55;
}
.provider-grid .provider-card a {
  position: relative;
  z-index: 2;
}
.editor-locality label {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin: 0;
}
@media (max-width: 1100px) and (min-width: 721px) {
  .sidebar {
    overflow: hidden;
    min-width: 0;
    padding-inline: 10px;
  }
  .sidebar > .brand {
    justify-content: center;
    gap: 0;
    padding: 0;
    width: 100%;
    overflow: hidden;
  }
  .sidebar > .brand > div:last-child {
    display: none;
  }
  .sidebar .brand-mark {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
  }
  .sidebar nav {
    width: 100%;
    overflow: hidden;
  }
  .sidebar nav a {
    width: 100%;
    gap: 0;
    overflow: hidden;
    white-space: nowrap;
  }
  .sidebar nav a svg {
    flex: 0 0 22px;
    margin: 0;
  }
  .topbar .search {
    max-width: min(390px, 42vw);
  }
  .topbar .save-indicator {
    font-size: 9px;
    white-space: nowrap;
    flex: none;
  }
  .editor-body {
    grid-template-columns: minmax(0, 1fr) 300px;
    overflow: hidden;
    padding-bottom: 82px;
  }
  .editor-body main {
    min-height: 0;
  }
  .editor-body .edit-panel {
    display: block;
    max-height: none;
    min-width: 0;
    overflow: auto;
  }
  .editor-body .editable-map {
    min-height: 0;
    flex: 1;
  }
  .editor-locality {
    grid-template-columns: 1fr;
  }
  .editor-locality > button {
    grid-column: 1;
    width: 100%;
  }
  .tablet-save-action {
    position: fixed;
    display: inline-flex;
    right: max(20px, env(safe-area-inset-right));
    bottom: max(18px, env(safe-area-inset-bottom));
    z-index: 75;
    min-height: 48px;
    padding-inline: 20px;
    box-shadow: 0 10px 28px #0b3d8f35;
  }
  .card-export-dialog > footer {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) repeat(3, auto);
    align-items: end;
  }
  .card-export-dialog > footer label {
    min-width: 0;
  }
  .card-export-dialog > footer button {
    min-height: 44px;
    white-space: normal;
  }
}
@media (max-width: 900px) and (min-width: 721px) {
  .editor-page {
    height: auto;
    min-height: 100%;
  }
  .editor-body {
    height: auto;
    min-height: calc(100svh - 86px);
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    overflow: visible;
  }
  .editor-body main {
    min-height: 590px;
  }
  .editor-body .editable-map {
    min-height: 500px;
  }
  .editor-body .edit-panel {
    overflow: visible;
    padding: 22px;
  }
  .edit-panel label {
    grid-template-columns: minmax(120px, 1fr) minmax(180px, 280px);
  }
  .editor-locality {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .editor-locality > button {
    grid-column: auto;
    width: auto;
  }
  .editor-locality label {
    display: flex;
  }
  .card-export-dialog {
    max-height: calc(100svh - 24px);
  }
  .card-preview-stage {
    padding: 14px;
  }
  .card-export-dialog > footer {
    grid-template-columns: 1fr 1fr;
  }
  .card-export-dialog > footer label {
    grid-column: 1/-1;
  }
  .card-export-dialog > footer button {
    width: 100%;
  }
  .provider-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .provider-key-row {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }
  .provider-key-help {
    grid-column: 1;
    justify-self: start;
    min-height: 30px;
  }
  .provider-key-row > .primary {
    grid-column: 2;
  }
  .provider-key-row > button:last-child {
    grid-column: 3;
  }
}
@media (max-width: 720px) {
  .tablet-save-action {
    display: none;
  }
  .provider-attribution {
    line-height: 1.45;
  }
}
/* Warm cartographic interaction states; blue is reserved for base-map content. */
.vertex-handle {
  border-color: transparent !important;
}
.vertex-handle::before { border-color: #54735a; }
.midpoint-handle {
  background: transparent !important;
}
.midpoint-handle::before { background: #d8b45c; }
.edit-help,
.provider-explanation {
  background: #e8eee4;
  color: #415d47;
  border-color: #b9c8b6;
}
.toolstrip button.active,
.map-toolbar button.active {
  border-color: #91aa94;
  background: #e4eadf;
  color: #54735a;
}
.map-fit-control {
  color: #343a32;
  background: #fcfaf4;
}
.map-provider-error {
  border-color: #dba29b;
  background: #fff8f5;
  color: #8a3d31;
}
/* Reporting, locality gating and warm cartographic state polish. */
.card-preview-stage { position: relative; }
.card-preview-stage > .print-progress { position: absolute; inset: 22px; z-index: 5; justify-content: center; background: #eef1f4cc; backdrop-filter: blur(2px); }
.interactive-card-preview{position:relative;width:min(100%,860px);aspect-ratio:1754/1240;flex:none;background:var(--canvas);box-shadow:0 8px 28px #14223a28;touch-action:pan-y}.interactive-card-preview>img{position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none;user-select:none}.interactive-card-map{position:absolute;z-index:1;left:7.5827%;top:25.9677%;width:84.8347%;height:47.0968%;overflow:hidden;background:#eef0e8;touch-action:none}.interactive-card-map-canvas{width:744px;height:292px;transform-origin:top left}.interactive-card-reset{position:absolute;z-index:4;left:calc(7.5827% + 10px);bottom:calc(26.9355% + 10px);min-height:38px;padding:7px 10px;background:#fcfaf4ef;box-shadow:0 2px 9px #25282122}.interactive-card-reset svg{width:16px;height:16px}.interactive-card-zoom{position:absolute;z-index:4;right:calc(7.5827% + 10px);top:calc(25.9677% + 10px);display:grid;border-radius:7px;overflow:hidden;box-shadow:0 2px 9px #25282122}.interactive-card-zoom button{width:44px;height:44px;padding:10px;border-radius:0;background:#fcfaf4ef}.interactive-card-zoom button+button{border-top:0}.card-preview-stage:has(.interactive-card-preview){display:flex;align-items:flex-start;justify-content:center}
.locality-configurator {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  text-align: left;
}
.locality-configurator > header{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:14px}.locality-configurator-icon{width:52px;height:52px;display:grid;place-items:center;overflow:visible;border-radius:50%;color:var(--map-green);background:#e4eadf}.locality-configurator-icon svg{display:block;width:24px;height:24px;overflow:visible;stroke-width:1.8}.locality-configurator header h3,.locality-configurator header p{margin:0;text-align:left}.locality-configurator header h3{margin-bottom:4px}.locality-configurator header p{color:var(--muted);line-height:1.45}
/* legacy direct icon rule retained only for older dialogs */
.locality-configurator > svg {
  width: 48px;
  height: 48px;
  padding: 12px;
  margin: 0;
  border-radius: 50%;
  color: var(--map-green);
  background: #e4eadf;
}
.locality-configurator-body {
  display: grid;
  gap: 12px;
}
.locality-configurator-body label {
  display: grid;
  gap: 6px;
  width: 100%;
}
.locality-configurator-body label input { width: 100%; min-height: 44px; }
.locality-configurator-body > button {
  width: 100%;
  min-height: 44px;
}
.locality-configurator-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.locality-configurator-actions button {
  min-width: 150px;
  min-height: 44px;
}
.locality-configurator .locality-suggestion {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: #eef1e9;
  border: 1px solid #c8d2c2;
  border-radius: 8px;
}
.locality-suggestion > span { display: grid; gap: 2px; min-width: 0; }
.locality-suggestion small { color: var(--muted); }
.locality-suggestion strong { overflow: hidden; text-overflow: ellipsis; }
.locality-suggestion button { min-height: 36px; padding: 7px 11px; white-space: nowrap; }
.territory-locality > .locality-configurator {
  display: grid;
  width: 100%;
  gap: 18px;
}
.territory-locality .locality-configurator-body,
.territory-locality .locality-configurator-body label,
.territory-locality .locality-configurator-body input,
.territory-locality .locality-configurator-body > button {
  width: 100%;
  min-width: 0;
}
.territory-locality .locality-configurator-actions {
  display: flex;
  width: 100%;
  justify-content: flex-end;
}
.reporting-settings input {
  min-height: 44px;
  min-width: 240px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--canvas);
}
.territory-workflow > div {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.territory-event-list {
  display: grid;
  gap: 9px;
  padding: 0;
  list-style: none;
}
.territory-event-list li {
  display: flex;
  gap: 10px;
}
.territory-event-list svg {
  width: 18px;
  color: var(--map-green);
}
.territory-event-list span {
  display: grid;
}
.territory-event-list small {
  color: var(--muted);
}
.report-confirm-card {
  margin: auto;
  text-align: center;
}
.report-confirm-card > svg {
  color: var(--map-green);
}
.settings-section > div > svg,
.dialog-backup-icon,
.locality-step > svg {
  background: #e4eadf;
  color: var(--map-green);
}
.header-search kbd {
  color: var(--map-green);
  background: #eef1e9;
  border-color: #c8d2c2;
}
.map-user-location {
  background: var(--map-green);
  box-shadow:
    0 0 0 8px #54735a33,
    0 2px 8px #0004;
}
.meeting-point-marker{display:flex;align-items:center;gap:6px;width:max-content;max-width:220px;padding:4px 8px 4px 5px;border:1px solid #fcfaf4;border-radius:999px;background:#fcfaf4eF;color:var(--ink);box-shadow:0 2px 8px #25282133;font-size:11px;line-height:1.15;white-space:nowrap;cursor:pointer}.meeting-point-marker>span{width:11px;height:11px;flex:none;border:2px solid #fcfaf4;border-radius:50%;background:var(--pin-red);box-shadow:0 0 0 1px var(--pin-red)}.meeting-point-marker.inactive{opacity:.6}.meeting-point-marker.inactive>span{background:var(--muted);box-shadow:0 0 0 1px var(--muted)}.meeting-point-marker b{overflow:hidden;max-width:178px;text-overflow:ellipsis}.meeting-point-marker.dragging{cursor:grabbing;box-shadow:0 5px 16px #25282155}.meeting-point-draft-note{margin:0;padding:9px 10px;border-radius:7px;background:#f3eee2;color:var(--muted);font-size:12px}
.shared-location-action {
  position: absolute;
  z-index: 4;
  display: flex;
  gap: 10px;
}
.shared-location-action { left: 16px; bottom: max(18px, env(safe-area-inset-bottom)); align-items: flex-end; }
.shared-report-actions { position:fixed;z-index:7;right:max(14px,env(safe-area-inset-right));top:max(88px,calc(76px + env(safe-area-inset-top)));display:flex;gap:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--canvas) 96%,transparent);box-shadow:0 8px 24px #25282122; }
.shared-location-action button,
.shared-report-actions button {
  min-height: 44px;
  background: var(--canvas);
  box-shadow: 0 3px 12px #25282128;
  color: var(--ink);
  border-color: #cfcabe;
}
.shared-reporting-diagnostics{position:absolute;z-index:8;right:max(12px,env(safe-area-inset-right));top:82px;display:grid;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--canvas) 94%,transparent);box-shadow:var(--shadow-sm);font:11px/1.35 monospace;color:var(--ink)}
.shared-location-action span { max-width: 280px; padding: 9px 12px; border-radius: 8px; background: var(--canvas); box-shadow: 0 3px 12px #25282120; font-size: 13px; }
.spinner,
.app-loading span {
  border-color: #dfe5da;
  border-top-color: var(--map-green);
}
@media (max-width: 700px) {
  .shared-location-action { right: 76px; left: 12px; bottom: max(12px, env(safe-area-inset-bottom)); flex-wrap: wrap; }
  .shared-location-action span { order: -1; flex-basis: 100%; max-width: min(100%, 320px); }
  .reporting-settings {
    align-items: stretch;
  }
  .reporting-settings .settings-actions {
    width: 100%;
  }
  .reporting-settings input {
    min-width: 0;
    flex: 1;
  }
  .locality-configurator-actions {
    background: var(--canvas);
    padding-top: 12px;
  }
  .card-preview-stage{padding:8px}.interactive-card-preview{width:100%}.interactive-card-reset{min-width:44px;min-height:44px;padding:8px}.interactive-card-reset span{display:none}.interactive-card-map .maplibregl-ctrl-group button{width:40px;height:40px}.card-export-dialog>footer{grid-template-columns:1fr 1fr}.card-export-dialog>footer label{grid-column:1/-1}.card-export-dialog>footer button{width:100%}
}
@media (max-width: 480px) {
  .shared-report-actions { display:grid;grid-template-columns:1fr 1fr;left:auto;right:12px;top:max(82px,calc(72px + env(safe-area-inset-top)));width:min(270px,calc(100vw - 84px));padding:7px; }
  .shared-report-actions button { min-width: 0; padding-inline: 9px; font-size: 13px; }
  .locality-configurator > header { grid-template-columns: 40px minmax(0, 1fr); gap: 10px; }
  .locality-configurator-icon { width: 40px; height: 40px; }
  .locality-configurator .locality-suggestion { grid-template-columns: 1fr; }
  .locality-suggestion button { width: 100%; }
  .locality-configurator-actions { display: grid; grid-template-columns: 1fr; }
  .locality-configurator-actions button { min-width: 0; width: 100%; }
  .territory-locality .locality-configurator-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.shared-view{grid-template-rows:auto minmax(0,1fr)}.shared-map{overflow:hidden}.shared-map .maplibregl-ctrl-top-left{margin-top:max(4px,env(safe-area-inset-top));margin-left:max(4px,env(safe-area-inset-left))}.shared-map .map-fit-control{right:max(12px,env(safe-area-inset-right));bottom:max(56px,calc(12px + env(safe-area-inset-bottom)))}

/* Reusable map style control */
.map-style-switcher{position:relative;z-index:8}.map-style-floating{position:absolute;top:64px;right:12px}.map-style-trigger{min-width:44px;min-height:44px;padding:10px;background:var(--canvas);border-color:#c9c5ba;box-shadow:0 3px 10px #2528211a}.map-style-floating .map-style-trigger span{display:none}.map-style-scrim{position:fixed;inset:0;z-index:80;border:0;border-radius:0;background:transparent}.map-style-menu{position:absolute;z-index:81;top:calc(100% + 8px);right:0;width:min(330px,calc(100vw - 28px));padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);box-shadow:0 18px 45px #2528212b}.map-style-menu>header{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:10px}.map-style-menu>header div{display:grid;gap:3px}.map-style-menu>header small,.map-style-menu button small{color:var(--muted)}.map-style-menu>header button{width:40px;height:40px;padding:0}.map-style-menu>div{display:grid;gap:6px}.map-style-menu>div>button{display:grid;grid-template-columns:52px minmax(0,1fr) 20px;align-items:center;text-align:left;padding:8px}.map-style-menu>div>button>span{display:grid;gap:2px}.map-style-menu>div>button>svg{width:18px}.map-style-menu>div>button.selected{border-color:var(--map-green);background:#eef1e9}.map-style-menu .provider-preview{width:52px;height:38px;border-radius:6px}.card-map-style-switcher{position:absolute;z-index:12;top:12px;left:12px}.card-map-style-switcher .map-style-trigger span{display:inline}.card-map-style-switcher .map-style-menu{left:0;right:auto}

/* Territory detail composition */
.detail .detail-head>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.detail .subtabs{gap:4px}.detail-grid{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start}.detail-info{gap:10px}.detail-info>section{box-shadow:none}.territory-map-section{padding:0!important;overflow:hidden}.territory-map-section>h3{padding:14px 16px 0}.territory-detail-map{height:360px;margin-top:12px}.territory-metrics-band{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:14px 16px;gap:14px;border-top:1px solid var(--line)}.territory-metrics-band>div{display:grid;gap:5px;min-width:0}.territory-metrics-band dt{font-size:11px;color:var(--muted)}.territory-metrics-band dd{margin:0;font-weight:600;overflow-wrap:anywhere}.workflow-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;margin:0 -14px 14px}.workflow-summary span{display:grid;gap:5px;padding:12px 14px;border-right:1px solid var(--line);font-size:11px;color:var(--muted)}.workflow-summary span:last-child{border:0}.workflow-summary strong{font-size:14px;color:var(--ink)}.workflow-actions{display:flex;gap:8px;flex-wrap:wrap}.workflow-actions button{flex:1;min-width:150px}.territory-locality-compact{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px!important}.territory-locality-compact>div{display:flex;align-items:center;gap:9px;min-width:0}.territory-locality-compact>div:first-child span{color:var(--muted);font-size:12px}.territory-locality-compact>div:first-child b{overflow:hidden;text-overflow:ellipsis}.territory-locality-compact svg{width:18px;color:var(--map-green)}.territory-recent-history{position:relative}.history-link{margin-left:auto;border:0;color:var(--map-green);padding-inline:0}.territory-card-zone{position:sticky;top:104px;padding:14px}.territory-card-zone>div{max-width:none}.territory-card-zone .official-card-teaser{max-height:520px}.territory-card-zone button{width:100%}

@media(max-width:1000px){.detail-grid{grid-template-columns:1fr}.territory-card-zone{position:static}.territory-card-zone>div{max-width:560px}.territory-metrics-band{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.detail{padding-inline:12px}.detail .detail-head{align-items:flex-start;gap:12px}.detail .detail-head>div:last-child{width:100%;justify-content:stretch}.detail .detail-head>div:last-child button{flex:1;min-width:130px}.territory-detail-map{height:300px}.territory-metrics-band{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.workflow-summary{grid-template-columns:1fr;margin-inline:-14px}.workflow-summary span{border-right:0;border-bottom:1px solid var(--line)}.territory-locality-compact{align-items:stretch;flex-direction:column}.territory-locality-compact>div:last-child{display:grid;grid-template-columns:1fr 1fr}.territory-locality-compact button{min-width:0}.map-style-menu{position:fixed;left:10px!important;right:10px!important;top:auto!important;bottom:max(10px,env(safe-area-inset-bottom));width:auto;max-height:min(72svh,560px);overflow:auto;border-radius:18px}.map-style-floating{top:62px;right:10px}.card-map-style-switcher .map-style-trigger span{display:none}}

/* Detail navigation keeps one clear list return and a distinct map action. */
.detail-head .detail-back,
.detail-head .detail-edit,
.detail-head .detail-map-action { white-space: nowrap; }
.detail-head .detail-back svg,
.detail-head .detail-map-action svg { flex: 0 0 auto; }
@media (max-width: 720px) {
  .detail .detail-head > div:last-child { justify-content: flex-start; align-items: center; }
  .detail .detail-head > div:last-child button { flex: 0 0 auto; min-width: 0; }
  .detail .detail-head > div:last-child .detail-back { flex: 1 1 auto; }
  .detail .detail-head > div:last-child .detail-map-action { flex: 1 1 auto; }
  .detail .detail-head > div:last-child .detail-edit { width: 44px; height: 44px; padding: 10px; }
  .detail .detail-head > div:last-child .detail-edit .detail-action-label { display: none; }
  .detail .detail-head > div:last-child .detail-back,
  .detail .detail-head > div:last-child .detail-map-action { font-size: 12px; }
}
@media (max-width: 380px) {
  .detail .detail-head > div:last-child .detail-back .detail-action-label { display: none; }
  .detail .detail-head > div:last-child .detail-back { width: 44px; flex: 0 0 44px; }
  .detail .detail-head > div:last-child .detail-map-action .detail-action-label { display: none; }
  .detail .detail-head > div:last-child .detail-map-action { width: 44px; flex: 0 0 44px; }
}

/* Detail actions are one compact, always-visible row. */
.detail-heading { min-width: 0; }
.detail-breadcrumb { display: flex; align-items: center; gap: 8px; min-height: 30px; }
.detail-breadcrumb .detail-back { border: 0; background: transparent; padding: 4px 0; color: var(--map-green); font-size: 13px; }
.detail-breadcrumb .detail-back:hover { background: transparent; border-color: transparent; text-decoration: underline; }
.detail-actions,
.detail .detail-head > .detail-actions { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 8px; width: min(100%, 560px); margin-left: auto; }
.detail-actions > button { width: auto !important; height: auto; min-width: 0; min-height: 44px; flex: initial !important; justify-content: center; white-space: nowrap; }
.detail-actions .detail-delete { color: var(--danger, #a13f36); border-color: color-mix(in srgb, var(--danger, #a13f36) 38%, var(--line)); }

/* Keep export controls inside the preview and let the mobile dialog size to its content. */
.card-preview-tools { position: absolute; z-index: 12; top: 10px; left: 10px; right: 10px; display: flex; align-items: flex-start; gap: 8px; pointer-events: none; }
.card-preview-tools > * { position: static !important; pointer-events: auto; }
.card-preview-tools .map-style-trigger,
.card-preview-tools .polygon-style-trigger { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; padding: 0; gap: 0; }
.card-preview-tools .map-style-trigger span,
.card-preview-tools .polygon-style-trigger span { display: none; }
.card-preview-tools .map-style-trigger svg,
.card-preview-tools .polygon-style-trigger svg { width: 18px; height: 18px; margin: 0; }
.polygon-style-panel > header > button { display: flex; align-items: center; justify-content: center; gap: 0; width: 40px; height: 40px; padding: 0; }
.map-style-portal-scrim { position: fixed !important; inset: 0 !important; z-index: 13000 !important; background: #17211766 !important; }
.map-style-portal-panel,
.polygon-style-portal-panel { position: fixed !important; z-index: 13001 !important; top: var(--overlay-top) !important; left: var(--overlay-left) !important; right: auto !important; }
@media (max-width: 720px) {
  .map-style-portal-panel,
  .polygon-style-portal-panel { top: auto !important; right: max(10px, env(safe-area-inset-right)) !important; bottom: max(10px, env(safe-area-inset-bottom)) !important; left: max(10px, env(safe-area-inset-left)) !important; width: auto !important; max-height: min(78svh, 620px); overflow: auto; }
}
@media (max-width: 720px) {
  .card-export-dialog { height: auto; max-height: 100svh; align-self: start; overflow: auto; grid-template-rows: auto auto auto; }
  .card-preview-stage { display: flex !important; justify-content: center !important; align-self: start; height: auto !important; min-height: 0 !important; max-height: none; padding: 0 8px 8px !important; align-items: flex-start !important; }
  .card-export-dialog > footer { grid-template-columns: 1fr; }
  .card-export-dialog > footer button { width: 100%; }
}
.delete-territory-dialog > div { align-items: stretch; }
.delete-territory-dialog > div button { min-height: 46px; padding: 10px 16px; font-size: 13px !important; line-height: 1.25; white-space: normal; visibility: visible; opacity: 1; }
.delete-territory-dialog .delete-cancel { color: var(--ink) !important; }
.delete-territory-dialog .danger-confirm { color: #fff !important; }
@media (max-width: 720px) {
  .detail .detail-head { align-items: stretch; gap: 8px; flex-direction: column; }
  .detail-breadcrumb .detail-back { font-size: 12px; min-height: 32px; }
  .detail-actions { width: 100%; margin-left: 0; }
  .detail-actions > button { font-size: 12px; padding-inline: 6px; }
}
@media (max-width: 380px) {
  .detail-actions > button { font-size: 11px; }
  .detail-actions > button svg { width: 16px; height: 16px; }
}

/* Partial coverage marking stays in document flow so it cannot cover metrics or map attribution. */
.coverage-marking-controls{display:grid;gap:10px;padding:16px;border-top:1px solid var(--line);background:var(--wash)}.coverage-marking-controls h4{margin:2px 0 0;font-size:16px}.coverage-marking-controls p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.coverage-marking-controls>strong{color:var(--ink);font-size:14px}.coverage-marking-controls>small{color:var(--muted);font-size:12px}.coverage-marking-actions{display:flex;gap:8px;flex-wrap:wrap}.coverage-marking-actions button{min-height:44px;flex:1 1 130px}.coverage-marking-actions .primary{flex:1.4 1 180px}
@media(max-width:600px){.coverage-marking-actions{display:grid;grid-template-columns:1fr 1fr}.coverage-marking-actions .primary{grid-column:1/-1}}
@media(max-width:720px){.coverage-marking-controls{margin-bottom:calc(76px + env(safe-area-inset-bottom));}}
.map .maplibregl-canvas.coverage-drawing-active{touch-action:none!important;cursor:crosshair!important;user-select:none;-webkit-user-select:none}

/* Mobile design-tool pattern: a vertical rail keeps the map dominant. */
@media (max-width:720px), (max-height:500px) and (orientation:landscape){
  .editor-body .road-tools,.congregation-body .map-toolbar{display:flex!important;position:fixed;z-index:46;left:max(8px,env(safe-area-inset-left));right:auto;top:calc(64px + env(safe-area-inset-top));bottom:calc(148px + env(safe-area-inset-bottom));width:52px;max-height:none;overflow-x:hidden;overflow-y:auto;flex-direction:column;gap:5px;padding:5px;background:color-mix(in srgb,var(--canvas) 96%,transparent);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #25282122;scrollbar-width:none}
  .editor-body .road-tools.mobile-open{display:flex!important}.road-tools .mobile-tools-head{display:none!important}.editor-body .road-tools button,.congregation-body .map-toolbar button{width:40px;min-width:40px;min-height:40px;height:40px;padding:0;flex:none}.editor-body .road-tools button span,.congregation-body .map-toolbar button:not(:has(svg)){display:none}.editor-body .road-tools button svg,.congregation-body .map-toolbar button svg{margin:0}.congregation-body .map-toolbar i{display:none}.mobile-editor-actions button:first-child{display:none}.editable-map>.map-fit-control{right:10px}.map .maplibregl-ctrl-bottom-left{left:0}.edit-instruction{left:68px}.congregation-body{position:absolute;inset:56px 0 0;display:block;height:auto;padding:0 0 calc(68px + env(safe-area-inset-bottom));overflow:hidden}.congregation-body main{height:100%}.congregation-body .editable-map,.congregation-body .map{height:100%;min-height:0;border:0;border-radius:0}.congregation-body .validation{display:none}
}
.share-unavailable-notice,.pdf-without-link-choice{flex:1 0 100%;display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:8px;background:#f3eee2;color:#4f5f55;font-size:12px}.share-unavailable-notice b{white-space:nowrap}.share-unavailable-notice span{min-width:0}.pdf-without-link-choice span{margin-right:auto}.card-export-dialog>footer .share-unavailable-notice,.card-export-dialog>footer .pdf-without-link-choice{grid-column:1/-1}.card-preview-stage>.print-progress.error{inset:auto 22px 22px;background:var(--canvas);border:1px solid var(--line);backdrop-filter:none;box-shadow:0 8px 28px #25282122}
@media(max-width:700px){.share-unavailable-notice{display:grid;gap:3px}.pdf-without-link-choice{display:grid;grid-template-columns:1fr 1fr}.pdf-without-link-choice span{grid-column:1/-1}.shared-location-action span{max-width:calc(100vw - 100px)}}

/* Scalable mobile navigation and final cartographic color normalization. */
.sidebar nav.mobile-bottom-navigation,.mobile-more-sheet,.mobile-more-backdrop{display:none}
.project>svg{background:#e4eadf;color:var(--map-green)}
.project>button svg{width:18px;height:18px;padding:0;background:transparent;color:var(--map-green)}
.header-search kbd,.search kbd{color:var(--map-green);background:#eef1e9;border:1px solid #d2dccd}
@media(max-width:720px),(max-height:500px) and (orientation:landscape){
  .sidebar nav.desktop-navigation{display:none}
  .sidebar nav.mobile-bottom-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:0;width:100%;height:62px;margin:0;padding:4px max(3px,env(safe-area-inset-right)) 3px max(3px,env(safe-area-inset-left));overflow:visible}
  .sidebar nav.mobile-bottom-navigation a,.sidebar nav.mobile-bottom-navigation button{display:grid;grid-template-rows:24px 14px;place-items:center;align-content:center;gap:2px;min-width:0;width:100%;height:54px;margin:0;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:#56635b;font-size:10px;text-decoration:none;box-shadow:none}
  .sidebar nav.mobile-bottom-navigation a svg,.sidebar nav.mobile-bottom-navigation button svg{width:21px;height:21px;margin:0;stroke-width:1.9}
  .sidebar nav.mobile-bottom-navigation a span,.sidebar nav.mobile-bottom-navigation button span{display:block;max-width:100%;overflow:hidden;color:inherit;font-size:10px;font-weight:500;line-height:12px;text-overflow:ellipsis;white-space:nowrap}
  .sidebar nav.mobile-bottom-navigation a.active,.sidebar nav.mobile-bottom-navigation button.active{color:var(--map-green);background:#e4eadf;font-weight:600}
  .mobile-more-backdrop{position:fixed;display:block;inset:0;z-index:41;background:#18231d66;backdrop-filter:blur(2px)}
  .mobile-more-sheet{position:fixed;display:block;right:10px;bottom:calc(68px + env(safe-area-inset-bottom));left:10px;z-index:42;padding:14px;border:1px solid var(--line);border-radius:16px 16px 10px 10px;background:var(--canvas);box-shadow:0 -18px 48px #2528212e;animation:mobile-more-in .2s ease-out}
  .mobile-more-sheet>header{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 12px;border-bottom:1px solid var(--line)}
  .mobile-more-sheet header span{color:var(--muted);font-size:11px}.mobile-more-sheet h2{margin:2px 0 0;font-size:19px}.mobile-more-sheet header button{width:42px;height:42px;padding:0}
  .sidebar .mobile-more-sheet nav{display:grid;gap:5px;width:100%;margin:10px 0 0;overflow:visible}
  .sidebar .mobile-more-sheet nav a{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;justify-content:stretch;gap:10px;width:100%;min-height:52px;padding:5px 10px;border-radius:9px;color:var(--ink);font-size:14px;text-align:left;white-space:normal}
  .sidebar .mobile-more-sheet nav a svg{width:21px;height:21px;margin:0;color:var(--map-green)}
  .sidebar .mobile-more-sheet nav a span{font-size:14px}.sidebar .mobile-more-sheet nav a.active{color:var(--map-green);background:#e4eadf}
  .sidebar{height:calc(68px + env(safe-area-inset-bottom));padding:0 0 env(safe-area-inset-bottom);overflow:visible}
  .main{height:calc(100svh - 68px - env(safe-area-inset-bottom))}
}
@keyframes mobile-more-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.mobile-more-sheet{animation:none}}

/* Settings keep related controls together while preserving readable descriptions. */
.settings-page{display:grid;align-content:start;gap:16px}
.settings-page>.page-title{margin-bottom:2px}
.settings-page>.settings-section{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,auto);align-items:center;gap:20px;margin:0}
.settings-page>.settings-section>div:first-child{min-width:0;align-self:start}
.settings-page .settings-actions,.settings-page .project-management,.settings-page .protection-form{justify-content:flex-end;align-items:center}
.settings-page .settings-actions input,.settings-page .project-management input,.settings-page .project-management select,.settings-page .protection-form input{min-width:0}
.backup-settings{margin-bottom:0}
@media(max-width:900px){
  .settings-page>.settings-section{grid-template-columns:1fr;align-items:stretch}
  .settings-page .settings-actions,.settings-page .project-management,.settings-page .protection-form{justify-content:flex-start;width:100%}
}
@media(max-width:560px){
  .settings-page{gap:12px}
  .settings-page>.settings-section{gap:16px;padding:16px}
  .settings-page .settings-actions,.settings-page .project-management,.settings-page .protection-form{display:grid!important;grid-template-columns:1fr}
  .settings-page .settings-actions>*,.settings-page .project-management>*,.settings-page .protection-form>*{width:100%;max-width:none}
}

/* S-12 polygon appearance uses the same preview and export renderer. */
.polygon-style-switcher{position:absolute;z-index:11;top:12px;left:188px}
.polygon-style-switcher summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 12px;border:1px solid #c9c5ba;border-radius:8px;background:var(--canvas);box-shadow:0 3px 10px #2528211a;cursor:pointer;list-style:none}
.polygon-style-switcher summary::-webkit-details-marker{display:none}
.polygon-style-switcher summary svg{width:18px}
.polygon-style-switcher>div{position:absolute;top:calc(100% + 8px);left:0;display:grid;gap:5px;width:230px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);box-shadow:0 14px 36px #2528212b}
.polygon-style-switcher button{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:42px;padding:6px 9px;text-align:left}
.polygon-style-switcher button.selected{border-color:var(--map-green);background:#eef1e9}
.polygon-style-switcher button svg{width:17px}
.polygon-swatch{display:block;width:32px;height:24px;border-radius:5px;background:#f7f2e5}
.polygon-outline{border:3px solid var(--ink)}
.polygon-dashed{border:3px dashed var(--ink)}
.polygon-hatched{border:2px solid var(--ink);background:repeating-linear-gradient(135deg,#f7f2e5 0 5px,#687369 5px 7px)}
.polygon-transparent{border:2px solid var(--ink);background:#54735a55}
.polygon-none{border:1px solid var(--line);background:transparent}

/* Mobile polygon editor: sheet height is the source of truth for every map control. */
.rail-more-toggle{display:none}
@media (max-width:720px), (max-height:500px) and (orientation:landscape){
  .rail-more-toggle{display:flex}
  .editor-body .road-tools,.congregation-body .map-toolbar{display:flex!important;position:fixed;z-index:46;left:max(8px,env(safe-area-inset-left));right:auto;top:calc(64px + env(safe-area-inset-top));bottom:calc(198px + env(safe-area-inset-bottom));width:56px;max-height:none;overflow:visible;flex-direction:column;gap:5px;padding:5px;background:color-mix(in srgb,var(--canvas) 96%,transparent);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #25282122}
  .road-tools .mobile-tools-head{display:none!important}
  .editor-body .road-tools button,.congregation-body .map-toolbar button{width:44px;min-width:44px;min-height:44px;height:44px;padding:0;flex:none}
  .editor-body .road-tools button span,.congregation-body .map-toolbar button:not(:has(svg)){display:none}
  .editor-body .road-tools button svg,.congregation-body .map-toolbar button svg{margin:0}
  .congregation-body .map-toolbar i{display:none}
  .editor-body .road-tools .rail-secondary,.editor-body .road-tools .rail-desktop-only{display:none}
  .editor-body .road-tools.rail-more-open .rail-secondary{display:flex;position:absolute;left:58px}
  .editor-body .road-tools.rail-more-open .rail-secondary-1{top:0}
  .editor-body .road-tools.rail-more-open .rail-secondary-2{top:49px}
  .editor-body .road-tools.rail-more-open .rail-secondary-3{top:98px}
  .editor-body .road-tools.rail-more-open .rail-secondary-4{top:147px}
  .editor-page:has(.edit-panel.sheet-mid) .road-tools{bottom:calc(400px + env(safe-area-inset-bottom))}
  .editor-page:has(.edit-panel.sheet-full) .road-tools{top:auto;bottom:calc(min(62svh,540px) + 140px + env(safe-area-inset-bottom));height:56px}
  .editor-page:has(.edit-panel.sheet-full) .road-tools>button:not(.rail-more-toggle){display:none}
  .editable-map>.map-fit-control{right:10px;bottom:calc(198px + env(safe-area-inset-bottom))}
  .editor-page:has(.edit-panel.sheet-mid) .editable-map>.map-fit-control{bottom:calc(400px + env(safe-area-inset-bottom))}
  .editor-page:has(.edit-panel.sheet-full) .editable-map>.map-fit-control{bottom:calc(min(62svh,540px) + 140px + env(safe-area-inset-bottom))}
  .editor-page .map .maplibregl-ctrl-bottom-left{left:68px;bottom:calc(198px + env(safe-area-inset-bottom))}
  .editor-page:has(.edit-panel.sheet-mid) .map .maplibregl-ctrl-bottom-left{bottom:calc(400px + env(safe-area-inset-bottom))}
  .editor-page:has(.edit-panel.sheet-full) .map .maplibregl-ctrl-bottom-left{bottom:calc(min(62svh,540px) + 140px + env(safe-area-inset-bottom))}
  .mobile-editor-actions{grid-template-columns:.9fr .9fr 1fr 1.35fr}
  .mobile-editor-actions button{display:flex!important}
  .mobile-editor-actions .primary{font-weight:700}
  .edit-instruction{left:72px}
  .congregation-body .map-toolbar{bottom:calc(76px + env(safe-area-inset-bottom))}
  .congregation-body .map .maplibregl-ctrl-bottom-left{left:68px;bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media(max-width:600px){
  .polygon-style-switcher{top:64px;left:12px}
  .polygon-style-switcher summary span{display:none}
  .polygon-style-switcher>div{position:fixed;left:10px;right:10px;top:auto;bottom:max(10px,env(safe-area-inset-bottom));width:auto;border-radius:16px}
}

/* Dynamic editor rail: measured viewport space, shared by desktop and mobile. */
.editor-page .dynamic-tool-rail{display:flex!important;position:fixed;z-index:46;top:var(--editor-rail-top);bottom:var(--editor-rail-bottom);left:max(var(--editor-rail-left),env(safe-area-inset-left));right:auto;width:56px;max-height:none;overflow:visible;flex-direction:column;gap:5px;padding:5px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--canvas) 96%,transparent);box-shadow:0 8px 24px #25282122}
.editor-page .dynamic-tool-rail .mobile-tools-head{display:none!important}
.editor-page .dynamic-tool-rail button{display:flex;width:44px;min-width:44px;min-height:44px;height:44px;padding:0;flex:none;align-items:center;justify-content:center}
.editor-page .dynamic-tool-rail button>span{display:none}
.editor-page .dynamic-tool-rail button>svg{width:19px;height:19px;margin:0}
.editor-page .dynamic-tool-rail .rail-tool-overflow{display:none}
.editor-page .dynamic-tool-rail .rail-more-toggle{display:flex}
.editor-page .dynamic-tool-rail.rail-more-open .rail-tool-overflow{display:flex;position:absolute;left:60px;top:calc(var(--rail-overflow-index) * 49px);border-color:var(--line);background:var(--canvas);box-shadow:0 5px 16px #25282124}
.editor-page .dynamic-tool-rail.rail-more-open .rail-more-toggle{color:var(--map-green);background:#e4eadf}
.editor-page:has(.edit-panel.sheet-mid) .road-tools.dynamic-tool-rail,.editor-page:has(.edit-panel.sheet-full) .road-tools.dynamic-tool-rail{top:var(--editor-rail-top);bottom:var(--editor-rail-bottom);height:auto}
.editor-page:has(.edit-panel.sheet-full) .road-tools.dynamic-tool-rail>button.rail-tool:not(.rail-tool-overflow){display:flex}
.editor-page:has(.edit-panel.sheet-full) .road-tools.dynamic-tool-rail>button.rail-tool-overflow{display:none}
.editor-page:has(.edit-panel.sheet-full) .road-tools.dynamic-tool-rail.rail-more-open>button.rail-tool-overflow{display:flex}
.editor-page .editor-map-style-switcher{position:fixed;z-index:45;top:var(--editor-rail-top);right:max(var(--editor-map-right),env(safe-area-inset-right))}
.editor-page .editor-map-style-switcher .map-style-trigger{width:44px;padding:0}
.editor-page .editor-map-style-switcher .map-style-trigger span{display:none}
.editor-page .editable-map>.map-fit-control{position:fixed;z-index:44;top:var(--editor-map-mid);right:max(var(--editor-map-right),env(safe-area-inset-right));bottom:auto;transform:translateY(-50%)}
.editor-page .map .maplibregl-ctrl-bottom-left{position:fixed;z-index:43;top:calc(var(--editor-map-mid) - 46px);left:calc(var(--editor-rail-left) + 66px);bottom:auto}
.editor-page .map .maplibregl-ctrl-bottom-right{position:fixed;z-index:42;right:max(var(--editor-map-right),env(safe-area-inset-right));bottom:calc(var(--editor-rail-bottom) - 2px);max-width:calc(100vw - var(--editor-rail-left) - 150px)}
.editor-page .map .maplibregl-ctrl-attrib{font-size:9px;opacity:.82}
.editor-page .maptoolkit-attribution-logo{position:fixed;z-index:42;right:max(var(--editor-map-right),env(safe-area-inset-right));top:calc(var(--editor-rail-top) + 52px)}
@media(max-width:720px){.editor-page .editable-map>.edit-instruction{position:fixed;z-index:42;top:auto;right:calc(var(--editor-map-right) + 62px);bottom:calc(var(--editor-rail-bottom) + 28px);left:calc(var(--editor-rail-left) + 62px);width:auto;max-width:520px;margin-inline:auto;transform:none}}

/* Compact, combinable S-12 appearance editor. */
.polygon-style-switcher{position:absolute;z-index:12;top:12px;left:188px}
.polygon-style-trigger{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 12px;background:var(--canvas);box-shadow:0 3px 10px #2528211a}
.polygon-style-trigger svg{width:18px}
.polygon-style-panel{position:absolute;z-index:82;top:calc(100% + 8px);left:0;display:grid;gap:12px;width:330px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);box-shadow:0 18px 45px #2528212b}
.polygon-style-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:4px}
.polygon-style-panel>header>div{display:grid;gap:3px}.polygon-style-panel header small{color:var(--muted)}.polygon-style-panel header button{width:40px;height:40px;padding:0}
.polygon-style-panel fieldset{display:grid;gap:6px;margin:0;padding:0;border:0}.polygon-style-panel legend{margin-bottom:6px;font-size:12px;font-weight:600;color:var(--muted)}
.polygon-option-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.polygon-option-group button{min-width:0;min-height:38px;padding:6px;font-size:12px}.polygon-option-group button.selected{border-color:var(--map-green);background:#e4eadf;color:var(--map-green);font-weight:600}
.polygon-reset{justify-self:stretch;min-height:42px}.polygon-reset svg{width:17px}
@media(max-width:720px){
  .editor-page .dynamic-tool-rail .rail-history-tool{display:none}
  .editor-page .editor-map-style-switcher .map-style-menu{position:fixed;top:auto;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;width:auto}
  .polygon-style-switcher{top:64px;left:12px}
  .polygon-style-trigger{width:44px;padding:0;justify-content:center}.polygon-style-trigger span{display:none}
  .polygon-style-panel{position:fixed;top:auto;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;width:auto;max-height:min(78svh,620px);overflow:auto;border-radius:16px}
}
@media(max-width:360px){.polygon-option-group{grid-template-columns:1fr}.polygon-style-panel{gap:9px}.polygon-option-group button{min-height:36px}}

/* Header actions remain reachable at every width. Intermediate layouts use icons;
   mobile keeps creation visible and gathers secondary actions in a compact menu. */
.head-mobile-more{display:none;position:relative}
.head-mobile-more>button{width:48px;padding:0}
.head-mobile-menu{position:absolute;z-index:70;top:calc(100% + 8px);right:0;display:grid;gap:4px;width:210px;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--canvas);box-shadow:0 16px 40px #2528212b}
.head-mobile-menu button{justify-content:flex-start;width:100%;height:44px;padding:9px 11px;white-space:nowrap}
@media(max-width:1250px) and (min-width:721px){
  .head-actions .whats-new-bell>button{display:inline-flex!important}
  .head-actions .head-action-secondary{display:inline-flex!important;width:48px;padding:0}
  .head-actions .head-action-secondary span{display:none}
  .head-actions .head-create{width:48px;padding:0}
  .head-actions .head-create span{display:none}
}
@media(max-width:720px){
  .topbar .head-actions{display:flex;margin-left:0;gap:7px}
  .head-actions .head-action-secondary{display:none!important}
  .head-actions .whats-new-bell>button{display:inline-flex!important}
  .head-mobile-more{display:block}
  .head-actions .head-mobile-more>button,.head-actions .head-create{display:inline-flex!important;width:44px;height:44px;padding:0}
  .head-actions .head-create span{display:none}
  .head-mobile-menu{position:fixed;top:calc(66px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:min(230px,calc(100vw - 20px))}
  .head-actions .head-mobile-menu button{display:inline-flex!important}
  .topbar .search{min-width:0}
  .topbar .search kbd{display:none}
}
@media(max-width:390px){
  .topbar{gap:7px;padding-inline:9px}
  .topbar .search{padding-inline:10px}
  .topbar .search input{font-size:13px}
}

/* Campaign workspace */
.active-campaign-indicator{display:grid;grid-template-columns:auto minmax(120px,auto) minmax(90px,220px) auto;align-items:center;gap:10px;margin:12px 22px 0;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);color:var(--ink);text-decoration:none}.active-campaign-indicator>svg{width:18px;color:var(--map-green)}.active-campaign-indicator span{display:grid}.active-campaign-indicator small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.active-campaign-indicator b{font-size:13px}.active-campaign-indicator progress{width:100%;height:7px;accent-color:var(--map-green)}.active-campaign-indicator strong{font-size:12px}@media(max-width:700px){.active-campaign-indicator{grid-template-columns:auto 1fr auto;margin:8px 10px 0}.active-campaign-indicator progress{display:none}}
.campaign-page-head{align-items:flex-start;gap:18px}.campaign-page-head>div:last-child{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.campaign-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.campaign-card{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}.campaign-card header,.campaign-card footer{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.campaign-card h2{margin:8px 0 5px;font-size:20px}.campaign-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.campaign-card header p{display:flex;align-items:center;gap:6px}.campaign-card header p svg{width:15px}.campaign-card footer{align-items:center;font-size:12px;color:var(--muted)}.campaign-progress{display:grid;gap:8px}.campaign-progress span{display:flex;justify-content:space-between;align-items:end}.campaign-progress small{color:var(--muted)}.campaign-progress progress,.campaign-total-progress progress{width:100%;height:9px;accent-color:var(--map-green)}.campaign-dialog{width:min(690px,100%);max-height:min(88svh,850px);overflow:auto}.campaign-form{display:grid;gap:13px}.campaign-form label{display:grid;gap:6px;font-size:12px}.campaign-form input,.campaign-form select,.campaign-form textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.campaign-form>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.campaign-form fieldset{margin:0;padding:12px;border:1px solid var(--line);border-radius:9px}.campaign-territory-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:210px;overflow:auto}.campaign-territory-picker label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;padding:7px;border-radius:7px;background:#f3eee2}.campaign-territory-picker small{grid-column:2;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.campaign-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.campaign-summary article{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}.campaign-summary span{font-size:11px;color:var(--muted)}.campaign-summary strong{font-size:22px}.campaign-total-progress{grid-template-columns:auto auto;align-items:end}.campaign-total-progress progress{grid-column:1/-1}.campaign-map-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.campaign-map-layout.has-inspector{grid-template-columns:minmax(0,1fr) 330px}.campaign-map{position:relative;height:min(62vh,660px);min-height:480px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.campaign-map-legend{position:absolute;z-index:5;top:12px;left:12px;display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--canvas);font-size:11px}.campaign-map-legend span{display:flex;align-items:center;gap:7px}.campaign-dot{width:11px;height:11px;border-radius:3px}.campaign-dot.pending{background:#e8e5dc}.campaign-dot.assigned{background:#dbb45c}.campaign-dot.partial{background:#9aabbc}.campaign-dot.completed{background:#718b62}.campaign-inspector{padding:17px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}.campaign-inspector header{display:flex;justify-content:space-between}.campaign-inspector h2{margin:3px 0 14px}.campaign-inspector header button{width:36px;height:36px;padding:0}.campaign-inspector dl{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:12px}.campaign-inspector dd{margin:0;font-weight:600}.campaign-recommendations{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}.campaign-recommendations h2{margin:0;font-size:18px}.campaign-recommendations header p,.campaign-recommendations>p{color:var(--muted);font-size:12px}.campaign-recommendations ol{display:grid;gap:8px;padding-left:22px}.campaign-recommendations li{padding:8px}.campaign-recommendations li button{margin-right:12px}.analysis-controls{display:flex;justify-content:flex-end;margin-bottom:12px}.analysis-controls label{display:grid;gap:5px;font-size:11px}.analysis-controls select{min-width:240px;padding:10px;border:1px solid var(--line);border-radius:8px}.analysis-page td:first-child small{display:block;margin-top:4px;color:var(--muted)}.analysis-page td:last-child{display:table-cell;white-space:normal;min-width:340px}.analysis-page td:last-child p{margin:7px 0 0;line-height:1.45}.priority{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px}.priority-high{background:#f7d9d1;color:#8b2c22}.priority-medium{background:#f5e3b7;color:#765414}.priority-low{background:#e4eadf;color:#456344}.campaign-report-preview{display:grid;place-items:center;padding:24px;border:1px solid var(--line);border-radius:10px;background:#e8e5dc}.campaign-report-preview img{display:block;width:min(100%,850px);height:auto;box-shadow:0 12px 40px #25282126}

/* Product updates: a quiet login summary and a persistent notification bell. */
.whats-new-bell{position:relative}.whats-new-bell>button{position:relative;width:48px;padding:0}.whats-new-bell>button i{position:absolute;top:10px;right:10px;width:8px;height:8px;border:2px solid var(--canvas);border-radius:50%;background:var(--pin-red)}.whats-new-popover{position:absolute;z-index:75;top:calc(100% + 8px);right:0;width:min(370px,calc(100vw - 20px));padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);box-shadow:0 18px 48px #2528212e}.whats-new-popover header{display:flex;align-items:start;justify-content:space-between;margin-bottom:8px}.whats-new-popover h2{margin:2px 0;font-size:20px}.whats-new-popover header small{color:var(--muted)}.whats-new-popover header button{width:38px;height:38px;padding:0}.whats-new-popover article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:10px 2px;border-top:1px solid var(--line)}.whats-new-popover article>svg{width:20px;color:var(--map-green)}.whats-new-popover p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.login-whats-new{position:absolute;z-index:2;right:7vw;bottom:45px;left:7vw;padding:16px 18px;border:1px solid #d8d2c5;border-radius:12px;background:#fcfaf4e8;backdrop-filter:blur(8px)}.login-whats-new>span{color:var(--map-green);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.login-whats-new h2{margin:5px 0 10px;font-size:18px}.login-whats-new article{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:5px 0}.login-whats-new article p{margin:0;color:var(--muted);font-size:11px}

@media(max-width:1000px){.campaign-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.campaign-map-layout.has-inspector{grid-template-columns:minmax(0,1fr) 280px}.campaign-list{grid-template-columns:1fr}}
@media(max-width:720px){.campaign-page-head{display:grid;align-items:stretch}.campaign-page-head>div:last-child{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.campaign-page-head>div:last-child button{min-width:0}.campaign-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-map-layout.has-inspector{grid-template-columns:1fr}.campaign-map{height:54svh;min-height:390px}.campaign-inspector{position:relative}.campaign-recommendations li{display:grid;gap:7px}.campaign-recommendations li button{justify-self:start}.campaign-form>div{grid-template-columns:1fr}.campaign-territory-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-card footer{align-items:stretch;flex-direction:column}.campaign-card footer button{width:100%}.analysis-controls{justify-content:stretch}.analysis-controls label,.analysis-controls select{width:100%}.campaign-report-preview{margin-inline:-15px;padding:10px;border-radius:0}.whats-new-bell>button{width:44px;height:44px}.whats-new-popover{position:fixed;top:calc(66px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));left:max(10px,env(safe-area-inset-left));width:auto;max-height:calc(100svh - 86px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr)}.whats-new-popover>header{position:sticky;top:0;z-index:1;background:var(--canvas)}.whats-new-launched,.whats-new-upcoming{min-height:0;overflow-y:auto;padding-right:4px}.whats-new-upcoming{max-height:38svh}.login-whats-new{position:static;margin-top:28px}.login-whats-new article{grid-template-columns:1fr}.login-whats-new article p{font-size:12px}}
@media(max-width:720px){.whats-new-popover header button[aria-label="Cerrar"]{display:inline-flex!important;visibility:visible!important;opacity:1!important;flex:0 0 38px!important}}
@media(max-width:370px){.campaign-page-head>div:last-child{grid-template-columns:1fr}.campaign-summary{gap:7px}.campaign-summary article{padding:11px}.campaign-territory-picker{grid-template-columns:1fr}.head-actions{gap:4px!important}.whats-new-bell>button,.head-mobile-more>button,.head-actions .head-create{width:40px!important}}

/* Access page: the unlock form remains primary while supporting context flows naturally. */
.login-visual{overflow-y:auto}
.login-copy{min-height:100%;display:flex;flex-direction:column}
.login-copy .benefits{margin-top:clamp(28px,5vh,58px);gap:clamp(18px,3vh,30px)}
.login-whats-new{position:static;inset:auto;margin-top:clamp(28px,5vh,52px);padding:14px 16px}
.login-whats-new header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.login-whats-new header span{color:var(--map-green);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.login-whats-new header h2{margin:5px 0 10px;font-size:18px}
.login-whats-new header button{width:36px;height:36px;flex:0 0 36px;padding:0;background:transparent}
.login-whats-new header button svg{width:17px;height:17px}
.login-mobile-context{display:none}

@media(max-width:720px){
  .login-side{display:flex;min-height:100svh;flex-direction:column;align-items:center;justify-content:flex-start;padding:calc(36px + env(safe-area-inset-top)) 0 calc(28px + env(safe-area-inset-bottom))}
  .login-panel{flex:none}
  .login-mobile-context{display:block;width:92%;max-width:560px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
  .login-mobile-context>h1{margin:0;font-family:"IBM Plex Serif",Georgia,serif;font-size:20px;line-height:1.3}
  .login-mobile-context>p{display:flex;align-items:flex-start;gap:8px;margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
  .login-mobile-context>p svg{width:17px;height:17px;flex:none;color:var(--map-green)}
  .login-mobile-context .login-whats-new{margin-top:16px}
  .login-mobile-context .login-whats-new article{grid-template-columns:1fr}
}
.campaign-dialog>.campaign-form{display:grid;flex-direction:initial;gap:13px;margin-top:14px}
.campaign-map-empty{display:grid;place-content:center;justify-items:center;height:100%;padding:28px;text-align:center;background:var(--canvas)}.campaign-map-empty h2{margin:0 0 8px;font-size:20px}.campaign-map-empty p{max-width:420px;margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.5}

/* One map-first home, with quiet grouped navigation. */
.sidebar .desktop-navigation{gap:15px;margin-top:30px;overflow-y:auto;scrollbar-width:thin}.sidebar-navigation-group{display:grid;gap:3px}.sidebar-navigation-group+.sidebar-navigation-group{padding-top:12px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.sidebar-navigation-group h2{margin:0 12px 4px;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.sidebar .desktop-navigation .sidebar-navigation-group a{padding-block:10px}
@media(max-width:1100px) and (min-width:721px){.sidebar .desktop-navigation{gap:9px;margin-top:24px}.sidebar-navigation-group{gap:2px}.sidebar-navigation-group+.sidebar-navigation-group{padding-top:8px}.sidebar-navigation-group h2{display:none}.sidebar .desktop-navigation .sidebar-navigation-group a{padding:10px}}

/* The desktop navigation owns vertical overflow; page content keeps its own scroll. */
@media(min-width:721px){
  .shell{height:100dvh}
  .sidebar{height:100dvh;min-height:0;overflow:hidden}
  .sidebar>.brand,.sidebar>.privacy,.sidebar>.project{flex:none}
  .sidebar .desktop-navigation{min-height:0;flex:1;overscroll-behavior:contain;scrollbar-color:color-mix(in srgb,var(--muted) 42%,transparent) transparent;scrollbar-width:thin}
  .sidebar .desktop-navigation:focus-within{scrollbar-color:var(--muted) transparent}
}
@media(min-width:721px) and (max-height:700px){
  .sidebar{padding-block:16px 12px}
  .sidebar .desktop-navigation{margin-top:18px}
  .sidebar>.privacy{display:none}
  .sidebar>.project{margin-top:10px}
}
@media(min-width:721px) and (max-height:560px){
  .sidebar{padding-block:10px}
  .sidebar .desktop-navigation{margin-top:10px;gap:7px}
  .sidebar-navigation-group+.sidebar-navigation-group{padding-top:7px}
  .sidebar .desktop-navigation .sidebar-navigation-group a{padding-block:8px}
}

/* Global project search and contextual territory actions. */
.global-search{position:relative;display:flex;flex:1;max-width:470px;min-width:0}.global-search>.search{width:100%;max-width:none}.global-search-close{width:34px;height:34px;padding:0;border:0;background:transparent}.global-search-close svg{width:17px}.global-search-results{position:absolute;z-index:90;top:calc(100% + 8px);left:0;width:min(560px,calc(100vw - 24px));max-height:min(68vh,590px);overflow:auto;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);box-shadow:0 20px 52px #2528212e}.global-search-hint,.global-search-empty{margin:0;padding:18px;color:var(--muted);font-size:13px;text-align:center}.global-search-group{display:grid;gap:3px}.global-search-group+.global-search-group{margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.global-search-group h2{margin:3px 8px 5px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em}.global-search-group button{display:grid;grid-template-columns:34px minmax(0,1fr);justify-content:stretch;width:100%;min-height:48px;padding:7px 9px;text-align:left;border-color:transparent}.global-search-group button>svg{width:18px;color:var(--map-green)}.global-search-group button span{display:grid;gap:2px;min-width:0}.global-search-group button b,.global-search-group button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-group button small{color:var(--muted)}
.territory-actions-menu{position:fixed;z-index:120;display:grid;gap:2px;width:min(270px,calc(100vw - 20px));padding:7px;border:1px solid var(--line);border-radius:11px;background:var(--canvas);box-shadow:0 18px 46px #25282130}.territory-actions-menu button{justify-content:flex-start;width:100%;min-height:42px;padding:8px 10px;border-color:transparent}.territory-actions-menu button.danger{color:var(--pin-red)}
@media (max-width: 720px) {
  .map-legend-toggle,
  .map-legend button { min-height: 44px; }
}
.maplibregl-ctrl-group button { min-width: 44px; min-height: 44px; }
.table-wrap td > button { min-height: 44px; }
@media(max-width:720px){.global-search{max-width:none}.global-search.open{position:fixed;z-index:88;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));display:block}.global-search.open>.search{height:50px;background:var(--canvas)!important;box-shadow:0 10px 30px #25282128}.global-search-results{position:fixed;top:calc(66px + env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));width:auto;max-height:calc(100svh - 84px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:14px}.territory-actions-menu{right:10px!important;bottom:max(82px,calc(72px + env(safe-area-inset-bottom)));left:10px!important;top:auto!important;width:auto;max-height:calc(100svh - 100px);overflow:auto;border-radius:16px}.territory-actions-menu button{min-height:44px}}

/* Tablet navigation keeps labels visible; compact icon-only navigation belongs to mobile. */
@media (min-width: 721px) and (max-width: 1100px) {
  .shell { grid-template-columns: 210px minmax(0, 1fr); }
  .sidebar { padding: 20px 10px; }
  .sidebar .brand div:last-child { font-size: initial; }
  .sidebar .brand strong { font-size: 17px; }
  .sidebar .brand span { font-size: 11px; }
  .sidebar nav.desktop-navigation a,
  .sidebar nav.desktop-navigation a.active { justify-content: flex-start; gap: 11px; font-size: 13px; }
  .sidebar nav.desktop-navigation a span { display: block; font-size: 13px; line-height: 1.25; }
}

/* Keep primary and secondary touch controls comfortable on phones and tablets. */
@media (max-width: 1100px) {
  button { min-height: 44px !important; }
  .tabs.territory-status-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; overflow: visible; }
  .tabs.territory-status-filters button { min-width: 0; white-space: normal; line-height: 1.25; }
}
@media (max-width: 620px) {
  .tabs.territory-status-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Short landscape screens need a bounded property sheet above the editor actions. */
@media (max-height: 500px) and (orientation: landscape) {
  .editor-body .edit-panel.sheet-mid,
  .editor-body .edit-panel.sheet-full {
    height: min(260px, calc(100svh - 178px));
    max-height: calc(100svh - 178px);
    overflow: auto;
  }
  .tablet-save-action { display: none !important; }
  .editor-body .edit-panel.mobile-sheet { right: 8px; left: auto; width: min(320px, calc(100vw - 16px)); }
  .editor-body .edit-panel .editor-locality { grid-template-columns: minmax(0, 1fr); }
  .editor-body .edit-panel .editor-locality label { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; }
  .editor-body .edit-panel .editor-locality label input { width: 100%; min-width: 0; }
  .editor-body .edit-panel .editor-locality > button { width: 100%; }
  .editor-page .map .maplibregl-ctrl-bottom-right {
    right: auto !important;
    bottom: max(68px, env(safe-area-inset-bottom)) !important;
    left: calc(var(--editor-rail-left) + 66px) !important;
  }
}

@media (max-width: 1100px) {
  .territory-list-table { margin: 0 !important; overflow: visible; border: 0; background: transparent; }
  .territory-list-table table,
  .territory-list-table tbody { display: grid; gap: 9px; white-space: normal; }
  .territory-list-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
  .territory-list-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; background: var(--canvas); }
  .territory-list-table td { display: grid; grid-template-columns: minmax(0, auto) minmax(0, 1fr); align-items: start; gap: 5px; min-width: 0; padding: 6px 0; border: 0; white-space: normal; }
  .territory-list-table td::before { content: attr(data-label); color: var(--muted); font-size: 10px; line-height: 1.35; }
  .territory-list-table td:first-child,
  .territory-list-table td:last-child { grid-column: 1 / -1; }
  .territory-list-table td:first-child { border-bottom: 1px solid var(--line); margin-bottom: 3px; }
  .territory-list-table td:first-child b { color: var(--ink); }
  .territory-list-table .status { justify-self: start; width: max-content; max-width: 100%; }
  .territory-list-table td:last-child { display: flex; justify-content: flex-end; gap: 7px; border-top: 1px solid var(--line); margin-top: 3px; padding-top: 9px; }
  .territory-list-table td:last-child::before { display: none; }
  .territory-list-table td:last-child > button { min-height: 44px; }
}

/* Ministry places are managed as a list; Inicio remains the only complete map. */
.meeting-points-search{display:flex;align-items:center;gap:10px;width:min(520px,100%);height:46px;margin-bottom:14px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}.meeting-points-search svg{width:18px;color:var(--muted)}.meeting-points-search input{min-width:0;flex:1;border:0!important;outline:0;background:transparent!important}.meeting-points-table tr.selected td{background:#eef1e9}.meeting-points-table td:last-child{display:table-cell}.meeting-point-state{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px}.meeting-point-state.active{background:#e4eadf;color:var(--map-green)}.meeting-point-state.inactive{background:#ebe8e0;color:var(--muted)}.meeting-point-row-actions{display:flex;gap:6px;justify-content:flex-end}.meeting-point-row-actions button{min-height:38px;padding:7px 9px;font-size:11px}.meeting-points-page .empty-state>svg{width:34px;height:34px;color:var(--map-green)}.empty-state.compact{min-height:260px}
@media(max-width:720px){.meeting-points-page .page-title{align-items:stretch;gap:12px}.meeting-points-page .page-title>button{width:100%}.meeting-points-search{width:100%}.meeting-points-table{margin:0;border:0;overflow:visible;background:transparent}.meeting-points-table table,.meeting-points-table tbody{display:grid;gap:10px}.meeting-points-table thead{display:none}.meeting-points-table tr{display:grid;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}.meeting-points-table tr.selected{border-color:var(--map-green);box-shadow:0 0 0 2px #54735a1f}.meeting-points-table tr.selected td{background:transparent}.meeting-points-table td{display:grid!important;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:8px;padding:5px 0;border:0;white-space:normal}.meeting-points-table td:before{content:attr(data-label);color:var(--muted);font-size:11px}.meeting-points-table td:last-child{grid-template-columns:1fr;margin-top:7px;padding-top:10px;border-top:1px solid var(--line)}.meeting-points-table td:last-child:before{display:none}.meeting-point-row-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.meeting-point-row-actions button{min-width:0;min-height:44px}.meeting-point-row-actions .danger-action{grid-column:1/-1}}

/* Congregation wall map: a print studio, not an operational dashboard. */
.print-center-title{gap:18px}.wall-map-entry{display:flex;align-items:center;gap:10px;min-width:min(330px,100%);padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);color:var(--ink);text-decoration:none}.wall-map-entry>svg{width:22px;color:var(--map-green)}.wall-map-entry span{display:grid;text-align:left}.wall-map-entry small{margin-top:2px;color:var(--muted);font-size:11px}.print-section-heading{margin:2px 0 12px}.print-section-heading h2{margin:0;font-size:17px}.print-section-heading p{margin:3px 0 0;color:var(--muted);font-size:12px}.wall-map-page{height:calc(100dvh - 86px);overflow:hidden;display:flex;flex-direction:column}.wall-map-page-head{flex:none}.wall-map-page-head h1{margin-top:10px}.wall-map-layout{display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:18px;min-height:0;flex:1}.wall-map-controls{display:flex;flex-direction:column;gap:15px;min-height:0;overflow:auto;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}.wall-map-intro span{color:var(--map-green);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.wall-map-intro h2{margin:5px 0 3px;font-family:"IBM Plex Serif",Georgia,serif;font-size:22px}.wall-map-intro p{margin:0;color:var(--muted);font-size:12px}.wall-map-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wall-map-fields label{display:grid;gap:5px;color:var(--muted);font-size:11px}.wall-map-fields label:last-child{grid-column:1/-1}.wall-map-fields select{width:100%;min-height:42px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.wall-map-provider{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:3px}.wall-map-provider>span{font-size:11px;color:var(--muted)}.wall-map-provider .map-style-trigger{position:static;min-width:0}.wall-map-controls fieldset{display:grid;grid-template-columns:1fr;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px}.wall-map-controls legend{padding:0 5px;color:var(--muted);font-size:11px}.wall-map-controls fieldset label{display:flex;align-items:center;gap:8px;font-size:12px}.wall-map-controls>.primary{min-height:46px}.wall-map-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wall-map-actions button{min-width:0}.wall-map-preview{display:grid;place-items:center;min-width:0;min-height:0;padding:20px;overflow:hidden;border:1px solid #cec7b8;border-radius:10px;background:#dfdbd1}.wall-map-preview-scroll{display:grid;place-items:center;width:100%;height:100%;overflow:auto;overscroll-behavior:contain}.wall-map-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 14px 42px #343a3230;animation:wall-map-in .28s ease-out}.wall-map-placeholder{max-width:360px;text-align:center}.wall-map-placeholder>span{display:inline-grid;place-items:center;width:52px;height:66px;margin-bottom:13px;border:1px solid #a7a092;background:#f8f4e9;color:var(--map-green);font-weight:700}.wall-map-placeholder b{display:block;font-family:"IBM Plex Serif",Georgia,serif;font-size:20px}.wall-map-placeholder p{color:var(--muted);font-size:12px;line-height:1.5}@keyframes wall-map-in{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
.whats-new-launched{display:grid}.whats-new-upcoming{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.whats-new-upcoming>header{display:flex;align-items:center!important;justify-content:space-between;margin:0 2px 4px!important}.whats-new-upcoming>header small{color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.whats-new-upcoming>header span{color:var(--muted);font-size:10px}.whats-new-upcoming article{opacity:.68}.whats-new-upcoming article>svg{color:var(--muted)}.upcoming-badge{display:inline-flex;width:max-content;margin-bottom:3px;padding:2px 6px;border-radius:999px;background:#ebe8e0;color:#686d67;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.login-whats-new .whats-new-upcoming{margin-top:8px}.login-whats-new .whats-new-upcoming article{display:grid;grid-template-columns:22px 1fr}.login-whats-new .whats-new-upcoming article>svg{width:16px}.login-whats-new .whats-new-launched article{grid-template-columns:120px 1fr}
@media(max-width:900px){.wall-map-page{height:auto;overflow:visible}.wall-map-layout{grid-template-columns:1fr}.wall-map-controls{overflow:visible}.wall-map-preview{min-height:60svh}.print-center-title{align-items:stretch}.wall-map-entry{width:100%}}
@media(max-width:520px){.wall-map-page{padding-inline:10px}.wall-map-page-head h1{font-size:25px}.wall-map-layout{gap:10px}.wall-map-controls{padding:14px}.wall-map-fields{grid-template-columns:1fr}.wall-map-fields label:last-child{grid-column:auto}.wall-map-provider{align-items:stretch;flex-direction:column}.wall-map-provider .map-style-switcher,.wall-map-provider .map-style-trigger{width:100%}.wall-map-preview{min-height:58svh;padding:8px;overflow:auto}.wall-map-preview-scroll{place-items:start center;touch-action:pan-x pan-y}.wall-map-preview img{max-width:none;width:auto;height:min(74svh,760px)}.wall-map-preview.landscape img{height:auto;width:900px;max-width:none}.wall-map-actions{grid-template-columns:1fr}.whats-new-upcoming>header{align-items:start!important;flex-direction:column;gap:2px}}
.print-center{min-width:0;overflow-x:hidden}.print-center-title{min-width:0}.multi-print-layout,.multi-print-controls,.multi-sheet-preview{min-width:0}.multi-print-controls{overflow-y:auto;overflow-x:hidden}.multi-sheet-preview{overflow:hidden}.multi-sheet-preview img{max-width:100%;height:auto}
@media(max-width:900px){.print-center{height:auto;min-height:calc(100svh - 68px);overflow:visible}.print-center-title{display:grid;align-items:stretch;gap:12px}.print-center-title>div:first-child{min-width:0}.print-center-title h1{overflow-wrap:anywhere}.multi-print-layout{display:grid;grid-template-columns:1fr;gap:12px;overflow:visible}.multi-print-controls{max-height:none;overflow:visible;padding:14px}.multi-print-controls .territory-checks{min-height:0;overflow:visible;display:grid;gap:8px}.territory-check-row{grid-template-columns:minmax(0,1fr) 44px}.territory-check-row>button{width:44px;min-height:44px;padding:0}.selection-actions,.multi-export-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.selection-actions button,.multi-export-actions button{min-width:0;width:100%;min-height:44px}.multi-print-controls>.primary{width:100%}.multi-sheet-preview{min-height:420px;max-height:none;padding:10px}.multi-sheet-preview img{max-width:100%;max-height:none}.wall-map-entry{min-width:0;max-width:100%}}
@media(max-width:420px){.print-center{padding-inline:10px}.print-center-title h1{font-size:22px}.selection-actions,.multi-export-actions{grid-template-columns:1fr}.multi-sheet-preview{min-height:360px}.temporary-locality input{width:100%;min-width:0}}

/* iPhone follow-up: compact actions and keep transient states from shifting the page. */
.print-message{min-height:36px;margin:8px 0 0;display:flex;align-items:center}
.print-generate{min-height:48px;white-space:nowrap}
@media(max-width:720px){
  .meeting-points-page .page-title{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:16px}
  .meeting-points-page .page-title>div{min-width:0}
  .meeting-points-page .page-title h1{font-size:clamp(20px,5.3vw,24px);line-height:1.15}
  .meeting-points-page .page-title p{margin:5px 0 0;font-size:12px;line-height:1.4}
  .meeting-points-page .page-title>.meeting-points-create{flex:none;width:auto;min-height:42px;padding:8px 10px;gap:6px;font-size:12px;white-space:nowrap}
  .meeting-points-page .meeting-points-create svg{width:16px;height:16px}
  .meeting-point-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
  .meeting-point-row-actions .danger-action{grid-column:auto}
  .meeting-point-row-actions button{min-height:44px;padding:7px 6px;gap:5px;font-size:11px;white-space:nowrap}
  .selection-actions{display:flex;justify-content:flex-start;margin:0 0 12px}
  .selection-actions button{width:auto;min-height:38px;flex:0 1 auto;padding:7px 11px;font-size:12px}
  .print-message{min-height:40px;line-height:1.35}
}
@media(max-width:380px){
  .meeting-points-page .page-title{align-items:flex-start}
  .meeting-points-page .meeting-points-create{padding-inline:8px}
  .meeting-point-row-actions button{font-size:10px}
  .print-generate{font-size:12px;padding-inline:8px}
}
@media(max-width:720px){.print-center{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}

/* Campaign form behaves like a native mobile sheet; its form scrolls above fixed actions. */
@media(max-width:720px),(max-height:500px) and (orientation:landscape){
  .campaign-modal-backdrop{display:flex;align-items:stretch;justify-content:stretch;padding:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background:var(--canvas)}
  .campaign-modal-backdrop .campaign-dialog{display:flex;flex-direction:column;width:100%;height:100%;max-height:none;min-height:0;overflow:hidden;padding:0;border-radius:0;box-shadow:none}
  .campaign-dialog-title{flex:none;margin:0!important;padding:18px 18px 14px;border-bottom:1px solid var(--line);background:var(--canvas)}
  .campaign-modal-backdrop .campaign-form{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;flex:1;min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 18px 20px;margin:0;scroll-padding-bottom:20px}
  .campaign-dialog .campaign-form input,.campaign-dialog .campaign-form select,.campaign-dialog .campaign-form textarea{font-size:16px}
  .campaign-dialog .campaign-form fieldset{min-height:0}
  .campaign-dialog .campaign-territory-picker{max-height:min(30svh,240px);overscroll-behavior:contain}
  .campaign-modal-backdrop .campaign-dialog>.field-error{flex:none;margin:0;padding:6px 18px;color:#b42318}
  .campaign-modal-backdrop .campaign-dialog>footer{position:sticky;bottom:0;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:none;margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--canvas)}
  .campaign-modal-backdrop .campaign-dialog>footer button{min-width:0;min-height:44px}
  .campaign-modal-backdrop .campaign-dialog>footer button.primary{grid-column:1/-1;grid-row:1}
  .campaign-modal-backdrop .campaign-dialog>footer button:first-child:not(.primary){grid-column:1;grid-row:2}
  .campaign-modal-backdrop .campaign-dialog>footer button:nth-child(2):not(.primary){grid-column:2;grid-row:2}
  .campaign-modal-backdrop .campaign-dialog>footer:has(>button:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
  .campaign-modal-backdrop .campaign-dialog>footer:has(>button:nth-child(2):last-child)>button{grid-column:auto;grid-row:1}
  .campaign-modal-backdrop .campaign-dialog>footer:has(>button:nth-child(2):last-child)>button.primary{grid-column:2}
}

/* The road-snap preview avoids the editor rail and floating map controls on phones. */
@media(max-width:720px),(max-height:500px) and (orientation:landscape){
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min{background:transparent;border:0;box-shadow:none;pointer-events:none}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion{
    display:block;position:fixed;left:max(72px,calc(62px + env(safe-area-inset-left)));right:max(10px,env(safe-area-inset-right));bottom:calc(272px + env(safe-area-inset-bottom));z-index:55;
    box-sizing:border-box;max-width:calc(100vw - 82px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(100svh - 252px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:0;padding:12px;border:1px solid #a7d7b5;border-radius:15px;background:var(--canvas);box-shadow:0 8px 26px #183b6835;pointer-events:auto;
  }
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>p{margin:6px 0;line-height:1.45}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>button{display:inline-flex;vertical-align:top;width:calc(50% - 5px);min-width:0;min-height:44px;margin:6px 0 0;padding:8px 6px;font-size:12px;line-height:1.25;white-space:normal}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>button+button{margin-left:6px}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min>.sheet-handle,
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min>h2,
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min>.sheet-summary{display:none}
}
@media(max-height:500px) and (orientation:landscape){
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion{left:auto;right:max(10px,env(safe-area-inset-right));bottom:calc(68px + env(safe-area-inset-bottom));width:min(340px,calc(100vw - 96px));max-width:calc(100vw - 96px);max-height:calc(100svh - 132px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:8px 10px}
  .editor-page:has(.road-suggestion) .editable-map>.map-fit-control{left:auto;right:160px;top:64px;bottom:auto;transform:none}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>b{font-size:13px}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>p{font-size:11px;line-height:1.3}
  .editor-page:has(.road-suggestion) .edit-panel.mobile-sheet.sheet-min .road-suggestion>button{min-height:44px;margin-top:4px}
}

/* Campaign sheet children may shrink inside narrow viewports and long territory lists. */
@media(max-width:720px),(max-height:500px) and (orientation:landscape){
  .campaign-modal-backdrop .campaign-dialog{min-width:0;max-width:100%;box-sizing:border-box}
  .campaign-dialog-title,.campaign-modal-backdrop .campaign-form,.campaign-form>label,.campaign-form>div,.campaign-form fieldset{min-width:0;max-width:100%;box-sizing:border-box}
  .campaign-form>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .campaign-form input,.campaign-form select,.campaign-form textarea{min-width:0;max-width:100%;box-sizing:border-box}
  .campaign-form fieldset{width:100%;min-inline-size:0}
  .campaign-form .campaign-territory-picker{min-width:0;max-width:100%;overflow-x:hidden;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch}
  .campaign-modal-backdrop .campaign-dialog>footer{width:100%;box-sizing:border-box}
}
@media(max-width:720px){.campaign-form>div{grid-template-columns:minmax(0,1fr)}}
.campaign-dialog>footer button{min-height:44px}

/* Congregation editor: lighter rail, legible guidance, small handles with forgiving hit areas. */
.congregation-editor .map-toolbar{gap:5px;padding:6px;background:color-mix(in srgb,var(--canvas) 94%,transparent);box-shadow:0 5px 16px #25282117}
.congregation-editor .map-toolbar button{min-height:40px;padding:8px 10px;font-size:12px}
.congregation-editor .editable-map .edit-instruction{max-width:min(520px,calc(100% - 32px));padding:8px 11px;border-color:#b9c8b6;background:color-mix(in srgb,var(--canvas) 96%,transparent);color:#415d47;line-height:1.4}
.congregation-editor .vertex-handle::before{width:12px;height:12px;border-width:2px;border-color:#54735a;box-shadow:0 1px 5px #25282155}
.congregation-editor .midpoint-handle::before{width:8px;height:8px;border-width:1px;background:#d8b45c;box-shadow:0 1px 4px #25282140}
@media(max-width:720px),(max-height:500px) and (orientation:landscape){
  .congregation-body .map-toolbar{top:calc(62px + env(safe-area-inset-top));bottom:calc(76px + env(safe-area-inset-bottom));width:50px;max-height:calc(100svh - 150px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;gap:4px;padding:4px;background:color-mix(in srgb,var(--canvas) 92%,transparent)}
  .congregation-body .map-toolbar button{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:9px;background:var(--canvas);box-shadow:none}
  .congregation-body .map-toolbar button{font-size:0;gap:0}
  .congregation-body .map-toolbar button svg{width:17px;height:17px}
  .congregation-body .editable-map>.edit-instruction{top:auto;left:122px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));width:auto;height:auto;max-width:none;margin:0;transform:none;padding:7px 9px;font-size:11px;line-height:1.3;text-align:left}
  .congregation-body .map .maplibregl-ctrl-bottom-left{left:58px;bottom:calc(76px + env(safe-area-inset-bottom))}
  .congregation-body .editable-map>.map-fit-control{bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media(max-height:500px) and (orientation:landscape){
  .congregation-body{position:absolute;inset:52px 0 0;display:block;height:auto;padding:0 0 calc(62px + env(safe-area-inset-bottom));overflow:hidden}
  .congregation-body main{height:100%}
  .congregation-body .editable-map,.congregation-body .map{height:100%;min-height:0;border:0;border-radius:0}
  .congregation-body .validation{display:none!important}
  .congregation-body .map-toolbar{top:calc(52px + env(safe-area-inset-top));bottom:calc(54px + env(safe-area-inset-bottom));max-height:calc(100svh - 112px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
  .congregation-body .editable-map>.edit-instruction{left:122px;right:12px;bottom:calc(56px + env(safe-area-inset-bottom));max-width:min(470px,calc(100% - 134px))}
  .congregation-body .map .maplibregl-ctrl-bottom-left{bottom:calc(54px + env(safe-area-inset-bottom))}
  .congregation-body .editable-map>.map-fit-control{bottom:calc(54px + env(safe-area-inset-bottom))}
}
.whats-new-upcoming article>div{display:grid;gap:1px}.login-whats-new{max-height:min(72svh,620px);overflow:auto}
.walkability-panel{display:grid;gap:10px;padding:12px 14px;border-top:1px solid var(--line);background:var(--canvas)}.walkability-panel>div:first-child{display:flex;justify-content:space-between;gap:10px}.walkability-panel>div:first-child span{color:var(--muted)}.walkability-minutes{display:flex;gap:6px}.walkability-minutes button{flex:1;min-height:38px}.walkability-minutes button.active{background:#37758d;color:#fff}.walkability-panel p,.walkability-panel small{margin:0;color:var(--muted);font-size:12px}.walkability-panel details ol{margin:8px 0 0;padding-left:20px}.walkability-panel details button{border:0;padding:3px 0;color:var(--ink)}
@media(max-width:520px){.walkability-minutes{gap:4px}.walkability-minutes button{padding-inline:4px;font-size:12px}}
.map-card{overflow:visible}.walkability-panel{position:absolute;z-index:6;left:12px;right:12px;bottom:48px;max-width:430px;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #25282125;background:color-mix(in srgb,var(--canvas) 94%,transparent)}
@media(max-width:720px){.walkability-panel{left:8px;right:8px;bottom:56px;max-width:none}}
.coverage-estimate-panel{padding:18px!important;border:1px solid var(--line);background:var(--surface)}.coverage-estimate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.coverage-estimate-head h3{margin:0 0 4px}.coverage-estimate-head p{margin:0;color:var(--muted);font-size:13px}.coverage-refresh{white-space:nowrap}.coverage-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 10px}.coverage-results>div{display:grid;gap:5px}.coverage-results span{font-size:13px;color:var(--muted)}.coverage-results strong{font-size:clamp(25px,3vw,36px);line-height:1.1;color:var(--ink)}.coverage-summary{margin:0;font-size:14px}.coverage-summary b{color:var(--map-green)}.coverage-explanation{margin:10px 0;color:var(--muted);font-size:13px;max-width:70ch}.coverage-controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:18px 0}.coverage-controls label{display:grid;gap:5px;font-size:12px;font-weight:600;color:var(--muted)}.coverage-controls select,.coverage-controls input{min-width:140px}.coverage-custom span{font-weight:400}.coverage-details{border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:var(--muted)}.coverage-details summary{cursor:pointer;font-weight:600;color:var(--ink)}.coverage-details p{margin:8px 0}.coverage-empty,.coverage-error{font-size:13px;color:var(--muted)}
@media(max-width:600px){.coverage-estimate-head{display:grid}.coverage-refresh{justify-self:start}.coverage-results{grid-template-columns:1fr;gap:14px}.coverage-controls{display:grid;grid-template-columns:1fr;align-items:stretch}.coverage-controls select,.coverage-controls input{width:100%}}
.coverage-marking-controls{display:grid;gap:10px;padding:16px;border-top:1px solid var(--line);background:var(--wash)}.coverage-marking-controls h3,.coverage-marking-controls p{margin:0}.coverage-marking-controls p{color:var(--muted);font-size:13px}.coverage-marking-step{font-size:13px;font-weight:700;color:var(--ink)}.coverage-marking-actions{display:flex;flex-wrap:wrap;gap:8px}.coverage-marking-actions button{min-width:0}.coverage-marking-actions .primary{margin-left:auto}.coverage-marking-controls .button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){.coverage-marking-controls{margin-bottom:calc(76px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.coverage-marking-actions{display:grid;grid-template-columns:1fr 1fr}.coverage-marking-actions .primary{grid-column:1/-1;margin-left:0}}
.partial-coverage-entry{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid var(--line);background:var(--paper)}.partial-coverage-entry>div{display:grid;gap:3px}.partial-coverage-entry span{color:var(--muted);font-size:12px}.partial-coverage-entry button{flex:none}.partial-coverage-saved-note{display:grid;gap:10px;margin:0 16px 14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.partial-coverage-saved-note p{margin:0;color:var(--muted);font-size:12px}.partial-coverage-saved-note>div{display:flex;flex-wrap:wrap;gap:8px}.partial-coverage-saved-note button{min-height:40px}
@media(max-width:600px){.partial-coverage-entry{align-items:stretch;flex-direction:column;padding:12px}.partial-coverage-entry button{width:100%}.partial-coverage-saved-note{margin-inline:12px}.partial-coverage-saved-note>div{display:grid}.partial-coverage-saved-note button{width:100%}}
.coverage-road-snap-review{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid var(--map-green);border-radius:10px;background:var(--paper)}.coverage-road-snap-review p{flex:1 1 100%;margin:0}.coverage-road-snap-review button{min-height:44px;flex:1 1 160px}
@media(max-width:600px){.coverage-road-snap-review{display:grid;grid-template-columns:1fr}.coverage-road-snap-review button{width:100%}}
.shared-map{display:grid;grid-template-rows:minmax(0,1fr) auto}.shared-map>.map-shell{grid-row:1}.shared-coverage-controls{z-index:3;display:grid;gap:10px;max-height:34vh;overflow:auto;padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--canvas);box-shadow:0 -8px 28px #25282112}.shared-coverage-controls>div:first-child{display:grid;gap:3px}.shared-coverage-controls p,.shared-coverage-actions span{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.shared-coverage-controls>button,.shared-coverage-actions button,.shared-coverage-close{min-height:44px}.shared-coverage-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.shared-coverage-actions span{flex:1 1 100%}.shared-coverage-actions button{flex:1 1 145px}.shared-coverage-controls label{display:grid;gap:4px;font-size:12px}.shared-coverage-controls input{width:100%;min-width:0}.report-coverage-preview{display:grid;gap:8px;width:min(100%,760px);margin:12px auto}.report-coverage-preview>p{margin:0}.report-coverage-preview .map-shell{height:320px;min-height:260px;overflow:hidden;border:1px solid var(--line);border-radius:12px}
.shared-map.with-coverage-return .shared-location-action{bottom:calc(34vh + 18px)}
@media(max-width:700px){.shared-coverage-controls{max-height:40vh;padding-inline:12px}.shared-coverage-actions{display:grid;grid-template-columns:1fr 1fr}.shared-coverage-actions button{width:100%;min-width:0}.shared-coverage-controls .primary{grid-column:1/-1}.shared-map.with-coverage-return .shared-location-action{bottom:calc(40vh + 12px)}.report-coverage-preview .map-shell{height:260px;min-height:230px}}


/* Shared territory reporting polish: clarify quick report vs exact partial trace. */
.shared-report-actions button{display:flex;align-items:center;gap:9px;text-align:left}
.shared-report-actions button>svg{flex:none}
.shared-report-actions button>span{display:grid;gap:1px;min-width:0}
.shared-report-actions button strong{font-size:13px;font-weight:650;line-height:1.15}
.shared-report-actions button small{color:var(--muted);font-size:10px;line-height:1.15;white-space:nowrap}
.shared-coverage-controls>div:first-child b{font-size:15px}
.shared-coverage-controls>.primary{font-weight:650}
.report-review-note{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:9px 11px;border:1px solid #c8d2c2;border-radius:9px;background:#eef1e9;color:var(--ink)}
.report-review-note strong{font-size:12px}
.report-review-note span{color:var(--muted);font-size:12px}
.report-confirm-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.report-confirm-actions button{min-height:44px}
@media(max-width:480px){
  .shared-report-actions{width:min(300px,calc(100vw - 78px))}
  .shared-report-actions button{align-items:flex-start;padding:8px 9px}
  .shared-report-actions button small{white-space:normal}
  .shared-coverage-controls{gap:12px}
  .shared-coverage-controls>div:first-child p{font-size:12px}
  .report-confirm-card{margin-bottom:calc(86px + env(safe-area-inset-bottom))}
  .report-confirm-actions{display:grid;grid-template-columns:1fr;position:sticky;bottom:calc(72px + env(safe-area-inset-bottom));z-index:4;padding:10px;margin:0 -10px;background:linear-gradient(to bottom,color-mix(in srgb,var(--canvas) 84%,transparent),var(--canvas) 28%)}
  .report-confirm-actions button{width:100%}
  .report-confirm-actions .primary{order:-1}
}


/* Automatic campaign linking for territory work. */
.campaign-auto-link-note{display:grid;gap:3px;padding:10px 12px;border:1px solid #c8d2c2;border-radius:10px;background:#eef1e9;color:var(--ink)}
.campaign-auto-link-note b{font-size:12px}
.campaign-auto-link-note span{color:var(--muted);font-size:12px;line-height:1.4}
.campaign-work-choice{display:grid;gap:8px;min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.campaign-work-choice legend{padding:0 6px;font-weight:650}
.campaign-work-choice>p{margin:0 0 2px;color:var(--muted);font-size:12px}
.campaign-work-choice>label{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--canvas);cursor:pointer}
.campaign-work-choice>label:has(input:checked){border-color:var(--map-green);background:#eef1e9}
.campaign-work-choice input{width:18px!important;height:18px;margin:0}
.campaign-work-choice label>span{display:grid;gap:2px;min-width:0}
.campaign-work-choice label b{font-size:13px}
.campaign-work-choice label small{color:var(--muted);font-size:11px}
@media(max-width:520px){.campaign-work-choice{padding:10px}.campaign-work-choice>label{min-height:52px}}


/* DS cleanup · legacy map/editor blue pass */
.edit-instruction{
  background:color-mix(in srgb,var(--canvas) 96%,transparent);
  border-color:#b9c8b6;
  color:#415d47;
  box-shadow:0 5px 18px #25282118;
}
.vertex-handle::before{
  border-color:var(--map-green);
  background:var(--canvas);
  box-shadow:0 2px 7px #25282138;
}
.midpoint-handle::before{
  background:var(--road-ochre);
  border-color:var(--canvas);
  box-shadow:0 2px 7px #25282130;
}
.edit-help{
  background:#e8eee4;
  color:#415d47;
  border:1px solid #b9c8b6;
}
.road-metrics b{color:var(--map-green)}
.app-loading{color:var(--ink)}
.app-loading span{
  border-color:#dce8d5;
  border-top-color:var(--map-green);
}
.settings-section{
  background:var(--canvas);
  border-color:var(--line);
  border-radius:9px;
}
.settings-section>div>svg{
  background:#e4eadf;
  color:var(--map-green);
}
.confirm-dialog{
  background:var(--canvas);
  border:1px solid var(--line);
  box-shadow:0 24px 70px #25282128;
}
.modal-backdrop{background:#2528216e}
.backup-dialog input:focus{
  border-color:#8ea18f;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--map-green) 18%,transparent);
}
.dialog-backup-icon{
  background:#e4eadf;
  color:var(--map-green);
}
.backup-summary{background:#f3eee2}
.mobile-territory-card,
.road-tools,
.mobile-editor-actions,
.editor-body .edit-panel.mobile-sheet{
  background:var(--canvas);
}
.mobile-editor-actions button.active{
  color:var(--map-green);
  background:#e4eadf;
}
.sheet-handle span{background:#b9b7ae}
.map-fit-control{
  color:var(--boundary);
  background:var(--canvas);
  border-color:#c9c5ba;
  box-shadow:0 3px 10px #2528211a;
}
.map-fit-control:hover{
  color:var(--map-green);
  border-color:#8ea18f;
}
.map .maplibregl-ctrl-group{
  border-color:var(--line);
  box-shadow:0 4px 14px #25282118;
}
/* Public witnessing and its print studio share the local-first service design. */
.public-witnessing-page,
.print-center {
  min-width: 0;
}

.public-witnessing-title {
  align-items: flex-end;
  gap: 20px;
}

.public-witnessing-title > div:first-child {
  min-width: 0;
}

.public-witnessing-title .eyebrow {
  color: var(--map-green);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.public-witnessing-title p {
  margin: 6px 0 0;
  line-height: 1.45;
}

.outings-title-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.public-witnessing-layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  align-items: start;
  gap: 16px;
}

.public-witnessing-sites,
.public-witnessing-program {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
}

.public-witnessing-sites > header,
.public-witnessing-program > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}

.public-witnessing-sites > header > div,
.public-witnessing-program > header > div {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.public-witnessing-sites > header > div > svg,
.public-witnessing-program > header > div > svg {
  width: 19px;
  color: var(--map-green);
  flex: none;
}

.public-witnessing-sites header b,
.public-witnessing-sites header small,
.public-witnessing-program header b,
.public-witnessing-program header small {
  display: block;
}

.public-witnessing-sites header small,
.public-witnessing-program header small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10px;
}

.public-witnessing-program > header input {
  min-width: 0;
  max-width: 170px;
  min-height: 40px;
  padding: 7px 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
}

.public-site-list,
.public-shift-list {
  display: grid;
  gap: 8px;
  padding: 12px;
}

.public-site-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 7px;
  min-width: 0;
}

.public-site-list article > button:first-child {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  justify-content: start;
  min-width: 0;
  min-height: 52px;
  padding: 9px 10px;
  text-align: left;
  background: var(--paper);
}

.public-site-list article > button:first-child > svg {
  width: 17px;
  color: var(--map-green);
}

.public-site-list article > button:first-child span,
.public-site-list article > button:first-child b,
.public-site-list article > button:first-child small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.public-site-list article > button:first-child small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}

.public-site-list .icon-button {
  min-height: 42px;
  padding: 8px;
  color: var(--muted);
}

.public-empty-copy {
  margin: 0;
  padding: 8px 3px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.public-site-editor {
  display: grid;
  gap: 9px;
  padding: 12px 14px 14px;
  border-top: 1px solid var(--line);
}

.public-site-editor > b {
  font-size: 12px;
}

.public-site-editor input,
.public-site-editor textarea,
.public-shift-form input,
.public-shift-form select,
.public-shift-form textarea {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  color: var(--ink);
}

.public-site-editor textarea,
.public-shift-form textarea {
  min-height: 76px;
  resize: vertical;
}

.public-site-editor > div {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.public-site-editor button,
.outings-title-actions button {
  min-height: 42px;
}

.public-shift-card {
  display: grid;
  grid-template-columns: minmax(115px, .7fr) minmax(0, 1.3fr);
  gap: 12px;
  width: 100%;
  min-width: 0;
  min-height: 64px;
  padding: 11px 12px;
  text-align: left;
  background: var(--paper);
}

.public-shift-date,
.public-shift-copy {
  display: grid;
  align-content: center;
  gap: 4px;
  min-width: 0;
}

.public-shift-date small,
.public-shift-copy small,
.public-shift-copy i {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

.public-shift-copy strong,
.public-shift-copy small {
  overflow-wrap: anywhere;
}

.public-shift-copy small,
.public-shift-copy i {
  display: flex;
  align-items: center;
  gap: 5px;
}

.public-shift-copy small svg,
.public-shift-copy i svg {
  width: 14px;
  height: 14px;
  flex: none;
}

.public-program-empty {
  display: grid;
  justify-items: center;
  gap: 7px;
  padding: 34px 16px;
  text-align: center;
  color: var(--muted);
}

.public-program-empty > svg {
  width: 26px;
  color: var(--map-green);
}

.public-program-empty b {
  color: var(--ink);
  font-size: 13px;
}

.public-program-empty p {
  max-width: 260px;
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
}

.public-shift-editor {
  position: fixed;
  z-index: 80;
  top: 102px;
  right: 22px;
  display: flex;
  flex-direction: column;
  width: min(470px, calc(100vw - 32px));
  max-height: calc(100dvh - 124px);
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
  box-shadow: 0 20px 55px #25282133;
}

.public-shift-editor > header,
.public-shift-editor > footer {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: none;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}

.public-shift-editor > header > div {
  min-width: 0;
  flex: 1;
}

.public-shift-editor h2 {
  margin: 3px 0 0;
  font-size: 17px;
}

.public-shift-editor > header button {
  width: 40px;
  height: 40px;
  padding: 8px;
}

.public-shift-form {
  display: grid;
  gap: 12px;
  min-height: 0;
  overflow: auto;
  padding: 14px;
}

.public-shift-form > label,
.public-shift-form .public-shift-time-grid > label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
}

.public-shift-time-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.public-participants,
.outing-recurrence {
  display: grid;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
}

.public-participants legend,
.outing-recurrence legend {
  padding: 0 4px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
}

.public-participants > label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  font-size: 11px;
}

.public-participants > label.selected {
  border-color: #91aa94;
  background: #edf1e9;
}

.public-participants input {
  width: 18px;
  min-height: 18px;
  flex: none;
  accent-color: var(--map-green);
}

.public-participants small {
  margin-left: auto;
  color: var(--muted);
  font-size: 9px;
}

.public-participants p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}

.outing-recurrence > select {
  width: 100%;
}

.outing-recurrence > label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 11px;
}

.public-shift-editor > footer {
  justify-content: flex-end;
  flex-wrap: wrap;
  border-top: 1px solid var(--line);
  border-bottom: 0;
}

.public-shift-editor > footer > span {
  flex: 1;
}

.public-shift-editor > footer button {
  min-height: 42px;
}

.print-catalog {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

.print-catalog > button,
.print-catalog-link {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 50px;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--canvas);
  color: var(--ink);
  text-decoration: none;
}

.print-catalog > button > svg,
.print-catalog-link > svg {
  width: 18px;
  flex: none;
  color: var(--map-green);
}

.print-catalog > button > span,
.print-catalog-link > span {
  display: grid;
  min-width: 0;
  text-align: left;
}

.print-catalog > button small,
.print-catalog-link small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px;
}

.print-catalog > button.active,
.print-catalog > button[aria-selected="true"] {
  border-color: #91aa94;
  background: #edf1e9;
  color: var(--map-green);
}

.print-tab-panel {
  min-width: 0;
}

.outing-print-section {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
}

.outing-print-layout {
  display: grid;
  grid-template-columns: minmax(250px, 330px) minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
}

.outing-print-controls {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--paper);
}

.outing-print-field {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 11px;
}

.outing-print-field input {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--canvas);
}

.outing-print-controls > .primary {
  min-height: 44px;
}

.outing-print-controls .print-message {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.4;
}

.outing-print-controls .multi-export-actions {
  display: grid;
  gap: 7px;
}

.outing-print-controls .multi-export-actions button {
  width: 100%;
  min-height: 42px;
}

.outing-print-preview {
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 420px;
  overflow: hidden;
  padding: 16px;
  border: 1px solid #d4cec0;
  border-radius: 10px;
  background: #e8e4db;
}

.outing-print-preview > img {
  display: block;
  width: min(100%, 794px);
  height: auto;
  background: white;
  box-shadow: 0 8px 26px #25282124;
}

.outing-print-preview > div {
  display: grid;
  justify-items: center;
  gap: 9px;
  color: var(--muted);
  text-align: center;
}

.outing-print-preview > div > svg {
  width: 32px;
  height: 32px;
  color: var(--map-green);
}

.outing-print-preview > div > b {
  color: var(--ink);
}

.outing-print-preview > div > span {
  font-size: 11px;
}

@media (max-width: 900px) {
  .public-witnessing-title {
    display: grid;
    align-items: stretch;
    gap: 12px;
  }

  .outings-title-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .outings-title-actions button {
    width: 100%;
    min-width: 0;
  }

  .public-witnessing-layout,
  .outing-print-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .public-shift-editor {
    top: 82px;
    right: 12px;
    max-height: calc(100dvh - 96px);
  }

  .outing-print-preview {
    min-height: 360px;
  }
}

@media (max-width: 520px) {
  .public-witnessing-page,
  .print-center {
    padding-inline: 12px;
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }

  .public-witnessing-title h1 {
    font-size: 22px;
    line-height: 1.2;
  }

  .outings-title-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .public-witnessing-program > header {
    align-items: flex-start;
  }

  .public-witnessing-program > header input {
    max-width: 148px;
  }

  .public-shift-card {
    grid-template-columns: minmax(88px, .7fr) minmax(0, 1.3fr);
    gap: 8px;
    padding: 10px;
    font-size: 11px;
  }

  .public-shift-time-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .public-shift-editor {
    inset: max(8px, env(safe-area-inset-top)) 8px calc(76px + env(safe-area-inset-bottom));
    width: auto;
    max-height: none;
  }

  .public-shift-editor > footer > span {
    display: none;
  }

  .public-shift-editor > footer button {
    flex: 1 1 120px;
  }

  .print-catalog {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .print-catalog > button,
  .print-catalog-link {
    min-height: 54px;
    padding: 8px;
    font-size: 11px;
  }

  .print-catalog > button > span,
  .print-catalog-link > span {
    overflow-wrap: anywhere;
  }

  .outing-print-section {
    padding: 12px;
  }

  .outing-print-controls {
    padding: 12px;
  }

  .outing-print-controls .multi-export-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .outing-print-preview {
    min-height: 290px;
    padding: 8px;
  }
}
/* Keep account reconciliation visible after "Revisar esta copia". */
.holoteles-reconcile-panel{scroll-margin-top:100px}
.holoteles-reconcile-panel{display:grid;gap:14px;outline:none;scroll-margin-top:96px}
.holoteles-reconcile-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.holoteles-reconcile-panel>header>div,.holoteles-reconcile-panel>header>div>span{display:grid;gap:4px;min-width:0}
.holoteles-reconcile-panel>header small,.reconcile-choice-consequence{color:var(--muted);font-size:12px;line-height:1.45}
.holoteles-reconcile-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.holoteles-reconcile-summary>span{display:grid;gap:3px;justify-items:center;padding:10px 6px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}
.holoteles-reconcile-summary b{font-size:20px;line-height:1.1}
.holoteles-reconcile-summary small{font-size:11px;color:var(--muted);text-align:center}
.holoteles-reconcile-summary>.protected-delete-count{grid-column:span 2;background:#fff6df;border-color:#ddc889}
.holoteles-reconcile-list{display:grid;gap:10px;max-height:60vh;overflow:auto;overscroll-behavior:contain}
.holoteles-reconcile-list>article{display:grid;grid-template-columns:minmax(120px,1fr) auto;align-items:start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}
.holoteles-reconcile-list>article>div:first-child{display:grid;gap:4px;min-width:0}
.holoteles-reconcile-list>article>div:first-child small{overflow-wrap:anywhere;color:var(--muted)}
.reconcile-status{font-size:12px;font-weight:700}
.reconcile-version-details,.reconcile-choice-consequence{grid-column:1/-1}
.reconcile-version-details>summary{min-height:36px;display:flex;align-items:center;cursor:pointer;font-size:12px;font-weight:650}
.reconcile-version-details>p{padding:8px;border-radius:8px;background:#fff6df;font-size:12px;line-height:1.45}
.reconcile-version-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reconcile-version-columns section{min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:white}
.reconcile-version-columns h4{margin:0 0 7px;font-size:12px;overflow-wrap:anywhere}
.reconcile-version-columns pre{max-height:220px;overflow:auto;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.45 ui-monospace,SFMono-Regular,monospace}
.reconcile-choice{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.reconcile-choice button{min-height:42px;padding:8px 12px}
.reconcile-choice button.selected{outline:2px solid var(--accent,#587b55)}
.reconcile-tombstone-lock{align-self:center;padding:8px 10px;border:1px solid #ddc889;border-radius:8px;background:#fff6df;color:#654e1b;font-size:12px;font-weight:650;line-height:1.4}
.reconcile-choice-consequence{margin:0}
.holoteles-reconcile-panel>footer{display:flex;justify-content:space-between;align-items:center;gap:12px}
.holoteles-reconcile-panel>footer p{color:var(--muted);font-size:12px}
@media(max-width:640px){
  .holoteles-reconcile-panel{scroll-margin-top:82px}
  .holoteles-reconcile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .holoteles-reconcile-summary>.protected-delete-count{grid-column:span 2}
  .holoteles-reconcile-list{max-height:52dvh}
  .holoteles-reconcile-list>article{grid-template-columns:minmax(0,1fr)}
  .reconcile-version-columns{grid-template-columns:minmax(0,1fr)}
  .reconcile-version-columns pre{max-height:180px}
  .reconcile-choice{display:grid;grid-template-columns:1fr}
  .reconcile-choice button{width:100%;min-height:44px}
  .holoteles-reconcile-panel>footer{align-items:stretch;flex-direction:column}
  .holoteles-reconcile-panel>footer button{min-height:44px}
}

/* Make accessible territory results independently scrollable on small screens. */
.walkability-more ol{max-height:min(38dvh,320px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

/* Keep the historical cloud-copy actions usable on narrow screens. */
@media(max-width:640px){
  .holoteles-remote-list article{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
}
/* Dashboard and compact header overrides must follow the legacy global rules. */
.service-home-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
}

.service-home-context-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.service-home-context-copy .eyebrow {
  color: var(--map-green);
}

.service-home-context h2 {
  margin: 0;
  color: var(--ink);
  font-size: 19px;
  line-height: 1.25;
}

.service-home-context p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.service-home-context small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.service-home-context > button {
  flex: 0 0 auto;
  min-height: 44px;
  border-color: var(--line);
  background: var(--canvas);
  color: var(--ink);
}

.service-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.service-overview-grid > button {
  display: grid;
  align-content: start;
  justify-items: start;
  gap: 6px;
  min-width: 0;
  min-height: 126px;
  padding: 15px 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
  color: var(--ink);
  text-align: left;
  white-space: normal;
}

.service-overview-grid > button:hover {
  border-color: #91aa94;
  background: #f5f7f1;
}

.service-overview-grid > button:focus-visible,
.service-home-context > button:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--map-green) 45%, transparent);
  outline-offset: 2px;
}

.service-overview-grid > button > span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
}

.service-overview-grid > button > strong {
  color: var(--map-green);
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
}

.service-overview-grid > button > small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.publications-home-placeholder {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--canvas);
}

.publications-home-placeholder > div:first-child {
  min-width: 0;
}

.publications-home-placeholder h2,
.publications-home-placeholder p {
  margin: 4px 0 0;
}

.publications-home-placeholder p {
  color: var(--muted);
  line-height: 1.45;
}

.publications-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 1250px) {
  /* The global compact-header rule hides non-primary buttons. Keep the one
     existing account control visible instead of duplicating it in a menu. */
  .topbar .head-actions .head-account-menu > .head-account-button {
    display: inline-flex !important;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    padding: 0;
  }
}

@media (max-width: 1100px) {
  .service-overview-grid {
    gap: 10px;
  }

  .dashboard .stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
}

@media (max-width: 720px) {
  .topbar .head-actions {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 5px;
    margin-left: auto !important;
  }

  .topbar .head-actions .head-account-menu > .head-account-button {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .service-home-context {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
    padding: 14px;
  }

  .service-home-context > button {
    width: 100%;
  }

  .service-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .service-overview-grid > button {
    min-height: 112px;
    padding: 12px;
  }

  .service-overview-grid > button > strong {
    font-size: 23px;
  }

  .service-overview-grid > button > span,
  .service-overview-grid > button > small {
    font-size: 11px;
  }

  .dashboard .stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    overflow: visible;
  }

  .dashboard .stat {
    min-width: 0;
    min-height: 86px;
    gap: 9px;
    padding: 11px;
  }

  .dashboard .stat-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
  }

  .dashboard .stat > div {
    min-width: 0;
  }

  .dashboard .stat > div > span,
  .dashboard .stat > div > small {
    font-size: 11px;
    line-height: 1.3;
    overflow-wrap: anywhere;
  }

  .dashboard .stat strong {
    font-size: 18px;
    overflow-wrap: anywhere;
  }

  .publications-home-placeholder {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
  }

  .publications-home-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .publications-home-actions button {
    min-width: 0;
    min-height: 44px;
  }
}

@media (max-width: 370px) {
  .topbar .head-actions {
    gap: 3px;
  }

  .topbar .head-actions .head-account-menu > .head-account-button {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }

  .service-overview-grid {
    gap: 7px;
  }

  .service-overview-grid > button {
    padding: 10px;
  }

  .publications-home-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}
.collaboration-review{scroll-margin-top:calc(var(--app-header-height, 76px) + 20px);scroll-margin-bottom:24px;min-width:0}
.settings-page>.settings-section.collaboration-review{display:block;grid-column:1/-1;align-self:stretch}
.collaboration-review-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;min-width:0}
.collaboration-review-header h2{margin:4px 0;scroll-margin-top:calc(var(--app-header-height, 76px) + 20px)}
.collaboration-review-header p{margin:0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.collaboration-review-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.collaboration-review-count{white-space:nowrap;color:var(--muted)}
.collaboration-review .collaboration-review-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px;margin:16px 0}
.collaboration-review-summary article{border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--paper);display:grid;gap:3px;min-width:0}
.collaboration-review-summary b{font-size:22px}
.collaboration-review-summary span{font-size:12px;color:var(--muted)}
.collaboration-review-group{border-top:1px solid var(--line);padding-top:14px;margin-top:14px;min-width:0}
.collaboration-review-group h3{margin:0 0 10px;scroll-margin-top:calc(var(--app-header-height, 76px) + 20px)}
.collaboration-review-list,.collaboration-conflict-list{display:grid;gap:10px;padding:0;list-style:none;min-width:0}
.collaboration-review-list li,.collaboration-conflict-card{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--paper);min-width:0;position:relative}
.collaboration-review-list li>div:first-child,.collaboration-conflict-card>div:first-child{min-width:0;overflow-wrap:anywhere}
.collaboration-conflict-card>div:first-child{flex:1 1 260px}
.collaboration-review-list span,.collaboration-conflict-card p,.collaboration-conflict-card small{display:block;color:var(--muted);font-size:12px;margin:4px 0;overflow-wrap:anywhere}
.collaboration-review-list .collaboration-resolved-status{flex:none;width:max-content;max-width:100%;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-subtle,#f4f2ec);color:var(--ink);font-size:12px;font-weight:600}
.review-choice-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center;min-width:0;position:relative;z-index:1}
.review-choice-row button{max-width:100%;min-height:42px;white-space:normal;line-height:1.25;flex:0 1 auto}
.collaboration-conflict-card .review-choice-row button{min-width:min(174px,100%)}
.review-choice-row button.selected,.review-choice-row button[aria-pressed="true"]{background:var(--ink);color:white;border-color:var(--ink);box-shadow:0 0 0 2px color-mix(in srgb,var(--map-green,#4f735c) 22%,transparent)}
.collaboration-review button:focus-visible{outline:3px solid var(--map-green,#4f735c);outline-offset:2px;position:relative;z-index:2}
.collaboration-inline-warning,.collaboration-self-import-notice{padding:10px 12px;border-radius:8px;background:#fff4df;color:#805b12;font-size:13px;overflow-wrap:anywhere}
.collaboration-self-import-notice{background:var(--surface-subtle,#f4f2ec);color:var(--ink);border:1px solid var(--line)}
.collaboration-review-footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:16px;flex-wrap:wrap}
.collaboration-review-footer .secondary{background:transparent}
.collaboration-no-action{align-self:center;color:var(--muted);font-size:13px}
.collaboration-close-backdrop{z-index:12001}
.collaboration-close-dialog footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.collaboration-close-dialog footer button{min-height:42px}
.collaboration-close-dialog button:focus-visible{outline:3px solid var(--map-green,#4f735c);outline-offset:2px}
.collaboration-review-return{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.collaboration-review-return span{min-width:0;overflow-wrap:anywhere}
.collaboration-noop-badge{display:inline-flex!important;width:max-content;max-width:100%;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted)!important;background:var(--surface-subtle,#f4f2ec)}
.collaboration-settings .collaboration-subsection input,.collaboration-settings .collaboration-subsection select{min-height:40px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:var(--paper);color:var(--ink)}
@media(max-width:1100px){.collaboration-conflict-card{display:grid;grid-template-columns:minmax(0,1fr)}.collaboration-conflict-card .review-choice-row{justify-content:flex-start}.collaboration-conflict-card .review-choice-row button{flex:1 1 190px}}
@media(max-width:620px){.collaboration-review-header,.collaboration-review-list li,.collaboration-conflict-card{display:grid;grid-template-columns:minmax(0,1fr)}.collaboration-review-header-actions{justify-content:flex-start}.collaboration-review .collaboration-review-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.review-choice-row{justify-content:stretch}.review-choice-row button{width:100%;flex:1 1 100%}.collaboration-review-footer{display:grid;grid-template-columns:minmax(0,1fr)}.collaboration-review-footer button{width:100%}.collaboration-review-return{align-items:stretch;flex-direction:column}.collaboration-review-return button{align-self:flex-start}.collaboration-close-dialog footer{display:grid;grid-template-columns:minmax(0,1fr)}.collaboration-close-dialog footer button{width:100%}}
@media(max-width:560px){.settings-page>.settings-section.collaboration-review{display:block!important;grid-column:1/-1}}
.transfer-center-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 16px;
  min-width: 0;
}
.settings-page > .settings-section.transfer-center {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
}
.settings-page {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}
.settings-page > .settings-section {
  min-width: 0;
}
.settings-page > .settings-section.transfer-center > .transfer-center-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  width: 100%;
}
.local-inventory-export {
  display: grid;
  grid-column: 1 / -1;
  gap: 16px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--canvas, #fff);
}
.local-inventory-heading,
.local-inventory-privacy {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.local-inventory-heading > svg,
.local-inventory-privacy > svg {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  color: var(--map-green, #526b55);
}
.local-inventory-heading h3,
.local-inventory-preview h4 {
  margin: 3px 0 6px;
}
.local-inventory-heading p,
.local-inventory-privacy p,
.local-inventory-preview p {
  margin: 0;
  color: #596158;
  line-height: 1.5;
}
.local-inventory-privacy {
  padding: 12px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--map-green, #526b55) 8%, white);
}
.local-inventory-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.local-inventory-actions button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.local-inventory-actions button svg {
  width: 17px;
  height: 17px;
}
.local-inventory-actions button:disabled {
  cursor: not-allowed;
  filter: saturate(.4);
  opacity: .58;
}
.local-inventory-preview {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.local-inventory-preview dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
.local-inventory-preview dl > div {
  min-width: 0;
  padding: 10px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--line) 30%, white);
}
.local-inventory-preview dt,
.local-inventory-counts small {
  color: #596158;
  font-size: .82rem;
}
.local-inventory-preview dd {
  overflow-wrap: anywhere;
  margin: 4px 0 0;
  font-weight: 650;
}
.local-inventory-counts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.local-inventory-counts li {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 3px 10px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.local-inventory-counts li span { overflow-wrap: anywhere; }
.local-inventory-counts li small { grid-column: 1 / -1; }
.local-inventory-field-list code,
.local-inventory-preview dd code { overflow-wrap: anywhere; }
.local-inventory-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  line-height: 1.45;
}
.local-inventory-consent input { flex: 0 0 auto; margin-top: 3px; }
.local-inventory-feedback { margin: 0; color: #45523f; }
.local-inventory-feedback.is-error { color: #a12822; }
@media (max-width: 650px) {
  .settings-page > .settings-section.transfer-center > .transfer-center-options { grid-template-columns: minmax(0, 1fr); }
  .local-inventory-export { padding: 14px; }
  .local-inventory-preview dl { grid-template-columns: minmax(0, 1fr); }
  .local-inventory-counts { grid-template-columns: minmax(0, 1fr); }
  .local-inventory-actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .local-inventory-actions button { width: 100%; }
}
.collaboration-folder-fallback {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--wash);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.collaboration-folder-fallback b {
  color: var(--ink);
}

.collaboration-export-feedback {
  margin: 0;
  padding: 10px 12px;
  border-radius: 9px;
  background: var(--wash);
  color: var(--ink);
  font-size: 13px;
  line-height: 1.5;
}

.collaboration-export-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 18px;
}

.backup-dialog.confirm-dialog > .collaboration-export-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  flex-direction: initial;
}

.collaboration-export-actions button {
  min-width: 0;
  min-height: 44px;
}

.collaboration-export-actions button:last-child {
  grid-column: 1 / -1;
  justify-self: center;
  min-width: 150px;
}

@media (max-width: 520px) {
  .collaboration-export-actions {
    grid-template-columns: 1fr;
  }

  .backup-dialog.confirm-dialog > .collaboration-export-actions {
    grid-template-columns: 1fr;
  }

  .collaboration-export-actions button:last-child {
    grid-column: auto;
    width: 100%;
  }
}
