.maplibregl-map{-webkit-tap-highlight-color:#0000;-webkit-touch-callout:none;font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;position:relative;overflow:hidden}.maplibregl-canvas{position:absolute;top:0;left: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;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;z-index:2;position:absolute}.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{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px buttontext}}.maplibregl-ctrl-group button{box-sizing:border-box;cursor:pointer;background-color:#0000;border:0;outline:none;width:29px;height:29px;padding:0;display:block}.maplibregl-ctrl button{-webkit-user-select:none;user-select:none}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;width:100%;height:100%;display:block}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:#0000}.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:#0000000d}}.maplibregl-ctrl button:not(:disabled):active{background-color:#0000000d}.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:2s linear infinite maplibregl-spin}@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(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{cursor:pointer;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");background-repeat:no-repeat;width:88px;height:23px;margin:0 0 -4px -4px;display:block;overflow:hidden}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:#0000;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{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{color:#000;box-sizing:content-box;background-color:#fff;border-radius:12px;min-height:20px;margin:10px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{visibility:visible;padding:2px 28px 2px 8px}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{cursor:pointer;box-sizing:border-box;background-color:#ffffff80;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);border:0;border-radius:12px;outline:none;width:24px;height:24px;display:none;position:absolute;top:0;right:0}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{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:#0000000d}.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:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{white-space:nowrap;color:#333;box-sizing:border-box;background-color:#ffffffbf;border:2px solid #333;border-top:#333;padding:0 5px;font-size:10px}.maplibregl-popup{will-change:transform;pointer-events:none;display:flex;position:absolute;top:0;left:0}.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{z-index:1;border:10px solid #0000;width:0;height:0}.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;align-self:center}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;align-self:center}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-left:none;border-right-color:#fff;align-self:center}.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#fff;border-right:none;align-self:center}[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{cursor:pointer;background-color:#0000;border:0;border-radius:0 3px 0 0;position:absolute;top:0;right:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{pointer-events:auto;background:#fff;border-radius:3px;padding:15px 10px;position:relative;box-shadow:0 1px 2px #0000001a}.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;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{will-change:transform;transition:opacity .2s;position:absolute;top:0;left:0}.maplibregl-marker-draggable{cursor:grab}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;width:15px;height:15px}.maplibregl-user-location-dot:before{content:"";animation:2s infinite maplibregl-user-location-dot-pulse;position:absolute}.maplibregl-user-location-dot:after{content:"";box-sizing:border-box;border:2px solid #fff;border-radius:50%;width:19px;height:19px;position:absolute;top:-2px;left:-2px;box-shadow:0 0 3px #00000059}@media (prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;width:1px;height:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{opacity:.5;background:#fff;border:2px dotted #202020;width:0;height:0;position:absolute;top:0;left:0}.maplibregl-cooperative-gesture-screen{color:#fff;opacity:0;pointer-events:none;z-index:99999;background:#0006;justify-content:center;align-items:center;padding:1rem;font-size:1.4em;line-height:1.2;transition:opacity 1s 1s;display:flex;position:absolute;inset:0}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity 50ms}.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{z-index:99999;width:100%!important;height:100%!important;position:fixed!important;top:0!important;left:0!important}.layer-panel{top:var(--space-3);left:var(--space-3);bottom:var(--map-status-zone);z-index:50;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-lg);animation:panelSlideIn .3s var(--ease-out) both;flex-direction:column;display:flex;position:absolute;overflow:hidden}.layer-panel__toggle{top:var(--space-3);left:var(--space-3);z-index:50;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);width:40px;height:40px;box-shadow:var(--shadow-md);color:var(--color-ink);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);animation:panelBtnIn .25s var(--ease-out) both;justify-content:center;align-items:center;display:flex;position:absolute}.layer-panel__toggle:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md), 0 0 0 1px rgba(var(--color-primary-rgb), .1)}.layer-panel__header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-chrome);background:var(--color-surface-raised);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.layer-panel__header-left{align-items:center;gap:var(--space-2);display:flex}.layer-panel__title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink);font-size:13px;font-weight:700}.layer-panel__count{font-family:var(--font-mono);color:var(--color-slate);background:#4d6b6214;border-radius:10px;padding:1px 6px;font-size:11px;font-weight:500}.layer-panel__header-actions{align-items:center;gap:var(--space-1);display:flex}.layer-panel__icon-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.layer-panel__icon-btn:hover{color:var(--color-ink);background:#0d1f1a0f}.layer-panel__icon-btn--accent:hover{background:rgba(var(--color-primary-rgb), .08);color:var(--color-primary)}.layer-panel__list{padding:var(--space-2);scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;flex:1;overflow-y:auto}.layer-panel__list::-webkit-scrollbar{width:5px}.layer-panel__list::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.layer-panel__empty{text-align:center;padding:var(--space-7) var(--space-5);animation:layerItemIn .4s var(--ease-out) both;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.layer-panel__empty-icon{background:rgba(var(--color-primary-rgb), .06);width:48px;height:48px;color:var(--color-primary);margin-bottom:var(--space-4);border-radius:50%;justify-content:center;align-items:center;display:flex}.layer-panel__empty-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-1);font-size:14px;font-weight:700}.layer-panel__empty-desc{color:var(--color-slate);max-width:200px;margin-bottom:var(--space-4);font-size:12px;line-height:1.5}.layer-panel__symbology{border-top:1px solid var(--color-chrome);padding:var(--space-3) var(--space-4);background:var(--color-surface-raised);animation:symbologyIn .25s var(--ease-out) both;flex-shrink:0}.layer-panel__sym-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);margin-bottom:var(--space-3);font-size:11px;font-weight:700}.layer-panel__sym-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.layer-panel__sym-field{flex-direction:column;gap:3px;display:flex}.layer-panel__sym-field--full{grid-column:1/-1}.layer-panel__sym-label{color:var(--color-slate);font-size:11px;font-weight:600;font-family:var(--font-display)}.layer-panel__sym-color-wrap{align-items:center;gap:var(--space-2);display:flex}.layer-panel__sym-color{border:1.5px solid var(--color-chrome);border-radius:var(--radius-sm);cursor:pointer;appearance:none;background:0 0;width:24px;height:24px;padding:0}.layer-panel__sym-color::-webkit-color-swatch-wrapper{padding:0}.layer-panel__sym-color::-webkit-color-swatch{border:none;border-radius:2px}.layer-panel__sym-color::-moz-color-swatch{border:none;border-radius:2px}.layer-panel__sym-hex{font-family:var(--font-mono);color:var(--color-slate);text-transform:uppercase;min-width:60px;font-size:12px}.layer-panel__sym-slider-wrap{align-items:center;gap:var(--space-2);display:flex}.layer-panel__sym-slider{appearance:none;background:var(--color-chrome);border-radius:2px;outline:none;flex:1;height:4px}.layer-panel__sym-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-ink);border:2px solid var(--color-surface);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #00000026}.layer-panel__sym-slider::-moz-range-thumb{background:var(--color-ink);border:2px solid var(--color-surface);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #00000026}.layer-panel__sym-value{font-family:var(--font-mono);color:var(--color-slate);text-align:right;min-width:32px;font-size:12px}.layer-panel__cluster-toggle{align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--space-1) 0;margin-top:var(--space-1);border-top:1px solid var(--color-chrome);padding-top:var(--space-3);display:flex}.layer-panel__cluster-check{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.layer-panel__cluster-switch{background:var(--color-chrome);width:32px;height:18px;transition:background var(--duration-normal) var(--ease-out);border-radius:9px;flex-shrink:0;display:inline-block;position:relative}.layer-panel__cluster-switch:after{content:"";background:var(--color-surface);width:14px;height:14px;transition:transform var(--duration-normal) var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.layer-panel__cluster-check:checked+.layer-panel__cluster-switch{background:var(--color-primary)}.layer-panel__cluster-check:checked+.layer-panel__cluster-switch:after{transform:translate(14px)}.layer-panel__cluster-check:focus-visible+.layer-panel__cluster-switch{outline:2px solid var(--color-focus);outline-offset:2px}.layer-panel__loading{gap:var(--space-2);padding:var(--space-3);flex-direction:column;flex:1;display:flex}.layer-panel__skeleton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);display:flex}.layer-panel__skeleton-geo{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;flex-shrink:0;width:24px;height:24px;animation:1.6s infinite shimmer}.layer-panel__skeleton-text{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:14px;animation:1.6s infinite shimmer}.layer-panel__error{padding:var(--space-3) var(--space-4);color:var(--color-danger);background:#c81e1e0d;border-bottom:1px solid #c81e1e1f;font-size:13px}@keyframes panelSlideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes panelBtnIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes layerItemIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes symbologyIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:200px}}.layer-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);animation:layerItemIn .25s var(--ease-out) both;display:flex;position:relative}.layer-item:hover{background:#0d1f1a08}.layer-item--active{background:rgba(var(--color-primary-rgb), .05);box-shadow:inset 3px 0 0 var(--color-primary)}.layer-item--active:hover{background:rgba(var(--color-primary-rgb), .08)}.layer-item--hidden{opacity:.45}.layer-item--dragging{opacity:.7;background:var(--color-surface-raised);box-shadow:var(--shadow-md);z-index:10}.layer-item__grip{width:16px;height:16px;color:var(--color-chrome);cursor:grab;opacity:0;transition:opacity var(--duration-fast) var(--ease-out);flex-shrink:0}.layer-item__grip:active{cursor:grabbing}.layer-item:hover .layer-item__grip,.layer-item--active .layer-item__grip{opacity:1}.layer-item__geo{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.layer-item__geo--point{background:color-mix(in srgb, var(--color-categorical-blue) 10%, transparent);color:var(--color-categorical-blue)}.layer-item__geo--line{color:#16a34a;background:#2b72301a}.layer-item__geo--polygon{color:#ca8a04;background:#8f5a081a}.layer-item__geo--multi{color:#9333ea;background:#9333ea1a}.layer-item__info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.layer-item__name{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.3;overflow:hidden}.layer-item__type{color:var(--color-slate);font-size:11px;font-family:var(--font-mono);letter-spacing:.01em}.layer-item__vis{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.layer-item__vis:hover{color:var(--color-ink);background:#0d1f1a0f}.layer-item:hover .layer-item__vis,.layer-item--active .layer-item__vis,.layer-item--hidden .layer-item__vis{opacity:1}.layer-item__actions{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.layer-item__actions:hover{background:#0d1f1a0f}.layer-item:hover .layer-item__actions,.layer-item--active .layer-item__actions{opacity:1}.layer-context-menu{z-index:300;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1);min-width:160px;animation:layerMenuIn .15s var(--ease-out);position:fixed}.layer-context-menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-body);color:var(--color-ink);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;font-size:13px;font-weight:500;display:flex}.layer-context-menu__item:hover{background:var(--color-surface-raised)}.layer-context-menu__item--danger{color:var(--color-danger)}.layer-context-menu__item--danger:hover{background:#c81e1e0d}.layer-context-menu__divider{background:var(--color-chrome);height:1px;margin:var(--space-1) 0}@keyframes layerMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.layer-dialog-overlay{background:var(--color-surface-overlay);padding:var(--space-5);z-index:400;animation:overlayIn .2s var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.layer-dialog{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);max-width:400px;animation:dialogIn .25s var(--ease-out)}.layer-dialog__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-5);font-size:18px;font-weight:700}.layer-dialog__title--danger{color:var(--color-danger)}.layer-dialog__body{color:var(--color-ink);margin-bottom:var(--space-5);font-size:14px;line-height:1.6}.layer-dialog__body strong{font-weight:600}.layer-dialog__form{gap:var(--space-4);flex-direction:column;display:flex}.layer-dialog__actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2);display:flex}.layer-field{gap:var(--space-1);flex-direction:column;display:flex}.layer-field__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.layer-field__input,.layer-field__select{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.layer-field__input:focus,.layer-field__select:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.layer-field__input::placeholder,.layer-field__select::placeholder{color:var(--color-slate);opacity:.6}.layer-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.layer-btn:active:not(:disabled){transform:scale(.97)}.layer-btn:disabled{opacity:.5;cursor:not-allowed}.layer-btn--primary{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.layer-btn--primary:active:not(:disabled){transform:scale(.97)}.layer-btn--primary:disabled{opacity:.5;cursor:not-allowed}.layer-btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.layer-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.layer-btn--danger{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.layer-btn--danger:active:not(:disabled){transform:scale(.97)}.layer-btn--danger:disabled{opacity:.5;cursor:not-allowed}.layer-btn--danger{color:#fff;background:var(--color-danger)}.layer-btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger), #000 15%)}.layer-btn--ghost{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.layer-btn--ghost:active:not(:disabled){transform:scale(.97)}.layer-btn--ghost:disabled{opacity:.5;cursor:not-allowed}.layer-btn--ghost{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.layer-btn--ghost:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.layer-btn--sm{height:30px;padding:0 var(--space-3);font-size:12px}.layer-msg--error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);font-size:13px;line-height:1.4}@media (width<=768px){.layer-panel{width:260px}.layer-panel__toggle{width:var(--touch-min);height:var(--touch-min)}}@media (width<=640px){.layer-panel{top:unset;border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;height:45%;animation:panelSlideUp .3s var(--ease-out) both;padding-bottom:var(--safe-bottom);bottom:0;left:0;right:0}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.layer-panel__toggle{top:unset;left:var(--space-3);bottom:calc(var(--space-1) + var(--safe-bottom));width:var(--touch-min);height:var(--touch-min);transform:none}.layer-item{padding:var(--space-3);min-height:var(--touch-min)}.layer-item__vis{width:var(--touch-min);height:var(--touch-min);opacity:1}.layer-item__actions{opacity:1;width:32px;height:32px}.layer-item__grip{opacity:.5}.layer-panel__icon-btn{width:36px;height:36px}.layer-dialog__actions{flex-direction:column-reverse}.layer-dialog__actions .layer-btn{width:100%;min-height:var(--touch-min)}.layer-dialog{padding:var(--space-5);max-width:calc(100vw - var(--space-6))}.layer-btn{min-height:var(--touch-min)}}.basemap-switcher{z-index:10;font-family:var(--font-display);position:relative}.basemap-switcher__trigger{align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-md);transition:box-shadow var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);font-family:var(--font-display);color:var(--color-ink);padding:5px 10px 5px 5px;font-size:12px;font-weight:500;line-height:1;display:flex}.basemap-switcher__trigger:hover{box-shadow:var(--shadow-lg);border-color:var(--color-slate)}.basemap-switcher--disabled .basemap-switcher__trigger{opacity:.7;cursor:not-allowed;box-shadow:none;border-style:dashed}.basemap-switcher--disabled .basemap-switcher__trigger:hover{box-shadow:none;border-color:var(--color-chrome)}.basemap-switcher__preview-thumb{object-fit:cover;border-radius:var(--radius-md);border:1px solid #00000014;flex-shrink:0;width:28px;height:28px;display:block}.basemap-switcher__active-label{text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.basemap-switcher__chevron{color:var(--color-slate);transition:transform var(--duration-fast) var(--ease-out);align-items:center;display:flex}.basemap-switcher__chevron--open{transform:rotate(180deg)}.basemap-switcher__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);bottom:calc(100% + var(--space-2));gap:var(--space-1);background-color:var(--color-surface);width:240px;box-shadow:var(--shadow-md);flex-direction:column;font-size:13px;line-height:1.4;display:flex;position:absolute;right:0}.basemap-switcher__error-dismiss{min-height:var(--touch-min,32px);padding:0 var(--space-2);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-end;text-decoration:underline}.basemap-switcher__panel{bottom:calc(100% + var(--space-2));background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:220px;box-shadow:var(--shadow-lg);animation:bmsSlideUp .2s var(--ease-out) both;position:absolute;right:0;overflow:hidden}.basemap-switcher__panel-header{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:11px;font-weight:600;display:flex}.basemap-switcher__grid{gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);grid-template-columns:1fr 1fr;display:grid}.basemap-switcher__tile{align-items:center;gap:var(--space-1);border-radius:var(--radius-md);cursor:pointer;min-width:0;transition:border-color var(--duration-fast) var(--ease-out);font-family:var(--font-display);background:0 0;border:2px solid #0000;flex-direction:column;padding:0;display:flex}.basemap-switcher__tile:hover{border-color:var(--color-chrome)}.basemap-switcher__tile--busy{cursor:progress;opacity:.6}.basemap-switcher__tile--busy:hover{border-color:#0000}.basemap-switcher__tile--active,.basemap-switcher__tile--active:hover{border-color:var(--color-primary)}.basemap-switcher__tile-preview{aspect-ratio:4/3;border-radius:calc(var(--radius-md) - 2px);background:var(--color-chrome);width:100%;position:relative;overflow:hidden}.basemap-switcher__tile-image{object-fit:cover;width:100%;height:100%;display:block}.basemap-switcher__tile-label{color:var(--color-ink);letter-spacing:.02em;padding-bottom:var(--space-1);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:500;overflow:hidden}.basemap-switcher__check{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:4px;right:4px;box-shadow:0 1px 3px #0000004d}@keyframes bmsSlideUp{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.basemap-switcher__trigger{min-height:var(--touch-min)}}@media (width<=640px){.basemap-switcher{bottom:auto;right:auto}.basemap-switcher__trigger{min-height:var(--touch-min);padding:6px 10px 6px 6px}.basemap-switcher__active-label{display:none}.basemap-switcher__panel{width:200px}.basemap-switcher__tile{padding:var(--space-1)}}.drawing-toolbar{--toolbar-left-zone:640px;--toolbar-right-zone:64px;top:var(--space-4);left:var(--toolbar-left-zone);right:var(--toolbar-right-zone);width:max-content;max-width:calc(100vw - var(--toolbar-left-zone) - var(--toolbar-right-zone));justify-content:center;align-items:center;gap:var(--space-2);z-index:15;pointer-events:none;animation:drawToolbarSlideIn .3s var(--ease-out) both;flex-wrap:wrap;margin-inline:auto;display:flex;position:absolute}.drawing-toolbar__group{background:var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-md), 0 0 0 1px #0000000f;pointer-events:auto;align-items:center;gap:1px;display:flex;overflow:hidden}.drawing-toolbar__separator{background:var(--color-chrome);width:1px;height:20px;margin:0 1px}.drawing-toolbar__btn{background:var(--color-surface);cursor:pointer;width:38px;height:38px;color:var(--color-slate);transition:background var(--duration-fast) ease, color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.drawing-toolbar__btn:hover:not(:disabled){background:var(--color-surface-raised);color:var(--color-ink)}.drawing-toolbar__btn:active:not(:disabled){background:var(--color-chrome)}.drawing-toolbar__btn:disabled{color:var(--color-chrome);cursor:not-allowed;opacity:.6}.drawing-toolbar__btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.drawing-toolbar__btn--active:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%);color:var(--color-btn-primary-text)}.drawing-toolbar__btn--active:after{content:"";background:var(--color-accent);border-radius:1px;width:14px;height:2px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.drawing-toolbar__btn--danger:hover:not(:disabled){color:var(--color-danger);background:#fef2f2}.drawing-toolbar__btn--danger:active:not(:disabled){background:#fee2e2}.drawing-toolbar__status{top:calc(100% + var(--space-2));white-space:nowrap;padding:var(--space-1) var(--space-3);color:#ffffffeb;font-family:var(--font-mono);letter-spacing:.01em;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;animation:drawStatusFadeIn .2s var(--ease-out) both;box-shadow:var(--shadow-sm);background:#0d1f1ad9;font-size:11px;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.drawing-toolbar__hint{top:calc(100% + var(--space-2));white-space:nowrap;padding:var(--space-1) var(--space-3);color:var(--color-slate);font-family:var(--font-mono);letter-spacing:.01em;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;animation:drawStatusFadeIn .2s var(--ease-out) both;box-shadow:var(--shadow-sm);background:#ffffffe6;font-size:11px;font-weight:400;position:absolute;left:50%;transform:translate(-50%)}.drawing-toolbar__error{top:calc(100% + var(--space-2));align-items:center;gap:var(--space-2);max-width:320px;padding:var(--space-2) var(--space-3);color:#fffffff2;font-family:var(--font-mono);letter-spacing:.01em;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:drawStatusFadeIn .2s var(--ease-out) both;box-shadow:var(--shadow-sm);background:#7f1d1d;font-size:11px;font-weight:500;display:flex;position:absolute;left:50%;transform:translate(-50%)}.drawing-toolbar__error button{padding:2px var(--space-2);color:inherit;border-radius:var(--radius-sm);font:inherit;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff4d;flex-shrink:0}.drawing-toolbar__error button:hover{background:#ffffff38}.map-view--panel-collapsed .drawing-toolbar{--toolbar-left-zone:360px}.map-view--attr-open .drawing-toolbar{--toolbar-right-zone:calc(320px + var(--space-3) * 2 + 64px)}@media (width<=899px){.drawing-toolbar{top:calc(var(--map-search-zone) + var(--space-2));left:var(--map-rail-gutter);max-width:none;max-height:calc(100% - var(--map-search-zone) - var(--space-2) - var(--space-3));align-items:flex-start;gap:var(--space-2);flex-direction:column;margin-inline:0;right:auto}.drawing-toolbar__group{flex-direction:column}.drawing-toolbar__separator{width:20px;height:1px;margin:1px 0}.drawing-toolbar__btn{width:var(--touch-min);height:var(--touch-min)}.drawing-toolbar__group--destructive{margin-block:var(--space-2)}.drawing-toolbar__status,.drawing-toolbar__hint{top:0;bottom:auto;left:calc(var(--touch-min) * 2 + var(--space-2) * 2);white-space:normal;max-width:40vw;animation-name:drawStatusFadeInAside}.map-view--attr-open .drawing-toolbar{max-height:calc(100% - var(--map-search-zone) - var(--space-2) - var(--attr-sheet-height) - var(--space-3))}}@keyframes drawToolbarSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes drawStatusFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes drawStatusFadeInAside{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}@media (width<=640px){.drawing-toolbar{top:auto;bottom:calc(var(--map-status-zone) + var(--space-2));left:var(--space-2);right:var(--space-2);max-width:calc(100% - var(--space-2) * 2);justify-content:flex-start;align-items:center;gap:var(--space-1);flex-direction:row;max-height:none;margin-inline:0}.drawing-toolbar__group{flex-direction:row}.drawing-toolbar__separator{width:1px;height:20px;margin:0 1px}.drawing-toolbar__btn{width:var(--touch-min);height:var(--touch-min)}.drawing-toolbar__group--destructive{display:none}.drawing-toolbar__status,.drawing-toolbar__hint{top:auto;bottom:calc(100% + var(--space-2));white-space:normal;text-align:center;max-width:80vw;font-size:10px;animation-name:drawStatusFadeIn;left:50%;transform:translate(-50%)}.drawing-toolbar__error{top:auto;bottom:calc(100% + var(--space-2));max-width:calc(100vw - var(--space-4));flex-wrap:wrap;justify-content:center}@keyframes drawToolbarSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes drawStatusFadeIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}}.bulk-action-bar{bottom:calc(var(--space-6) + var(--safe-bottom));z-index:20;align-items:center;gap:var(--space-2);animation:bulkBarSlideUp .25s var(--ease-out) both;flex-direction:column;display:flex;position:absolute;left:50%;transform:translate(-50%)}.bulk-action-bar__main{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg), 0 0 0 1px #00000014, 0 0 0 3px #a8431f26;display:flex}.bulk-action-bar__count{align-items:center;gap:var(--space-1);padding:0 var(--space-2);font-family:var(--font-body);color:var(--color-slate);white-space:nowrap;font-size:13px;display:flex}.bulk-action-bar__count-number{font-family:var(--font-mono);color:#d97706;text-align:center;min-width:18px;font-size:15px;font-weight:700}.bulk-action-bar__count-label{font-weight:400}.bulk-action-bar__actions{background:var(--color-chrome);border-radius:var(--radius-md);align-items:center;gap:1px;display:flex;overflow:hidden}.bulk-action-bar__btn{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-surface);cursor:pointer;min-width:70px;height:34px;color:var(--color-slate);font-family:var(--font-body);transition:background var(--duration-fast) ease, color var(--duration-fast) ease;border:none;font-size:12px;font-weight:500;display:flex}.bulk-action-bar__btn:hover:not(:disabled){background:var(--color-surface-raised);color:var(--color-ink)}.bulk-action-bar__btn:disabled{opacity:.5;cursor:not-allowed}.bulk-action-bar__btn--danger:hover:not(:disabled){color:var(--color-danger);background:#fef2f2}.bulk-action-bar__btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.bulk-action-bar__btn--active:hover:not(:disabled){color:#fff;background:#2a2d35}.bulk-action-bar__confirm{align-items:center;gap:var(--space-1);padding:0 var(--space-2);display:flex}.bulk-action-bar__confirm-text{font-family:var(--font-body);color:var(--color-danger);white-space:nowrap;font-size:12px;font-weight:600}.bulk-action-bar__confirm-yes,.bulk-action-bar__confirm-no{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-mono);border:none;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.bulk-action-bar__confirm-yes{background:var(--color-danger);color:#fff}.bulk-action-bar__confirm-yes:hover{background:#b91c1c}.bulk-action-bar__confirm-no{background:var(--color-chrome);color:var(--color-slate)}.bulk-action-bar__confirm-no:hover{background:var(--color-surface-raised)}.bulk-action-bar__clear{border:1px solid var(--color-chrome);border-radius:var(--radius-md);cursor:pointer;width:30px;height:30px;color:var(--color-slate);transition:all var(--duration-fast) ease;background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.bulk-action-bar__clear:hover{background:var(--color-surface-raised);color:var(--color-ink);border-color:var(--color-slate)}.bulk-action-bar__clear:disabled{opacity:.5;cursor:not-allowed}.bulk-action-bar__warning{padding:var(--space-1) var(--space-3);color:#a16207;font-family:var(--font-mono);border-radius:var(--radius-md);background:#fefce8;border:1px solid #a1620733;font-size:11px;font-weight:500}.bulk-action-bar__error{padding:var(--space-1) var(--space-3);color:var(--color-danger);font-family:var(--font-mono);border-radius:var(--radius-md);background:#fef2f2;border:1px solid #c81e1e33;font-size:11px;font-weight:500}.bulk-action-bar__loading{padding:var(--space-1) var(--space-3);color:#d97706;font-family:var(--font-mono);border-radius:var(--radius-md);background:#a8431f1a;font-size:11px;font-weight:500;animation:1.2s ease-in-out infinite bulkPulse}.bulk-edit-form,.bulk-move-form{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), 0 0 0 1px #00000014;min-width:320px;animation:bulkFormSlideUp .2s var(--ease-out) both;overflow:hidden}.bulk-edit-form__header,.bulk-edit-form__actions{padding:var(--space-2) var(--space-3);justify-content:space-between;align-items:center;display:flex}.bulk-edit-form__header{border-bottom:1px solid var(--color-chrome)}.bulk-edit-form__title{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;font-size:13px;font-weight:600}.bulk-edit-form__close{cursor:pointer;width:24px;height:24px;color:var(--color-slate);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.bulk-edit-form__close:hover{background:var(--color-chrome);color:var(--color-ink)}.bulk-edit-form__rows{padding:var(--space-2) var(--space-3);gap:var(--space-2);flex-direction:column;max-height:200px;display:flex;overflow-y:auto}.bulk-edit-form__row{gap:var(--space-1);grid-template-columns:1fr 1fr auto auto;align-items:center;display:grid}.bulk-edit-form__input{padding:var(--space-1) var(--space-2);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--color-ink);background:var(--color-surface);transition:border-color var(--duration-fast) ease;outline:none;font-size:12px}.bulk-edit-form__input:focus{border-color:var(--color-measure);box-shadow:0 0 0 2px #a8431f26}.bulk-edit-form__input::placeholder{color:var(--color-chrome)}.bulk-edit-form__select{padding:var(--space-1);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--color-slate);background:var(--color-surface);cursor:pointer;outline:none;font-size:11px}.bulk-edit-form__select:focus{border-color:var(--color-measure)}.bulk-edit-form__remove{cursor:pointer;width:22px;height:22px;color:var(--color-slate);border-radius:var(--radius-sm);opacity:.5;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.bulk-edit-form__remove:hover{opacity:1;color:var(--color-danger)}.bulk-edit-form__add{cursor:pointer;color:#d97706;font-family:var(--font-mono);background:0 0;border:none;padding:0;font-size:11px;font-weight:500}.bulk-edit-form__add:hover{text-decoration:underline}.bulk-edit-form__apply{padding:var(--space-1) var(--space-3);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);transition:background var(--duration-fast) ease;background:#d97706;border:none;font-size:12px;font-weight:600}.bulk-edit-form__apply:hover{background:#b45309}.bulk-move-form__header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.bulk-move-form__title{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;font-size:13px;font-weight:600}.bulk-move-form__close{cursor:pointer;width:24px;height:24px;color:var(--color-slate);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.bulk-move-form__close:hover{background:var(--color-chrome);color:var(--color-ink)}.bulk-move-form__fields{gap:var(--space-2);padding:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.bulk-move-form__field{flex-direction:column;gap:2px;display:flex}.bulk-move-form__label{font-family:var(--font-mono);color:var(--color-slate);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.bulk-move-form__input{padding:var(--space-1) var(--space-2);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--color-ink);background:var(--color-surface);width:100%;transition:border-color var(--duration-fast) ease;outline:none;font-size:13px}.bulk-move-form__input:focus{border-color:var(--color-measure);box-shadow:0 0 0 2px #a8431f26}.bulk-move-form__apply{margin:0 var(--space-3) var(--space-3);padding:var(--space-2);width:calc(100% - var(--space-3) * 2);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);transition:background var(--duration-fast) ease;background:#d97706;border:none;font-size:12px;font-weight:600}.bulk-move-form__apply:hover{background:#b45309}@keyframes bulkBarSlideUp{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes bulkFormSlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes bulkPulse{0%,to{opacity:1}50%{opacity:.6}}@media (width<=640px){.bulk-action-bar{bottom:calc(var(--space-8) + var(--safe-bottom));left:var(--space-2);right:var(--space-2);transform:none}.bulk-action-bar__main{justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-2);flex-wrap:wrap}.bulk-action-bar__count{justify-content:center;width:100%}.bulk-action-bar__btn{min-width:56px;height:var(--touch-min);font-size:11px}.bulk-edit-form,.bulk-move-form{width:100%;min-width:0}.bulk-edit-form__row{gap:var(--space-1);grid-template-columns:1fr 1fr}.bulk-edit-form__select{grid-column:1/-1}}[data-theme=dark] .bulk-action-bar__main{box-shadow:0 4px 20px #0006,0 0 0 1px #ffffff0f,0 0 0 3px #a8431f1a}[data-theme=dark] .bulk-action-bar__error{background:#c81e1e1a;border-color:#c81e1e33}[data-theme=dark] .bulk-action-bar__loading{background:#a8431f14}[data-theme=dark] .bulk-edit-form,[data-theme=dark] .bulk-move-form{box-shadow:0 4px 20px #0006,0 0 0 1px #ffffff0f}.media-attach{border-top:1px solid var(--color-chrome);background:var(--color-surface)}.media-attach__header{padding:var(--space-3) var(--space-4) var(--space-2);justify-content:space-between;align-items:center;display:flex}.media-attach__title-row{align-items:center;gap:var(--space-2);display:flex}.media-attach__title{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px;font-weight:700}.media-attach__count{background:color-mix(in srgb, var(--color-primary) 12%, transparent);min-width:18px;height:18px;font-family:var(--font-mono);color:var(--color-primary);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:600;display:flex}.media-attach__gate{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--color-slate);opacity:.65;font-size:12px;display:flex}.media-attach__gate svg{flex-shrink:0}.media-attach__error{align-items:center;gap:var(--space-2);margin:0 var(--space-4) var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-danger) 8%, transparent);border:1px solid color-mix(in srgb, var(--color-danger) 18%, transparent);color:var(--color-danger);animation:mediaErrorIn .2s var(--ease-out);font-size:11px;display:flex}.media-attach__error-dismiss{width:18px;height:18px;color:var(--color-danger);cursor:pointer;opacity:.6;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.media-attach__error-dismiss svg{width:12px;height:12px}.media-attach__error-dismiss:hover{opacity:1}.media-attach__skeleton{padding:var(--space-2) var(--space-4) var(--space-3)}.media-attach__skeleton-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.media-attach__skeleton-thumb{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--color-chrome);animation:1.5s ease-in-out infinite mediaShimmer}.media-attach__skeleton-thumb:nth-child(2){animation-delay:.15s}.media-attach__skeleton-thumb:nth-child(3){animation-delay:.3s}.media-attach__gallery{padding:0 var(--space-4) var(--space-2);animation:mediaGalleryIn .3s var(--ease-out) both;grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.media-attach__thumb{aspect-ratio:1;cursor:pointer;background:var(--color-chrome);transition:transform var(--duration-fast) var(--ease-out);border:none;border-radius:4px;padding:0;position:relative;overflow:hidden}.media-attach__thumb:hover{z-index:1;transform:scale(1.03)}.media-attach__thumb:hover .media-attach__thumb-overlay{opacity:1}.media-attach__thumb:hover .media-attach__thumb-delete{opacity:1;transform:scale(1)}.media-attach__thumb:focus-within .media-attach__thumb-overlay{opacity:1}.media-attach__thumb:focus-within .media-attach__thumb-delete{opacity:1;transform:scale(1)}.media-attach__thumb--deleting{opacity:.4;pointer-events:none}.media-attach__thumb-open{cursor:pointer;border-radius:inherit;background:0 0;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.media-attach__thumb-img{object-fit:cover;width:100%;height:100%;display:block}.media-attach__thumb-overlay{padding:var(--space-1) var(--space-2);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);background:linear-gradient(#0000 40%,#000000a6);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.media-attach__thumb-name{font-family:var(--font-mono);color:#ffffffe6;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.3;overflow:hidden}.media-attach__thumb-size{font-family:var(--font-mono);color:#fff9;font-size:8px}.media-attach__thumb-delete{color:#fff;cursor:pointer;opacity:0;width:22px;height:22px;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#0000008c;border:none;border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;top:3px;right:3px;transform:scale(.8)}.media-attach__thumb-delete:hover{background:var(--color-danger)}.media-attach__audio-list{padding:0 var(--space-4) var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.media-attach__audio-item{gap:0 var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-raised);border:1px solid color-mix(in srgb, var(--color-chrome) 60%, transparent);animation:mediaAudioIn .25s var(--ease-out) both;transition:border-color var(--duration-fast) var(--ease-out);grid-template-rows:auto auto;grid-template-columns:28px 1fr auto;display:grid}.media-attach__audio-item:hover{border-color:var(--color-chrome)}.media-attach__audio-item:hover .media-attach__audio-delete{opacity:.7}.media-attach__audio-item--deleting{opacity:.4;pointer-events:none}.media-attach__audio-icon{border-radius:var(--radius-sm);color:#7c3aed;background:#7c3aed1f;flex-shrink:0;grid-row:1/3;justify-content:center;align-self:center;align-items:center;width:28px;height:28px;display:flex}.media-attach__audio-info{flex-direction:column;min-width:0;display:flex}.media-attach__audio-name{font-family:var(--font-mono);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;line-height:1.3;overflow:hidden}.media-attach__audio-meta{font-family:var(--font-mono);color:var(--color-slate);opacity:.7;font-size:9px}.media-attach__audio-player{width:100%;height:28px;margin-top:var(--space-1);border-radius:14px;grid-column:2/3}.media-attach__audio-player::-webkit-media-controls-panel{background:var(--color-surface)}.media-attach__audio-delete{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;grid-row:1/3;justify-content:center;align-self:center;align-items:center;display:flex}.media-attach__audio-delete:hover{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, transparent);opacity:1!important}.media-attach__upload{justify-content:center;align-items:center;gap:var(--space-1);margin:0 var(--space-4) var(--space-3);padding:var(--space-4) var(--space-3);border:2px dashed color-mix(in srgb, var(--color-chrome) 80%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-surface-raised) 50%, transparent);color:var(--color-slate);transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);cursor:default;flex-direction:column;display:flex;position:relative}.media-attach__upload--drag{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, transparent);color:var(--color-primary)}.media-attach__upload--busy{opacity:.7;pointer-events:none}.media-attach__upload svg{opacity:.5}.media-attach__upload-label{text-align:center;font-size:12px}.media-attach__upload-browse{color:var(--color-primary);font-family:inherit;font-size:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.media-attach__upload-browse:hover{color:var(--color-primary-hover)}.media-attach__upload-hint{font-family:var(--font-mono);opacity:.5;font-size:10px}.media-attach__upload-input{opacity:0;cursor:pointer;pointer-events:none;position:absolute;inset:0}.media-attach__upload-progress{align-items:center;gap:var(--space-2);color:var(--color-primary);font-size:12px;display:flex}.media-attach__upload-spinner{border:2px solid color-mix(in srgb, var(--color-primary) 25%, transparent);border-top-color:var(--color-primary);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite mediaSpin}.media-lightbox{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:lightboxIn .25s var(--ease-out);background:#000000e0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.media-lightbox__content{flex-direction:column;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.media-lightbox__img{object-fit:contain;max-width:90vw;max-height:80vh;animation:lightboxImgIn .3s var(--ease-out);border-radius:4px;box-shadow:0 8px 40px #0006}.media-lightbox__caption{align-items:center;gap:var(--space-3);margin-top:var(--space-3);color:#fffc;display:flex}.media-lightbox__name{font-family:var(--font-mono);font-size:12px}.media-lightbox__counter{font-family:var(--font-mono);opacity:.5;font-size:11px}.media-lightbox__close{top:var(--space-4);right:var(--space-4);color:#fff;cursor:pointer;width:40px;height:40px;transition:background var(--duration-fast) var(--ease-out);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.media-lightbox__close:hover{background:#fff3}.media-lightbox__nav{color:#fff;cursor:pointer;width:44px;height:44px;transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.media-lightbox__nav:hover{background:#fff3}.media-lightbox__nav--prev{left:var(--space-4)}.media-lightbox__nav--prev:hover{transform:translateY(-50%)translate(-2px)}.media-lightbox__nav--next{right:var(--space-4)}.media-lightbox__nav--next:hover{transform:translateY(-50%)translate(2px)}@keyframes mediaErrorIn{0%{opacity:0;transform:translateY(-4px)}}@keyframes mediaShimmer{0%,to{opacity:.35}50%{opacity:.8}}@keyframes mediaGalleryIn{0%{opacity:0;transform:scale(.97)}}@keyframes mediaAudioIn{0%{opacity:0;transform:translate(-6px)}}@keyframes mediaSpin{to{transform:rotate(360deg)}}@keyframes lightboxIn{0%{opacity:0}}@keyframes lightboxImgIn{0%{opacity:0;transform:scale(.95)}}@media (width<=768px){.media-attach__gallery{gap:2px}}@media (width<=640px){.media-attach__gallery{grid-template-columns:repeat(3,1fr);gap:2px}.media-attach__thumb-overlay{opacity:1;background:linear-gradient(#0000 50%,#0000008c)}.media-attach__thumb-delete{opacity:.8;width:28px;height:28px;transform:scale(1)}.media-attach__audio-delete{opacity:.7;width:36px;height:36px}.media-attach__upload{margin:0 var(--space-3) var(--space-3)}.media-lightbox__nav{width:36px;height:36px}.media-lightbox__nav--prev{left:var(--space-2)}.media-lightbox__nav--next{right:var(--space-2)}.media-lightbox__close{top:var(--space-2);right:var(--space-2)}}.attr-panel{top:var(--space-3);right:var(--space-3);bottom:var(--map-status-zone);z-index:50;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:320px;box-shadow:var(--shadow-lg);animation:attrPanelIn .3s var(--ease-out) both;flex-direction:column;display:flex;position:absolute;overflow:hidden}.attr-panel__header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-chrome);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.attr-panel__title-row{align-items:center;gap:var(--space-2);display:flex}.attr-panel__title{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:600}.attr-panel__count{background:var(--color-chrome);min-width:20px;height:20px;font-family:var(--font-mono);color:var(--color-slate);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:500;display:flex}.attr-panel__close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.attr-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.attr-panel__feature-id{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-surface-raised);border-bottom:1px solid var(--color-chrome);flex-shrink:0;display:flex}.attr-panel__feature-label{font-family:var(--font-mono);color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600}.attr-panel__feature-value{font-family:var(--font-mono);color:var(--color-ink);opacity:.7;font-size:12px}.attr-panel__delete-feature{padding:0 var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-display);color:var(--color-danger);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;align-items:center;margin-left:auto;font-size:12px;font-weight:600;display:none}.attr-panel__delete-feature:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.attr-panel__delete-feature:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.attr-panel__error{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-danger) 20%, transparent);color:var(--color-danger);animation:attrErrorIn .2s var(--ease-out);flex-shrink:0;font-size:12px;display:flex}.attr-panel__error-dismiss{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--color-danger);cursor:pointer;opacity:.6;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.attr-panel__error-dismiss:hover{opacity:1}.attr-panel__skeleton{padding:var(--space-3) var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.attr-panel__skeleton-row{gap:var(--space-3);display:flex}.attr-panel__skeleton-key,.attr-panel__skeleton-val{border-radius:var(--radius-sm);background:var(--color-chrome);height:14px;animation:1.5s ease-in-out infinite attrShimmer}.attr-panel__skeleton-key{width:60px}.attr-panel__skeleton-val{flex:1;animation-delay:.15s}.attr-panel__list{overscroll-behavior:contain;padding:var(--space-2) 0;flex:1;overflow-y:auto}.attr-panel__empty{padding:var(--space-7) var(--space-4);text-align:center}.attr-panel__empty p{color:var(--color-slate);margin:0;font-size:13px;font-weight:500}.attr-panel__empty-hint{opacity:.7;margin-top:var(--space-1)!important;font-size:12px!important;font-weight:400!important}.attr-panel__row{gap:0 var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid color-mix(in srgb, var(--color-chrome) 50%, transparent);transition:background var(--duration-fast) var(--ease-out);animation:attrRowIn .25s var(--ease-out) both;grid-template-rows:auto auto;grid-template-columns:28px 1fr;display:grid}.attr-panel__row:hover{background:var(--color-surface-raised)}.attr-panel__row:hover .attr-panel__action-btn,.attr-panel__row--saving{opacity:.6}.attr-panel__type-badge{border-radius:var(--radius-sm);width:28px;height:28px;font-family:var(--font-mono);letter-spacing:.02em;flex-shrink:0;grid-row:1/3;justify-content:center;align-self:center;align-items:center;font-size:10px;font-weight:600;display:flex}.attr-panel__type-badge--string{color:#6366f1;background:#6366f11f}.attr-panel__type-badge--number{color:#0891b2;background:#0891b21f}.attr-panel__type-badge--boolean{color:#d97706;background:#d977061f}.attr-panel__key{font-family:var(--font-mono);color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;padding-top:2px;font-size:11px;font-weight:500;line-height:1;overflow:hidden}.attr-panel__value-row{align-items:center;gap:var(--space-1);min-height:24px;display:flex}.attr-panel__value{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;line-height:1.2;overflow:hidden}.attr-panel__action-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.attr-panel__action-btn:hover{background:var(--color-chrome);color:var(--color-ink);opacity:1!important}.attr-panel__action-btn--danger:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger)}.attr-panel__bool-toggle{border:1.5px solid var(--color-chrome);background:var(--color-surface-raised);cursor:pointer;width:36px;height:20px;transition:background var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);border-radius:10px;flex-shrink:0;position:relative}.attr-panel__bool-toggle--on{background:var(--color-primary);border-color:var(--color-primary)}.attr-panel__bool-toggle--on .attr-panel__bool-thumb{transform:translate(16px)}.attr-panel__bool-thumb{width:14px;height:14px;transition:transform var(--duration-normal) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.attr-panel__edit-row{align-items:center;gap:var(--space-1);display:flex}.attr-panel__edit-input,.attr-panel__edit-select{height:28px;padding:0 var(--space-2);border:1.5px solid var(--color-focus);border-radius:var(--radius-sm);font-family:var(--font-body);color:var(--color-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus) 15%, transparent);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:#fff;outline:none;flex:1;font-size:13px}.attr-panel__edit-input:focus,.attr-panel__edit-select:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus) 20%, transparent)}.attr-panel__edit-btn{border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;transition:background var(--duration-fast) var(--ease-out);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.attr-panel__edit-btn--save{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}.attr-panel__edit-btn--save:hover{background:color-mix(in srgb, var(--color-success) 22%, transparent)}.attr-panel__edit-btn--cancel{color:var(--color-slate);background:0 0}.attr-panel__edit-btn--cancel:hover{background:var(--color-chrome)}.attr-panel__add-form{border-top:1px solid var(--color-chrome);padding:var(--space-3) var(--space-4);background:var(--color-surface-raised);animation:attrAddFormIn .2s var(--ease-out);flex-shrink:0}.attr-panel__add-header{margin-bottom:var(--space-2)}.attr-panel__add-title{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.attr-panel__add-fields{gap:var(--space-2);flex-direction:column;display:flex}.attr-panel__add-input{height:32px;padding:0 var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);background:var(--color-surface);font-family:var(--font-body);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:13px}.attr-panel__add-input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus) 12%, transparent)}.attr-panel__add-input--bool{flex:1}.attr-panel__add-value-row{gap:var(--space-2);display:flex}.attr-panel__add-type{width:90px;height:32px;padding:0 var(--space-2);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);background:var(--color-surface);font-family:var(--font-mono);color:var(--color-ink);cursor:pointer;outline:none;flex-shrink:0;font-size:12px}.attr-panel__add-type:focus{border-color:var(--color-focus)}.attr-panel__add-actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.attr-panel__add-save{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;height:32px;font-family:var(--font-display);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);border:none;flex:1;font-size:13px;font-weight:600}.attr-panel__add-save:hover:not(:disabled){background:var(--color-primary-hover)}.attr-panel__add-save:disabled{opacity:.5;cursor:not-allowed}.attr-panel__add-cancel{height:32px;padding:0 var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-slate);font-family:var(--font-display);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);font-size:13px;font-weight:500}.attr-panel__add-cancel:hover{background:var(--color-chrome)}.attr-panel__add-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3);border:none;border-top:1px solid var(--color-chrome);color:var(--color-primary);font-family:var(--font-display);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;flex-shrink:0;font-size:13px;font-weight:600;display:flex}.attr-panel__add-btn:hover{background:color-mix(in srgb, var(--color-primary) 6%, transparent);color:var(--color-primary-hover)}@keyframes attrPanelIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes attrErrorIn{0%{opacity:0;transform:translateY(-4px)}}@keyframes attrShimmer{0%,to{opacity:.4}50%{opacity:1}}@keyframes attrRowIn{0%{opacity:0;transform:translateY(4px)}}@keyframes attrAddFormIn{0%{opacity:0;transform:translateY(8px)}}@media (width<=768px){.attr-panel{top:auto;right:0;bottom:var(--map-status-zone);width:100%;height:calc(var(--attr-sheet-height) - var(--map-status-zone));z-index:55;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:attrPanelSheetIn .3s var(--ease-out) both;padding-bottom:0;left:0}.attr-panel__close{width:var(--touch-min);height:var(--touch-min)}@keyframes attrPanelSheetIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}}@media (width<=640px){.attr-panel{height:var(--attr-sheet-height);padding-bottom:var(--safe-bottom);bottom:0}.attr-panel__delete-feature{min-height:var(--touch-min);display:inline-flex}.attr-panel__action-btn{width:var(--touch-min);height:var(--touch-min);opacity:.7}.attr-panel__close,.attr-panel__edit-btn{width:var(--touch-min);height:var(--touch-min)}.attr-panel__bool-toggle{width:var(--touch-min);height:24px}.attr-panel__add-save,.attr-panel__add-cancel{min-height:var(--touch-min)}.attr-panel__add-input,.attr-panel__add-type{height:var(--touch-min)}}.schema-editor__gate{text-align:center;padding:var(--space-6) var(--space-4)}.schema-editor__gate-icon{width:40px;height:40px;margin:0 auto var(--space-3);color:var(--color-slate);opacity:.5}.schema-editor__gate-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:14px;font-weight:700}.schema-editor__gate-desc{color:var(--color-slate);max-width:300px;margin:0 auto var(--space-4);font-size:12px;line-height:1.5}.schema-editor__header{padding:var(--space-4);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.schema-editor__title{font-family:var(--font-display);color:var(--color-ink);font-size:14px;font-weight:700}.schema-editor__empty{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-slate);font-size:13px}.schema-editor__empty p:first-child{margin-bottom:var(--space-1);font-weight:500}.schema-editor__list{padding:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.schema-editor__field{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface-raised);transition:border-color .12s cubic-bezier(.16,1,.3,1);display:flex}.schema-editor__field:hover{border-color:var(--color-slate)}.schema-editor__field-type-badge{text-transform:uppercase;letter-spacing:.06em;text-align:center;border-radius:3px;flex-shrink:0;min-width:32px;padding:1px 5px;font-size:10px;font-weight:700}.schema-editor__field-type-badge--string{background:color-mix(in srgb, var(--color-focus), transparent 88%);color:var(--color-focus)}.schema-editor__field-type-badge--number{background:color-mix(in srgb, var(--color-success), transparent 88%);color:var(--color-success)}.schema-editor__field-type-badge--boolean{background:color-mix(in srgb, var(--color-warning), transparent 88%);color:var(--color-warning-dark,#8b6000)}.schema-editor__field-type-badge--date{background:color-mix(in srgb, var(--color-slate), transparent 88%);color:var(--color-slate)}.schema-editor__field-type-badge--enum{background:color-mix(in srgb, var(--color-danger), transparent 88%);color:var(--color-danger)}.schema-editor__field-name{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.schema-editor__field-required{color:var(--color-danger);font-size:11px;font-weight:600}.schema-editor__field-actions{gap:var(--space-1);margin-left:var(--space-1);display:flex}.schema-editor__field-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.schema-editor__field-btn:active:not(:disabled){transform:scale(.97)}.schema-editor__field-btn:disabled{opacity:.5;cursor:not-allowed}.schema-editor__field-btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.schema-editor__field-btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.schema-editor__field-btn{color:var(--color-slate);padding:3px 5px;font-size:11px}.schema-editor__field-btn:hover{color:var(--color-ink)}.schema-editor__field-btn--danger:hover{color:var(--color-danger)}.schema-editor__form{gap:var(--space-3);padding:var(--space-4);border-top:1px solid var(--color-chrome);background:var(--color-surface);flex-direction:column;display:flex}.schema-editor__form-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-1);font-size:13px;font-weight:700}.schema-editor__form-row{gap:var(--space-3);display:flex}.schema-editor__form-field{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.schema-editor__form-label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.schema-editor__form-input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.schema-editor__form-input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.schema-editor__form-input::placeholder{color:var(--color-slate);opacity:.6}.schema-editor__form-input{box-sizing:border-box;width:100%}.schema-editor__form-select{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.schema-editor__form-select:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.schema-editor__form-select::placeholder{color:var(--color-slate);opacity:.6}.schema-editor__form-select{box-sizing:border-box;width:100%}.schema-editor__form-checkbox{align-items:center;gap:var(--space-2);color:var(--color-ink);cursor:pointer;padding-top:var(--space-1);font-size:13px;display:flex}.schema-editor__form-checkbox input[type=checkbox]{accent-color:var(--color-focus);width:15px;height:15px}.schema-editor__form-hint{color:var(--color-slate);font-size:11px;line-height:1.5}.schema-editor__form-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.schema-editor__btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.schema-editor__btn:active:not(:disabled){transform:scale(.97)}.schema-editor__btn:disabled{opacity:.5;cursor:not-allowed}.schema-editor__btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.schema-editor__btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.schema-editor__btn{height:30px;padding:0 var(--space-3);font-size:12px}.schema-editor__btn--primary{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.schema-editor__btn--primary:active:not(:disabled){transform:scale(.97)}.schema-editor__btn--primary:disabled{opacity:.5;cursor:not-allowed}.schema-editor__btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.schema-editor__btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.schema-editor__btn--primary{height:30px;padding:0 var(--space-3);font-size:12px}.schema-editor__btn--add{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.schema-editor__btn--add:active:not(:disabled){transform:scale(.97)}.schema-editor__btn--add:disabled{opacity:.5;cursor:not-allowed}.schema-editor__btn--add{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.schema-editor__btn--add:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.schema-editor__btn--add{justify-content:center;width:100%}.schema-editor__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin:var(--space-2) var(--space-4);font-size:13px;line-height:1.4}.schema-editor__skeleton{gap:var(--space-2);padding:var(--space-3);flex-direction:column;display:flex}.schema-editor__skeleton-row{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:40px;animation:1.6s infinite shimmer}.schema-attr-form{flex-direction:column;gap:0;display:flex}.schema-attr-form__field{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-chrome)}.schema-attr-form__field:last-child{border-bottom:none}.schema-attr-form__label-row{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.schema-attr-form__label{color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:600;overflow:hidden}.schema-attr-form__required-badge{color:var(--color-danger);margin-left:var(--space-1);flex-shrink:0;font-size:10px;font-weight:700}.schema-attr-form__type-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--color-slate);opacity:.7;margin-left:var(--space-2);font-size:10px;font-weight:600}.schema-attr-form__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.schema-attr-form__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.schema-attr-form__input::placeholder{color:var(--color-slate);opacity:.6}.schema-attr-form__input{box-sizing:border-box;width:100%;font-size:13px}.schema-attr-form__input--error{border-color:var(--color-danger)}.schema-attr-form__select{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.schema-attr-form__select:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.schema-attr-form__select::placeholder{color:var(--color-slate);opacity:.6}.schema-attr-form__select{box-sizing:border-box;width:100%;font-size:13px}.schema-attr-form__select--error{border-color:var(--color-danger)}.schema-attr-form__checkbox-row{align-items:center;gap:var(--space-2);padding-top:var(--space-1);display:flex}.schema-attr-form__checkbox-toggle{background:var(--color-chrome);cursor:pointer;border:none;border-radius:9px;flex-shrink:0;width:32px;height:18px;padding:0;transition:background .12s cubic-bezier(.16,1,.3,1);position:relative}.schema-attr-form__checkbox-toggle--on{background:var(--color-focus)}.schema-attr-form__checkbox-toggle-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .12s cubic-bezier(.16,1,.3,1);position:absolute;top:2px;left:2px}.schema-attr-form__checkbox-toggle--on .schema-attr-form__checkbox-toggle-thumb{transform:translate(14px)}.schema-attr-form__checkbox-label{color:var(--color-ink);font-size:13px}.schema-attr-form__field-error{color:var(--color-danger);margin-top:var(--space-1);font-size:11px}.schema-attr-form__save-row{padding:var(--space-3);border-top:1px solid var(--color-chrome)}.schema-attr-form__save-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.schema-attr-form__save-btn:active:not(:disabled){transform:scale(.97)}.schema-attr-form__save-btn:disabled{opacity:.5;cursor:not-allowed}.schema-attr-form__save-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.schema-attr-form__save-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.schema-attr-form__save-btn{justify-content:center;width:100%}.schema-attr-form__validation-errors{padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--color-danger), transparent 92%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 75%);border-radius:var(--radius-md);margin:var(--space-2) var(--space-3);color:var(--color-danger);font-size:12px}.schema-attr-form__validation-errors ul{margin:var(--space-1) 0 0;padding-left:var(--space-4)}.ie-backdrop{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:ieBackdropIn .2s var(--ease-out) both;background:#0d1f1a7a;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes ieBackdropIn{0%{opacity:0}}.ie-panel{width:460px;max-width:calc(100vw - var(--space-6));max-height:calc(100vh - var(--space-8));background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);animation:iePanelIn .3s var(--ease-out) both;flex-direction:column;animation-delay:50ms;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000002e,0 2px 12px #00000014}.ie-panel__header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-chrome);background:var(--color-surface-raised);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ie-panel__tabs{gap:var(--space-1);background:var(--color-chrome);border-radius:var(--radius-md);padding:2px;display:flex}.ie-panel__tab{border-radius:calc(var(--radius-md) - 1px);font-family:var(--font-display);color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);letter-spacing:-.01em;background:0 0;border:none;padding:6px 18px;font-size:13px;font-weight:600}.ie-panel__tab:hover:not(.ie-panel__tab--active){color:var(--color-ink)}.ie-panel__tab--active{background:var(--color-surface);color:var(--color-ink);box-shadow:0 1px 3px #0000000f}.ie-panel__close{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.ie-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.ie-panel__body{overscroll-behavior:contain;padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ie-panel__action-btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--color-primary);color:#fff;width:100%;height:40px;font-family:var(--font-display);letter-spacing:-.01em;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:14px;font-weight:600;display:flex}.ie-panel__action-btn:hover:not(:disabled){background:var(--color-primary-hover)}.ie-panel__action-btn:active:not(:disabled){transform:scale(.985)}.ie-panel__action-btn:disabled{opacity:.45;cursor:not-allowed}.ie-panel__action-btn--export{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.ie-panel__action-btn--export:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}@keyframes iePanelIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.ie-drop-zone{border:2px dashed var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-6) var(--space-4);text-align:center;cursor:pointer;background:var(--color-surface-raised);transition:border-color var(--duration-normal) var(--ease-out), background var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out);position:relative}.ie-drop-zone:hover{border-color:var(--color-slate);background:color-mix(in srgb, var(--color-primary) 3%, var(--color-surface-raised))}.ie-drop-zone--active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--color-primary) 12%, transparent);border-style:solid}.ie-drop-zone--has-file{padding:var(--space-3) var(--space-4);cursor:default;border-style:solid;border-color:var(--color-chrome)}.ie-drop-zone__input{opacity:0;cursor:pointer;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ie-drop-zone__placeholder{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.ie-drop-zone__icon{background:color-mix(in srgb, var(--color-primary) 8%, transparent);width:52px;height:52px;color:var(--color-primary);margin-bottom:var(--space-1);transition:transform var(--duration-normal) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;display:flex}.ie-drop-zone:hover .ie-drop-zone__icon,.ie-drop-zone--active .ie-drop-zone__icon{transform:translateY(-2px)}.ie-drop-zone__text{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:600}.ie-drop-zone__hint{color:var(--color-slate);margin:0;font-size:12px}.ie-drop-zone__file-info{align-items:center;gap:var(--space-3);display:flex}.ie-drop-zone__file-icon{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-focus) 10%, transparent);width:36px;height:36px;color:var(--color-focus);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ie-drop-zone__file-details{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ie-drop-zone__file-name{font-family:var(--font-mono);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.ie-drop-zone__file-size{font-family:var(--font-mono);color:var(--color-slate);font-size:11px}.ie-drop-zone__remove{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ie-drop-zone__remove:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger)}.ie-field{gap:var(--space-2);flex-direction:column;display:flex}.ie-field__label{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.ie-field__select{height:36px;padding:0 var(--space-3);padding-right:var(--space-6);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);background:var(--color-surface);font-family:var(--font-body);color:var(--color-ink);appearance:none;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236b7280' stroke-width='1.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;font-size:13px}.ie-field__select:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus) 12%, transparent)}.ie-format-grid{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.ie-format-btn{padding:var(--space-3) var(--space-2);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out);flex-direction:column;align-items:center;gap:2px;display:flex;position:relative}.ie-format-btn:hover:not(:disabled){border-color:var(--color-slate);background:var(--color-surface-raised)}.ie-format-btn--active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 4%, var(--color-surface));box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 15%, transparent)}.ie-format-btn--active:hover:not(:disabled){border-color:var(--color-primary)}.ie-format-btn--locked{opacity:.45;cursor:not-allowed}.ie-format-btn__label{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;font-size:12px;font-weight:600}.ie-format-btn__ext{font-family:var(--font-mono);color:var(--color-slate);font-size:10px}.ie-format-btn__lock{color:var(--color-slate);position:absolute;top:4px;right:4px}.ie-scope-toggle{background:var(--color-chrome);border-radius:var(--radius-md);padding:2px;display:flex}.ie-scope-btn{padding:8px var(--space-3);border-radius:calc(var(--radius-md) - 1px);font-family:var(--font-display);color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:0 0;border:none;flex:1;font-size:13px;font-weight:500}.ie-scope-btn:hover:not(.ie-scope-btn--active){color:var(--color-ink)}.ie-scope-btn--active{background:var(--color-surface);color:var(--color-ink);font-weight:600;box-shadow:0 1px 3px #0000000f}.ie-error{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:color-mix(in srgb, var(--color-danger) 6%, transparent);border:1px solid color-mix(in srgb, var(--color-danger) 18%, transparent);border-radius:var(--radius-sm);color:var(--color-danger);animation:ieErrorIn .25s var(--ease-out);font-size:13px;line-height:1.4;display:flex}.ie-error svg{flex-shrink:0;margin-top:1px}.ie-error span{flex:1}.ie-error__dismiss{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--color-danger);cursor:pointer;opacity:.5;transition:opacity var(--duration-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ie-error__dismiss:hover{opacity:1}.ie-notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:color-mix(in srgb, var(--color-warning) 8%, transparent);border:1px solid color-mix(in srgb, var(--color-warning) 30%, transparent);border-radius:var(--radius-sm);color:var(--color-ink);font-size:13px;line-height:1.4;display:flex}.ie-notice svg{color:var(--color-warning);flex-shrink:0;margin-top:1px}.ie-notice span{flex:1}@keyframes ieErrorIn{0%{opacity:0;transform:translateY(-4px)}}.ie-result{border:1px solid var(--color-chrome);border-radius:var(--radius-md);animation:ieResultIn .3s var(--ease-out);overflow:hidden}.ie-result__header{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-raised);border-bottom:1px solid var(--color-chrome);display:flex}.ie-result__success{align-items:center;gap:var(--space-1);font-family:var(--font-display);color:var(--color-success);font-size:13px;font-weight:600;display:flex}.ie-result__warn{align-items:center;gap:var(--space-1);font-family:var(--font-display);color:var(--color-warning);font-size:13px;font-weight:600;display:flex}.ie-result__errors{overscroll-behavior:contain;max-height:160px;overflow-y:auto}.ie-result__error-row{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--color-chrome) 60%, transparent);font-size:12px;line-height:1.4;display:flex}.ie-result__error-row:last-child{border-bottom:none}.ie-result__error-idx{font-family:var(--font-mono);color:var(--color-warning);flex-shrink:0;font-weight:600}.ie-result__error-msg{color:var(--color-ink);opacity:.75}.ie-result__error-more{padding:var(--space-2) var(--space-3);color:var(--color-slate);text-align:center;background:var(--color-surface-raised);font-size:12px;font-weight:500}@keyframes ieResultIn{0%{opacity:0;transform:translateY(6px)}}.ie-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite ieSpin;display:inline-block}@keyframes ieSpin{to{transform:rotate(360deg)}}.ie-upgrade-hint{padding:var(--space-3);border:1px dashed color-mix(in srgb, var(--color-warning) 30%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-warning) 4%, transparent);color:var(--color-warning);text-align:center;margin:0;font-size:12px;font-weight:500;line-height:1.4}@media (width<=640px){.ie-panel{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:none;max-height:90vh;padding-bottom:var(--safe-bottom);margin-top:auto;animation-name:iePanelMobileIn}@keyframes iePanelMobileIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.ie-backdrop{align-items:flex-end}.ie-format-grid{grid-template-columns:repeat(2,1fr)}.ie-format-btn{min-height:var(--touch-min);padding:var(--space-3)}.ie-panel__close{width:var(--touch-min);height:var(--touch-min)}.ie-panel__action-btn,.ie-field__select{min-height:var(--touch-min)}.ie-drop-zone{padding:var(--space-5) var(--space-3)}.ie-drop-zone__remove{width:36px;height:36px}.ie-scope-btn{min-height:var(--touch-min)}}.ie-panel__body--qgis{gap:var(--space-4);flex-direction:column;display:flex}.ie-qgis-intro{background:var(--color-surface-raised);border:1px solid var(--color-chrome);border-radius:var(--radius-md,6px);padding:var(--space-3) var(--space-4)}[data-theme=dark] .ie-qgis-intro{background:#ffffff0a;border-color:#ffffff1a}.ie-qgis-intro__text{color:var(--color-slate);margin:0 0 var(--space-2);font-size:.8125rem;line-height:1.5}.ie-qgis-intro__text strong,[data-theme=dark] .ie-qgis-intro__text strong{color:var(--color-ink)}.ie-qgis-intro__list{padding-left:var(--space-4);color:var(--color-slate);margin:0;font-size:.75rem;line-height:1.7}.ie-qgis-intro__list li::marker{color:var(--color-primary)}.ie-upgrade-gate{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md,6px);color:var(--color-ink);background:#ffa00014;border:1px solid #ffa0004d;font-size:.8125rem;display:flex}.ie-upgrade-gate__icon{color:#f59e0b;align-items:center;display:flex}.ie-qgis-file-row{align-items:center;gap:var(--space-2);display:flex}.ie-qgis-browse-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1.5px dashed var(--color-chrome);border-radius:var(--radius-md,6px);color:var(--color-slate);cursor:pointer;justify-content:center;width:100%;min-height:44px;font-size:.8125rem;transition:border-color .15s,color .15s;display:inline-flex}.ie-qgis-browse-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}[data-theme=dark] .ie-qgis-browse-btn{color:#ffffff80;border-color:#fff3}[data-theme=dark] .ie-qgis-browse-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.ie-qgis-file-info{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-chrome);border-radius:var(--radius-md,6px);width:100%;display:flex}[data-theme=dark] .ie-qgis-file-info{background:#ffffff0d;border-color:#ffffff1a}.ie-qgis-result{border:1px solid var(--color-chrome);border-radius:var(--radius-md,6px);overflow:hidden}[data-theme=dark] .ie-qgis-result{border-color:#ffffff1a}.ie-qgis-result__header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-chrome);background:#22c55e14}[data-theme=dark] .ie-qgis-result__header{border-color:#ffffff14}.ie-qgis-result__layers{padding:var(--space-2) 0}.ie-qgis-result__layer-row{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:.75rem;display:flex}.ie-qgis-result__layer-name{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}[data-theme=dark] .ie-qgis-result__layer-name{color:var(--color-ink)}.ie-qgis-result__layer-count{color:var(--color-slate);white-space:nowrap}.ie-qgis-result__layer-errors{color:var(--warning,#f59e0b);white-space:nowrap;align-items:center;gap:3px;display:flex}.ie-qgis-result__skipped{border-top:1px solid var(--color-chrome);padding:var(--space-2) var(--space-3);color:var(--color-slate);font-size:.75rem}[data-theme=dark] .ie-qgis-result__skipped{border-color:#ffffff14}.ie-qgis-result__skipped summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--space-1) 0}.ie-qgis-result__skip-row{padding:var(--space-1) 0 var(--space-1) var(--space-3);flex-direction:column;gap:2px;display:flex}.ie-qgis-result__skip-reason{color:var(--color-slate);font-size:.6875rem}.pdf-backdrop{background:var(--color-surface-overlay);padding:var(--space-5);z-index:300;justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) both pdf-fade-in;display:flex;position:fixed;inset:0}@keyframes pdf-fade-in{0%{opacity:0}}.pdf-panel{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:620px;max-height:calc(100vh - var(--space-7) * 2);scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;animation:.2s cubic-bezier(.16,1,.3,1) both pdf-slide-up;overflow-y:auto}.pdf-panel::-webkit-scrollbar{width:5px}.pdf-panel::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.pdf-panel__header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.pdf-panel__header-title{align-items:center;gap:var(--space-2);display:flex}.pdf-panel__header-title h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin:0;font-size:18px;font-weight:700}.pdf-panel__header-title svg{color:var(--color-primary);flex-shrink:0}.pdf-panel__close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-slate);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .12s cubic-bezier(.16,1,.3,1),color .12s cubic-bezier(.16,1,.3,1);display:flex}.pdf-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.pdf-panel__body{gap:var(--space-5);padding:var(--space-5);display:flex}@media (width<=640px){.pdf-panel__body{flex-direction:column-reverse}}.pdf-panel__form{gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.pdf-panel__preview{align-items:center;gap:var(--space-2);padding-top:var(--space-1);flex-direction:column;flex-shrink:0;display:flex}@media (width<=640px){.pdf-panel__preview{flex-direction:row;justify-content:center}}.pdf-panel__preview-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:11px;font-weight:600}@keyframes pdf-slide-up{0%{opacity:0;transform:translateY(12px)scale(.98)}}.pdf-gate-notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-warning), transparent 90%);border:1px solid color-mix(in srgb, var(--color-warning), transparent 75%);color:var(--color-ink);display:flex}.pdf-gate-notice svg{color:var(--color-warning);flex-shrink:0;margin-top:1px}.pdf-gate-notice strong{font-family:var(--font-display);margin-bottom:2px;font-size:13px;font-weight:700;display:block}.pdf-gate-notice p{color:var(--color-slate);margin:0;font-size:12px;line-height:1.4}.pdf-field{gap:var(--space-1);flex-direction:column;display:flex}.pdf-field__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.pdf-field__optional{color:var(--color-slate);font-size:11px;font-weight:400}.pdf-field__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.pdf-field__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.pdf-field__input::placeholder{color:var(--color-slate);opacity:.6}.pdf-field__textarea{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.pdf-field__textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.pdf-field__textarea::placeholder{color:var(--color-slate);opacity:.6}.pdf-field__textarea{resize:vertical;min-height:48px;font-family:var(--font-body);line-height:1.5}.pdf-size-row{gap:var(--space-2);display:flex}.pdf-size-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.pdf-size-btn:active:not(:disabled){transform:scale(.97)}.pdf-size-btn:disabled{opacity:.5;cursor:not-allowed}.pdf-size-btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.pdf-size-btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.pdf-size-btn{height:30px;padding:0 var(--space-3);letter-spacing:.02em;min-width:52px;font-size:12px;font-weight:700}.pdf-size-btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.pdf-size-btn--active:hover:not(:disabled){background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.pdf-orientation-row{gap:var(--space-2);display:flex}.pdf-orient-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.pdf-orient-btn:active:not(:disabled){transform:scale(.97)}.pdf-orient-btn:disabled{opacity:.5;cursor:not-allowed}.pdf-orient-btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.pdf-orient-btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.pdf-orient-btn{height:30px;padding:0 var(--space-3);gap:var(--space-2);padding:0 var(--space-4);font-size:12px}.pdf-orient-btn svg{flex-shrink:0}.pdf-orient-btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.pdf-orient-btn--active:hover:not(:disabled){background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.pdf-toggles{gap:var(--space-2);flex-direction:column;display:flex}.pdf-toggle{align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--space-1) 0;display:flex}.pdf-toggle input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.pdf-toggle__switch{background:var(--color-chrome);border-radius:9px;flex-shrink:0;width:34px;height:18px;transition:background .12s cubic-bezier(.16,1,.3,1);position:relative}.pdf-toggle__switch:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .12s cubic-bezier(.16,1,.3,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0000000f}input:checked+.pdf-toggle__switch{background:var(--color-primary)}input:checked+.pdf-toggle__switch:after{transform:translate(16px)}input:disabled+.pdf-toggle__switch{opacity:.4}.pdf-toggle__label{font-family:var(--font-body);color:var(--color-ink);flex:1;font-size:13px}.pdf-toggle__count{color:var(--color-slate);font-size:11px;font-family:var(--font-mono);background:color-mix(in srgb, var(--color-chrome), transparent 40%);border-radius:var(--radius-sm);padding:1px 6px}.pdf-preview{border-radius:var(--radius-md);filter:drop-shadow(0 2px 6px #00000014);transition:all .2s cubic-bezier(.16,1,.3,1)}.pdf-error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);font-size:13px;line-height:1.4}.pdf-export-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.pdf-export-btn:active:not(:disabled){transform:scale(.97)}.pdf-export-btn:disabled{opacity:.5;cursor:not-allowed}.pdf-export-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.pdf-export-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.pdf-export-btn{gap:var(--space-2);width:100%;height:40px;margin-top:var(--space-1);font-size:14px}.pdf-export-btn svg{width:16px;height:16px}.pdf-spinner{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite pdf-spin;display:inline-block}@keyframes pdf-spin{to{transform:rotate(360deg)}}@media (width<=640px){.pdf-panel{max-width:100%;margin:var(--space-2);max-height:calc(100vh - var(--space-4) * 2);max-height:calc(100dvh - var(--space-4) * 2)}.pdf-size-btn,.pdf-orient-btn{min-height:var(--touch-min);flex:1}.pdf-orientation-row{flex-direction:column}.pdf-orientation-row .pdf-orient-btn{width:100%}}.measurement-panel{bottom:var(--space-5);right:var(--space-4);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:240px;box-shadow:var(--shadow-md), 0 0 0 1px #0000000a;z-index:20;animation:measurePanelSlideIn .25s var(--ease-out) both;position:absolute;overflow:hidden}.measurement-panel__header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-chrome);background:color-mix(in srgb, var(--color-surface), var(--color-chrome) 20%);justify-content:space-between;align-items:center;display:flex}.measurement-panel__title{align-items:center;gap:var(--space-2);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink);font-size:12px;font-weight:700;display:flex}.measurement-panel__title svg{color:var(--color-measure);flex-shrink:0}.measurement-panel__close{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.measurement-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.measurement-panel__body{padding:var(--space-3)}.measurement-panel__hint{font-family:var(--font-mono);color:var(--color-slate);text-align:center;padding:var(--space-1) 0;font-size:11px;line-height:1.5}.measurement-panel__results{gap:var(--space-2);flex-direction:column;display:flex}.measurement-panel__row{padding:var(--space-1) 0;justify-content:space-between;align-items:center;display:flex}.measurement-panel__row--primary{padding:var(--space-2);margin:0 calc(-1 * var(--space-2));background:color-mix(in srgb, var(--color-measure), transparent 92%);border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-measure), transparent 82%)}.measurement-panel__row--meta{opacity:.6}.measurement-panel__label{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--color-slate);font-size:10px;font-weight:500}.measurement-panel__value{font-family:var(--font-mono);color:var(--color-ink);letter-spacing:-.01em;tabular-nums:true;font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.measurement-panel__footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-chrome)}.measurement-panel__unit-toggle{background:var(--color-chrome);border-radius:var(--radius-md);gap:1px;display:flex;overflow:hidden}.measurement-panel__unit-btn{padding:var(--space-1) var(--space-2);font-family:var(--font-mono);letter-spacing:.02em;background:var(--color-surface);color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) ease, color var(--duration-fast) ease;border:none;flex:1;font-size:11px;font-weight:500}.measurement-panel__unit-btn:hover:not(.measurement-panel__unit-btn--active){background:var(--color-surface-raised);color:var(--color-ink)}.measurement-panel__unit-btn--active{background:var(--color-measure);color:#1a1d23;font-weight:700}.measurement-panel--compact{width:auto;min-width:240px}.measurement-panel--compact .measurement-panel__compact-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);display:flex}.measurement-panel--compact .measurement-panel__compact-title{align-items:center;gap:var(--space-1);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink);flex-shrink:0;font-size:11px;font-weight:700;display:flex}.measurement-panel--compact .measurement-panel__compact-title svg{color:var(--color-measure)}.measurement-panel--compact .measurement-panel__compact-value{font-family:var(--font-mono);color:var(--color-ink);white-space:nowrap;tabular-nums:true;font-variant-numeric:tabular-nums;font-size:13px}.measurement-panel--compact .measurement-panel__compact-points{color:var(--color-slate);font-weight:400}.measurement-panel--compact .measurement-panel__hint{padding:0 var(--space-3) var(--space-2)}.measurement-panel--compact .measurement-panel__hint--continue{padding-top:0}.measurement-panel__touch-actions{gap:var(--space-2);padding:0 var(--space-3) var(--space-3);margin-top:var(--space-2);display:flex}.measurement-panel__touch-btn{min-height:var(--touch-min);min-width:var(--touch-min);justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-md);border:1px solid var(--color-chrome);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-mono);cursor:pointer;transition:background var(--duration-fast) ease, opacity var(--duration-fast) ease;flex:1;font-size:13px;font-weight:600;display:flex}.measurement-panel__touch-btn:disabled{opacity:.4;cursor:not-allowed}.measurement-panel__touch-btn:hover:not(:disabled){background:var(--color-surface-raised)}.measurement-panel__touch-btn--primary{background:var(--color-measure);border-color:var(--color-measure);color:#1a1d23}.measurement-panel__touch-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-measure), black 10%)}.measurement-tooltip{pointer-events:none;z-index:25;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);animation:tooltipFadeIn .1s var(--ease-out) both;white-space:nowrap;background:#0d1f1aeb;flex-direction:column;gap:1px;max-width:180px;display:flex;position:absolute}.measurement-tooltip__total{font-family:var(--font-mono);color:var(--color-measure);letter-spacing:-.01em;font-size:12px;font-weight:700}.measurement-tooltip__area{font-family:var(--font-mono);color:#ffffffd9;font-size:11px;font-weight:600}.measurement-tooltip__segment{font-family:var(--font-mono);color:#ffffff8c;font-size:10px;font-weight:400}.drawing-toolbar__btn--measure.drawing-toolbar__btn--active{color:#fbbf24;background:#78350f}.drawing-toolbar__btn--measure.drawing-toolbar__btn--active:hover:not(:disabled){color:#fbbf24;background:#92400e}.drawing-toolbar__btn--measure.drawing-toolbar__btn--active:after{background:var(--color-measure)}@keyframes measurePanelSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}@media (width<=640px){.measurement-panel{bottom:calc(var(--space-7) + var(--safe-bottom) + 52px);right:var(--space-3);left:var(--space-3);width:auto}.measurement-tooltip{display:none}}.geocoding{top:var(--space-4);left:var(--map-left-gutter);z-index:25;width:300px;transition:left var(--duration-normal) var(--ease-out);font-family:var(--font-body);pointer-events:none;position:absolute}.geocoding__input-wrap{pointer-events:auto;background:var(--color-surface);border:1.5px solid var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-md), 0 0 0 1px #00000008;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);align-items:center;display:flex;position:relative;overflow:hidden}.geocoding__input-wrap:focus-within{border-color:var(--color-focus);box-shadow:var(--shadow-md), 0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.geocoding__icon{width:36px;height:36px;color:var(--color-slate);pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.geocoding__input{height:36px;font-family:var(--font-body);color:var(--color-ink);padding:0 var(--space-2) 0 0;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:13px}.geocoding__input::placeholder{color:var(--color-slate);opacity:.55;font-size:12.5px}.geocoding__toggle{width:var(--touch-min);height:var(--touch-min);pointer-events:auto;background:var(--color-surface);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);box-shadow:var(--shadow-md), 0 0 0 1px #00000008;color:var(--color-slate);cursor:pointer;justify-content:center;align-items:center;padding:0;display:none}.geocoding__toggle:hover{color:var(--color-ink)}.geocoding__toggle:focus-visible{border-color:var(--color-focus);box-shadow:var(--shadow-md), 0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%);outline:none}.geocoding__clear{width:28px;height:28px;margin-right:var(--space-1);border-radius:var(--radius-sm);color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.geocoding__clear:hover{background:var(--color-chrome);color:var(--color-ink)}.geocoding__spinner{width:14px;height:14px;margin-right:var(--space-2);border:2px solid var(--color-chrome);border-top-color:var(--color-primary);border-radius:50%;flex-shrink:0;animation:.6s linear infinite geocodingSpin}.geocoding__dropdown{pointer-events:auto;margin-top:var(--space-1);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), 0 0 0 1px #0000000a;scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;max-height:360px;overflow-y:auto}.geocoding__dropdown::-webkit-scrollbar{width:5px}.geocoding__dropdown::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.geocoding__dropdown{animation:geocodingDropIn .18s var(--ease-out) both}.geocoding__item{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;text-align:left;transition:background var(--duration-fast) ease;background:0 0;border:none;display:flex}.geocoding__item:hover,.geocoding__item--highlight{background:color-mix(in srgb, var(--color-primary), transparent 94%)}.geocoding__item--highlight .geocoding__item-name{color:var(--color-primary)}.geocoding__item:not(:last-child){border-bottom:1px solid color-mix(in srgb, var(--color-chrome), transparent 50%)}.geocoding__item--coord{background:color-mix(in srgb, var(--color-focus), transparent 95%);border-bottom:1px solid color-mix(in srgb, var(--color-focus), transparent 82%)}.geocoding__item--coord:hover,.geocoding__item--coord.geocoding__item--highlight{background:color-mix(in srgb, var(--color-focus), transparent 88%)}.geocoding__item-icon{width:24px;height:24px;color:var(--color-slate);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.geocoding__item-icon--coord{color:var(--color-focus)}.geocoding__item-icon--history{color:var(--color-slate);opacity:.6}.geocoding__item-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.geocoding__item-name{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.35;overflow:hidden}.geocoding__item-detail{font-family:var(--font-body);color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;opacity:.75;font-size:11px;line-height:1.3;overflow:hidden}.geocoding__loading{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.geocoding__shimmer{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:12px;animation:1.6s infinite shimmer}.geocoding__shimmer--short{width:60%}.geocoding__shimmer--med{width:80%}.geocoding__empty{padding:var(--space-4) var(--space-3);text-align:center;font-family:var(--font-mono);color:var(--color-slate);opacity:.7;letter-spacing:.02em;font-size:11px}.geocoding__error{padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 95%);border-bottom:1px solid color-mix(in srgb, var(--color-danger), transparent 88%);font-size:12px}.geocoding__history-header{padding:var(--space-2) var(--space-3) var(--space-1);border-bottom:1px solid color-mix(in srgb, var(--color-chrome), transparent 50%);justify-content:space-between;align-items:center;display:flex}.geocoding__history-label{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--color-slate);opacity:.7;font-size:10px;font-weight:500}.geocoding__history-clear{font-family:var(--font-mono);color:var(--color-primary);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;font-size:10px;font-weight:500}.geocoding__history-clear:hover{background:color-mix(in srgb, var(--color-primary), transparent 90%)}.geocoding__attribution{padding:var(--space-1) var(--space-3) var(--space-2);font-family:var(--font-mono);color:var(--color-slate);opacity:.5;text-align:right;font-size:9px}.geocoding__attribution a{color:inherit;text-decoration:underline}@keyframes geocodingSpin{to{transform:rotate(360deg)}}@keyframes geocodingDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .geocoding__input-wrap{box-shadow:var(--shadow-md), 0 0 0 1px #ffffff0a}[data-theme=dark] .geocoding__dropdown{box-shadow:var(--shadow-lg), 0 0 0 1px #ffffff0f}@media (width<=768px){.geocoding{top:var(--space-3);width:260px}.geocoding__input{height:var(--touch-min)}}@media (width<=640px){.geocoding{top:var(--space-3);right:calc(var(--space-3) + var(--touch-min) + var(--space-2));width:auto}.geocoding__toggle{display:flex}.geocoding__input-wrap{border-radius:var(--radius-md);display:none}.geocoding__input{height:var(--touch-min);font-size:16px}.geocoding__dropdown{max-height:280px}.geocoding--expanded .geocoding__toggle{display:none}.geocoding--expanded .geocoding__input-wrap{display:flex}}.kb-shortcuts-backdrop{background:var(--color-surface-overlay);padding:var(--space-5);z-index:400;animation:kbBackdropFadeIn .15s var(--ease-out) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.kb-shortcuts{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), 0 0 0 1px #0000000d;width:100%;max-width:420px;max-height:80vh;animation:kbCardSlideIn .2s var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden}.kb-shortcuts__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.kb-shortcuts__title{align-items:center;gap:var(--space-2);font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:15px;font-weight:700;display:flex}.kb-shortcuts__close{border-radius:var(--radius-md);cursor:pointer;width:30px;height:30px;color:var(--color-slate);transition:background var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.kb-shortcuts__close:hover{background:var(--color-surface-raised);color:var(--color-ink)}.kb-shortcuts__body{scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent}.kb-shortcuts__body::-webkit-scrollbar{width:5px}.kb-shortcuts__body::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.kb-shortcuts__body{padding:var(--space-4) var(--space-5);flex:1;overflow-y:auto}.kb-shortcuts__group:not(:last-child){margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--color-chrome), transparent 50%)}.kb-shortcuts__group-label{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--color-slate);margin-bottom:var(--space-2);font-size:10px;font-weight:700}.kb-shortcuts__list{gap:var(--space-1);flex-direction:column;display:flex}.kb-shortcuts__row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:3px 0;display:flex}.kb-shortcuts__key{font-family:var(--font-mono);letter-spacing:.02em;color:var(--color-ink);background:var(--color-paper);border:1px solid var(--color-chrome);text-align:center;min-width:24px;box-shadow:0 1px 0 var(--color-chrome);border-radius:4px;align-items:center;gap:2px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.kb-shortcuts__key--inline{min-width:auto;padding:1px 5px;font-size:10px}.kb-shortcuts__key-sep{color:var(--color-slate);margin:0 1px;font-weight:400}.kb-shortcuts__desc{font-family:var(--font-body);color:var(--color-ink);text-align:right;flex:1;font-size:13px}.kb-shortcuts__footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-chrome);font-family:var(--font-body);color:var(--color-slate);text-align:center;justify-content:center;align-items:center;gap:var(--space-1);font-size:11px;display:flex}@keyframes kbBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes kbCardSlideIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=640px){.kb-shortcuts{border-radius:var(--radius-lg) var(--radius-lg) 0 0;align-self:flex-end;max-width:100%;max-height:85vh}.kb-shortcuts__body{padding:var(--space-3) var(--space-4)}.kb-shortcuts__row{padding:var(--space-1) 0}}.annotations-panel{top:var(--space-4);right:var(--space-4);bottom:var(--space-4);width:360px;max-width:calc(100vw - var(--space-8));z-index:55;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;overflow:hidden}@media (width<=640px){.annotations-panel{border-radius:0;width:100%;max-width:none;inset:0}}.annotations-panel__header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.annotations-panel__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);align-items:center;gap:var(--space-2);font-size:15px;font-weight:700;display:flex}.annotations-panel__badge{font-family:var(--font-mono);background:color-mix(in srgb, var(--color-primary), transparent 88%);color:var(--color-primary);letter-spacing:.03em;border-radius:10px;padding:1px 6px;font-size:11px;font-weight:600}.annotations-panel__close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .12s cubic-bezier(.16,1,.3,1);display:flex}.annotations-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.annotations-panel__tabs{border-bottom:1px solid var(--color-chrome);flex-shrink:0;display:flex}.annotations-panel__tab{padding:var(--space-2) var(--space-3);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;font-size:12px;font-weight:600;transition:all .12s cubic-bezier(.16,1,.3,1)}.annotations-panel__tab:hover{color:var(--color-ink)}.annotations-panel__tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.annotations-panel__body{scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;flex:1;overflow-y:auto}.annotations-panel__body::-webkit-scrollbar{width:5px}.annotations-panel__body::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.annotations-panel__body{padding:var(--space-3)}.annotations-panel__empty{text-align:center;padding:var(--space-7) var(--space-4);color:var(--color-slate)}.annotations-panel__empty-icon{margin-bottom:var(--space-3);opacity:.4;font-size:32px}.annotations-panel__empty-text{font-family:var(--font-body);font-size:13px;line-height:1.5}.annotations-panel__gate{text-align:center;padding:var(--space-7) var(--space-5);color:var(--color-slate)}.annotations-panel__gate-icon{margin-bottom:var(--space-3);opacity:.5;font-size:36px}.annotations-panel__gate-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:15px;font-weight:700}.annotations-panel__gate-text{font-family:var(--font-body);margin-bottom:var(--space-4);font-size:13px;line-height:1.5}.annotations-panel__error{padding:var(--space-2) var(--space-3);margin:var(--space-2) var(--space-3) 0;font-family:var(--font-body);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 92%);border-radius:var(--radius-sm);font-size:12px}.annotations-panel__compose{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-chrome);background:var(--color-surface-raised);flex-shrink:0}.compose-box{gap:var(--space-2);flex-direction:column;display:flex}.compose-box__textarea{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.compose-box__textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.compose-box__textarea::placeholder{color:var(--color-slate);opacity:.6}.compose-box__textarea{resize:vertical;min-height:64px;max-height:200px;font-size:13px;line-height:1.45;font-family:var(--font-body)}.compose-box__row{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.compose-box__hint{font-family:var(--font-mono);color:var(--color-slate);opacity:.7;font-size:11px}.compose-box__submit{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.compose-box__submit:active:not(:disabled){transform:scale(.97)}.compose-box__submit:disabled{opacity:.5;cursor:not-allowed}.compose-box__submit{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.compose-box__submit:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.compose-box__submit{height:30px;padding:0 var(--space-3);min-width:72px;font-size:12px}.comment-thread{margin-bottom:var(--space-3)}.comment-thread:last-child{margin-bottom:0}.comment{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-raised);border:1px solid var(--color-chrome);transition:border-color .12s cubic-bezier(.16,1,.3,1);position:relative}.comment:hover{border-color:color-mix(in srgb, var(--color-slate), transparent 60%)}.comment--reply{margin-left:var(--space-5);margin-top:var(--space-2);border-left:2px solid color-mix(in srgb, var(--color-primary), transparent 70%);background:var(--color-surface)}.comment--reply:before{content:"";left:calc(var(--space-5) * -1 + 1px);width:calc(var(--space-5) - var(--space-2));background:color-mix(in srgb, var(--color-primary), transparent 70%);height:1px;position:absolute;top:14px}.comment--resolved{opacity:.6;border-style:dashed}.comment--map-pin{border-left:3px solid var(--color-focus)}.comment__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.comment__avatar{background:linear-gradient(135deg, var(--color-primary), color-mix(in srgb, var(--color-primary), var(--color-focus) 40%));width:22px;height:22px;font-family:var(--font-display);color:#fff;text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.comment__author{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:600;overflow:hidden}.comment__time{font-family:var(--font-mono);color:var(--color-slate);letter-spacing:.02em;flex-shrink:0;font-size:10px}.comment__body{font-family:var(--font-body);color:var(--color-ink);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.55}.comment__actions{align-items:center;gap:var(--space-1);margin-top:var(--space-2);opacity:0;transition:opacity .12s cubic-bezier(.16,1,.3,1);display:flex}.comment:hover .comment__actions,.comment:focus-within .comment__actions{opacity:1}@media (hover:none),(pointer:coarse){.comment__actions{opacity:1}}@media (prefers-reduced-motion:reduce){.comment__actions{transition:none}}.comment__action{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.comment__action:active:not(:disabled){transform:scale(.97)}.comment__action:disabled{opacity:.5;cursor:not-allowed}.comment__action{height:30px;padding:0 var(--space-3);height:24px;padding:0 var(--space-2);color:var(--color-slate);gap:var(--space-1);background:0 0;border:none;font-size:11px}@media (pointer:coarse){.comment__action{min-height:36px;padding:0 var(--space-3)}}.comment__action:hover{color:var(--color-ink);background:var(--color-chrome)}.comment__action--resolve:hover{color:var(--color-success)}.comment__action--delete:hover{color:var(--color-danger)}.comment__coords{font-family:var(--font-mono);color:var(--color-focus);margin-top:var(--space-1);align-items:center;gap:var(--space-1);font-size:10px;display:flex}.comment__resolve-badge{font-family:var(--font-mono);background:color-mix(in srgb, var(--color-success), transparent 88%);color:var(--color-success);border-radius:8px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;display:inline-flex}.comment__reply-count{font-family:var(--font-mono);color:var(--color-slate);cursor:pointer;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-1) 0;font-size:11px;display:flex}.comment__reply-count:hover{color:var(--color-primary)}.annotation-marker{cursor:pointer;filter:drop-shadow(0 2px 4px #0003);transition:transform .12s cubic-bezier(.16,1,.3,1)}.annotation-marker:hover{transform:scale(1.15)}.annotation-marker__pin{width:28px;height:36px}.annotation-marker__count{font-family:var(--font-mono);background:var(--color-primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-4px;right:-6px}.comment-badge{font-family:var(--font-mono);background:var(--color-warning);min-width:16px;height:16px;color:var(--color-ink);pointer-events:none;border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 1px 2px #0000000f}.reply-compose{margin-left:var(--space-5);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);border:1px dashed var(--color-chrome)}.reply-compose__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.reply-compose__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.reply-compose__input::placeholder{color:var(--color-slate);opacity:.6}.reply-compose__input{width:100%;padding:var(--space-1) var(--space-2);resize:none;min-height:32px;font-size:12px}.reply-compose__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-1);display:flex}.reply-compose__btn{height:30px;padding:0 var(--space-3);height:24px;font-size:11px}.reply-compose__btn--submit{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.reply-compose__btn--submit:active:not(:disabled){transform:scale(.97)}.reply-compose__btn--submit:disabled{opacity:.5;cursor:not-allowed}.reply-compose__btn--submit{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.reply-compose__btn--submit:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.reply-compose__btn--submit{height:30px;padding:0 var(--space-3);height:24px;font-size:12px}.reply-compose__btn--cancel{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.reply-compose__btn--cancel:active:not(:disabled){transform:scale(.97)}.reply-compose__btn--cancel:disabled{opacity:.5;cursor:not-allowed}.reply-compose__btn--cancel{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.reply-compose__btn--cancel:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.reply-compose__btn--cancel{height:30px;padding:0 var(--space-3);height:24px;font-size:12px}.annotations-upgrade-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.annotations-upgrade-btn:active:not(:disabled){transform:scale(.97)}.annotations-upgrade-btn:disabled{opacity:.5;cursor:not-allowed}.annotations-upgrade-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.annotations-upgrade-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.annotations-upgrade-btn{margin-top:var(--space-2)}.map-controls__annotations-btn{right:var(--space-3);z-index:10;position:absolute;top:260px}@media (width<=640px){.map-controls__annotations-btn{top:220px}}.annotations-loading{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.annotations-loading__skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:72px;animation:1.6s infinite shimmer}.comment-thread--focused{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:6px}.sharing-overlay{background:var(--color-surface-overlay);padding:var(--space-5);z-index:400;justify-content:center;align-items:center;animation:.18s cubic-bezier(.16,1,.3,1) sharing-fade-in;display:flex;position:fixed;inset:0}.sharing-panel{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);flex-direction:column;max-width:520px;max-height:80vh;animation:.26s cubic-bezier(.16,1,.3,1) sharing-slide-up;display:flex;overflow:hidden}@media (width<=640px){.sharing-panel{max-width:100%;max-height:90vh;margin:var(--space-3)}}.sharing-panel__header{margin-bottom:var(--space-4);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sharing-panel__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);align-items:center;gap:var(--space-2);font-size:18px;font-weight:700;display:flex}.sharing-panel__title svg{color:var(--color-primary)}.sharing-panel__close{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.sharing-panel__close:active:not(:disabled){transform:scale(.97)}.sharing-panel__close:disabled{opacity:.5;cursor:not-allowed}.sharing-panel__close{height:30px;padding:0 var(--space-3);color:var(--color-slate);padding:var(--space-1);background:0 0;border:none;width:32px;height:32px;font-size:12px}.sharing-panel__close:hover{color:var(--color-ink);background:var(--color-chrome)}.sharing-panel__desc{font-family:var(--font-body);color:var(--color-slate);margin-bottom:var(--space-5);font-size:13px;line-height:1.5}.sharing-panel__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin-bottom:var(--space-4);font-size:13px;line-height:1.4}.sharing-panel__create{border:1.5px dashed var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-5);background:var(--color-surface-raised);gap:var(--space-3);flex-direction:column;display:flex}.sharing-panel__create-row{align-items:center;gap:var(--space-3);display:flex}.sharing-panel__expiry-toggle{align-items:center;gap:var(--space-2);font-family:var(--font-body);color:var(--color-ink);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;display:flex}.sharing-panel__expiry-toggle input[type=checkbox]{accent-color:var(--color-primary);width:15px;height:15px}.sharing-panel__expiry-input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.sharing-panel__expiry-input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.sharing-panel__expiry-input::placeholder{color:var(--color-slate);opacity:.6}.sharing-panel__expiry-input{width:100%}.sharing-panel__create-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.sharing-panel__create-btn:active:not(:disabled){transform:scale(.97)}.sharing-panel__create-btn:disabled{opacity:.5;cursor:not-allowed}.sharing-panel__create-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.sharing-panel__create-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.sharing-panel__create-btn{width:100%}.sharing-panel__list{scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;flex:1;overflow-y:auto}.sharing-panel__list::-webkit-scrollbar{width:5px}.sharing-panel__list::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.sharing-panel__list{gap:var(--space-3);flex-direction:column;display:flex}.sharing-panel__loading{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.sharing-panel__skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;width:100%;height:16px;animation:1.6s infinite shimmer}.sharing-panel__skeleton--short{width:60%}.sharing-panel__empty{text-align:center;padding:var(--space-7) var(--space-4);color:var(--color-slate);font-family:var(--font-body);align-items:center;gap:var(--space-2);flex-direction:column;font-size:13px;display:flex}.sharing-panel__empty svg{opacity:.4}.sharing-panel__gate{text-align:center;padding:var(--space-7) var(--space-5);align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.sharing-panel__gate svg{color:var(--color-slate);opacity:.5}.sharing-panel__gate h3{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.02em;font-size:16px;font-weight:700}.sharing-panel__gate p{font-family:var(--font-body);color:var(--color-slate);max-width:320px;font-size:13px;line-height:1.5}.sharing-link-row{border:1px solid var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--color-surface);transition:border-color .12s cubic-bezier(.16,1,.3,1)}.sharing-link-row--active{border-color:color-mix(in srgb, var(--color-success), transparent 60%)}.sharing-link-row--expired{opacity:.55}.sharing-link-row__header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.sharing-link-row__status{align-items:center;gap:6px;display:flex}.sharing-link-row__dot{background:var(--color-slate);border-radius:50%;flex-shrink:0;width:7px;height:7px}.sharing-link-row__dot--active{background:var(--color-success);box-shadow:0 0 6px color-mix(in srgb, var(--color-success), transparent 50%)}.sharing-link-row__status-text{font-family:var(--font-display);color:var(--color-ink);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.sharing-link-row__created{font-family:var(--font-body);color:var(--color-slate);font-size:11px}.sharing-link-row__url-bar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);margin-bottom:var(--space-2);display:flex}.sharing-link-row__url-bar>svg{color:var(--color-slate);flex-shrink:0}.sharing-link-row__url-bar--hidden .sharing-link-row__url{color:var(--color-slate);white-space:normal;text-overflow:clip;font-family:inherit;overflow:visible}.sharing-link-row__url{font-family:var(--font-mono);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.sharing-link-row__copy-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.sharing-link-row__copy-btn:active:not(:disabled){transform:scale(.97)}.sharing-link-row__copy-btn:disabled{opacity:.5;cursor:not-allowed}.sharing-link-row__copy-btn{height:30px;padding:0 var(--space-3);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);height:26px;padding:0 var(--space-2);flex-shrink:0;gap:4px;font-size:11px}.sharing-link-row__copy-btn:hover{background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.sharing-link-row__copy-btn--copied,.sharing-link-row__copy-btn--copied:hover{background:var(--color-success)}[data-theme=dark] .sharing-link-row__copy-btn{color:#141618}.sharing-link-row__expiry{font-family:var(--font-body);color:var(--color-slate);margin-bottom:var(--space-2);font-size:11px}.sharing-link-row__expiry--expired{color:var(--color-danger)}.sharing-link-row__actions{padding-top:var(--space-2);border-top:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.sharing-link-row__toggle{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.sharing-link-row__toggle input{opacity:0;width:0;height:0;position:absolute}.sharing-link-row__toggle input:checked+.sharing-link-row__toggle-track{background:var(--color-success)}.sharing-link-row__toggle input:checked+.sharing-link-row__toggle-track .sharing-link-row__toggle-thumb{transform:translate(16px)}.sharing-link-row__toggle input:disabled+.sharing-link-row__toggle-track{opacity:.4;cursor:not-allowed}.sharing-link-row__toggle-track{background:var(--color-chrome);border-radius:9px;flex-shrink:0;width:34px;height:18px;transition:background .12s cubic-bezier(.16,1,.3,1);position:relative}.sharing-link-row__toggle-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .12s cubic-bezier(.16,1,.3,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.sharing-link-row__toggle-label{font-family:var(--font-body);color:var(--color-slate);-webkit-user-select:none;user-select:none;font-size:12px}.sharing-link-row__delete-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.sharing-link-row__delete-btn:active:not(:disabled){transform:scale(.97)}.sharing-link-row__delete-btn:disabled{opacity:.5;cursor:not-allowed}.sharing-link-row__delete-btn{height:30px;padding:0 var(--space-3);color:var(--color-slate);background:0 0;border:1px solid #0000;gap:4px;height:28px;font-size:11px}.sharing-link-row__delete-btn:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger), transparent 80%)}.sharing-link-row__delete-btn--confirm{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.sharing-link-row__delete-btn--confirm:hover{background:color-mix(in srgb, var(--color-danger), #000 15%)}@keyframes sharing-fade-in{0%{opacity:0}to{opacity:1}}@keyframes sharing-slide-up{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dc-panel{top:var(--space-2);right:var(--space-2);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:360px;max-height:calc(100vh - 80px);box-shadow:var(--shadow-lg);z-index:50;scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;position:absolute;overflow-y:auto}.dc-panel::-webkit-scrollbar{width:5px}.dc-panel::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}@media (width<=768px){.dc-panel{width:320px}}@media (width<=640px){.dc-panel{width:calc(100vw - var(--space-4));right:var(--space-2);max-height:calc(100vh - 120px)}}.dc-panel__header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-chrome);background:var(--color-surface);z-index:1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.dc-panel__title-row{align-items:center;gap:var(--space-2);color:var(--color-ink);display:flex}.dc-panel__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin:0;font-size:14px;font-weight:700}.dc-panel__count{font-family:var(--font-mono);color:var(--color-surface);background:var(--color-slate);text-align:center;border-radius:10px;min-width:20px;padding:1px 7px;font-size:11px;font-weight:600}.dc-panel__close{width:28px;height:28px;color:var(--color-slate);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.dc-panel__close:hover{background:var(--color-chrome);color:var(--color-ink)}.dc-panel__upgrade{padding:var(--space-6) var(--space-5);text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.dc-panel__upgrade-icon{background:color-mix(in srgb, var(--color-primary), transparent 90%);width:40px;height:40px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.dc-panel__upgrade-text{color:var(--color-ink);margin:0;font-size:13px;line-height:1.5}.dc-panel__upgrade-hint{color:var(--color-slate);margin:0;font-size:12px;line-height:1.4}.dc-panel__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin:var(--space-3) var(--space-4);font-size:13px;line-height:1.4}.dc-panel__section-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);padding:0 var(--space-4);margin-bottom:var(--space-2);margin-top:var(--space-3);font-size:11px;font-weight:700}.dc-panel__probe{padding:0 var(--space-4) var(--space-4)}.dc-panel__type-grid{gap:var(--space-2);margin-bottom:var(--space-3);margin-top:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.dc-panel__type-grid--5col{grid-template-columns:repeat(5,1fr)}@media (width<=768px){.dc-panel__type-grid--5col{grid-template-columns:repeat(5,1fr)}}.dc-panel__type-grid--7col{grid-template-columns:repeat(7,1fr)}@media (width<=768px){.dc-panel__type-grid--7col{grid-template-columns:repeat(4,1fr)}}.dc-panel__type-grid--8col{grid-template-columns:repeat(4,1fr)}@media (width<=768px){.dc-panel__type-grid--8col{grid-template-columns:repeat(4,1fr)}}@media (width<=640px){.dc-panel__type-grid{grid-template-columns:repeat(3,1fr)}}.dc-panel__type-btn{padding:var(--space-2) var(--space-1);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;flex-direction:column;align-items:center;gap:2px;display:flex}.dc-panel__type-btn:hover{border-color:var(--color-slate)}.dc-panel__type-btn--active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary), transparent 95%)}.dc-panel__type-label{font-family:var(--font-mono);color:var(--color-ink);letter-spacing:.03em;font-size:12px;font-weight:700}.dc-panel__type-desc{color:var(--color-slate);font-size:10px}.dc-panel__field{margin-bottom:var(--space-3)}.dc-panel__label{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-1);font-size:12px;font-weight:600;display:block}.dc-panel__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.dc-panel__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.dc-panel__input::placeholder{color:var(--color-slate);opacity:.6}.dc-panel__input{width:100%;font-size:13px}.dc-panel__input--sm{padding:6px var(--space-2);font-size:12px}.dc-panel__auth-toggle{align-items:center;gap:var(--space-2);font-family:var(--font-body);color:var(--color-slate);cursor:pointer;padding:var(--space-1) 0;margin-bottom:var(--space-2);background:0 0;border:none;font-size:12px;display:flex}.dc-panel__auth-toggle:hover{color:var(--color-ink)}.dc-panel__auth{padding:var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);margin-bottom:var(--space-3);background:var(--color-surface-raised)}.dc-panel__auth-types{gap:var(--space-4);margin-bottom:var(--space-2);display:flex}.dc-panel__radio{align-items:center;gap:var(--space-1);color:var(--color-ink);cursor:pointer;font-size:12px;display:flex}.dc-panel__radio input[type=radio]{accent-color:var(--color-primary)}.dc-panel__auth-fields{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.dc-panel__probe-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.dc-panel__probe-btn:active:not(:disabled){transform:scale(.97)}.dc-panel__probe-btn:disabled{opacity:.5;cursor:not-allowed}.dc-panel__probe-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.dc-panel__probe-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.dc-panel__probe-btn{width:100%;margin-top:var(--space-2);gap:var(--space-2)}.dc-panel__probe-btn:disabled{opacity:.5}.dc-panel__probe-error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin-top:var(--space-2);font-size:13px;line-height:1.4}.dc-panel__select{padding:0 var(--space-4) var(--space-4)}.dc-panel__select-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);margin-top:var(--space-3);display:flex}.dc-panel__back-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.dc-panel__back-btn:active:not(:disabled){transform:scale(.97)}.dc-panel__back-btn:disabled{opacity:.5;cursor:not-allowed}.dc-panel__back-btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.dc-panel__back-btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.dc-panel__back-btn{height:30px;padding:0 var(--space-3);padding:0 var(--space-2);font-size:12px}.dc-panel__service-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.dc-panel__service-badge{font-family:var(--font-mono);color:var(--color-surface);background:var(--color-primary);white-space:nowrap;letter-spacing:.04em;border-radius:3px;padding:1px 6px;font-size:10px;font-weight:700}.dc-panel__service-title{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.dc-panel__service-abstract{color:var(--color-slate);margin:0 0 var(--space-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.dc-panel__layers-label{font-family:var(--font-display);color:var(--color-slate);margin-bottom:var(--space-2);font-size:12px;font-weight:600}.dc-panel__layers-list{border:1px solid var(--color-chrome);border-radius:var(--radius-md);scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;max-height:260px;overflow-y:auto}.dc-panel__layers-list::-webkit-scrollbar{width:5px}.dc-panel__layers-list::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}.dc-panel__layer-item{border-bottom:1px solid color-mix(in srgb, var(--color-chrome), transparent 40%)}.dc-panel__layer-item:last-child{border-bottom:none}.dc-panel__layer-label{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);display:flex}.dc-panel__layer-label:hover{background:var(--color-surface-raised)}.dc-panel__layer-check{accent-color:var(--color-primary);flex-shrink:0;margin-top:2px}.dc-panel__layer-info{flex-direction:column;gap:1px;min-width:0;display:flex}.dc-panel__layer-title{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.dc-panel__layer-abstract{color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dc-panel__add-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.dc-panel__add-btn:active:not(:disabled){transform:scale(.97)}.dc-panel__add-btn:disabled{opacity:.5;cursor:not-allowed}.dc-panel__add-btn{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.dc-panel__add-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.dc-panel__add-btn{width:100%;margin-top:var(--space-3);gap:var(--space-2)}.dc-panel__add-btn:disabled{opacity:.4}.dc-panel__list{padding:0 var(--space-3) var(--space-3)}.dc-panel__connector{padding:var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);margin-bottom:var(--space-2);background:var(--color-surface-raised);transition:border-color var(--duration-fast) var(--ease-out)}.dc-panel__connector:hover{border-color:var(--color-slate)}.dc-panel__connector-head{align-items:center;gap:var(--space-2);display:flex}.dc-panel__vis-btn,.dc-panel__del-btn{width:28px;height:28px;color:var(--color-slate);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dc-panel__vis-btn:hover,.dc-panel__del-btn:hover{background:var(--color-chrome);color:var(--color-ink)}.dc-panel__del-btn:hover{color:var(--color-danger)}.dc-panel__connector-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.dc-panel__connector-name{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.dc-panel__connector-meta{align-items:center;gap:var(--space-2);color:var(--color-slate);font-size:11px;display:flex}.dc-panel__type-badge{font-family:var(--font-mono);background:color-mix(in srgb, var(--color-primary), transparent 88%);color:var(--color-primary);letter-spacing:.04em;border-radius:3px;padding:0 5px;font-size:10px;font-weight:600}.dc-panel__hint{margin:var(--space-1) 0 0;color:var(--color-slate);font-size:11px;line-height:1.4}.dc-panel__credit-row{align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.dc-panel__credit-row .dc-panel__input{flex:1;min-width:0}.dc-panel__opacity-row{align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid color-mix(in srgb, var(--color-chrome), transparent 50%);display:flex}.dc-panel__opacity-label{color:var(--color-slate);flex-shrink:0;font-size:11px}.dc-panel__opacity-slider{height:4px;accent-color:var(--color-primary);cursor:pointer;flex:1}.dc-panel__opacity-value{font-family:var(--font-mono);color:var(--color-slate);text-align:right;min-width:32px;font-size:11px}.dc-panel__confirm-del{align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid color-mix(in srgb, var(--color-danger), transparent 80%);color:var(--color-danger);font-size:12px;display:flex}.dc-panel__confirm-del span{flex:1}.dc-panel__confirm-yes{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.dc-panel__confirm-yes:active:not(:disabled){transform:scale(.97)}.dc-panel__confirm-yes:disabled{opacity:.5;cursor:not-allowed}.dc-panel__confirm-yes{color:#fff;background:var(--color-danger)}.dc-panel__confirm-yes:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger), #000 15%)}.dc-panel__confirm-yes{height:30px;padding:0 var(--space-3);padding:0 var(--space-3);height:26px;font-size:11px}.dc-panel__confirm-no{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.dc-panel__confirm-no:active:not(:disabled){transform:scale(.97)}.dc-panel__confirm-no:disabled{opacity:.5;cursor:not-allowed}.dc-panel__confirm-no{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.dc-panel__confirm-no:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.dc-panel__confirm-no{height:30px;padding:0 var(--space-3);padding:0 var(--space-3);height:26px;font-size:11px}.dc-panel__skeleton{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.dc-panel__skeleton-row{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:52px;animation:1.6s infinite shimmer}.dc-panel__sheets-config{gap:var(--space-2);flex-direction:column;display:flex}.dc-panel__mapping-grid{gap:var(--space-2);margin-bottom:var(--space-2);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.dc-panel__mapping-grid{grid-template-columns:1fr}}.dc-panel__mapping-field{gap:var(--space-1);flex-direction:column;display:flex}.dc-panel__select-input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.dc-panel__select-input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.dc-panel__select-input::placeholder{color:var(--color-slate);opacity:.6}.dc-panel__select-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;width:100%;padding-right:24px;font-size:12px}.dc-panel__attr-section{margin-top:var(--space-1)}.dc-panel__sync-section{margin-top:var(--space-2)}.dc-panel__sync-options{gap:var(--space-4);padding:var(--space-2) 0;display:flex}.dc-panel__section-label--inner{align-items:center;gap:var(--space-1);margin-top:var(--space-3);margin-bottom:var(--space-1);color:var(--color-slate);padding:0;display:flex}.dc-panel__layers-list--compact{max-height:160px}.dc-panel__postgis-form{gap:var(--space-1);margin-bottom:var(--space-3);flex-direction:column;display:flex}.dc-panel__postgis-grid{gap:var(--space-2);margin-bottom:var(--space-1);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.dc-panel__postgis-grid{grid-template-columns:1fr}}.dc-panel__postgis-field{gap:var(--space-1);flex-direction:column;display:flex}.dc-panel__postgis-field--host{grid-column:1}.dc-panel__postgis-field--port input{max-width:100px}.dc-panel__tls-option{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb, var(--color-warning), transparent 55%);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-warning), transparent 92%)}.dc-panel__check{align-items:center;gap:var(--space-2);color:var(--color-ink);cursor:pointer;min-height:32px;font-size:13px;font-weight:600;display:flex}.dc-panel__tls-warning{margin:var(--space-1) 0 0;color:var(--color-warning);font-size:12px;line-height:1.45}.dc-panel__tls-badge{margin-left:var(--space-2);padding:1px var(--space-2);border-radius:var(--radius-sm);color:var(--color-warning);border:1px solid color-mix(in srgb, var(--color-warning), transparent 55%);font-size:11px;font-weight:600}.dc-panel__postgis-hint{font-family:var(--font-mono);color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--space-1);align-items:center;gap:var(--space-1);font-size:10px;font-weight:500;display:flex}.dc-panel__postgis-hint:before{content:"";background:color-mix(in srgb, var(--color-primary), transparent 40%);border-radius:50%;width:6px;height:6px;display:inline-block}.spatial-analysis-panel{color:#e4efea;z-index:100;background:#12201c;border:1px solid #ffffff14;border-radius:6px;flex-direction:column;width:380px;max-height:calc(100vh - 120px);font-family:DM Sans,sans-serif;display:flex;position:absolute;top:60px;right:60px;overflow:hidden;box-shadow:0 8px 32px #00000080}.spatial-analysis-panel__header{background:#1a2925;border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.spatial-analysis-panel__title{letter-spacing:.04em;text-transform:uppercase;color:#b9cec6;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.spatial-analysis-panel__close-btn{cursor:pointer;color:#8faaa1;background:0 0;border:none;border-radius:3px;align-items:center;padding:4px;transition:color .15s;display:flex}.spatial-analysis-panel__close-btn:hover{color:#e4efea}.spatial-analysis-panel__body{flex:1;display:flex;overflow:hidden}.spatial-analysis-panel__ops{background:#0d1714;border-right:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;gap:4px;width:60px;padding:8px 0;display:flex}.spatial-analysis-panel__op-btn{cursor:pointer;color:#6f8d84;letter-spacing:.02em;background:0 0;border:none;border-left:2px solid #0000;flex-direction:column;align-items:center;gap:4px;width:100%;padding:8px 4px;font-family:IBM Plex Mono,monospace;font-size:9px;transition:color .15s,background .15s;display:flex}.spatial-analysis-panel__op-btn:hover{color:#8faaa1;background:#ffffff0a}.spatial-analysis-panel__op-btn--active{color:#3ecfa5;background:#3ecfa514;border-left-color:#3ecfa5}.spatial-analysis-panel__op-icon{justify-content:center;align-items:center;width:22px;height:22px;display:flex}.spatial-analysis-panel__config{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.spatial-analysis-panel__op-label{letter-spacing:.08em;text-transform:uppercase;color:#3ecfa5;margin-bottom:4px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.spatial-analysis-panel__field{flex-direction:column;gap:4px;display:flex}.spatial-analysis-panel__field-label{color:#8faaa1;letter-spacing:.02em;font-size:11px}.spatial-analysis-panel__field-value{color:#a1f2d4;word-break:break-all;background:#a1f2d414;border:1px solid #a1f2d433;border-radius:3px;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.spatial-analysis-panel__field-empty{color:#5c7a71;background:#ffffff08;border:1px dashed #ffffff1a;border-radius:3px;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.spatial-analysis-panel__select{color:#e4efea;cursor:pointer;background:#1a2925;border:1px solid #ffffff1a;border-radius:3px;width:100%;padding:6px 8px;font-size:12px}.spatial-analysis-panel__select:focus{border-color:#3ecfa566;outline:none}.spatial-analysis-panel__slider-row{align-items:center;gap:10px;display:flex}.spatial-analysis-panel__slider{accent-color:#3ecfa5;cursor:pointer;flex:1}.spatial-analysis-panel__slider-value{color:#3ecfa5;text-align:right;min-width:60px;font-family:IBM Plex Mono,monospace;font-size:11px}.spatial-analysis-panel__stepper-row{align-items:center;gap:8px;display:flex}.spatial-analysis-panel__stepper-btn{color:#e4efea;cursor:pointer;background:#1a2925;border:1px solid #ffffff1a;border-radius:3px;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;transition:background .1s;display:flex}.spatial-analysis-panel__stepper-btn:hover{background:#24352f}.spatial-analysis-panel__stepper-btn:disabled{opacity:.4;cursor:not-allowed}.spatial-analysis-panel__stepper-val{color:#3ecfa5;text-align:center;min-width:24px;font-family:IBM Plex Mono,monospace;font-size:12px}.spatial-analysis-panel__run-btn{color:#12201c;letter-spacing:.04em;cursor:pointer;background:#3ecfa5;border:none;border-radius:4px;width:100%;margin-top:4px;padding:8px 12px;font-size:12px;font-weight:700;transition:background .15s,opacity .15s}.spatial-analysis-panel__run-btn:hover:not(:disabled){background:#63dcba}.spatial-analysis-panel__run-btn:disabled{opacity:.5;cursor:not-allowed}.spatial-analysis-panel__results{background:#0d1714;border-top:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;max-height:200px;display:flex}.spatial-analysis-panel__results-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.spatial-analysis-panel__results-title{color:#8faaa1;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.spatial-analysis-panel__results-badge{color:#a1f2d4;background:#a1f2d41f;border:1px solid #a1f2d440;border-radius:10px;padding:1px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.spatial-analysis-panel__results-list{flex-direction:column;flex:1;gap:4px;padding:0 16px 8px;display:flex;overflow-y:auto}.spatial-analysis-panel__result-item{background:#ffffff08;border:1px solid #ffffff0f;border-radius:3px;justify-content:space-between;align-items:center;padding:5px 8px;font-size:11px;display:flex}.spatial-analysis-panel__result-id{color:#8faaa1;text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-family:IBM Plex Mono,monospace;font-size:10px;overflow:hidden}.spatial-analysis-panel__result-dist{color:#a1f2d4;flex-shrink:0;margin-left:8px;font-family:IBM Plex Mono,monospace;font-size:10px}.spatial-analysis-panel__distance-result{text-align:center;padding:12px 16px}.spatial-analysis-panel__distance-value{color:#3ecfa5;font-family:IBM Plex Mono,monospace;font-size:24px;font-weight:700}.spatial-analysis-panel__distance-unit{color:#8faaa1;margin-top:2px;font-family:IBM Plex Mono,monospace;font-size:12px}.spatial-analysis-panel__results-actions{border-top:1px solid #ffffff0a;flex-shrink:0;padding:8px 16px}.spatial-analysis-panel__add-layer-btn{color:#a1f2d4;cursor:pointer;background:#a1f2d41a;border:1px solid #a1f2d440;border-radius:3px;width:100%;padding:6px 12px;font-size:11px;font-weight:600;transition:background .15s}.spatial-analysis-panel__add-layer-btn:hover{background:#a1f2d42e}.spatial-analysis-panel__loading{color:#6f8d84;justify-content:center;align-items:center;gap:8px;padding:24px;font-size:12px;display:flex}.spatial-analysis-panel__spinner{border:2px solid #ffffff1a;border-top-color:#3ecfa5;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite sa-spin}.spatial-analysis-panel__error{color:#f87171;background:#dc3c3c1a;border:1px solid #dc3c3c40;border-radius:3px;margin:8px 16px;padding:8px 10px;font-size:11px}.spatial-analysis-panel__upgrade{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:32px 24px;display:flex}.spatial-analysis-panel__upgrade-icon{opacity:.6;font-size:28px}.spatial-analysis-panel__upgrade-title{color:#e4efea;font-size:14px;font-weight:600}.spatial-analysis-panel__upgrade-desc{color:#8faaa1;font-size:12px;line-height:1.5}.spatial-analysis-panel__upgrade-btn{color:#12201c;cursor:pointer;background:#3ecfa5;border:none;border-radius:4px;padding:8px 20px;font-size:12px;font-weight:700;text-decoration:none;transition:background .15s;display:inline-block}.spatial-analysis-panel__upgrade-btn:hover{background:#63dcba}@keyframes sa-spin{to{transform:rotate(360deg)}}[data-theme=light] .spatial-analysis-panel{color:#12201c;background:#f2f7f5;border-color:#0d1f1a1f}[data-theme=light] .spatial-analysis-panel__header{background:#e4efea;border-color:#0d1f1a14}[data-theme=light] .spatial-analysis-panel__title{color:#24352f}[data-theme=light] .spatial-analysis-panel__close-btn{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__close-btn:hover{color:#0d1f1a}[data-theme=light] .spatial-analysis-panel__ops{background:#e4efea;border-color:#0d1f1a14}[data-theme=light] .spatial-analysis-panel__op-btn{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__op-btn:hover{color:#24352f;background:#0d1f1a0d}[data-theme=light] .spatial-analysis-panel__op-btn--active{color:#15795b;background:#15795b1a;border-left-color:#15795b}[data-theme=light] .spatial-analysis-panel__op-label{color:#15795b}[data-theme=light] .spatial-analysis-panel__field-label{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__field-value{color:#15795b;background:#15795b14;border-color:#15795b40}[data-theme=light] .spatial-analysis-panel__field-empty{color:#4d6b62;background:#0d1f1a08;border-color:#0d1f1a26}[data-theme=light] .spatial-analysis-panel__select{color:#12201c;background:#fff;border-color:#0d1f1a26}[data-theme=light] .spatial-analysis-panel__select:focus{border-color:#15795b80}[data-theme=light] .spatial-analysis-panel__slider{accent-color:#15795b}[data-theme=light] .spatial-analysis-panel__slider-value{color:#15795b}[data-theme=light] .spatial-analysis-panel__stepper-btn{color:#12201c;background:#fff;border-color:#0d1f1a26}[data-theme=light] .spatial-analysis-panel__stepper-btn:hover:not(:disabled){background:#e4efea}[data-theme=light] .spatial-analysis-panel__stepper-val{color:#15795b}[data-theme=light] .spatial-analysis-panel__run-btn{color:#fff;background:#15795b}[data-theme=light] .spatial-analysis-panel__run-btn:hover:not(:disabled){background:#106349}[data-theme=light] .spatial-analysis-panel__results{background:#e4efea;border-top-color:#0d1f1a14}[data-theme=light] .spatial-analysis-panel__results-title{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__results-badge{color:#15795b;background:#15795b1f;border-color:#15795b40}[data-theme=light] .spatial-analysis-panel__result-item{background:#fff;border-color:#0d1f1a14}[data-theme=light] .spatial-analysis-panel__result-id{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__result-dist,[data-theme=light] .spatial-analysis-panel__distance-value{color:#15795b}[data-theme=light] .spatial-analysis-panel__distance-unit{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__results-actions{border-top-color:#0d1f1a0f}[data-theme=light] .spatial-analysis-panel__add-layer-btn{color:#15795b;background:#15795b1a;border-color:#15795b40}[data-theme=light] .spatial-analysis-panel__add-layer-btn:hover{background:#15795b2e}[data-theme=light] .spatial-analysis-panel__loading{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__spinner{border-color:#15795b #0d1f1a1f #0d1f1a1f}[data-theme=light] .spatial-analysis-panel__error{color:#c81e1e;background:#c81e1e14;border-color:#c81e1e33}[data-theme=light] .spatial-analysis-panel__upgrade-title{color:#0d1f1a}[data-theme=light] .spatial-analysis-panel__upgrade-desc{color:#4d6b62}[data-theme=light] .spatial-analysis-panel__upgrade-btn{color:#fff;background:#15795b}[data-theme=light] .spatial-analysis-panel__upgrade-btn:hover{background:#106349}@media (width<=600px){.spatial-analysis-panel{width:auto;max-height:calc(100vh - 80px);top:56px;left:8px;right:8px}}.record-point{bottom:calc(var(--map-status-zone,48px) + var(--space-3));z-index:300;width:min(360px, 100vw - var(--space-6));padding:var(--space-4);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);position:fixed;left:50%;transform:translate(-50%)}.record-point:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (width<=640px){.record-point{bottom:var(--space-3)}}.record-point__title{margin:0 0 var(--space-2);font-size:15px;font-weight:600}.record-point__text,.record-point__coords,.record-point__warn{margin:0 0 var(--space-2);font-size:13px;line-height:1.45}.record-point__coords{color:var(--color-slate);font-variant-numeric:tabular-nums}.record-point__warn{color:var(--color-ink);padding:var(--space-2);border-left:3px solid var(--color-danger);background:var(--color-surface-raised)}.record-point__field{margin:var(--space-2) 0;flex-direction:column;gap:4px;font-size:13px;display:flex}.record-point__field select{min-height:44px;padding:0 var(--space-2);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md)}.record-point__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.record-point__btn{min-height:44px;padding:0 var(--space-3);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);cursor:pointer}.record-point__btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.record-point__btn:disabled{opacity:.6;cursor:default}.record-point__btn--primary{color:var(--color-btn-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.presence-bar{align-items:center;gap:6px;display:flex}.presence-bar__dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;transition:background-color .3s}.presence-bar__dot--on{background:#2b7230}.presence-bar__dot--off{background:#4d6b62;animation:1.4s ease-in-out infinite presence-pulse}.presence-bar__solo{color:#4d6b62;letter-spacing:.02em;font-size:11px}[data-theme=dark] .presence-bar__solo{color:#8faaa1}.presence-bar__stack{align-items:center;display:flex}.presence-bar__stack>*+*{margin-left:-6px}.presence-avatar{background:var(--avatar-color,#a5278c);cursor:default;z-index:1;border:2px solid #fff;border-radius:50%;width:26px;height:26px;transition:transform .15s,z-index;position:relative}[data-theme=dark] .presence-avatar{border-color:#0f1613}.presence-avatar:hover{z-index:10;transform:translateY(-2px)}.presence-avatar__initials{color:#fff;letter-spacing:.02em;-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px #0000004d;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex;position:absolute;inset:0}.presence-avatar__tooltip{color:#fff;white-space:nowrap;pointer-events:none;z-index:1000;background:#0d1f1a;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.presence-avatar__tooltip:after{content:"";border:4px solid #0000;border-top-color:#0d1f1a;position:absolute;top:100%;left:50%;transform:translate(-50%)}[data-theme=dark] .presence-avatar__tooltip{color:#0f1613;background:#e4efea}[data-theme=dark] .presence-avatar__tooltip:after{border-top-color:#e4efea}.presence-avatar--overflow{background:#cfe0da;border-color:#cfe0da}.presence-avatar--overflow .presence-avatar__initials{color:#4d6b62;text-shadow:none;font-size:8px}[data-theme=dark] .presence-avatar--overflow{background:#2f403a;border-color:#2f403a}[data-theme=dark] .presence-avatar--overflow .presence-avatar__initials{color:#8faaa1}@keyframes presence-pulse{0%,to{opacity:1}50%{opacity:.35}}.map-view{--map-left-gutter:328px;--map-rail-gutter:var(--map-left-gutter);--map-search-zone:calc(var(--space-4) * 2 + var(--touch-min) + 3px);width:100%;height:100%;position:relative;overflow:hidden}.map-view--panel-collapsed{--map-left-gutter:60px;--map-rail-gutter:var(--space-3)}.map-canvas{width:100%;height:100%}.map-canvas .maplibregl-ctrl-attrib{font-family:var(--font-mono);opacity:.6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffb3;font-size:9px}.map-canvas .maplibregl-ctrl-bottom-right{bottom:var(--map-status-zone,48px)}@media (width<=640px){.map-canvas .maplibregl-ctrl-bottom-right{z-index:61}}.map-canvas .maplibregl-ctrl-scale{font-family:var(--font-mono);border-color:var(--color-ink);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:0 var(--space-1);background:#fffc;border-radius:0;font-size:10px}.map-canvas .maplibregl-ctrl-top-right .maplibregl-ctrl-group{display:none}.map-tools{top:var(--space-4);right:var(--space-4);align-items:center;gap:var(--space-2);z-index:10;flex-direction:column;display:flex;position:absolute}.map-tools__nav{background:var(--color-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;gap:1px;display:flex;overflow:hidden}.map-tools__btn{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;color:var(--color-ink);box-shadow:var(--shadow-sm);transition:background var(--duration-fast) ease, color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;justify-content:center;align-items:center;padding:0;display:flex}.map-tools__btn:hover{background:var(--color-surface-raised);color:var(--color-primary);box-shadow:var(--shadow-md)}.map-tools__btn:active{background:var(--color-chrome)}.map-tools__btn--accent{color:var(--color-primary)}[data-theme=dark] .map-tools__btn--accent:hover{background:rgba(var(--color-primary-rgb), .1)}.map-tools__btn--active{color:var(--color-btn-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.map-tools__btn--active:hover{color:var(--color-btn-primary-text);background:var(--color-primary)}.map-tools__note{bottom:calc(var(--map-status-zone,48px) + var(--space-3));width:max-content;max-width:min(360px, 100vw - var(--space-6));padding:var(--space-2) var(--space-3);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);box-shadow:var(--shadow-md);margin:0;font-size:13px;line-height:1.4;position:fixed;left:50%;transform:translate(-50%)}.map-tools__nav .map-tools__btn{box-shadow:none;border:none;border-radius:0}.map-tools__nav .map-tools__btn:hover{box-shadow:none}.map-view--attr-open .map-tools{right:calc(320px + var(--space-3) * 2)}.map-status-bar{align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-4);padding-bottom:calc(var(--space-1) + var(--safe-bottom,0px));z-index:10;pointer-events:none;display:flex;position:absolute;bottom:0;left:0;right:0}.map-status-bar>*{pointer-events:auto}.map-status-bar:has(.basemap-switcher__panel){z-index:60}.map-status-bar__item{align-items:center;gap:var(--space-1);padding:2px var(--space-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--color-slate);white-space:nowrap;background:#ffffffd1;font-size:10px;font-weight:500;display:flex}[data-theme=dark] .map-status-bar__item{color:#ffffffb3;background:#0d1f1ac7}.map-status-bar__feature-count{color:var(--color-ink)}[data-theme=dark] .map-status-bar__feature-count{color:#ffffffe6}.map-status-bar__pulse{background:var(--color-primary);border-radius:50%;width:6px;height:6px;animation:1s infinite mapPulse}.map-status-bar__spacer{flex:1}@keyframes mapPulse{0%,to{opacity:1}50%{opacity:.3}}.map-presence{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;border-radius:20px;padding:4px 10px 4px 8px;box-shadow:0 1px 4px #0000001f}[data-theme=dark] .map-presence{background:#0d1f1ad9}@media (width<=768px){.map-view{--map-left-gutter:280px}.map-view--panel-collapsed{--map-left-gutter:56px}.map-tools{right:var(--space-3);top:var(--space-3)}.map-tools__btn,.map-tools__nav .map-tools__btn{width:var(--touch-min);height:var(--touch-min)}.map-view--attr-open .map-tools{right:var(--space-3)}}@media (width<=640px){.map-view,.map-view--panel-collapsed{--map-left-gutter:var(--space-3)}.map-tools{top:var(--space-3);right:var(--space-3)}.map-status-bar{padding:var(--space-1) var(--space-3);padding-bottom:calc(var(--space-1) + var(--safe-bottom,0px));gap:var(--space-2);z-index:20}.map-status-bar__item{font-size:9px}.map-view--panel-collapsed .map-status-bar{padding-left:calc(var(--space-3) + var(--touch-min) + var(--space-2))}.map-presence{display:none}}.map-view .maplibregl-ctrl-group:has(.maplibregl-ctrl-geolocate){display:none}.collab-cursor{pointer-events:none;align-items:center;gap:4px;display:flex}.collab-cursor__dot{background:var(--cursor-color,var(--color-primary));border:2px solid var(--color-surface);width:10px;height:10px;box-shadow:0 0 0 1px var(--cursor-color,var(--color-primary));border-radius:50%}.collab-cursor__label{white-space:nowrap;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--cursor-color,var(--color-primary));border-radius:4px;padding:1px 6px;font-size:11px;line-height:1.4}.map-pin{color:var(--color-primary);cursor:pointer;filter:drop-shadow(0 1px 2px #00000059);background:0 0;border:0;padding:0;line-height:0;display:block}.map-pin:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:4px}.map-pin--resolved{color:var(--color-slate)}.projects-page{min-height:100%;padding:var(--space-7) var(--space-5);background:var(--color-paper);background-image:linear-gradient(#0d1f1a06 1px,#0000 1px),linear-gradient(90deg,#0d1f1a06 1px,#0000 1px);background-size:40px 40px;overflow-y:auto}[data-theme=dark] .projects-page{background-image:linear-gradient(#e8e6e106 1px,#0000 1px),linear-gradient(90deg,#e8e6e106 1px,#0000 1px)}.projects-page__container{max-width:960px;margin:0 auto}.projects-page__header{margin-bottom:var(--space-7)}.projects-page__heading-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.projects-page__heading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:28px;font-weight:700;line-height:1.15}.projects-page__subheading{color:var(--color-slate);margin-top:var(--space-1);font-size:14px;line-height:1.5}.projects-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(270px,1fr));display:grid}.project-card{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-5);cursor:pointer;transition:border-color var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-fast) var(--ease-out);animation:cardIn .35s var(--ease-out) both;position:relative}.project-card:hover{border-color:var(--color-primary);box-shadow:0 2px 12px rgba(var(--color-primary-rgb), .06), 0 0 0 1px rgba(var(--color-primary-rgb), .08)}.project-card:active{transform:scale(.985)}.project-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.project-card__top{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.project-card__icon{border-radius:var(--radius-md);background:rgba(var(--color-primary-rgb), .07);width:36px;height:36px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.project-card__menu-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.project-card__menu-btn:hover{background:var(--color-chrome);color:var(--color-ink)}.project-card__menu-btn:focus-visible,.project-card:hover .project-card__menu-btn{opacity:1}.project-card__name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-1);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.project-card__desc{color:var(--color-slate);margin-bottom:var(--space-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.project-card__meta{align-items:center;gap:var(--space-2);color:var(--color-slate);padding-top:var(--space-3);border-top:1px solid var(--color-chrome);margin-top:auto;font-size:12px;display:flex}.project-card__ownership{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:600}.project-card__ownership--personal{color:var(--color-primary);background:rgba(var(--color-primary-rgb), .06)}.project-card__ownership--team{color:#2563eb;background:#2563eb14}.project-card__sep{background:var(--color-chrome);border-radius:50%;flex-shrink:0;width:3px;height:3px}.project-card__time{color:var(--color-slate);font-size:12px}.project-card__template-actions{margin-top:var(--space-2);gap:var(--space-2);display:flex}.project-card__fork-btn{border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;background:0 0;align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:600;transition:background .15s;display:inline-flex}.project-card__fork-btn:hover:not(:disabled){background:rgba(var(--color-primary-rgb), .08)}.project-card__fork-btn:disabled{opacity:.5;cursor:default}.project-card--skeleton{pointer-events:none;cursor:default}.project-card__skeleton-icon,.project-card__skeleton-title,.project-card__skeleton-meta{background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.6s infinite shimmer}.project-card__skeleton-icon{border-radius:var(--radius-md);width:36px;height:36px;margin-bottom:var(--space-4)}.project-card__skeleton-title{width:65%;height:18px;margin-bottom:var(--space-3)}.project-card__skeleton-meta{width:40%;height:12px}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.projects-examples{margin-bottom:var(--space-7);animation:cardIn .4s var(--ease-out) both}.projects-examples__header{margin-bottom:var(--space-4);justify-content:space-between;align-items:flex-start;display:flex}.projects-examples__title{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.04em;font-size:14px;font-weight:600}.projects-examples__subtitle{color:var(--color-slate);opacity:.8;margin-top:2px;font-size:13px;line-height:1.4}.projects-examples__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.example-card{background:var(--color-surface);border:1.5px dashed var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-5);padding-top:var(--space-6);cursor:pointer;transition:border-color var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-fast) var(--ease-out);animation:cardIn .4s var(--ease-out) both;position:relative;overflow:hidden}.example-card:before{content:"";background:radial-gradient(ellipse at 20% 50%, rgba(var(--color-primary-rgb), .04) 0%, transparent 60%), radial-gradient(ellipse at 80% 20%, rgba(var(--color-primary-rgb), .03) 0%, transparent 50%);pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out);opacity:.7;position:absolute;inset:0}.example-card:hover{border-color:var(--color-primary);box-shadow:0 2px 16px rgba(var(--color-primary-rgb), .08), 0 0 0 1px rgba(var(--color-primary-rgb), .06);border-style:solid}.example-card:hover:before{opacity:1}.example-card:active{transform:scale(.985)}.example-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.example-card__badge{top:var(--space-3);left:var(--space-3);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08);border:1px solid rgba(var(--color-primary-rgb), .15);border-radius:3px;padding:2px 8px;font-size:10px;font-weight:700;line-height:1.4;position:absolute}.example-card__dismiss{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.example-card__dismiss:hover{color:var(--color-ink);background:#0000000f}.example-card__dismiss:focus-visible{opacity:1}.example-card__dismiss:disabled{opacity:.3;cursor:not-allowed}.example-card:hover .example-card__dismiss{opacity:1}.example-card__icon{border-radius:var(--radius-md);background:rgba(var(--color-primary-rgb), .08);width:40px;height:40px;color:var(--color-primary);margin-bottom:var(--space-3);flex-shrink:0;justify-content:center;align-items:center;display:flex}.example-card__name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-1);font-size:16px;font-weight:600;line-height:1.3}.example-card__desc{color:var(--color-slate);margin-bottom:var(--space-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.example-card__actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-chrome);margin-top:auto;display:flex}.example-card__action-btn{font-family:var(--font-display);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);border:none;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.example-card__action-btn--duplicate{background:var(--color-primary);color:#fff}.example-card__action-btn--duplicate:hover:not(:disabled){background:var(--color-primary-hover)}.example-card__action-btn--duplicate:disabled{opacity:.6;cursor:not-allowed}.example-card__action-btn--explore{color:var(--color-slate);border:1px solid var(--color-chrome);background:0 0}.example-card__action-btn--explore:hover{border-color:var(--color-slate);color:var(--color-ink)}.projects-filter{gap:var(--space-2);margin-bottom:var(--space-5);display:flex}.projects-filter__btn{font-family:var(--font-display);border-radius:var(--radius-md);border:1px solid var(--color-chrome);color:var(--color-slate);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;padding:6px 14px;font-size:13px;font-weight:500}.projects-filter__btn:hover{border-color:var(--color-slate);color:var(--color-ink)}.projects-filter__btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.projects-filter__btn--active:hover{background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%);border-color:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%);color:var(--color-btn-primary-text)}.projects-section__heading{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-3);font-size:14px;font-weight:600}.projects-section+.projects-section{margin-top:var(--space-5)}.projects-empty{text-align:center;padding:var(--space-8) var(--space-5);animation:cardIn .5s var(--ease-out) both;flex-direction:column;align-items:center;display:flex}.projects-empty__icon{background:rgba(var(--color-primary-rgb), .06);width:72px;height:72px;color:var(--color-primary);margin-bottom:var(--space-5);border-radius:50%;justify-content:center;align-items:center;display:flex}.projects-empty__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-2);font-size:20px;font-weight:700}.projects-empty__desc{color:var(--color-slate);margin-bottom:var(--space-5);max-width:320px;font-size:14px;line-height:1.5}.projects-context-menu{z-index:200;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1);min-width:140px;animation:menuIn .15s var(--ease-out);position:fixed;transform:translate(-100%)}.projects-context-menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);color:var(--color-ink);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;font-size:13px;font-weight:500;display:flex}.projects-context-menu__item:hover{background:var(--color-surface-raised)}.projects-context-menu__item--danger{color:var(--color-danger)}.projects-context-menu__item--danger:hover{background:#c81e1e0d}.projects-context-menu__divider{background:var(--color-chrome);height:1px;margin:var(--space-1) 0}@keyframes menuIn{0%{opacity:0;transform:translate(-100%)translateY(-4px)}to{opacity:1;transform:translate(-100%)translateY(0)}}.projects-overlay{background:var(--color-surface-overlay);padding:var(--space-5);z-index:300;animation:overlayIn .2s var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.projects-dialog{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);animation:dialogIn .25s var(--ease-out)}.projects-dialog--narrow{max-width:380px}.projects-dialog__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-5);font-size:18px;font-weight:700}.projects-dialog__title--danger{color:var(--color-danger)}.projects-dialog__body{color:var(--color-ink);margin-bottom:var(--space-5);font-size:14px;line-height:1.6}.projects-dialog__body strong{font-weight:600}.projects-dialog__form{gap:var(--space-4);flex-direction:column;display:flex}.projects-dialog__actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2);display:flex}@keyframes dialogIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.projects-field{gap:var(--space-1);flex-direction:column;display:flex}.projects-field__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.projects-field__opt{color:var(--color-slate);font-weight:400}.projects-field__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.projects-field__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.projects-field__input::placeholder{color:var(--color-slate);opacity:.6}.projects-field__textarea{resize:vertical;min-height:56px}.projects-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.projects-btn:active:not(:disabled){transform:scale(.97)}.projects-btn:disabled{opacity:.5;cursor:not-allowed}.projects-btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.projects-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.projects-btn--danger{color:#fff;background:var(--color-danger)}.projects-btn--danger:hover:not(:disabled){background:#b91c1c}.projects-btn--ghost{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.projects-btn--ghost:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.projects-msg{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:13px;line-height:1.4}.projects-msg--error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);font-size:13px;line-height:1.4}@media (width<=768px){.projects-page{padding:var(--space-6) var(--space-4)}.projects-page__heading{font-size:24px}.projects-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.projects-examples__grid{grid-template-columns:1fr}}@media (width<=640px){.projects-page{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.projects-page__heading{font-size:22px}.projects-page__heading-row{gap:var(--space-3);flex-direction:column}.projects-page__heading-row .projects-btn{width:100%;min-height:var(--touch-min)}.projects-grid{grid-template-columns:1fr}.project-card{padding:var(--space-4)}.projects-examples__grid{grid-template-columns:1fr}.example-card__dismiss{opacity:1;width:var(--touch-min);height:var(--touch-min)}.example-card__action-btn{min-height:var(--touch-min);padding:8px 14px}.project-card__menu-btn{opacity:1;width:var(--touch-min);height:var(--touch-min)}.projects-dialog{padding:var(--space-5);max-width:calc(100vw - var(--space-4))}.projects-dialog__actions{flex-direction:column-reverse}.projects-dialog__actions .projects-btn{width:100%;min-height:var(--touch-min)}.projects-field__input{min-height:var(--touch-min)}.projects-context-menu__item{min-height:var(--touch-min);padding:var(--space-3) var(--space-4)}}[data-theme=dark] .example-card{border-color:#ffffff1a}[data-theme=dark] .example-card:before{background:radial-gradient(ellipse at 20% 50%, rgba(var(--color-primary-rgb), .08) 0%, transparent 60%), radial-gradient(ellipse at 80% 20%, rgba(var(--color-primary-rgb), .05) 0%, transparent 50%)}[data-theme=dark] .example-card:hover{box-shadow:0 2px 16px rgba(var(--color-primary-rgb), .15), 0 0 0 1px rgba(var(--color-primary-rgb), .1);border-color:#40916c}[data-theme=dark] .example-card__badge{color:#6fcf97;background:rgba(var(--color-primary-rgb), .2);border-color:rgba(var(--color-primary-rgb), .3)}[data-theme=dark] .example-card__icon{background:rgba(var(--color-primary-rgb), .15);color:#6fcf97}[data-theme=dark] .example-card__dismiss:hover{background:#ffffff14}[data-theme=dark] .example-card__action-btn--duplicate{background:var(--color-primary);color:var(--color-paper)}[data-theme=dark] .example-card__action-btn--duplicate:hover:not(:disabled){background:var(--color-primary-hover)}[data-theme=dark] .project-card__icon{background:rgba(var(--color-primary-rgb), .12)}[data-theme=dark] .project-card__ownership--personal{color:var(--color-primary);background:rgba(var(--color-primary-rgb), .1)}[data-theme=dark] .project-card__ownership--team{color:#60a5fa;background:#60a5fa1a}[data-theme=dark] .projects-empty__icon{background:rgba(var(--color-primary-rgb), .1)}.tpl-dash{max-width:960px;margin:0 auto;padding:32px 24px 64px}@media (width<=640px){.tpl-dash{padding:20px 16px 48px}}.tpl-dash__loading,.tpl-dash__error{min-height:300px;color:var(--color-text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.tpl-dash__spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tpl-dash__header{margin-bottom:32px}.tpl-dash__breadcrumb{color:var(--color-text-secondary);align-items:center;gap:8px;margin-bottom:20px;font-size:.8rem;display:flex}.tpl-dash__back-link{color:var(--color-text-secondary);align-items:center;gap:4px;text-decoration:none;transition:color .15s;display:flex}.tpl-dash__back-link:hover{color:var(--color-text)}.tpl-dash__breadcrumb-sep{opacity:.4}.tpl-dash__breadcrumb-current{color:var(--color-text);font-weight:500}.tpl-dash__title-row{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}@media (width<=640px){.tpl-dash__title-row{flex-wrap:wrap}}.tpl-dash__template-icon{background:color-mix(in srgb, var(--color-primary) 15%, transparent);width:44px;height:44px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.tpl-dash__title-text{flex:1}.tpl-dash__title{color:var(--color-text);margin:0 0 4px;font-size:1.5rem;font-weight:700;line-height:1.25}.tpl-dash__subtitle{color:var(--color-text-secondary);margin:0;font-size:.875rem}.tpl-dash__header-actions{flex-shrink:0;gap:10px;display:flex}@media (width<=640px){.tpl-dash__header-actions{width:100%;margin-top:4px}}.tpl-dash__btn{cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.825rem;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.tpl-dash__btn:hover{background:var(--color-surface-hover)}.tpl-dash__btn--secondary{border-color:var(--color-primary);color:var(--color-primary);background:0 0}.tpl-dash__btn--secondary:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.tpl-dash__stats{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;gap:0;display:flex;overflow:hidden}.tpl-dash__stat{border-right:1px solid var(--color-border);text-align:center;flex-direction:column;flex:1;align-items:center;padding:14px 16px;display:flex}.tpl-dash__stat:last-child{border-right:none}@media (width<=640px){.tpl-dash__stat{padding:12px 10px}}.tpl-dash__stat-value{color:var(--color-text);margin-bottom:4px;font-size:1.5rem;font-weight:700;line-height:1}.tpl-dash__stat-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.tpl-dash__search-bar{margin-bottom:20px}.tpl-dash__search{background:var(--color-surface);border:1px solid var(--color-border);width:100%;max-width:360px;color:var(--color-text);border-radius:8px;outline:none;padding:9px 14px;font-size:.875rem;transition:border-color .15s}.tpl-dash__search::placeholder{color:var(--color-text-muted)}.tpl-dash__search:focus{border-color:var(--color-primary)}.tpl-dash__empty{min-height:240px;color:var(--color-text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.9rem;display:flex}.tpl-dash__empty svg{opacity:.4;width:40px;height:40px}.tpl-dash__empty-hint{opacity:.7;max-width:380px;font-size:.8rem}.tpl-dash__fork-grid{flex-direction:column;gap:2px;display:flex}.fork-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:14px;padding:14px 16px;transition:background .15s;display:flex}.fork-card:hover{background:var(--color-surface-hover)}@media (width<=640px){.fork-card{flex-wrap:wrap;gap:10px}}.fork-card__avatar{background:hsl(var(--avatar-hue,210deg), 50%, 75%);width:40px;height:40px;color:hsl(var(--avatar-hue,210deg), 30%, 25%);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}[data-theme=dark] .fork-card__avatar{background:hsl(var(--avatar-hue,210deg), 40%, 30%);color:hsl(var(--avatar-hue,210deg), 70%, 80%)}.fork-card__content{flex:1;min-width:0}.fork-card__student-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.fork-card__student-email{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.78rem;overflow:hidden}.fork-card__meta{color:var(--color-text-muted);align-items:center;gap:6px;margin-top:4px;font-size:.75rem;display:flex}.fork-card__sep{opacity:.4}.fork-card__features{align-items:center;gap:4px;display:flex}.fork-card__open-btn{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:7px;flex-shrink:0;align-items:center;gap:5px;padding:6px 12px;font-size:.8rem;transition:background .15s,color .15s,border-color .15s;display:flex}.fork-card__open-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (width<=640px){.fork-card__open-btn{justify-content:center;width:100%}}.campus-template-badge{color:#7c3aed;letter-spacing:.03em;text-transform:uppercase;background:#7c3aed26;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:.7rem;font-weight:600;display:inline-flex}[data-theme=dark] .campus-template-badge{color:#a78bfa;background:#a78bfa26}.campus-forked-badge{color:#0891b2;letter-spacing:.03em;text-transform:uppercase;background:#0891b21f;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:.7rem;font-weight:600;display:inline-flex}[data-theme=dark] .campus-forked-badge{color:#67e8f9;background:#67e8f91f}.orgs-page{min-height:100%;padding:var(--space-7) var(--space-5);background:var(--color-paper);background-image:linear-gradient(#0d1f1a05 1px,#0000 1px),linear-gradient(90deg,#0d1f1a05 1px,#0000 1px);background-size:40px 40px;overflow-y:auto}[data-theme=dark] .orgs-page{background-image:linear-gradient(#e8e6e105 1px,#0000 1px),linear-gradient(90deg,#e8e6e105 1px,#0000 1px)}.orgs-page__container{max-width:960px;margin:0 auto}.orgs-page__container--detail{max-width:720px}.orgs-page__header{margin-bottom:var(--space-7)}.orgs-page__heading-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.orgs-page__heading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:28px;font-weight:700;line-height:1.15}.orgs-page__subheading{color:var(--color-slate);margin-top:var(--space-1);font-size:14px;line-height:1.5}.orgs-list{gap:var(--space-3);flex-direction:column;display:flex}.org-card{align-items:center;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);cursor:pointer;transition:border-color var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-fast) var(--ease-out);animation:orgCardIn .35s var(--ease-out) both;display:flex;position:relative}.org-card:hover{border-color:var(--color-primary);box-shadow:0 2px 12px rgba(var(--color-primary-rgb), .06), 0 0 0 1px rgba(var(--color-primary-rgb), .08)}.org-card:active{transform:scale(.985)}.org-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.org-card__icon{border-radius:var(--radius-md);background:rgba(var(--color-primary-rgb), .07);width:40px;height:40px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.org-card__body{flex:1;min-width:0}.org-card__name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.org-card__meta{align-items:center;gap:var(--space-2);color:var(--color-slate);margin-top:2px;font-size:12px;display:flex}.org-card__slug{font-family:var(--font-mono);color:var(--color-slate);opacity:.75;font-size:11px}.org-card__sep{background:var(--color-chrome);border-radius:50%;flex-shrink:0;width:3px;height:3px}.org-card__members-hint{color:var(--color-slate);align-items:center;gap:3px;font-size:11px;display:inline-flex}.org-card__arrow{color:var(--color-slate);opacity:0;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out);flex-shrink:0}.org-card:hover .org-card__arrow{opacity:.6;transform:translate(2px)}.org-card--skeleton{pointer-events:none;cursor:default}.org-card__skeleton-icon,.org-card__skeleton-title,.org-card__skeleton-meta,.org-card__skeleton-body{background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.6s infinite shimmer}.org-card__skeleton-icon{border-radius:var(--radius-md);flex-shrink:0;width:40px;height:40px}.org-card__skeleton-body{background:0 0;flex-direction:column;flex:1;gap:6px;display:flex}.org-card__skeleton-title{width:55%;height:16px}.org-card__skeleton-meta{width:30%;height:12px}@keyframes orgCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes orgShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.orgs-empty{text-align:center;padding:var(--space-8) var(--space-5);animation:orgCardIn .5s var(--ease-out) both;flex-direction:column;align-items:center;display:flex}.orgs-empty__icon{background:rgba(var(--color-primary-rgb), .06);width:72px;height:72px;color:var(--color-primary);margin-bottom:var(--space-5);border-radius:50%;justify-content:center;align-items:center;display:flex}.orgs-empty__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-2);font-size:20px;font-weight:700}.orgs-empty__desc{color:var(--color-slate);margin-bottom:var(--space-5);max-width:340px;font-size:14px;line-height:1.5}.orgs-back-link{align-items:center;gap:var(--space-2);font-family:var(--font-display);color:var(--color-slate);margin-bottom:var(--space-5);transition:color var(--duration-fast) var(--ease-out);font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.orgs-back-link:hover{color:var(--color-ink)}.orgs-detail__header{margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-chrome)}.orgs-detail__title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.orgs-detail__name{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:26px;font-weight:700;line-height:1.15}.orgs-detail__slug{font-family:var(--font-mono);color:var(--color-slate);margin-top:var(--space-1);opacity:.7;font-size:13px}.orgs-detail__sections{gap:var(--space-5);flex-direction:column;display:flex}.orgs-detail-loading{gap:var(--space-3);padding:var(--space-6);flex-direction:column;display:flex}.orgs-section{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-6);animation:orgSectionIn .4s var(--ease-out) both}.orgs-section:first-child{animation-delay:0s}.orgs-section:nth-child(2){animation-delay:60ms}.orgs-section:nth-child(3){animation-delay:.12s}.orgs-section--danger{border-color:#c81e1e2e}.orgs-section__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.orgs-section__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:16px;font-weight:700}.orgs-section__title--danger{color:var(--color-danger)}.orgs-section__desc{color:var(--color-slate);margin-top:var(--space-1);font-size:13px;line-height:1.5}@keyframes orgSectionIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.orgs-member-list{flex-direction:column;display:flex}.orgs-member{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-chrome);display:flex}.orgs-member:last-child{border-bottom:none;padding-bottom:0}.orgs-member:first-child{padding-top:0}.orgs-member__avatar{background:var(--color-btn-primary-bg);width:36px;height:36px;color:var(--color-btn-primary-text);font-family:var(--font-display);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.orgs-member__info{flex:1;min-width:0}.orgs-member__name-row{align-items:center;gap:var(--space-2);display:flex}.orgs-member__name{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.orgs-member__you{color:var(--color-slate);font-size:12px;font-weight:400}.orgs-member__owner-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--color-warning);background:#8f5a0814;border-radius:3px;flex-shrink:0;align-items:center;gap:2px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.orgs-member__email{color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.orgs-member__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.orgs-member__remove-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-slate);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.orgs-member__remove-btn:hover{color:var(--color-danger);background:#c81e1e0d;border-color:#c81e1e26}.orgs-role-badge{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.orgs-role-select{font-family:var(--font-display);color:var(--color-ink);border:1.5px solid var(--color-chrome);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;appearance:none;transition:border-color var(--duration-fast) var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;padding:4px 24px 4px 8px;font-size:12px;font-weight:600}.orgs-role-select:hover{border-color:var(--color-slate)}.orgs-role-select:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.orgs-role-select:disabled{opacity:.5;cursor:not-allowed}.orgs-invite-list{flex-direction:column;display:flex}.orgs-invite{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-chrome);display:flex}.orgs-invite:last-child{border-bottom:none;padding-bottom:0}.orgs-invite:first-child{padding-top:0}.orgs-invite__icon{width:32px;height:32px;color:var(--color-focus);background:#2563eb12;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.orgs-invite__info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.orgs-invite__email{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.orgs-invite__meta{color:var(--color-slate);font-size:11px}.orgs-invite__resend-btn{font-family:var(--font-display);color:var(--color-focus);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;flex-shrink:0;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.orgs-invite__resend-btn:hover:not(:disabled){background:#2563eb0d;border-color:#2563eb59}.orgs-invite__resend-btn:disabled{opacity:.6;cursor:progress}.orgs-invite__revoke-btn{font-family:var(--font-display);color:var(--color-slate);border:1px solid var(--color-chrome);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;flex-shrink:0;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.orgs-invite__revoke-btn:hover{color:var(--color-danger);background:#c81e1e0a;border-color:#c81e1e40}.orgs-role-picker{border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);display:flex;overflow:hidden}.orgs-role-picker__btn{font-family:var(--font-display);padding:var(--space-2) var(--space-3);color:var(--color-slate);background:var(--color-surface);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);border:none;flex:1;font-size:12px;font-weight:600}.orgs-role-picker__btn+.orgs-role-picker__btn{border-left:1.5px solid var(--color-chrome)}.orgs-role-picker__btn:hover{background:var(--color-surface-raised);color:var(--color-ink)}.orgs-role-picker__btn--active{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.orgs-role-picker__btn--active:hover{background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%);color:var(--color-btn-primary-text)}.orgs-overlay{background:var(--color-surface-overlay);padding:var(--space-5);z-index:300;animation:orgsOverlayIn .2s var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes orgsOverlayIn{0%{opacity:0}to{opacity:1}}.orgs-dialog{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);animation:orgsDialogIn .25s var(--ease-out)}.orgs-dialog--narrow{max-width:380px}.orgs-dialog__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-2);font-size:18px;font-weight:700}.orgs-dialog__title--danger{color:var(--color-danger)}.orgs-dialog__desc{color:var(--color-slate);margin-bottom:var(--space-4);font-size:13px;line-height:1.5}.orgs-dialog__body{color:var(--color-ink);margin-bottom:var(--space-5);font-size:14px;line-height:1.6}.orgs-dialog__body strong{font-weight:600}.orgs-dialog__form{gap:var(--space-4);flex-direction:column;display:flex}.orgs-dialog__actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2);display:flex}@keyframes orgsDialogIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.orgs-field{gap:var(--space-1);flex-direction:column;display:flex}.orgs-field__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.orgs-field__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.orgs-field__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.orgs-field__input::placeholder{color:var(--color-slate);opacity:.6}.orgs-field__hint{color:var(--color-slate);margin-top:2px;font-size:12px;line-height:1.4}.orgs-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.orgs-btn:active:not(:disabled){transform:scale(.97)}.orgs-btn:disabled{opacity:.5;cursor:not-allowed}.orgs-btn--sm{height:32px;padding:0 var(--space-3);font-size:12px}.orgs-btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.orgs-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.orgs-btn--danger{color:#fff;background:var(--color-danger)}.orgs-btn--danger:hover:not(:disabled){background:#b91c1c}.orgs-btn--ghost{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.orgs-btn--ghost:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.orgs-msg{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);font-size:13px;line-height:1.4}.orgs-msg--error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);font-size:13px;line-height:1.4}.orgs-msg--success{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 93%);border:1px solid color-mix(in srgb, var(--color-success), transparent 84%);font-size:13px;line-height:1.4}.orgs-quota-meters{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.orgs-quota-meter{padding:var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface)}.orgs-quota-meter__label-row{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.orgs-quota-meter__label{color:var(--color-ink);text-transform:uppercase;letter-spacing:.03em;font-size:13px;font-weight:600}.orgs-quota-meter__value{color:var(--color-slate);font-size:13px}.orgs-quota-meter__value strong{color:var(--color-ink)}.orgs-quota-meter__track{background:var(--color-chrome);border-radius:3px;height:6px;overflow:hidden}.orgs-quota-meter__fill{height:100%;transition:width var(--duration-normal) var(--ease-out);background:#2563eb;border-radius:3px}.orgs-quota-meter--warning .orgs-quota-meter__fill{background:var(--color-primary)}.orgs-quota-meter__status{margin-top:var(--space-1);color:var(--color-primary);font-size:11px;font-weight:600}.orgs-quota-gates{gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.orgs-quota-gate{padding:var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.orgs-quota-gate__info{flex-direction:column;gap:2px;display:flex}.orgs-quota-gate__label{color:var(--color-ink);font-size:13px;font-weight:600}.orgs-quota-gate__desc{color:var(--color-slate);font-size:12px}.orgs-quota-gate__status{text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:2px 8px;font-size:11px;font-weight:600}.orgs-quota-gate__status--enabled{color:#16a34a;background:#2b723014}.orgs-quota-gate__status--locked{color:var(--color-slate);background:var(--color-chrome)}@media (width<=768px){.orgs-page{padding:var(--space-6) var(--space-4)}.orgs-page__heading,.orgs-detail__name{font-size:24px}}@media (width<=640px){.orgs-page{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.orgs-page__heading{font-size:22px}.orgs-page__heading-row{gap:var(--space-3);flex-direction:column}.orgs-page__heading-row .orgs-btn{width:100%;min-height:var(--touch-min)}.orgs-detail__title-row{gap:var(--space-3);flex-direction:column}.orgs-detail__name{font-size:22px}.orgs-section{padding:var(--space-4)}.orgs-section__header{gap:var(--space-3);flex-direction:column}.orgs-member{flex-wrap:wrap}.orgs-member__avatar{width:var(--touch-min);height:var(--touch-min);font-size:15px}.orgs-member__actions{width:100%;margin-top:var(--space-1);padding-left:calc(var(--touch-min) + var(--space-3));justify-content:flex-end}.orgs-member__remove-btn{width:36px;height:36px}.orgs-role-select{min-height:var(--touch-min);padding:4px var(--space-7) 4px var(--space-3)}.org-card{padding:var(--space-4)}.orgs-dialog{padding:var(--space-5);max-width:calc(100vw - var(--space-4))}.orgs-dialog__actions{flex-direction:column-reverse}.orgs-dialog__actions .orgs-btn{width:100%;min-height:var(--touch-min)}.orgs-btn,.orgs-field__input{min-height:var(--touch-min)}.orgs-invite__resend-btn,.orgs-invite__revoke-btn{min-height:36px;padding:6px 12px}.orgs-role-picker{flex-direction:column}.orgs-role-picker__btn{min-height:var(--touch-min)}.orgs-role-picker__btn+.orgs-role-picker__btn{border-left:none;border-top:1.5px solid var(--color-chrome)}}@media (width<=600px){.orgs-quota-meters{grid-template-columns:1fr}}.org-plan-dialog{max-width:760px}.org-plan-dialog__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.org-plan-dialog__close{border-radius:var(--radius-md);width:30px;height:30px;color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.org-plan-dialog__close:hover{background:var(--color-chrome);color:var(--color-ink)}.org-plan-dialog__cycle{margin-bottom:var(--space-4);background:var(--color-chrome);border-radius:var(--radius-md);gap:2px;padding:3px;display:inline-flex}.org-plan-dialog__cycle-btn{padding:var(--space-1) var(--space-4);border-radius:var(--radius-sm);color:var(--color-slate);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;border:none;font-size:13px;font-weight:600}.org-plan-dialog__cycle-btn--active{background:var(--color-surface);color:var(--color-ink);box-shadow:0 1px 2px #0000000f}.org-plan-dialog__grid,.org-plan-dialog__loading{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.org-plan-card{border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface);flex-direction:column;display:flex}.org-plan-card--current{border-color:var(--color-primary)}.org-plan-card__flag{text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary);margin-bottom:var(--space-1);align-self:flex-start;font-size:11px;font-weight:600}.org-plan-card__name{font-family:var(--font-display);color:var(--color-ink);font-size:16px;font-weight:600}.org-plan-card__price{margin-top:var(--space-2);align-items:baseline;gap:4px;display:flex}.org-plan-card__price-amount{font-family:var(--font-display);color:var(--color-ink);font-size:24px;font-weight:700}.org-plan-card__price-period{color:var(--color-slate);font-size:13px}.org-plan-card__annual-note{color:var(--color-slate);margin-top:2px;font-size:12px}.org-plan-card__features{margin:var(--space-3) 0;gap:var(--space-1);flex-direction:column;flex:1;padding:0;list-style:none;display:flex}.org-plan-card__features li{color:var(--color-slate);font-size:12px;line-height:1.4}.org-plan-card__cta{justify-content:center;width:100%;margin-top:auto}.org-plan-card__skel{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:200px;animation:1.6s infinite shimmer}.org-plan-dialog__payment-note{color:var(--color-slate);margin-top:var(--space-2);font-size:12px;font-style:italic}@media (width<=600px){.org-plan-dialog__grid,.org-plan-dialog__loading{grid-template-columns:1fr}}.api-keys__gate{text-align:center;padding:var(--space-6) var(--space-4)}.api-keys__gate-icon{width:48px;height:48px;margin:0 auto var(--space-4);color:var(--color-slate);opacity:.5}.api-keys__gate-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:15px;font-weight:700}.api-keys__gate-desc{color:var(--color-slate);max-width:340px;margin:0 auto;font-size:13px;line-height:1.5}.api-keys__empty{text-align:center;padding:var(--space-5) var(--space-4)}.api-keys__empty-desc{color:var(--color-slate);margin-bottom:var(--space-4);font-size:13px}.api-keys__list{gap:var(--space-3);flex-direction:column;display:flex}.api-keys__card{border:1px solid var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface-raised);transition:border-color .12s cubic-bezier(.16,1,.3,1)}.api-keys__card:hover{border-color:var(--color-slate)}.api-keys__card--inactive{opacity:.55;border-style:dashed}.api-keys__card-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.api-keys__card-name{font-family:var(--font-display);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;overflow:hidden}.api-keys__card-status{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.api-keys__card-status--active{color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 90%)}.api-keys__card-status--inactive{color:var(--color-slate);background:color-mix(in srgb, var(--color-slate), transparent 90%)}.api-keys__card-status--expired{color:var(--color-warning);background:color-mix(in srgb, var(--color-warning), transparent 90%)}.api-keys__card-meta{gap:var(--space-2) var(--space-4);color:var(--color-slate);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:12px;display:flex}.api-keys__card-prefix{font-family:var(--font-mono);color:var(--color-ink);background:var(--color-chrome);letter-spacing:.02em;border-radius:3px;padding:1px 6px;font-size:12px}.api-keys__card-scopes{gap:var(--space-1);display:flex}.api-keys__scope-tag{background:color-mix(in srgb, var(--color-focus), transparent 90%);color:var(--color-focus);text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:1px 6px;font-size:11px;font-weight:500}.api-keys__card-actions{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-chrome);display:flex}.api-keys__card-actions-left{gap:var(--space-2);display:flex}.api-keys__btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.api-keys__btn:active:not(:disabled){transform:scale(.97)}.api-keys__btn:disabled{opacity:.5;cursor:not-allowed}.api-keys__btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.api-keys__btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.api-keys__btn{height:30px;padding:0 var(--space-3);font-size:12px}.api-keys__btn--primary{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.api-keys__btn--primary:active:not(:disabled){transform:scale(.97)}.api-keys__btn--primary:disabled{opacity:.5;cursor:not-allowed}.api-keys__btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.api-keys__btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.api-keys__btn--primary{height:30px;padding:0 var(--space-3);font-size:12px}.api-keys__btn--danger{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.api-keys__btn--danger:active:not(:disabled){transform:scale(.97)}.api-keys__btn--danger:disabled{opacity:.5;cursor:not-allowed}.api-keys__btn--danger{color:#fff;background:var(--color-danger)}.api-keys__btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger), #000 15%)}.api-keys__btn--danger{height:30px;padding:0 var(--space-3);font-size:12px}.api-keys__btn--create{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.api-keys__btn--create:active:not(:disabled){transform:scale(.97)}.api-keys__btn--create:disabled{opacity:.5;cursor:not-allowed}.api-keys__btn--create{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.api-keys__btn--create:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.api-keys__form{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface-raised);margin-bottom:var(--space-4);flex-direction:column;display:flex}.api-keys__field{gap:var(--space-1);flex-direction:column;display:flex}.api-keys__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.api-keys__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.api-keys__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.api-keys__input::placeholder{color:var(--color-slate);opacity:.6}.api-keys__input{box-sizing:border-box;width:100%}.api-keys__scopes-grid{gap:var(--space-3);display:flex}.api-keys__scope-checkbox{align-items:center;gap:var(--space-2);color:var(--color-ink);cursor:pointer;font-size:13px;display:flex}.api-keys__scope-checkbox input[type=checkbox]{accent-color:var(--color-focus);width:16px;height:16px}.api-keys__form-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.api-keys__reveal{padding:var(--space-4);border:2px solid var(--color-warning);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-warning), transparent 95%);margin-bottom:var(--space-4)}.api-keys__reveal-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:14px;font-weight:700}.api-keys__reveal-warning{color:var(--color-slate);margin-bottom:var(--space-3);font-size:12px;line-height:1.5}.api-keys__reveal-key{align-items:center;gap:var(--space-2);display:flex}.api-keys__reveal-value{font-family:var(--font-mono);color:var(--color-ink);background:var(--color-surface);padding:var(--space-2) var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);word-break:break-all;-webkit-user-select:all;user-select:all;flex:1;font-size:13px}.api-keys__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin-bottom:var(--space-3);font-size:13px;line-height:1.4}.api-keys__success{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 93%);border:1px solid color-mix(in srgb, var(--color-success), transparent 84%);margin-bottom:var(--space-3);font-size:13px;line-height:1.4}.api-keys__skeleton{gap:var(--space-3);flex-direction:column;display:flex}.api-keys__skeleton-card{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:100px;animation:1.6s infinite shimmer}@media (width<=640px){.api-keys__card-meta{gap:var(--space-1);flex-direction:column}.api-keys__card-actions{flex-direction:column}.api-keys__card-actions-left{flex-wrap:wrap}.api-keys__scopes-grid{gap:var(--space-2);flex-direction:column}.api-keys__reveal-key{flex-direction:column;align-items:stretch}}.webhooks-panel{gap:var(--space-3);padding:var(--space-4);font-family:var(--font-body);color:var(--color-ink);flex-direction:column;display:flex}.webhooks-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.webhooks-title{align-items:center;gap:var(--space-2);color:var(--color-ink);display:flex}.webhooks-title svg{color:var(--color-primary);flex-shrink:0}.webhooks-title h3{font-family:var(--font-display);letter-spacing:.01em;margin:0;font-size:14px;font-weight:700}.webhooks-count{background:var(--color-chrome);color:var(--color-slate);border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600;line-height:18px}[data-theme=dark] .webhooks-count{background:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhooks-add-btn{font-family:var(--font-body);background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:5px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:600;transition:background .15s}.webhooks-add-btn:hover{background:var(--color-primary-hover)}.webhooks-error{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border:1px solid color-mix(in srgb, var(--color-danger) 20%, transparent);color:var(--color-danger);border-radius:5px;padding:8px 12px;font-size:12px}.webhooks-success{background:color-mix(in srgb, var(--color-success) 8%, transparent);border:1px solid color-mix(in srgb, var(--color-success) 20%, transparent);color:var(--color-success);border-radius:5px;padding:8px 12px;font-size:12px}.webhooks-gate{text-align:center;border:1px dashed var(--color-chrome);color:var(--color-slate);border-radius:8px;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}[data-theme=dark] .webhooks-gate{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhooks-gate svg{opacity:.4;width:32px;height:32px}.webhooks-gate h3{color:var(--color-ink);margin:0;font-size:1rem;font-weight:600}[data-theme=dark] .webhooks-gate h3{color:var(--dark-color-ink)}.webhooks-gate p{max-width:360px;margin:0;font-size:.8125rem;line-height:1.5}.webhooks-upgrade-btn{background:var(--color-primary);color:#fff;border-radius:6px;align-items:center;margin-top:4px;padding:8px 16px;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.webhooks-upgrade-btn:hover{opacity:.9}.webhook-new-secret-banner{padding:var(--space-4);background:color-mix(in srgb, var(--color-success) 6%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-success) 25%, transparent);gap:var(--space-2);border-radius:6px;flex-direction:column;display:flex}[data-theme=dark] .webhook-new-secret-banner{background:color-mix(in srgb, var(--dark-color-success) 6%, var(--dark-color-surface));border-color:color-mix(in srgb, var(--dark-color-success) 25%, transparent)}.webhook-new-secret-header{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.webhook-new-secret-header strong{color:var(--color-success);font-size:13px}[data-theme=dark] .webhook-new-secret-header strong{color:var(--dark-color-success)}.webhook-new-secret-url{color:var(--color-slate);font-size:11px;font-family:var(--font-mono)}[data-theme=dark] .webhook-new-secret-url{color:var(--dark-color-slate)}.webhook-new-secret-notice{color:var(--color-slate);margin:0;font-size:12px;line-height:1.5}[data-theme=dark] .webhook-new-secret-notice{color:var(--dark-color-slate)}.webhook-secret-value{align-items:center;gap:var(--space-2);background:var(--color-surface-raised);border:1px solid var(--color-chrome);border-radius:4px;padding:6px 10px;display:flex}[data-theme=dark] .webhook-secret-value{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}.webhook-secret-value code{font-family:var(--font-mono);color:var(--color-ink);word-break:break-all;flex:1;font-size:11px}[data-theme=dark] .webhook-secret-value code{color:var(--dark-color-ink)}.webhook-copy-btn{border:1px solid var(--color-chrome);cursor:pointer;color:var(--color-slate);white-space:nowrap;background:0 0;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}[data-theme=dark] .webhook-copy-btn{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-copy-btn:hover{background:var(--color-chrome)}[data-theme=dark] .webhook-copy-btn:hover{background:var(--dark-color-chrome)}.webhook-dismiss-btn{color:var(--color-slate);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:11px;text-decoration:underline}[data-theme=dark] .webhook-dismiss-btn{color:var(--dark-color-slate)}.webhook-dismiss-btn:hover{color:var(--color-ink)}.webhook-create-form{padding:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-chrome);gap:var(--space-3);border-radius:6px;flex-direction:column;display:flex}[data-theme=dark] .webhook-create-form{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}.webhook-create-form h4{font-family:var(--font-display);color:var(--color-ink);margin:0;font-size:13px;font-weight:700}[data-theme=dark] .webhook-create-form h4{color:var(--dark-color-ink)}.webhook-field{flex-direction:column;gap:6px;display:flex}.webhook-field label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:11px;font-weight:600}[data-theme=dark] .webhook-field label{color:var(--dark-color-slate)}.webhook-optional{text-transform:none;letter-spacing:0;font-weight:400}.webhook-input{font-family:var(--font-body);background:var(--color-surface);border:1px solid var(--color-chrome);color:var(--color-ink);box-sizing:border-box;border-radius:4px;width:100%;padding:7px 10px;font-size:13px;transition:border-color .15s}[data-theme=dark] .webhook-input{background:var(--dark-color-surface);border-color:var(--dark-color-chrome);color:var(--dark-color-ink)}.webhook-input:focus{border-color:var(--color-focus);outline:none}[data-theme=dark] .webhook-input:focus{border-color:var(--dark-color-focus)}.webhook-input::placeholder{color:var(--color-slate);opacity:.6}.webhook-event-groups{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=480px){.webhook-event-groups{grid-template-columns:1fr}}.webhook-event-group{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:5px;overflow:hidden}[data-theme=dark] .webhook-event-group{background:var(--dark-color-surface);border-color:var(--dark-color-chrome)}.webhook-event-group-header{background:var(--color-surface-raised);border-bottom:1px solid var(--color-chrome)}[data-theme=dark] .webhook-event-group-header{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}.webhook-group-toggle{width:100%;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.07em;text-align:left;cursor:pointer;color:var(--color-slate);background:0 0;border:none;padding:6px 10px;font-size:11px;font-weight:700;transition:color .15s;display:block}[data-theme=dark] .webhook-group-toggle{color:var(--dark-color-slate)}.webhook-group-toggle.selected{color:var(--color-primary)}[data-theme=dark] .webhook-group-toggle.selected{color:var(--dark-color-accent)}.webhook-group-toggle:hover{color:var(--color-ink)}[data-theme=dark] .webhook-group-toggle:hover{color:var(--dark-color-ink)}.webhook-event-checkboxes{flex-direction:column;gap:4px;padding:6px 10px;display:flex}.webhook-event-checkbox{color:var(--color-ink);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12px;display:flex}[data-theme=dark] .webhook-event-checkbox{color:var(--dark-color-ink)}.webhook-event-checkbox input[type=checkbox]{width:13px;height:13px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.webhook-selected-events{color:var(--color-success);font-size:11px;font-weight:600}[data-theme=dark] .webhook-selected-events{color:var(--dark-color-success)}.webhook-create-btn{font-family:var(--font-body);background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:5px;align-self:flex-start;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s}.webhook-create-btn:hover:not(:disabled){background:var(--color-primary-hover)}.webhook-create-btn:disabled{opacity:.5;cursor:not-allowed}.webhooks-loading{gap:var(--space-2);flex-direction:column;display:flex}.webhook-skeleton{background:var(--color-chrome);border-radius:6px;height:56px;animation:1.4s ease-in-out infinite webhook-shimmer}[data-theme=dark] .webhook-skeleton{background:var(--dark-color-chrome)}@keyframes webhook-shimmer{0%,to{opacity:.4}50%{opacity:.8}}.webhooks-empty{text-align:center;padding:var(--space-6) var(--space-4);border:1px dashed var(--color-chrome);color:var(--color-slate);border-radius:8px}[data-theme=dark] .webhooks-empty{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhooks-empty svg{opacity:.35;width:28px;height:28px;margin-bottom:var(--space-2)}.webhooks-empty p{margin:0 0 4px;font-size:12.5px;line-height:1.5}.webhooks-empty p:last-child{opacity:.75}.webhooks-list{gap:var(--space-2);flex-direction:column;display:flex}.webhook-card{border:1px solid var(--color-chrome);border-radius:6px;transition:border-color .15s;overflow:hidden}[data-theme=dark] .webhook-card{border-color:var(--dark-color-chrome)}.webhook-card.inactive{opacity:.65}.webhook-card:hover{border-color:color-mix(in srgb, var(--color-primary) 30%, var(--color-chrome))}[data-theme=dark] .webhook-card:hover{border-color:color-mix(in srgb, var(--dark-color-accent) 30%, var(--dark-color-chrome))}.webhook-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-3);cursor:pointer;background:var(--color-surface);display:flex}[data-theme=dark] .webhook-card-header{background:var(--dark-color-surface)}.webhook-card-header:hover{background:var(--color-surface-raised)}[data-theme=dark] .webhook-card-header:hover{background:var(--dark-color-surface-raised)}.webhook-card-left{align-items:flex-start;gap:var(--space-2);flex:1;min-width:0;display:flex}.webhook-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.webhook-status-dot.active{background:var(--color-success);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-success) 20%, transparent)}[data-theme=dark] .webhook-status-dot.active{background:var(--dark-color-success)}.webhook-status-dot.inactive{background:var(--color-slate)}[data-theme=dark] .webhook-status-dot.inactive{background:var(--dark-color-slate)}.webhook-card-info{flex-direction:column;gap:4px;min-width:0;display:flex}.webhook-url{font-family:var(--font-mono);color:var(--color-ink);word-break:break-all;font-size:12px}[data-theme=dark] .webhook-url{color:var(--dark-color-ink)}.webhook-desc{color:var(--color-slate);font-size:11.5px}[data-theme=dark] .webhook-desc{color:var(--dark-color-slate)}.webhook-event-tags{flex-wrap:wrap;gap:3px;display:flex}.webhook-event-tag{font-size:10px;font-family:var(--font-mono);background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);border-radius:3px;padding:1px 5px}[data-theme=dark] .webhook-event-tag{background:color-mix(in srgb, var(--dark-color-accent) 10%, transparent);color:var(--dark-color-accent)}.webhook-card-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.webhook-toggle-btn{cursor:pointer;border:1px solid var(--color-chrome);color:var(--color-slate);background:0 0;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600;transition:all .15s}[data-theme=dark] .webhook-toggle-btn{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-toggle-btn.active{border-color:color-mix(in srgb, var(--color-success) 40%, transparent);color:var(--color-success);background:color-mix(in srgb, var(--color-success) 6%, transparent)}[data-theme=dark] .webhook-toggle-btn.active{border-color:color-mix(in srgb, var(--dark-color-success) 40%, transparent);color:var(--dark-color-success);background:color-mix(in srgb, var(--dark-color-success) 6%, transparent)}.webhook-toggle-btn:hover{opacity:.8}.webhook-icon-btn{border:1px solid var(--color-chrome);cursor:pointer;width:26px;height:26px;color:var(--color-slate);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}[data-theme=dark] .webhook-icon-btn{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-icon-btn:hover{background:var(--color-chrome)}[data-theme=dark] .webhook-icon-btn:hover{background:var(--dark-color-chrome)}.webhook-card-body{padding:var(--space-3);border-top:1px solid var(--color-chrome);background:var(--color-surface-raised);gap:var(--space-3);flex-direction:column;display:flex}[data-theme=dark] .webhook-card-body{border-color:var(--dark-color-chrome);background:var(--dark-color-surface-raised)}.webhook-meta{align-items:center;gap:var(--space-2);color:var(--color-slate);font-size:11px;display:flex}[data-theme=dark] .webhook-meta{color:var(--dark-color-slate)}.webhook-secret-label{color:var(--color-ink);font-size:11px;font-weight:600}[data-theme=dark] .webhook-secret-label{color:var(--dark-color-ink)}.webhook-secret-reveal{gap:var(--space-2);padding:var(--space-3);background:color-mix(in srgb, var(--color-warning) 6%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-warning) 25%, transparent);border-radius:5px;flex-direction:column;display:flex}[data-theme=dark] .webhook-secret-reveal{background:color-mix(in srgb, var(--dark-color-warning) 6%, var(--dark-color-surface));border-color:color-mix(in srgb, var(--dark-color-warning) 25%, transparent)}.webhook-dismiss-secret{color:var(--color-slate);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:11px;text-decoration:underline}[data-theme=dark] .webhook-dismiss-secret{color:var(--dark-color-slate)}.webhook-card-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.webhook-secondary-btn{border:1px solid var(--color-chrome);cursor:pointer;color:var(--color-slate);background:0 0;border-radius:4px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .15s}[data-theme=dark] .webhook-secondary-btn{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-secondary-btn:hover{background:var(--color-chrome)}[data-theme=dark] .webhook-secondary-btn:hover{background:var(--dark-color-chrome)}.webhook-danger-btn{border:1px solid color-mix(in srgb, var(--color-danger) 35%, transparent);cursor:pointer;color:var(--color-danger);background:0 0;border-radius:4px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s}[data-theme=dark] .webhook-danger-btn{border-color:color-mix(in srgb, var(--dark-color-danger) 35%, transparent);color:var(--dark-color-danger)}.webhook-danger-btn:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent)}[data-theme=dark] .webhook-danger-btn:hover{background:color-mix(in srgb, var(--dark-color-danger) 8%, transparent)}.webhook-danger-btn:disabled{opacity:.5;cursor:not-allowed}.webhook-cancel-btn{border:1px solid var(--color-chrome);cursor:pointer;color:var(--color-slate);background:0 0;border-radius:4px;padding:5px 10px;font-size:12px}[data-theme=dark] .webhook-cancel-btn{border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-cancel-btn:hover{background:var(--color-chrome)}.webhook-confirm-row{align-items:center;gap:var(--space-2);color:var(--color-slate);flex-wrap:wrap;font-size:12px;display:flex}[data-theme=dark] .webhook-confirm-row{color:var(--dark-color-slate)}.webhook-delivery-load{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500;text-decoration:underline}[data-theme=dark] .webhook-delivery-load{color:var(--dark-color-accent)}.webhook-delivery-load:disabled{opacity:.5;cursor:default}.webhook-deliveries{border:1px solid var(--color-chrome);border-radius:5px;overflow:hidden}[data-theme=dark] .webhook-deliveries{border-color:var(--dark-color-chrome)}.webhook-deliveries-header{background:var(--color-surface);border-bottom:1px solid var(--color-chrome);color:var(--color-slate);justify-content:space-between;align-items:center;padding:7px 10px;font-size:11px;font-weight:600;display:flex}[data-theme=dark] .webhook-deliveries-header{background:var(--dark-color-surface);border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}.webhook-deliveries-empty{color:var(--color-slate);text-align:center;padding:12px;font-size:12px}[data-theme=dark] .webhook-deliveries-empty{color:var(--dark-color-slate)}.webhook-delivery-row{align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-chrome);flex-wrap:wrap;padding:6px 10px;font-size:11.5px;display:flex}[data-theme=dark] .webhook-delivery-row{border-color:var(--dark-color-chrome)}.webhook-delivery-row:last-child{border-bottom:none}.webhook-delivery-row:hover{background:var(--color-surface-raised)}[data-theme=dark] .webhook-delivery-row:hover{background:var(--dark-color-surface-raised)}.webhook-delivery-status{font-family:var(--font-mono);text-align:center;border-radius:3px;flex-shrink:0;min-width:36px;padding:2px 6px;font-size:11px;font-weight:700}.webhook-delivery-status.ok{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}[data-theme=dark] .webhook-delivery-status.ok{background:color-mix(in srgb, var(--dark-color-success) 12%, transparent);color:var(--dark-color-success)}.webhook-delivery-status.fail{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}[data-theme=dark] .webhook-delivery-status.fail{background:color-mix(in srgb, var(--dark-color-danger) 12%, transparent);color:var(--dark-color-danger)}.webhook-delivery-status.pending{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning)}[data-theme=dark] .webhook-delivery-status.pending{background:color-mix(in srgb, var(--dark-color-warning) 12%, transparent);color:var(--dark-color-warning)}.webhook-delivery-event{font-family:var(--font-mono);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}[data-theme=dark] .webhook-delivery-event{color:var(--dark-color-ink)}.webhook-delivery-ms{color:var(--color-slate);font-size:10.5px}[data-theme=dark] .webhook-delivery-ms{color:var(--dark-color-slate)}.webhook-delivery-attempt{color:var(--color-slate);font-size:10.5px}[data-theme=dark] .webhook-delivery-attempt{color:var(--dark-color-slate)}.webhook-delivery-time{color:var(--color-slate);white-space:nowrap;font-size:10.5px}[data-theme=dark] .webhook-delivery-time{color:var(--dark-color-slate)}.webhook-delivery-error{color:var(--color-warning);text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10.5px;overflow:hidden}[data-theme=dark] .webhook-delivery-error{color:var(--dark-color-warning)}.webhooks-footer{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-slate);padding-top:var(--space-2);border-top:1px solid var(--color-chrome);font-size:11px;display:flex}[data-theme=dark] .webhooks-footer{color:var(--dark-color-slate);border-color:var(--dark-color-chrome)}.webhooks-footer code{font-family:var(--font-mono);background:var(--color-chrome);border-radius:3px;padding:1px 4px;font-size:10.5px}[data-theme=dark] .webhooks-footer code{background:var(--dark-color-chrome)}@media (width<=480px){.webhook-card-header{gap:var(--space-2);flex-direction:column}.webhook-card-actions{align-self:flex-end}.webhooks-add-btn{padding:5px 10px;font-size:11px}}.report-modal__backdrop{background:var(--color-surface-overlay);z-index:1200;padding:var(--space-4);justify-content:center;align-items:center;animation:.12s cubic-bezier(.16,1,.3,1) both report-fade-in;display:flex;position:fixed;inset:0}.report-modal{background:var(--color-surface);border-radius:var(--radius-lg);width:min(460px,100%);box-shadow:0 24px 48px #0000002e, 0 0 0 1px var(--color-chrome);animation:.2s cubic-bezier(.16,1,.3,1) both report-slide-up;overflow:hidden}.report-modal__header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.report-modal__header-left{align-items:center;gap:var(--space-2);display:flex}.report-modal__flag{background:color-mix(in srgb, var(--color-danger), transparent 90%);width:28px;height:28px;color:var(--color-danger);border-radius:6px;justify-content:center;align-items:center;display:flex}.report-modal__title{font-family:var(--font-display);color:var(--color-ink);font-size:15px;font-weight:700}.report-modal__close{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.report-modal__close:active:not(:disabled){transform:scale(.97)}.report-modal__close:disabled{opacity:.5;cursor:not-allowed}.report-modal__close{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.report-modal__close:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.report-modal__close{width:28px;height:28px;color:var(--color-slate);border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex}.report-modal__close:hover{color:var(--color-ink);background:var(--color-chrome)}.report-modal__context{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-chrome), transparent 50%);font-size:12px;display:flex}.report-modal__context-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:10px;font-weight:600}.report-modal__context-label{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.report-modal__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin:var(--space-3) var(--space-4) 0;font-size:13px;line-height:1.4}.report-modal__form{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.report-modal__reasons{gap:var(--space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.report-modal__reasons-legend{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:13px;font-weight:600}.report-modal__reason{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-chrome);border-radius:var(--radius-md);cursor:pointer;transition:border-color .12s cubic-bezier(.16,1,.3,1),background .12s cubic-bezier(.16,1,.3,1);display:flex}.report-modal__reason:hover{border-color:var(--color-slate)}.report-modal__reason--selected{border-color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 96%)}.report-modal__reason-radio{appearance:none;border:2px solid var(--color-chrome);border-radius:50%;width:16px;min-width:16px;height:16px;margin-top:2px;transition:border-color .12s cubic-bezier(.16,1,.3,1),box-shadow .12s cubic-bezier(.16,1,.3,1);position:relative}.report-modal__reason-radio:checked{border-color:var(--color-danger)}.report-modal__reason-radio:checked:after{content:"";background:var(--color-danger);border-radius:50%;width:6px;height:6px;position:absolute;top:3px;left:3px}.report-modal__reason-content{flex-direction:column;gap:2px;display:flex}.report-modal__reason-label{color:var(--color-ink);font-size:13px;font-weight:600}.report-modal__reason-desc{color:var(--color-slate);font-size:12px;line-height:1.4}.report-modal__field{gap:var(--space-1);flex-direction:column;display:flex}.report-modal__field-label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.report-modal__field-optional{color:var(--color-slate);font-weight:400}.report-modal__input{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.report-modal__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.report-modal__input::placeholder{color:var(--color-slate);opacity:.6}.report-modal__input{font-family:var(--font-body)}.report-modal__textarea{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.report-modal__textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.report-modal__textarea::placeholder{color:var(--color-slate);opacity:.6}.report-modal__textarea{resize:vertical;min-height:64px;font-family:var(--font-body);line-height:1.5}.report-modal__char-count{color:var(--color-slate);text-align:right;font-size:11px}.report-modal__actions{gap:var(--space-2);padding-top:var(--space-2);justify-content:flex-end;display:flex}.report-modal__btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.report-modal__btn:active:not(:disabled){transform:scale(.97)}.report-modal__btn:disabled{opacity:.5;cursor:not-allowed}.report-modal__btn{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.report-modal__btn:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.report-modal__btn{height:30px;padding:0 var(--space-3);font-size:12px}.report-modal__btn--primary{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.report-modal__btn--primary:active:not(:disabled){transform:scale(.97)}.report-modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}.report-modal__btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.report-modal__btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.report-modal__btn--danger{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.report-modal__btn--danger:active:not(:disabled){transform:scale(.97)}.report-modal__btn--danger:disabled{opacity:.5;cursor:not-allowed}.report-modal__btn--danger{color:#fff;background:var(--color-danger)}.report-modal__btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger), #000 15%)}.report-modal__success{text-align:center;padding:var(--space-6) var(--space-5)}.report-modal__success-icon{width:48px;height:48px;margin:0 auto var(--space-4);background:color-mix(in srgb, var(--color-success), transparent 88%);color:var(--color-success);border-radius:50%;justify-content:center;align-items:center;display:flex}.report-modal__success-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:16px;font-weight:700}.report-modal__success-desc{color:var(--color-slate);margin-bottom:var(--space-5);font-size:13px;line-height:1.5}.moderation__gate{text-align:center;padding:var(--space-6) var(--space-4)}.moderation__gate-icon{width:48px;height:48px;margin:0 auto var(--space-4);color:var(--color-slate);opacity:.5}.moderation__gate-title{font-family:var(--font-display);color:var(--color-ink);margin-bottom:var(--space-2);font-size:15px;font-weight:700}.moderation__gate-desc{color:var(--color-slate);max-width:340px;margin:0 auto;font-size:13px;line-height:1.5}.moderation__stats{background:var(--color-chrome);border-radius:var(--radius-md);margin-bottom:var(--space-4);gap:1px;display:flex;overflow:hidden}.moderation__stat{padding:var(--space-3) var(--space-2);background:var(--color-surface-raised);cursor:pointer;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;transition:background .12s cubic-bezier(.16,1,.3,1);display:flex}.moderation__stat:hover{background:var(--color-surface)}.moderation__stat--active{box-shadow:inset 0 -2px 0 var(--color-focus);background:var(--color-surface)!important}.moderation__stat--open .moderation__stat-count{color:var(--color-danger)}.moderation__stat--reviewing .moderation__stat-count{color:var(--color-warning)}.moderation__stat--upheld .moderation__stat-count{color:var(--color-success)}.moderation__stat--dismissed .moderation__stat-count{color:var(--color-slate)}.moderation__stat-count{font-family:var(--font-display);color:var(--color-ink);font-size:18px;font-weight:700;line-height:1}.moderation__stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-slate);font-size:10px;font-weight:600}.moderation__empty{text-align:center;padding:var(--space-6) var(--space-4);color:var(--color-slate);opacity:.6}.moderation__empty svg{width:40px;height:40px;margin-bottom:var(--space-3)}.moderation__empty-desc{font-size:13px}.moderation__list{gap:var(--space-2);flex-direction:column;display:flex}.moderation__card{border:1px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface-raised);transition:border-color .12s cubic-bezier(.16,1,.3,1),box-shadow .12s cubic-bezier(.16,1,.3,1);overflow:hidden}.moderation__card:hover{border-color:var(--color-slate)}.moderation__card--expanded{border-color:var(--color-focus);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-focus), transparent 80%)}.moderation__card--resolved{opacity:.65}.moderation__card--resolved:hover{opacity:1}.moderation__card-header{width:100%;padding:var(--space-3) var(--space-4);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:var(--space-3);background:0 0;border:none;display:flex}.moderation__card-left{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.moderation__card-right{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.moderation__card-status{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-radius:3px;padding:2px 8px;font-size:10px;font-weight:700}.moderation__card-status--open{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 90%)}.moderation__card-status--reviewing{color:var(--color-warning);background:color-mix(in srgb, var(--color-warning), transparent 88%)}.moderation__card-status--upheld{color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 90%)}.moderation__card-status--dismissed{color:var(--color-slate);background:color-mix(in srgb, var(--color-slate), transparent 90%)}.moderation__card-reason{color:var(--color-ink);font-size:13px;font-weight:600}.moderation__card-type{color:var(--color-slate);background:var(--color-chrome);border-radius:3px;padding:1px 6px;font-size:11px}.moderation__card-time{color:var(--color-slate);white-space:nowrap;font-size:11px}.moderation__card-chevron{color:var(--color-slate);transition:transform .12s cubic-bezier(.16,1,.3,1);display:flex}.moderation__card-chevron--open{transform:rotate(90deg)}.moderation__card-body{padding:0 var(--space-4) var(--space-4);border-top:1px solid var(--color-chrome);gap:var(--space-3);padding-top:var(--space-3);flex-direction:column;display:flex}.moderation__detail-row{align-items:baseline;gap:var(--space-3);display:flex}.moderation__detail-label{font-family:var(--font-display);color:var(--color-ink);flex-shrink:0;min-width:100px;font-size:13px;font-weight:600}.moderation__detail-value{color:var(--color-ink);font-size:13px}.moderation__detail-code{font-family:var(--font-mono);color:var(--color-ink);background:var(--color-chrome);word-break:break-all;border-radius:3px;padding:1px 6px;font-size:11px}.moderation__detail-block{gap:var(--space-1);flex-direction:column;display:flex}.moderation__detail-text{color:var(--color-ink);padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--color-chrome), transparent 50%);border-radius:var(--radius-md);border-left:3px solid var(--color-chrome);margin:0;font-size:13px;line-height:1.5}.moderation__actions{border-top:1px solid var(--color-chrome);padding-top:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.moderation__notes-field{gap:var(--space-1);flex-direction:column;display:flex}.moderation__notes-label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.moderation__notes-textarea{font-family:var(--font-body);padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.moderation__notes-textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 85%)}.moderation__notes-textarea::placeholder{color:var(--color-slate);opacity:.6}.moderation__notes-textarea{resize:vertical;min-height:48px;font-family:var(--font-body);font-size:12px;line-height:1.4}.moderation__action-btns{gap:var(--space-2);justify-content:flex-end;display:flex}.moderation__btn--review{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.moderation__btn--review:active:not(:disabled){transform:scale(.97)}.moderation__btn--review:disabled{opacity:.5;cursor:not-allowed}.moderation__btn--review{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.moderation__btn--review:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.moderation__btn--review{height:30px;padding:0 var(--space-3);color:var(--color-warning);border-color:var(--color-warning);font-size:12px}.moderation__btn--review:hover{background:color-mix(in srgb, var(--color-warning), transparent 92%)}.moderation__btn--uphold{height:30px;padding:0 var(--space-3);background:var(--color-danger);color:#fff;border:1px solid var(--color-danger);cursor:pointer;border-radius:4px;font-size:12px;font-weight:600;transition:background .12s cubic-bezier(.16,1,.3,1)}.moderation__btn--uphold:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger), #000 10%)}.moderation__btn--uphold:disabled{opacity:.5;cursor:not-allowed}.moderation__btn--dismiss{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.moderation__btn--dismiss:active:not(:disabled){transform:scale(.97)}.moderation__btn--dismiss:disabled{opacity:.5;cursor:not-allowed}.moderation__btn--dismiss{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.moderation__btn--dismiss:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.moderation__btn--dismiss{height:30px;padding:0 var(--space-3);font-size:12px}.moderation__error{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 94%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 85%);margin-bottom:var(--space-3);font-size:13px;line-height:1.4}.moderation__success{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 93%);border:1px solid color-mix(in srgb, var(--color-success), transparent 84%);margin-bottom:var(--space-3);font-size:13px;line-height:1.4}.moderation__pagination-hint{text-align:center;color:var(--color-slate);padding:var(--space-3) 0;font-size:12px}.moderation__skeleton{gap:var(--space-3);flex-direction:column;display:flex}.moderation__skeleton-bar{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:56px;animation:1.6s infinite shimmer}.moderation__skeleton-card{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome), transparent 60%) 50%, var(--color-chrome) 75%);background-size:400% 100%;height:52px;animation:1.6s infinite shimmer}@media (width<=640px){.moderation__stats{flex-wrap:wrap}.moderation__stat{min-width:60px}.moderation__card-left{flex-wrap:wrap}.moderation__card-header{padding:var(--space-2) var(--space-3)}.moderation__detail-row{gap:var(--space-1);flex-direction:column}.moderation__action-btns{flex-direction:column}}@keyframes report-fade-in{0%{opacity:0}to{opacity:1}}@keyframes report-slide-up{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.sso-panel__gate{text-align:center;border:1px dashed var(--color-chrome);color:var(--color-slate);border-radius:8px;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}.sso-panel__gate h3{color:var(--color-ink);margin:0;font-size:1rem;font-weight:600}.sso-panel__gate p{max-width:360px;margin:0;font-size:.8125rem;line-height:1.5}.sso-panel__upgrade-btn{background:var(--color-primary);color:#fff;border-radius:6px;align-items:center;gap:6px;margin-top:4px;padding:8px 16px;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.sso-panel__upgrade-btn:hover{opacity:.9}.sso-panel__header{align-items:flex-start;gap:12px;margin-bottom:24px;display:flex}.sso-panel__header-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:36px;height:36px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sso-panel__title{color:var(--color-ink);margin:0 0 4px;font-size:.9375rem;font-weight:600}.sso-panel__subtitle{color:var(--color-slate);margin:0;font-size:.8125rem;line-height:1.5}.sso-panel__section{margin-bottom:20px}.sso-panel__section--row{justify-content:space-between;align-items:center;gap:16px;display:flex}.sso-panel__label{color:var(--color-ink);margin-bottom:8px;font-size:.8125rem;font-weight:500;display:block}.sso-panel__label-hint{color:var(--color-slate);margin-left:4px;font-weight:400}.sso-panel__hint{color:var(--color-slate);margin:2px 0 0;font-size:.75rem;line-height:1.4}.sso-panel__input-row{gap:8px;display:flex}.sso-panel__input{border:1px solid var(--color-chrome);background:var(--bg-input,var(--bg-secondary));color:var(--color-ink);border-radius:6px;flex:1;padding:8px 10px;font-family:inherit;font-size:.8125rem;transition:border-color .15s}.sso-panel__input:focus{border-color:var(--color-primary);outline:none}.sso-panel__input::placeholder{color:var(--color-slate);opacity:.6}.sso-panel__input--sm{flex:1;min-width:0}.sso-panel__type-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sso-panel__type-btn{border:1.5px solid var(--color-chrome);background:var(--bg-secondary);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.sso-panel__type-btn:hover{border-color:var(--color-primary)}.sso-panel__type-btn--active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.sso-panel__type-badge{letter-spacing:.05em;color:var(--color-primary);font-family:Geist Mono,JetBrains Mono,monospace;font-size:.75rem;font-weight:700}.sso-panel__type-desc{color:var(--color-slate);font-size:.75rem;line-height:1.4}.sso-panel__probe-btn{background:var(--bg-secondary);border:1px solid var(--color-chrome);color:var(--color-ink);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 14px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:border-color .15s,opacity .15s}.sso-panel__probe-btn:hover:not(:disabled){border-color:var(--color-primary)}.sso-panel__probe-btn:disabled{opacity:.5;cursor:default}.sso-panel__probe-btn--loading{opacity:.7}.sso-panel__probe-result{border-radius:6px;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 12px;font-size:.8125rem;display:flex}.sso-panel__probe-result--ok{background:#22c55e1a;border:1px solid #22c55e4d}.sso-panel__probe-result--ok .sso-panel__probe-icon{color:#22c55e}.sso-panel__probe-result--err{background:#ef44441a;border:1px solid #ef44444d}.sso-panel__probe-result--err .sso-panel__probe-icon{color:#ef4444}.sso-panel__probe-icon{flex-shrink:0;margin-top:1px}.sso-panel__probe-detail{color:var(--color-ink);flex-direction:column;gap:3px;display:flex}.sso-panel__probe-detail strong{font-weight:600}.sso-panel__probe-detail span{color:var(--color-slate);word-break:break-all;font-size:.75rem}.sso-panel__attr-grid{border:1px solid var(--color-chrome);background:var(--bg-secondary);border-radius:6px;flex-direction:column;gap:8px;padding:12px;display:flex}.sso-panel__attr-row{align-items:center;gap:12px;display:flex}.sso-panel__attr-key{color:var(--color-slate);flex-shrink:0;width:160px;font-size:.8125rem}.sso-panel__role-grid{gap:6px;display:flex}.sso-panel__role-btn{border:1px solid var(--color-chrome);background:var(--bg-secondary);color:var(--color-slate);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:border-color .15s,color .15s,background .15s}.sso-panel__role-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.sso-panel__role-btn--active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary)}.sso-panel__toggle{background:var(--color-chrome);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.sso-panel__toggle--on{background:var(--color-primary)}.sso-panel__toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.sso-panel__toggle--on .sso-panel__toggle-thumb{transform:translate(20px)}.sso-panel__actions{border-top:1px solid var(--color-chrome);flex-wrap:wrap;align-items:center;gap:8px;margin-top:24px;padding-top:20px;display:flex}.sso-panel__save-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:9px 20px;font-family:inherit;font-size:.875rem;font-weight:500;transition:opacity .15s}.sso-panel__save-btn:hover:not(:disabled){opacity:.9}.sso-panel__save-btn:disabled{opacity:.5;cursor:default}.sso-panel__copy-btn{border:1px solid var(--color-chrome);color:var(--color-slate);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:9px 14px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:border-color .15s,color .15s;display:flex}.sso-panel__copy-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.sso-panel__delete-btn{border:1px solid var(--color-chrome);color:var(--color-slate);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;margin-left:auto;padding:9px 14px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:border-color .15s,color .15s;display:flex}.sso-panel__delete-btn:hover{color:#ef4444;border-color:#ef4444}.sso-panel__delete-btn--confirm{color:#ef4444;background:#ef444414;border-color:#ef4444}.sso-panel__info{color:var(--color-slate);align-items:center;gap:8px;margin-top:12px;font-size:.8125rem;display:flex}.sso-panel__status{background:var(--bg-secondary);color:var(--color-slate);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500}.sso-panel__status--active{color:#16a34a;background:#22c55e1f}.sso-panel__enforce-badge{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500}.sso-panel__error{color:#ef4444;background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;margin-bottom:16px;padding:10px 12px;font-size:.8125rem}.sso-panel__skeleton{background:var(--bg-secondary);border-radius:6px;height:40px;margin-bottom:12px;animation:1.4s ease-in-out infinite sso-shimmer}.sso-panel__skeleton--short{width:60%;height:24px}@keyframes sso-shimmer{0%,to{opacity:.6}50%{opacity:1}}.trial-countdown{color:var(--color-warning);margin:2px 0 0;font-size:12px;line-height:1.4}.trial-countdown--ended{color:var(--color-danger)}.quota-page{min-height:100%;padding:var(--space-7) var(--space-5);background:var(--color-paper);overflow-y:auto}.quota-page__container{gap:var(--space-6);flex-direction:column;max-width:740px;margin:0 auto;display:flex}.quota-page__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.quota-page__heading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:26px;font-weight:700;line-height:1.15}.quota-page__subheading{color:var(--color-slate);margin-top:var(--space-1);font-size:14px}.quota-page__plan{align-items:flex-end;gap:var(--space-1);flex-direction:column;display:flex}.quota-section{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-6);animation:quotaSectionIn .45s var(--ease-out) both}.quota-section--meters{animation-delay:0s}.quota-section--gates{animation-delay:60ms}.quota-section--plans{animation-delay:.18s}.quota-section__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-ink);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-chrome);font-size:15px;font-weight:700}@keyframes quotaSectionIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.quota-meters{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.quota-meter{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-raised);transition:border-color var(--duration-normal) var(--ease-out);border:1px solid #0000;display:flex}.quota-meter--near-limit{background:#8f5a080a;border-color:#8f5a0840}.quota-meter--near-limit .quota-meter__icon{color:var(--color-warning);background:#8f5a081a}.quota-meter--near-limit .quota-meter__fill{background:var(--color-warning)}.quota-meter--at-limit{background:#c81e1e08;border-color:#c81e1e33}.quota-meter--at-limit .quota-meter__icon{color:var(--color-danger);background:#c81e1e1a}.quota-meter--at-limit .quota-meter__fill{background:var(--color-danger)}.quota-meter__icon{border-radius:var(--radius-sm);background:var(--color-chrome);width:32px;height:32px;color:var(--color-ink);flex-shrink:0;justify-content:center;align-items:center;display:flex}.quota-meter__body{flex:1;min-width:0}.quota-meter__label-row{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.quota-meter__label{font-family:var(--font-display);color:var(--color-slate);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.quota-meter__value{font-family:var(--font-mono);color:var(--color-ink);font-size:13px}.quota-meter__value strong{font-weight:700}.quota-meter__separator{color:var(--color-chrome);margin:0 2px}.quota-meter__limit{color:var(--color-slate);font-size:12px}.quota-meter__track{background:var(--color-chrome);border-radius:100px;height:5px;overflow:hidden}.quota-meter__fill{background:var(--color-primary);height:100%;transition:width .6s var(--ease-out);border-radius:100px;min-width:2px}.quota-meter__warning,.quota-meter__caution{margin-top:var(--space-1);letter-spacing:.02em;font-size:11px;font-weight:600;display:block}.quota-meter__warning{color:var(--color-danger)}.quota-meter__caution{color:var(--color-warning)}.quota-gates{flex-direction:column;gap:2px;display:flex}.quota-gate{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out);display:flex}.quota-gate:hover{background:var(--color-surface-raised)}.quota-gate--enabled .quota-gate__icon{color:var(--color-success)}.quota-gate--locked .quota-gate__icon{color:var(--color-slate);opacity:.55}.quota-gate__icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;display:flex}.quota-gate__text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.quota-gate__label{font-family:var(--font-display);color:var(--color-ink);font-size:13px;font-weight:600}.quota-gate__desc{color:var(--color-slate);font-size:12px;line-height:1.4}.quota-gate__status{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border-radius:100px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:700}.quota-gate__status--on{color:var(--color-success);background:#2b723014}.quota-gate__status--off{color:var(--color-slate);background:#4d6b6214}.quota-upgrade{border-radius:var(--radius-lg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);animation:quotaSectionIn .45s var(--ease-out) both;animation-delay:.12s;position:relative;overflow:hidden}.quota-upgrade__glow{background:radial-gradient(ellipse 60% 80% at 0% 50%, rgba(var(--color-primary-rgb), .3) 0%, transparent 70%), radial-gradient(ellipse 50% 70% at 100% 20%, rgba(var(--color-accent-rgb), .15) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.quota-upgrade__content{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-6);display:flex;position:relative}.quota-upgrade__heading{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:var(--space-2);font-size:18px;font-weight:700}.quota-upgrade__body{color:color-mix(in srgb, var(--color-btn-primary-text) 78%, transparent);max-width:420px;font-size:13px;line-height:1.55}.quota-upgrade__body strong{color:var(--color-btn-primary-text);font-weight:600}.quota-upgrade__cta{align-items:center;gap:var(--space-2);font-family:var(--font-display);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-btn-primary-text);white-space:nowrap;transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);flex-shrink:0;padding:10px 22px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.quota-upgrade__cta:hover{background:var(--color-primary-hover)}.quota-upgrade__cta:active{transform:scale(.97)}.quota-plans-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.quota-plans-table{border-collapse:collapse;width:100%;font-size:13px}.quota-plans-table__corner{width:40%}.quota-plans-table th,.quota-plans-table td{padding:var(--space-3) var(--space-4);text-align:center;vertical-align:middle}.quota-plans-table thead tr{border-bottom:2px solid var(--color-chrome)}.quota-plans-table tbody tr{border-bottom:1px solid var(--color-chrome)}.quota-plans-table tbody tr:last-child{border-bottom:none}.quota-plans-table tbody tr:hover{background:var(--color-surface-raised)}.quota-plans-table__plan-header{font-family:var(--font-display);color:var(--color-ink);font-size:14px;font-weight:700}.quota-plans-table__current-badge{text-transform:uppercase;letter-spacing:.06em;background:var(--color-primary);color:#fff;margin-left:var(--space-2);vertical-align:middle;border-radius:100px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.quota-plans-table__row-label{text-align:left;color:var(--color-slate);font-weight:500}.quota-plans-table__cell{font-family:var(--font-mono);color:var(--color-ink);font-size:13px}.quota-plans-table__check,.quota-plans-table__cross{vertical-align:middle;display:inline-block}.quota-skel{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, var(--color-surface-raised) 50%, var(--color-chrome) 75%);background-size:300% 100%;animation:1.6s infinite quotaShimmer}.quota-skel--heading{width:200px;height:28px}.quota-skel--sub{width:300px;height:16px;margin-top:var(--space-2)}.quota-skel--section-title{width:140px;height:18px;margin-bottom:var(--space-5)}.quota-skel--meter{border-radius:var(--radius-md);height:80px}.quota-skel--gate{border-radius:var(--radius-md);height:44px;margin-bottom:var(--space-2)}@keyframes quotaShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.quota-error{align-items:center;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);color:var(--color-danger);background:#c81e1e0a;border:1px solid #c81e1e26;font-size:14px;font-weight:500;display:flex}.quota-plan-badge{font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;background:var(--color-chrome);color:var(--color-slate);white-space:nowrap;border-radius:100px;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.quota-plan-badge--paid{color:#78350f;background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%);box-shadow:0 1px 4px #8f5a084d}@media (width<=768px){.quota-page{padding:var(--space-6) var(--space-4)}.quota-page__heading{font-size:24px}.quota-page__container{max-width:100%}}@media (width<=640px){.quota-page{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.quota-page__header{gap:var(--space-3);flex-direction:column}.quota-page__heading{font-size:22px}.quota-meters{grid-template-columns:1fr}.quota-meter{padding:var(--space-3)}.quota-section{padding:var(--space-4)}.quota-upgrade__content{padding:var(--space-5) var(--space-4);flex-direction:column;align-items:flex-start}.quota-upgrade__heading{font-size:16px}.quota-upgrade__cta{width:100%;min-height:var(--touch-min);justify-content:center}.quota-gate{padding:var(--space-3) var(--space-2)}.quota-gate__status{padding:2px 8px;font-size:10px}.quota-plans-table__corner{width:35%}.quota-plans-table th,.quota-plans-table td{padding:var(--space-2) var(--space-2);font-size:11px}}.quota-beta-note{padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);color:var(--color-text-secondary,inherit);background:#3c5ac80d;border:1px solid #3c5ac82e;margin:0;font-size:14px;font-weight:500}.billing-page{min-height:100%;padding:var(--space-7) var(--space-5);background:var(--color-paper);overflow-y:auto}.billing-page__container{gap:var(--space-6);flex-direction:column;max-width:1040px;margin:0 auto;display:flex}.billing-page__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.billing-page__heading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);font-size:26px;font-weight:700;line-height:1.15}.billing-page__subheading{color:var(--color-slate);margin-top:var(--space-1);font-size:14px}.billing-current-badge{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.billing-current-badge__label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:11px;font-weight:600}.billing-current-badge__name{font-family:var(--font-display);background:var(--color-chrome);color:var(--color-ink);border-radius:100px;padding:5px 14px;font-size:15px;font-weight:700}.billing-current-badge__name--pro{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);color:#fff;box-shadow:0 1px 4px rgba(var(--color-primary-rgb), .25)}.billing-current-badge__name--enterprise{background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-hover) 100%);color:#fff;box-shadow:0 1px 4px rgba(var(--color-accent-rgb), .25)}.billing-cycle-toggle{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);align-self:flex-start;align-items:center;gap:2px;padding:3px;display:inline-flex}.billing-cycle-toggle__btn{align-items:center;gap:var(--space-2);font-family:var(--font-display);border-radius:calc(var(--radius-lg) - 3px);color:var(--color-slate);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;padding:7px 18px;font-size:13px;font-weight:600;display:inline-flex}.billing-cycle-toggle__btn--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.billing-cycle-toggle__btn:not(.billing-cycle-toggle__btn--active):hover{background:var(--color-surface-raised);color:var(--color-ink)}.billing-cycle-toggle__save-badge{letter-spacing:.04em;color:var(--color-success);white-space:nowrap;background:#2b72301f;border-radius:100px;padding:2px 8px;font-size:10px;font-weight:700}.billing-cards-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,380px));justify-content:center;align-items:start;display:grid}.billing-plan-card{background:var(--color-surface);border:1.5px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-4);animation:cardIn .4s var(--ease-out) both;transition:box-shadow var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);flex-direction:column;display:flex;position:relative}.billing-plan-card:hover{box-shadow:var(--shadow-md)}.billing-plan-card--pro{border-color:var(--color-primary);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .2), var(--shadow-sm)}.billing-plan-card--enterprise{border-color:var(--color-accent);box-shadow:0 0 0 1px rgba(var(--color-accent-rgb), .15), var(--shadow-sm)}.billing-plan-card--current{border-color:var(--color-ink);box-shadow:0 0 0 2px var(--color-ink)}.billing-plan-card--current.billing-plan-card--pro{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.billing-plan-card--current.billing-plan-card--enterprise{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent)}.billing-plan-card__current-flag{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-radius:100px;padding:3px 12px;font-size:10px;font-weight:700;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.billing-plan-card__header{padding-top:var(--space-2)}.billing-plan-card__name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:17px;font-weight:700}.billing-plan-card__desc{color:var(--color-slate);margin-top:4px;font-size:12px;line-height:1.4}.billing-plan-card__price-block{flex-direction:column;gap:4px;display:flex}.billing-plan-card__price{align-items:baseline;gap:3px;line-height:1;display:flex}.billing-plan-card__price-amount{font-family:var(--font-display);letter-spacing:-.04em;color:var(--color-ink);font-size:32px;font-weight:700}.billing-plan-card__price-period{color:var(--color-slate);font-size:14px;font-weight:500}.billing-plan-card__price-pending{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-slate);padding:7px 0;font-size:18px;font-weight:700}.billing-plan-card__annual-note{color:var(--color-slate);align-items:center;gap:var(--space-2);font-size:11px;display:flex}.billing-plan-card__annual-note--hint{opacity:.7}.billing-plan-card__savings-badge{color:var(--color-success);background:#2b72301a;border-radius:100px;padding:2px 8px;font-size:10px;font-weight:700}.billing-plan-card__limits{gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--color-chrome);border-bottom:1px solid var(--color-chrome);flex-direction:column;display:flex}.billing-plan-card__limit-row{align-items:center;gap:var(--space-2);color:var(--color-ink);font-size:12px;display:flex}.billing-plan-card__limit-row svg{color:var(--color-slate);flex-shrink:0}.billing-plan-card__gates{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.billing-plan-card__gate{align-items:center;gap:var(--space-2);font-size:12px;line-height:1.3;display:flex}.billing-plan-card__gate--on{color:var(--color-ink)}.billing-plan-card__gate--on svg{color:var(--color-success);flex-shrink:0}.billing-plan-card__gate--off{color:var(--color-slate);opacity:.6}.billing-plan-card__gate--off svg{flex-shrink:0}.billing-plan-card__cta{font-family:var(--font-display);border-radius:var(--radius-md);border:1.5px solid var(--color-chrome);background:var(--color-surface-raised);color:var(--color-ink);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);min-height:var(--touch-min);width:100%;padding:10px 18px;font-size:13px;font-weight:700}.billing-plan-card__cta:hover:not(:disabled){background:var(--color-chrome);border-color:var(--color-slate)}.billing-plan-card__cta:active:not(:disabled){transform:scale(.97)}.billing-plan-card__cta:disabled{opacity:.5;cursor:not-allowed}.billing-plan-card__cta--current{border-color:var(--color-btn-primary-bg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:default}.billing-plan-card__cta--current:hover:not(:disabled){background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg)}.billing-plan-card__cta--pro{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.billing-plan-card__cta--pro:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.billing-plan-card:first-child{animation-delay:0s}.billing-plan-card:nth-child(2){animation-delay:60ms}.billing-plan-card:nth-child(3){animation-delay:.12s}.billing-plan-card:nth-child(4){animation-delay:.18s}.billing-section{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-6);animation:cardIn .4s var(--ease-out) both;animation-delay:.24s}.billing-section__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-ink);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-chrome);font-size:15px;font-weight:700}.billing-history-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.billing-history-table{border-collapse:collapse;width:100%;font-size:13px}.billing-history-table th{text-align:left;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-slate);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-chrome);font-size:11px;font-weight:700}.billing-history-table td{padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-chrome);vertical-align:middle}.billing-history-table tr:last-child td{border-bottom:none}.billing-history-table tr:hover td{background:var(--color-surface-raised)}.billing-history-table__date{font-family:var(--font-mono);color:var(--color-slate);white-space:nowrap;font-size:12px}.billing-history-table__desc{color:var(--color-ink)}.billing-history-table__amount{font-family:var(--font-mono);color:var(--color-ink);white-space:nowrap;text-align:right;font-size:13px;font-weight:600}.billing-history-table__status{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border-radius:100px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.billing-history-table__status--paid{color:var(--color-success);background:#2b72301a}.billing-history-table__status--pending{color:var(--color-warning);background:#8f5a081a}.billing-history-table__status--refunded{color:var(--color-slate);background:#4d6b621a}.billing-history-table__status--failed{color:var(--color-danger);background:#c81e1e14}.billing-history-empty{align-items:center;gap:var(--space-3);padding:var(--space-5);color:var(--color-slate);font-size:14px;display:flex}.billing-history-empty svg{opacity:.4;flex-shrink:0}.billing-modal-backdrop{background:var(--color-surface-overlay);z-index:900;animation:modalFadeIn .15s var(--ease-out) both;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.billing-modal{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:100%;max-width:440px;box-shadow:var(--shadow-lg);animation:modalSlideIn .2s var(--ease-out) both;flex-direction:column;display:flex}.billing-modal__header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-chrome);justify-content:space-between;align-items:center;display:flex}.billing-modal__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:17px;font-weight:700}.billing-modal__close{width:30px;height:30px;color:var(--color-slate);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.billing-modal__close:hover{background:var(--color-surface-raised);color:var(--color-ink)}.billing-modal__body{padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.billing-modal__info{color:var(--color-ink);font-size:14px;line-height:1.55}.billing-modal__info strong{font-weight:700}.billing-modal__saving{color:var(--color-success);font-size:13px;font-weight:600}.billing-modal__warning{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-warning);background:#8f5a0812;border:1px solid #8f5a0833;font-size:13px;line-height:1.45;display:flex}.billing-modal__warning svg{flex-shrink:0;margin-top:1px}.billing-modal__error{color:var(--color-danger);font-size:13px;font-weight:500}.billing-modal__footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-chrome);display:flex}.billing-modal__btn{font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);min-height:var(--touch-min);padding:9px 20px;font-size:13px;font-weight:700}.billing-modal__btn:active:not(:disabled){transform:scale(.97)}.billing-modal__btn:disabled{opacity:.5;cursor:not-allowed}.billing-modal__btn--cancel{border:1.5px solid var(--color-chrome);background:var(--color-surface-raised);color:var(--color-ink)}.billing-modal__btn--cancel:hover:not(:disabled){background:var(--color-chrome)}.billing-modal__btn--confirm{background:var(--color-primary);color:#fff;border:none}.billing-modal__btn--confirm:hover:not(:disabled){background:var(--color-primary-hover)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.billing-success{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);color:var(--color-success);animation:cardIn .3s var(--ease-out) both;background:#2b72300f;border:1px solid #2b723033;font-size:14px;font-weight:500;display:flex}.billing-success svg{flex-shrink:0}.billing-beta-note{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);color:var(--color-text-secondary,inherit);margin-bottom:var(--space-4);background:#3c5ac80d;border:1px solid #3c5ac82e;font-size:14px;font-weight:500;display:flex}.billing-beta-note svg{flex-shrink:0}.billing-beta-note a{color:inherit;font-weight:600}.billing-error{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);color:var(--color-danger);background:#c81e1e0a;border:1px solid #c81e1e26;font-size:14px;font-weight:500;display:flex}.billing-skel{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-chrome) 25%, var(--color-surface-raised) 50%, var(--color-chrome) 75%);background-size:300% 100%;animation:1.6s infinite billingShimmer}.billing-skel--heading{width:220px;height:28px}.billing-skel--sub{width:300px;height:16px;margin-top:var(--space-2)}.billing-skel--card{border-radius:var(--radius-lg);height:480px}.billing-skel--row{height:44px;margin-bottom:var(--space-2)}@keyframes billingShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=768px){.billing-page{padding:var(--space-6) var(--space-4)}.billing-cards-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.billing-page{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.billing-page__header{gap:var(--space-3);flex-direction:column}.billing-page__heading{font-size:22px}.billing-current-badge{align-items:flex-start}.billing-cards-grid{grid-template-columns:1fr}.billing-plan-card__cta{min-height:48px}.billing-section{padding:var(--space-4)}.billing-history-table__desc{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.billing-modal{max-width:100%}.billing-modal__footer{flex-direction:column-reverse}.billing-modal__btn{justify-content:center;width:100%}}.billing-return{padding-top:var(--space-7);align-items:center}.billing-return__card{align-items:flex-start;gap:var(--space-4);max-width:560px;padding:var(--space-6);background:var(--color-surface,#fff);border:1px solid var(--color-border,#0000001f);border-radius:var(--radius-lg);flex-direction:column;display:flex}.billing-return__card h1:focus{outline:none}.billing-return__card a{align-items:center;text-decoration:none;display:inline-flex}.billing-return__spinner{border:3px solid var(--color-border,#0000001f);border-top-color:var(--color-primary,currentColor);border-radius:50%;width:24px;height:24px;animation:.9s linear infinite billing-return-spin}@keyframes billing-return-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.billing-return__spinner{animation:none}}.billing-managed{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-surface,#fff);border:1px solid var(--color-border,#0000001f);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.billing-managed__text{gap:var(--space-1,4px);flex-direction:column;flex:260px;min-width:0;font-size:14px;display:flex}.billing-managed__text span{color:var(--color-text-secondary,inherit)}.billing-history-table__desc a{color:inherit;text-underline-offset:2px;text-decoration:underline}.billing-history-table__desc .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.invite-landing{justify-content:center;align-items:center;gap:var(--space-5);min-height:100%;padding:var(--space-5);background:var(--color-paper);flex-direction:column;display:flex;position:relative}.invite-landing__brand{color:var(--color-ink)}.invite-landing__card{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:var(--space-7) var(--space-6) var(--space-6);text-align:center;animation:inviteCardIn .45s var(--ease-out) both;flex-direction:column;align-items:center;display:flex;box-shadow:0 0 0 1px #00000005,0 8px 32px #00000014}.invite-landing__icon{width:56px;height:56px;margin-bottom:var(--space-3);animation:inviteIconPop .4s var(--ease-out) 80ms both;border-radius:50%;justify-content:center;align-items:center;display:flex}.invite-landing__icon--invite{background:color-mix(in srgb, var(--color-focus), transparent 88%);color:var(--color-focus)}.invite-landing__icon--success{background:color-mix(in srgb, var(--color-success), transparent 88%);color:var(--color-success)}.invite-landing__icon--error{background:color-mix(in srgb, var(--color-danger), transparent 88%);color:var(--color-danger)}.invite-landing__icon--neutral{background:color-mix(in srgb, var(--color-slate), transparent 88%);color:var(--color-slate)}.invite-landing__title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-ink);margin-bottom:var(--space-2);font-size:22px;font-weight:700;line-height:1.2}.invite-landing__subtitle{color:var(--color-slate);max-width:320px;font-size:13px;line-height:1.5}.invite-landing__subtitle strong{color:var(--color-ink);font-weight:600}.invite-landing__details{width:100%;margin-top:var(--space-5);background:var(--color-surface-raised);border:1px solid var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-4);animation:inviteDetailsIn .35s var(--ease-out) .15s both}.invite-landing__detail-row{padding:var(--space-2) 0;justify-content:space-between;align-items:center;display:flex}.invite-landing__detail-row+.invite-landing__detail-row{border-top:1px solid var(--color-chrome)}.invite-landing__detail-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);font-size:12px;font-weight:600}.invite-landing__detail-value{color:var(--color-ink);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:60%;font-size:14px;font-weight:500;overflow:hidden}.invite-landing__detail-value--org{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700}.invite-landing__role-badge{letter-spacing:.02em;border-radius:12px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.invite-landing__role-badge--admin{background:color-mix(in srgb, var(--color-primary), transparent 88%);color:var(--color-primary)}.invite-landing__role-badge--editor{background:color-mix(in srgb, var(--color-focus), transparent 88%);color:var(--color-focus)}.invite-landing__role-badge--viewer{background:color-mix(in srgb, var(--color-slate), transparent 85%);color:var(--color-slate)}.invite-landing__role-desc{color:var(--color-slate);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-chrome);text-align:left;font-size:12px;line-height:1.4}.invite-landing__actions{gap:var(--space-2);width:100%;margin-top:var(--space-5);flex-direction:column;display:flex}.invite-landing__btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.invite-landing__btn:active:not(:disabled){transform:scale(.97)}.invite-landing__btn:disabled{opacity:.5;cursor:not-allowed}.invite-landing__btn{width:100%;height:42px;font-size:14px}.invite-landing__btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.invite-landing__btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.invite-landing__btn--secondary{color:var(--color-ink);background:var(--color-surface-raised);border:1.5px solid var(--color-chrome)}.invite-landing__btn--secondary:hover:not(:disabled){border-color:var(--color-slate);background:var(--color-surface)}.invite-landing__btn--ghost{color:var(--color-slate);background:0 0;height:36px;font-size:13px}.invite-landing__btn--ghost:hover:not(:disabled){color:var(--color-danger)}.invite-landing__btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.invite-landing__loader{align-items:center;gap:var(--space-3);padding:var(--space-5) 0;flex-direction:column;display:flex}.invite-landing__spinner{border:2.5px solid var(--color-chrome);border-top-color:var(--color-focus);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.invite-landing__loader-text{color:var(--color-slate);font-size:13px}@keyframes inviteCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes inviteIconPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes inviteDetailsIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.invite-landing{padding:var(--space-4)}.invite-landing__card{padding:var(--space-5) var(--space-4) var(--space-4);border-radius:var(--radius-md)}.invite-landing__title{font-size:20px}.invite-landing__btn{height:var(--touch-min)}}.shared-map-page{background:var(--color-paper);--share-pill-inset:12px;--share-pill-height:32px;--share-pill-zone:calc(var(--share-pill-inset) + var(--share-pill-height) + var(--space-2));--share-credit-zone:40px;flex-direction:column;width:100vw;height:100vh;display:flex;position:relative}@media (width<=640px){.shared-map-page{--share-credit-zone:calc(var(--share-pill-zone) + 24px + 10px + var(--space-2))}}.shared-map-page--loading{justify-content:center;align-items:center;gap:var(--space-4);color:var(--color-slate);font-family:var(--font-body);flex-direction:column;font-size:14px;display:flex}.shared-map-page__spinner{border:3px solid var(--color-chrome);border-top-color:var(--color-primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite shared-spin}.shared-map-page--error{justify-content:center;align-items:center;display:flex}.shared-map-page__error-card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;max-width:400px;display:flex}.shared-map-page__error-card svg:not(.brand-mark){color:var(--color-slate);opacity:.5;width:36px;height:36px}.shared-map-page__error-card h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:18px;font-weight:700}.shared-map-page__error-card p{font-family:var(--font-body);color:var(--color-slate);font-size:14px;line-height:1.5}.shared-map-page__login-link{font-family:var(--font-display);color:var(--color-primary);margin-top:var(--space-2);font-size:13px;font-weight:600;text-decoration:none}.shared-map-page__login-link:hover{text-decoration:underline}.shared-map-page__header{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-chrome);z-index:100;flex-shrink:0;display:flex}@media (width<=768px){.shared-map-page__header{flex-wrap:wrap}}@media (width<=640px){.shared-map-page__header{padding:var(--space-3);gap:var(--space-3)}}.shared-map-page__branding{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.shared-map-page__brand-lockup{color:var(--color-ink)}.shared-map-page .maplibregl-ctrl-bottom-right{bottom:var(--share-pill-zone)}.shared-map-page__powered-by{bottom:var(--share-pill-inset);right:var(--share-pill-inset);z-index:10;box-sizing:border-box;height:var(--share-pill-height);align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-chrome);box-shadow:var(--shadow-sm);font-family:var(--font-display);letter-spacing:.01em;color:var(--color-ink);transition:box-shadow var(--duration-fast) var(--ease-out);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex;position:absolute}.shared-map-page__powered-by:hover,.shared-map-page__powered-by:focus-visible{box-shadow:var(--shadow-md)}.shared-map-page__project-info{border-left:1px solid var(--color-chrome);min-width:0;padding-left:var(--space-4);flex:1}@media (width<=768px){.shared-map-page__project-info{border-left:none;flex:1 0 100%;order:3;padding-left:0}}.shared-map-page__project-name{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}@media (width<=768px){.shared-map-page__project-name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}}.shared-map-page__project-desc{font-family:var(--font-body);color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:12px;overflow:hidden}@media (width<=768px){.shared-map-page__project-desc{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}}.shared-map-page__badge{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);background:var(--color-surface-raised);border:1px solid var(--color-chrome);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 10px;font-size:11px;font-weight:600}@media (width<=768px){.shared-map-page__badge{margin-left:auto}}.shared-map-page__report{min-height:var(--touch-min);min-width:var(--touch-min);font-family:var(--font-body);color:var(--color-slate);border-radius:var(--radius-md);padding:0 var(--space-3);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;flex-shrink:0;font-size:13px}.shared-map-page__report:hover{color:var(--color-ink);border-color:var(--color-chrome)}.shared-map-page__report:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.shared-map-page__map{flex:1;width:100%}.shared-map-page__legend{bottom:var(--share-credit-zone);z-index:10;background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-md);scrollbar-width:thin;scrollbar-color:var(--color-chrome) transparent;max-width:220px;max-height:260px;position:absolute;left:12px;overflow-y:auto}.shared-map-page__legend::-webkit-scrollbar{width:5px}.shared-map-page__legend::-webkit-scrollbar-thumb{background:var(--color-chrome);border-radius:3px}@media (width<=640px){.shared-map-page__legend{max-width:180px;left:8px}}.shared-map-page__legend-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate);margin-bottom:var(--space-2);font-size:11px;font-weight:700}.shared-map-page__legend-item{align-items:center;gap:var(--space-2);padding:3px 0;display:flex}.shared-map-page__legend-swatch{border:1.5px solid;border-radius:3px;flex-shrink:0;width:12px;height:12px}.shared-map-page__legend-label{font-family:var(--font-body);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.shared-map-page__legend-count{font-family:var(--font-mono);color:var(--color-slate);flex-shrink:0;font-size:10px}@keyframes shared-spin{to{transform:rotate(360deg)}}.mon-page{max-width:1040px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.mon-header{border-bottom:1px solid var(--color-chrome);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:3rem;padding-bottom:2rem;display:flex}.mon-header-left{flex-direction:column;gap:.5rem;display:flex}.mon-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 25%, transparent);border-radius:4px;align-items:center;gap:.375rem;width:fit-content;padding:.2em .6em;font-size:.7rem;font-weight:700;display:inline-flex}.mon-badge:before{content:"";background:var(--color-primary);border-radius:50%;width:5px;height:5px;display:inline-block}.mon-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-ink);margin:0;font-size:1.75rem;font-weight:700;line-height:1.1}.mon-subtitle{color:var(--color-slate);max-width:520px;margin:0;font-size:.875rem;line-height:1.55}.mon-header-actions{flex-shrink:0;align-items:center;gap:.5rem;padding-top:.25rem;display:flex}.mon-btn-refresh{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.mon-btn-refresh:active:not(:disabled){transform:scale(.97)}.mon-btn-refresh:disabled{opacity:.5;cursor:not-allowed}.mon-btn-refresh{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.mon-btn-refresh:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.mon-btn-refresh{height:30px;padding:0 var(--space-3);font-size:12px}.mon-btn-capture{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.mon-btn-capture:active:not(:disabled){transform:scale(.97)}.mon-btn-capture:disabled{opacity:.5;cursor:not-allowed}.mon-btn-capture{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg)}.mon-btn-capture:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.mon-btn-capture{height:30px;padding:0 var(--space-3);font-size:12px}.mon-error{background:color-mix(in srgb, var(--color-danger) 6%, transparent);border:1px solid color-mix(in srgb, var(--color-danger) 25%, transparent);color:var(--color-danger);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.mon-error button{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:13px;font-weight:600;display:inline-flex}.mon-error button:active:not(:disabled){transform:scale(.97)}.mon-error button:disabled{opacity:.5;cursor:not-allowed}.mon-error button{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.mon-error button:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.mon-error button{height:30px;padding:0 var(--space-3);color:inherit;border-color:currentColor;font-size:12px}@keyframes mon-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.mon-skeleton-table,.mon-skeleton-card{background:linear-gradient(90deg, var(--color-chrome) 25%, color-mix(in srgb, var(--color-chrome) 60%, #fff) 50%, var(--color-chrome) 75%);background-size:1200px 100%;animation:1.6s ease-in-out infinite mon-shimmer}.mon-skeleton-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2.5rem;display:grid}.mon-skeleton-card{border-radius:10px;height:104px}.mon-skeleton-table{border-radius:10px;height:200px;margin-top:1rem}.mon-section{margin-bottom:3rem}.mon-section-head{margin-bottom:1.25rem}.mon-section-head--row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.mon-section-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-ink);margin:0 0 .375rem;font-size:1rem;font-weight:700}.mon-section-desc{color:var(--color-slate);max-width:600px;margin:0;font-size:.8125rem;line-height:1.55}.mon-empty{color:var(--color-slate);padding:1rem 0;font-size:.875rem}.mon-stat-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.mon-stat-card{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:10px;flex-direction:column;gap:.25rem;padding:1.375rem 1.5rem 1.25rem;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000f}.mon-stat-card:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.mon-stat-card--neutral:before{background:var(--color-chrome)}.mon-stat-card--danger:before{background:var(--color-danger)}.mon-stat-card--warning:before{background:var(--color-warning)}.mon-stat-card--success:before{background:var(--color-success)}.mon-stat-value{font-family:var(--font-display);letter-spacing:-.04em;color:var(--color-ink);margin-top:.25rem;font-size:2.25rem;font-weight:700;line-height:1}.mon-stat-label{color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;margin-top:.375rem;font-size:.72rem;font-weight:700}.mon-stat-sub{color:var(--color-slate);margin-top:.125rem;font-size:.75rem}.mon-stat-card--danger .mon-stat-sub{color:var(--color-danger)}.mon-stat-card--warning .mon-stat-sub{color:var(--color-warning)}.mon-stat-card--success .mon-stat-sub{color:var(--color-success)}.plan-dist{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:10px;flex-direction:column;gap:.875rem;padding:1.5rem;display:flex;box-shadow:0 1px 2px #0000000f}.plan-dist-row{grid-template-columns:200px 1fr auto;align-items:center;gap:1rem;display:grid}.plan-dist-meta{align-items:center;gap:.5rem;min-width:0;display:flex}.plan-dist-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.plan-dist-name{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.plan-dist-bar-wrap{background:var(--color-chrome);border-radius:99px;height:10px;overflow:hidden}.plan-dist-bar{border-radius:99px;min-width:3px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1)}.plan-dist-stats{justify-content:flex-end;align-items:center;gap:.625rem;min-width:72px;display:flex}.plan-dist-count{color:var(--color-ink);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700}.plan-dist-pct{color:var(--color-slate);font-variant-numeric:tabular-nums;text-align:right;min-width:32px;font-size:.75rem}.util-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.util-grid{grid-template-columns:1fr}}.util-bucket{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:10px;padding:1.375rem 1.5rem;box-shadow:0 1px 2px #0000000f}.util-bucket-title{color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;margin:0 0 1rem;font-size:.8rem;font-weight:700}.util-bar{background:var(--color-chrome);border-radius:8px;gap:1px;height:16px;margin-bottom:1rem;display:flex;overflow:hidden}.util-bar-seg{transition:width .5s cubic-bezier(.16,1,.3,1)}.util-bar-seg.seg-low{background:#22c55e}.util-bar-seg.seg-mid{background:#f59e0b}.util-bar-seg.seg-warn{background:#ef4444}.util-bar-seg.seg-danger{background:#991b1b}.util-empty{color:var(--color-slate);text-align:center;padding:1.5rem 0 .5rem;font-size:.8125rem}.util-legend{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.util-legend-item{align-items:center;gap:.375rem;display:flex}.util-legend-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.util-legend-dot.seg-low{background:#22c55e}.util-legend-dot.seg-mid{background:#f59e0b}.util-legend-dot.seg-warn{background:#ef4444}.util-legend-dot.seg-danger{background:#991b1b}.util-legend-range{color:var(--color-slate);font-size:.75rem}.util-legend-count{color:var(--color-ink);font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:700}.mon-toggle{color:var(--color-slate);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;margin-top:.25rem;font-size:.8125rem;display:flex}.mon-toggle input{cursor:pointer;accent-color:var(--color-primary)}.mon-empty-alarms{background:var(--color-surface);border:1px solid var(--color-chrome);color:var(--color-slate);border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:2.5rem;font-size:.875rem;display:flex}.mon-empty-alarms-icon{color:var(--color-success);font-size:1rem}.mon-table-wrap{border:1px solid var(--color-chrome);border-radius:10px;overflow-x:auto;box-shadow:0 1px 2px #0000000f}.mon-table{border-collapse:collapse;width:100%;font-size:.8125rem}.mon-table th{background:color-mix(in srgb, var(--color-chrome) 50%, var(--color-surface));text-align:left;color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-chrome);white-space:nowrap;padding:.625rem 1rem;font-size:.7rem;font-weight:700}.mon-table td{border-bottom:1px solid var(--color-chrome);color:var(--color-ink);vertical-align:middle;padding:.75rem 1rem}.mon-table tr:last-child td{border-bottom:none}.mon-table tbody tr:hover{background:color-mix(in srgb, var(--color-chrome) 30%, transparent)}.alarm-row--resolved{opacity:.55}.alarm-scope-code{background:var(--color-chrome);color:var(--color-slate);border-radius:4px;padding:.15em .45em;font-family:IBM Plex Mono,Menlo,monospace;font-size:.75rem}.alarm-badge{white-space:nowrap;letter-spacing:.01em;border-radius:4px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.alarm-badge--warn{color:#92400e;background:#f59e0b1f}[data-theme=dark] .alarm-badge--warn{color:#fbbf24}.alarm-badge--danger{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.alarm-slug{color:var(--color-slate);font-family:IBM Plex Mono,Menlo,monospace;font-size:.75rem}.alarm-usage{font-variant-numeric:tabular-nums;font-weight:600}.alarm-status{letter-spacing:.03em;text-transform:uppercase;border-radius:99px;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex}.alarm-status--active{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger)}.alarm-status--active:before{content:"";background:var(--color-danger);border-radius:50%;width:5px;height:5px;animation:1.8s ease-in-out infinite alarm-pulse}.alarm-status--resolved{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success)}@keyframes alarm-pulse{0%,to{opacity:1}50%{opacity:.35}}.alarm-date{color:var(--color-slate);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.75rem}.mon-footer{border-top:1px solid var(--color-chrome);margin-top:1.5rem;padding-top:1.25rem}.mon-footer p{color:var(--color-slate);margin:0;font-size:.75rem}.mon-footer code{background:var(--color-chrome);border-radius:4px;padding:.1em .4em;font-family:IBM Plex Mono,Menlo,monospace;font-size:.72rem}[data-theme=dark] :scope .mon-header{border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-badge{color:var(--dark-color-accent);background:color-mix(in srgb, var(--dark-color-accent) 12%, transparent);border-color:color-mix(in srgb, var(--dark-color-accent) 30%, transparent)}[data-theme=dark] :scope .mon-badge:before{background:var(--dark-color-accent)}[data-theme=dark] :scope .mon-title{color:var(--dark-color-ink)}[data-theme=dark] :scope .mon-subtitle{color:var(--dark-color-slate)}[data-theme=dark] :scope .mon-section-title{color:var(--dark-color-ink)}[data-theme=dark] :scope .mon-section-desc{color:var(--dark-color-slate)}[data-theme=dark] :scope .mon-stat-card{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-stat-card--neutral:before{background:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-stat-value{color:var(--dark-color-ink)}[data-theme=dark] :scope .mon-stat-label,[data-theme=dark] :scope .mon-stat-sub{color:var(--dark-color-slate)}[data-theme=dark] :scope .plan-dist{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .plan-dist-name{color:var(--dark-color-ink)}[data-theme=dark] :scope .plan-dist-bar-wrap{background:var(--dark-color-chrome)}[data-theme=dark] :scope .plan-dist-count{color:var(--dark-color-ink)}[data-theme=dark] :scope .plan-dist-pct{color:var(--dark-color-slate)}[data-theme=dark] :scope .util-bucket{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .util-bar{background:var(--dark-color-chrome)}[data-theme=dark] :scope .util-legend-range{color:var(--dark-color-slate)}[data-theme=dark] :scope .util-legend-count{color:var(--dark-color-ink)}[data-theme=dark] :scope .mon-table-wrap{border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-table th{background:color-mix(in srgb, var(--dark-color-chrome) 60%, var(--dark-color-surface-raised));border-color:var(--dark-color-chrome);color:var(--dark-color-slate)}[data-theme=dark] :scope .mon-table td{border-color:var(--dark-color-chrome);color:var(--dark-color-ink)}[data-theme=dark] :scope .mon-table tbody tr:hover{background:color-mix(in srgb, var(--dark-color-chrome) 40%, transparent)}[data-theme=dark] :scope .alarm-scope-code{background:var(--dark-color-chrome);color:var(--dark-color-slate)}[data-theme=dark] :scope .alarm-slug{color:var(--dark-color-slate)}[data-theme=dark] :scope .mon-skeleton-card,[data-theme=dark] :scope .mon-skeleton-table{background:linear-gradient(90deg, var(--dark-color-chrome) 25%, color-mix(in srgb, var(--dark-color-chrome) 60%, var(--dark-color-surface-raised)) 50%, var(--dark-color-chrome) 75%)}[data-theme=dark] :scope .mon-empty-alarms{background:var(--dark-color-surface-raised);border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-footer{border-color:var(--dark-color-chrome)}[data-theme=dark] :scope .mon-footer code{background:var(--dark-color-chrome)}@media (width<=900px){.mon-stat-grid,.mon-skeleton-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.mon-page{padding:1.5rem 1rem 4rem}.mon-header{flex-direction:column;gap:1rem}.mon-stat-grid{grid-template-columns:1fr 1fr}.plan-dist-row{grid-template-columns:140px 1fr auto}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}img,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}:root{--color-ink:#0d1f1a;--color-paper:#f2f7f5;--color-chrome:#cfe0da;--color-slate:#4d6b62;--color-primary:#15795b;--color-primary-hover:#106349;--color-primary-rgb:21, 121, 91;--color-accent:#a5278c;--color-accent-hover:#8b1f76;--color-accent-rgb:165, 39, 140;--color-focus:#a5278c;--color-measure:#a8431f;--color-success:#2b7230;--color-warning:#8f5a08;--color-danger:#c81e1e;--color-categorical-blue:#1d64c8;--color-surface:#fff;--color-surface-raised:#f8fbfa;--color-surface-overlay:#0d1f1ab8;--font-display:DM Sans, Segoe UI, sans-serif;--font-body:IBM Plex Sans, Segoe UI, sans-serif;--font-mono:IBM Plex Mono, Menlo, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #0000001a;--shadow-lg:0 8px 24px #0000001f;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.12s;--duration-normal:.2s;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--touch-min:44px;--map-status-zone:calc(var(--space-1) * 2 + var(--touch-min) + var(--safe-bottom));--attr-sheet-height:55%;--color-btn-primary-bg:var(--color-ink);--color-btn-primary-text:#fff;--brand-plate:#0a4a3b;--map-draw:#d63bb5;--map-measure:#e8603f}[data-theme=dark]{--color-ink:#e4efea;--color-paper:#0f1613;--color-chrome:#2f403a;--color-slate:#8faaa1;--color-primary:#3ecfa5;--color-primary-hover:#63dcba;--color-primary-rgb:62, 207, 165;--color-accent:#e070c6;--color-accent-hover:#ef92d7;--color-accent-rgb:224, 112, 198;--color-focus:#e070c6;--color-measure:#f0855f;--color-success:#4ade80;--color-warning:#fbbf24;--color-danger:#f87171;--color-surface:#16211d;--color-surface-raised:#1c2925;--color-surface-overlay:#000000b8;--shadow-sm:0 1px 2px #0003;--shadow-md:0 2px 8px #0000004d;--shadow-lg:0 8px 24px #0006;--color-btn-primary-bg:var(--color-ink);--color-btn-primary-text:#0f1613}body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-paper);font-size:14px;line-height:1.5;transition:color .25s,background .25s}[data-theme] *,[data-theme] :before,[data-theme] :after{transition:background-color .2s,border-color .2s,color .15s,box-shadow .2s}[data-theme].no-transitions,[data-theme].no-transitions *,[data-theme].no-transitions :before,[data-theme].no-transitions :after{transition:none!important}.brand-mark{opacity:1;flex-shrink:0}.brand-lockup{font-family:var(--font-display);align-items:center;gap:.42em;line-height:1;display:inline-flex}.brand-lockup__mark{flex-shrink:0;display:block}.brand-lockup__wordmark{letter-spacing:-.02em;white-space:nowrap;font-weight:700}@media (width<=380px){.brand-lockup--collapse .brand-lockup__wordmark{display:none}}.app-shell{background:var(--color-paper);flex-direction:column;height:100%;display:flex}.app-header{height:48px;padding:0 var(--space-4);padding-top:var(--safe-top);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);z-index:100;border-bottom:2px solid var(--color-primary);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.app-header__left{align-items:center;gap:var(--space-5);display:flex}.app-header__logo{align-items:center;gap:var(--space-2);color:var(--color-btn-primary-text);transition:opacity var(--duration-fast) var(--ease-out);display:flex}.app-header__logo:hover{opacity:.8}.app-header__wordmark{font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;font-size:15px;font-weight:700}.app-header__brand{align-items:center;gap:var(--space-2);display:flex}.app-header__beta{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:var(--radius-sm);color:var(--color-btn-primary-text);background:color-mix(in srgb, var(--color-btn-primary-text), transparent 84%);border:1px solid color-mix(in srgb, var(--color-btn-primary-text), transparent 68%);padding:2px 6px;font-size:10px;font-weight:700}.app-header__nav{align-items:center;gap:var(--space-3);display:flex}.app-header__link{font-family:var(--font-body);color:color-mix(in srgb, var(--color-btn-primary-text), transparent 35%);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);font-size:13px;font-weight:500}.app-header__link:hover,.app-header__link[aria-current=page]{color:var(--color-btn-primary-text);background:color-mix(in srgb, var(--color-btn-primary-text), transparent 92%)}.app-header__right{align-items:center;gap:var(--space-3);display:flex}.app-header__user{align-items:center;gap:var(--space-2);color:inherit;border-radius:var(--radius-sm);padding:3px var(--space-2);margin-right:calc(-1 * var(--space-2));transition:background var(--duration-fast) var(--ease-out);display:flex}.app-header__user:hover{background:color-mix(in srgb, var(--color-btn-primary-text), transparent 92%)}.app-header__avatar{object-fit:cover;border:1.5px solid color-mix(in srgb, var(--color-btn-primary-text), transparent 80%);border-radius:50%;width:26px;height:26px}.app-header__initials{background:var(--color-primary);color:#fff;width:26px;height:26px;font-family:var(--font-display);letter-spacing:.02em;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.app-header__name{color:color-mix(in srgb, var(--color-btn-primary-text), transparent 20%);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:13px;overflow:hidden}.app-header__logout{white-space:nowrap;color:color-mix(in srgb, var(--color-btn-primary-text), transparent 50%);border:1px solid color-mix(in srgb, var(--color-btn-primary-text), transparent 88%);border-radius:var(--radius-sm);padding:3px var(--space-3);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);background:0 0;font-size:12px;font-weight:500}.app-header__logout:hover{color:var(--color-btn-primary-text);border-color:color-mix(in srgb, var(--color-btn-primary-text), transparent 70%)}.app-header__theme-toggle{cursor:pointer;transition:opacity var(--duration-fast) var(--ease-out);background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:3px;display:flex}.app-header__theme-toggle:hover{opacity:.85}.app-header__theme-track{width:38px;height:20px;transition:background var(--duration-normal) var(--ease-out);background:#ffffff26;border:1px solid #ffffff1f;border-radius:999px;align-items:center;display:flex;position:relative}[data-theme=dark] .app-header__theme-track{background:#ffffff1a;border-color:#ffffff2e}.app-header__theme-thumb{background:var(--color-paper);width:14px;height:14px;transition:transform var(--duration-normal) var(--ease-out);border-radius:50%;position:absolute;left:2px;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .app-header__theme-thumb{background:var(--color-primary);transform:translate(18px)}.app-header__theme-icon{color:color-mix(in srgb, var(--color-btn-primary-text), transparent 40%);transition:opacity var(--duration-normal) var(--ease-out), color var(--duration-normal) var(--ease-out);position:absolute;top:50%;transform:translateY(-50%)}.app-header__theme-icon--sun{opacity:0;left:3px}[data-theme=dark] .app-header__theme-icon--sun{opacity:.5}.app-header__theme-icon--moon{opacity:.5;right:3px}[data-theme=dark] .app-header__theme-icon--moon{opacity:0}.app-header__hamburger{width:var(--touch-min);height:var(--touch-min);margin-right:calc(-1 * var(--space-2));color:var(--color-paper);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:none}.app-header__hamburger:hover{background:#ffffff14}.app-header__mobile-backdrop,.app-header__mobile-nav{display:none}.app-main{flex:1;position:relative;overflow-y:auto}.auth-loading{background:var(--color-paper);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.auth-loading__spinner{border:2.5px solid var(--color-chrome);border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}.beta-notice{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-primary), transparent 92%);border-bottom:1px solid color-mix(in srgb, var(--color-primary), transparent 78%);color:var(--color-ink);flex-shrink:0;font-size:13px;display:flex}.beta-notice__badge{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.beta-notice__text{flex:1;min-width:0;margin:0;line-height:1.4}.beta-notice__text a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.beta-notice__dismiss{padding:var(--space-1) var(--space-3);min-height:var(--touch-min);border:1px solid color-mix(in srgb, var(--color-primary), transparent 60%);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;flex-shrink:0;font-family:inherit;font-size:13px;font-weight:600}.beta-notice__dismiss:hover{background:color-mix(in srgb, var(--color-primary), transparent 85%)}@media (width<=600px){.beta-notice{flex-wrap:wrap;align-items:flex-start}.beta-notice__dismiss{flex-basis:100%}}@media (width<=768px){.app-header__name{max-width:100px}.app-header__left{gap:var(--space-3)}.app-header__nav{gap:var(--space-1)}}@media (width<=640px){.app-header{height:calc(48px + var(--safe-top));padding:0 var(--space-3);padding-top:var(--safe-top)}.app-header__left{gap:var(--space-2)}.app-header__nav--desktop,.app-header__logout--desktop,.app-header__name{display:none}.app-header__user{margin-right:0}.app-header__hamburger{display:flex}.app-header__mobile-backdrop{inset:0;top:calc(48px + var(--safe-top));z-index:99;animation:mobileBackdropIn .2s var(--ease-out);background:#0d1f1a66;display:block;position:fixed}.app-header__mobile-nav{top:calc(48px + var(--safe-top));z-index:100;background:var(--brand-plate);border-bottom:2px solid var(--color-primary);padding:var(--space-2) var(--space-3);padding-bottom:calc(var(--space-3) + var(--safe-bottom));animation:mobileNavSlide .25s var(--ease-out);flex-direction:column;display:flex;position:fixed;left:0;right:0;box-shadow:0 12px 32px #00000040}.app-header__mobile-link{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-display);color:#f2f7f5bf;border-radius:var(--radius-md);cursor:pointer;text-align:left;min-height:var(--touch-min);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;font-size:14px;font-weight:600;display:flex}.app-header__mobile-link:hover{color:#f2f7f5;background:#ffffff0f}.app-header__mobile-link svg{opacity:.6;flex-shrink:0}.app-header__mobile-link--danger{color:#fca5a5}.app-header__mobile-link--danger:hover{color:#ffd0cc;background:#c81e1e2e}.app-header__mobile-divider{height:1px;margin:var(--space-1) var(--space-4);background:#ffffff14}@keyframes mobileBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes mobileNavSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}.auth-page{min-height:100%;padding:var(--space-5);background:var(--brand-plate);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-page__grid{background-image:linear-gradient(#caf9e90f 1px,#0000 1px),linear-gradient(90deg,#caf9e90f 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 70%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 20%,#0000 70%)}.auth-page__tagline{bottom:var(--space-5);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#caf9e947;-webkit-user-select:none;user-select:none;font-size:11px;position:absolute}.auth-page__tagline a{color:#caf9e9a6;-webkit-user-select:text;user-select:text}.auth-page__tagline a:hover,.auth-page__tagline a:focus-visible{color:#caf9e9d9;text-decoration:underline}.auth-card{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);width:100%;max-width:400px;padding:var(--space-7) var(--space-6) var(--space-6);z-index:1;animation:authCardIn .5s var(--ease-out) both;position:relative;box-shadow:0 0 0 1px #00000008,0 12px 40px #0000002e}.auth-card__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);color:var(--color-ink);text-align:center;flex-direction:column;display:flex}.auth-card__logo{margin-bottom:var(--space-2);justify-content:center;align-items:center;display:flex}.auth-card__title{font-family:var(--font-display);letter-spacing:-.03em;font-size:22px;font-weight:700;line-height:1.2}.auth-card__subtitle{color:var(--color-slate);font-size:13px;line-height:1.4}.auth-card__divider{align-items:center;gap:var(--space-3);margin:var(--space-5) 0;color:var(--color-slate);text-transform:uppercase;letter-spacing:.08em;font-size:11px;display:flex}.auth-card__divider:before,.auth-card__divider:after{content:"";background:var(--color-chrome);flex:1;height:1px}.auth-card__footer{text-align:center;margin-top:var(--space-5);color:var(--color-slate);font-size:13px}.auth-card__footer a{color:var(--color-primary);transition:color var(--duration-fast) var(--ease-out);font-weight:600}.auth-card__footer a:hover{color:var(--color-primary-hover)}@keyframes authCardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-form__error{align-items:flex-start;gap:var(--space-2);color:var(--color-danger);border-radius:var(--radius-md);padding:var(--space-3);background:#c81e1e0d;border:1px solid #c81e1e1f;font-size:13px;line-height:1.4;display:flex}.auth-form__error svg{flex-shrink:0;margin-top:1px}.auth-form__submit{height:42px;padding:0 var(--space-5);margin-top:var(--space-1);font-family:var(--font-display);color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:none;font-size:14px;font-weight:600;display:flex}.auth-form__submit:hover:not(:disabled){background:#2a2e36}.auth-form__submit:active:not(:disabled){transform:scale(.98)}.auth-form__submit:disabled{opacity:.55;cursor:not-allowed}.auth-form__forgot{text-align:center;margin-top:calc(-1 * var(--space-1));font-size:13px}.auth-form__forgot a{color:var(--color-slate);transition:color var(--duration-fast) var(--ease-out)}.auth-form__forgot a:hover{color:var(--color-primary)}.auth-form__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.auth-field{gap:var(--space-1);flex-direction:column;display:flex}.auth-field__label{color:var(--color-slate);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.auth-field__optional{text-transform:none;letter-spacing:normal;color:var(--color-slate);opacity:.7;font-weight:400}.auth-field__input{height:42px;padding:0 var(--space-3);color:var(--color-ink);background:var(--color-surface);border:1.5px solid var(--color-chrome);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);outline:none;font-size:14px}.auth-field__input::placeholder{color:var(--color-slate);opacity:.5}.auth-field__input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px #a5278c1a}.auth-field__input--has-action{width:100%;padding-right:40px}.auth-field__input--error{border-color:var(--color-danger,#ef4444)}.auth-field__error{color:var(--color-danger,#ef4444);margin-top:2px;font-size:12px}.auth-field__input-wrap{display:flex;position:relative}.auth-field__toggle{border-radius:var(--radius-sm);width:36px;color:var(--color-slate);cursor:pointer;opacity:.5;transition:opacity var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:2px;bottom:2px;right:2px}.auth-field__toggle:hover{opacity:1}.auth-field__strength{align-items:center;gap:var(--space-2);margin-top:2px;display:flex}.auth-field__strength-bar{flex:1;gap:3px;display:flex}.auth-field__strength-seg{background:var(--color-chrome);height:3px;transition:background var(--duration-fast) var(--ease-out);border-radius:2px;flex:1}.auth-field__strength-seg--active[data-score="1"]{background:var(--color-danger)}.auth-field__strength-seg--active[data-score="2"]{background:var(--color-warning)}.auth-field__strength-seg--active[data-score="3"]{background:var(--color-primary)}.auth-field__strength-seg--active[data-score="4"]{background:var(--color-success)}.auth-field__strength-label{letter-spacing:.02em;min-width:42px;font-size:11px;font-weight:600}.auth-field__strength-label[data-score="1"]{color:var(--color-danger)}.auth-field__strength-label[data-score="2"]{color:var(--color-warning)}.auth-field__strength-label[data-score="3"]{color:var(--color-primary)}.auth-field__strength-label[data-score="4"]{color:var(--color-success)}.auth-field__hint{margin-top:2px;font-size:12px}.auth-field__hint--error{color:var(--color-danger)}.auth-social{gap:var(--space-2);flex-direction:column;display:flex}.auth-social__btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);border:1.5px solid var(--color-chrome);height:42px;color:var(--color-ink);background:var(--color-surface);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);font-size:13px;font-weight:500;display:flex}.auth-social__btn:hover{border-color:var(--color-slate);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.auth-social__btn svg{flex-shrink:0}.verify-icon{width:56px;height:56px;margin-bottom:var(--space-1);animation:verifyIconPop .45s var(--ease-out) .1s both;border-radius:50%;justify-content:center;align-items:center;display:flex}.verify-icon--success{background:color-mix(in srgb, var(--color-success), transparent 90%)}.verify-icon--error{background:color-mix(in srgb, var(--color-danger), transparent 90%)}@keyframes verifyIconPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.verify-loading{padding:var(--space-5) 0;justify-content:center;display:flex}.verify-loading .auth-form__spinner{border:2.5px solid var(--color-chrome);border-top-color:var(--color-primary);width:24px;height:24px}.verify-actions{margin-top:var(--space-4);justify-content:center;display:flex}.email-verification-banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-warning), transparent 88%);border-bottom:1px solid color-mix(in srgb, var(--color-warning), transparent 72%);color:var(--color-ink);flex-shrink:0;font-size:13px;display:flex}.email-verification-banner__content{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.email-verification-banner__icon{color:var(--color-warning);flex-shrink:0}.email-verification-banner__text{line-height:1.4}.email-verification-banner__link{color:var(--color-primary);font-weight:600;font-size:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.email-verification-banner__link:hover{color:var(--color-primary-hover)}.email-verification-banner__link:disabled{opacity:.6;cursor:not-allowed}.email-verification-banner__dismiss{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-slate);cursor:pointer;opacity:.6;transition:opacity var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.email-verification-banner__dismiss:hover{opacity:1}.email-verification-banner--assertive{background:color-mix(in srgb, var(--color-danger), transparent 90%);border-bottom-color:color-mix(in srgb, var(--color-danger), transparent 65%);padding-block:var(--space-3);align-items:flex-start}.email-verification-banner--assertive .email-verification-banner__icon{color:var(--color-danger);margin-top:2px}.email-verification-banner__headline{font-weight:600}.email-verification-banner__note,.email-verification-banner__error{margin-top:var(--space-1);display:block}.email-verification-banner__error{color:var(--color-danger);font-weight:600}.email-verification-banner__action{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);border:none;flex-shrink:0;font-family:inherit;font-size:13px;font-weight:600}.email-verification-banner__action:hover:not(:disabled){background:var(--color-primary-hover)}.email-verification-banner__action:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.email-verification-banner{flex-wrap:wrap;align-items:flex-start}.email-verification-banner__dismiss{order:1}.email-verification-banner__action{margin-top:var(--space-2);flex-basis:100%;order:2}}[data-theme=dark] .email-verification-banner{background:#fbbf2426;border-bottom-color:#fbbf2440}[data-theme=dark] .email-verification-banner__icon{color:#fbbf24}[data-theme=dark] .email-verification-banner__link{color:var(--color-primary-hover)}.oauth-callback{min-height:100%;padding:var(--space-5);background:var(--color-ink);justify-content:center;align-items:center;display:flex}.oauth-callback__card{align-items:center;gap:var(--space-3);padding:var(--space-6);flex-direction:column;display:flex}.oauth-callback__title{font-family:var(--font-display);color:var(--color-paper);font-size:18px;font-weight:700}.oauth-callback__error{color:var(--color-danger);font-size:14px}.oauth-callback__text{color:#f2f7f599;font-size:14px}.oauth-callback__link{color:var(--color-primary);margin-top:var(--space-2);font-size:13px;font-weight:600}.oauth-callback__link:hover{color:var(--color-primary-hover)}@media (width<=640px){.auth-page{padding:var(--space-4);padding-top:calc(var(--space-4) + var(--safe-top));padding-bottom:calc(var(--space-4) + var(--safe-bottom))}.auth-page__tagline{bottom:calc(var(--space-4) + var(--safe-bottom));font-size:10px}.auth-card{padding:var(--space-5) var(--space-4) var(--space-4);border-radius:var(--radius-md)}.auth-card__title{font-size:20px}.auth-field__input,.auth-form__submit,.auth-social__btn{height:var(--touch-min)}.auth-field__toggle{width:var(--touch-min)}}@media (width<=380px){.auth-card{padding:var(--space-4) var(--space-3) var(--space-3)}.auth-card__title{font-size:18px}}.profile-page{min-height:100%;padding:var(--space-7) var(--space-5);background:var(--color-paper);overflow-y:auto}.profile-page__container{max-width:620px;margin:0 auto}.profile-page__header{margin-bottom:var(--space-7)}.profile-page__heading{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-ink);font-size:24px;font-weight:700}.profile-page__subheading{color:var(--color-slate);margin-top:var(--space-1);font-size:14px}.profile-page__sections{gap:var(--space-5);flex-direction:column;display:flex}.profile-section{background:var(--color-surface);border:1px solid var(--color-chrome);border-radius:var(--radius-lg);padding:var(--space-6);animation:profileSectionIn .4s var(--ease-out) both}.profile-section:first-child{animation-delay:0s}.profile-section:nth-child(2){animation-delay:60ms}.profile-section:nth-child(3){animation-delay:.12s}.profile-section--danger{border-color:#c81e1e2e}.profile-section__header{margin-bottom:var(--space-5)}.profile-section__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:16px;font-weight:700}.profile-section__title--danger{color:var(--color-danger)}.profile-section__desc{color:var(--color-slate);margin-top:var(--space-1);font-size:13px;line-height:1.5}.profile-section__form{gap:var(--space-4);flex-direction:column;display:flex}.profile-section__actions{padding-top:var(--space-2);justify-content:flex-end;display:flex}@keyframes profileSectionIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.profile-avatar-row{align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-chrome);margin-bottom:var(--space-1);display:flex}.profile-avatar-row__info{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-avatar-row__email{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.profile-avatar-row__meta{color:var(--color-slate);align-items:center;gap:var(--space-2);font-size:12px;display:flex}.profile-avatar{background:var(--color-primary);color:#fff;width:52px;height:52px;font-family:var(--font-display);letter-spacing:.02em;box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .12);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex;overflow:hidden}.profile-avatar__img{object-fit:cover;width:100%;height:100%}.profile-badge{text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:3px;font-size:11px;font-weight:600;display:inline-flex}.profile-badge--verified{color:var(--color-success)}.profile-msg{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:13px;line-height:1.4}.profile-msg--error{color:var(--color-danger);background:#c81e1e0d;border:1px solid #c81e1e1f}.profile-msg--success{color:var(--color-success);background:#2b72300f;border:1px solid #2b723026}.profile-btn{font-family:var(--font-display);border-radius:var(--radius-md);padding:0 var(--space-4);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);height:36px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);font-size:13px;font-weight:600;display:inline-flex}.profile-btn:active:not(:disabled){transform:scale(.97)}.profile-btn:disabled{opacity:.5;cursor:not-allowed}.profile-btn--primary{color:var(--color-btn-primary-text);background:var(--color-btn-primary-bg);border:none}.profile-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-btn-primary-bg), var(--color-btn-primary-text) 12%)}.profile-btn--danger{color:#fff;background:var(--color-danger);border:none}.profile-btn--danger:hover:not(:disabled){background:#b91c1c}.profile-btn--ghost{color:var(--color-slate);border:1.5px solid var(--color-chrome);background:0 0}.profile-btn--ghost:hover:not(:disabled){border-color:var(--color-slate);color:var(--color-ink)}.profile-confirm-box{border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-4);background:#c81e1e08;border:1px solid #c81e1e1f;flex-direction:column;display:flex}.profile-confirm-box__text{color:var(--color-ink);font-size:13px;line-height:1.5}.profile-confirm-box__text strong{font-weight:600}.profile-confirm-box__actions{gap:var(--space-3);justify-content:flex-end;display:flex}@media (width<=768px){.profile-page{padding:var(--space-6) var(--space-4)}.profile-page__container{max-width:100%}}@media (width<=640px){.profile-page{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.profile-page__heading{font-size:20px}.profile-section{padding:var(--space-4)}.profile-section__actions{justify-content:stretch}.profile-section__actions .profile-btn{width:100%;min-height:var(--touch-min)}.profile-avatar-row{text-align:center;gap:var(--space-3);flex-direction:column}.profile-btn{min-height:var(--touch-min)}.profile-confirm-box__actions{flex-direction:column-reverse}.profile-confirm-box__actions .profile-btn{width:100%;min-height:var(--touch-min)}}.legal-page{background:var(--color-paper);height:100%;color:var(--color-ink);overflow-y:auto}.legal-page__bar{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-chrome);flex-wrap:wrap;display:flex}.legal-page__brand{align-items:center;gap:var(--space-2);font-family:var(--font-display);color:var(--color-ink);font-weight:700;text-decoration:none;display:inline-flex}.legal-page__nav{gap:var(--space-5);display:flex}.legal-page__nav a{padding:var(--space-2) 0;color:var(--color-slate);display:inline-block}.legal-page__nav a[aria-current=page]{color:var(--color-ink);text-underline-offset:4px;font-weight:600;text-decoration:underline}.legal-page__nav a:hover{color:var(--color-ink)}.legal-page__body{padding:var(--space-7) var(--space-5) calc(var(--space-7) * 2)}.legal-page__article{overflow-wrap:anywhere;max-width:68ch;margin:0 auto;font-size:16px;line-height:1.65}.legal-page__article h1{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:var(--space-4);font-size:28px;line-height:1.2}.legal-page__article h2{font-family:var(--font-display);letter-spacing:-.02em;margin:var(--space-6) 0 var(--space-3);font-size:20px}.legal-page__article p,.legal-page__article ul{margin-bottom:var(--space-4)}.legal-page__article ul{padding-left:1.25em;list-style:outside}.legal-page__article li{margin-bottom:var(--space-2)}.legal-page__article a{color:var(--color-primary)}.legal-consent{margin-top:var(--space-3);color:var(--color-slate);font-size:12px;line-height:1.5}.legal-consent a{color:var(--color-primary);text-decoration:underline}.auth-page__legal{gap:var(--space-4);margin-top:var(--space-3);margin-bottom:calc(var(--space-5) + 16px);font-size:12px;display:flex;position:relative}.auth-page__legal a{padding:var(--space-2) 0;color:#caf9e9a6;display:inline-block}.auth-page__legal a:hover,.auth-page__legal a:focus-visible{color:#caf9e9d9;text-decoration:underline}
