.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.landing{--ld-rule: var(--border);--ld-rule-strong: var(--text);position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-feature-settings:"tnum" 1,"lnum" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.006em}.num{font-variant-numeric:tabular-nums}.ld-graticule{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;stroke:var(--ld-rule);stroke-width:1;vector-effect:non-scaling-stroke;opacity:0;pointer-events:none;animation:ld-fade-grat 1.4s ease .1s forwards;mask-image:radial-gradient(130% 110% at 50% 42%,#000 35%,transparent 96%);-webkit-mask-image:radial-gradient(130% 110% at 50% 42%,#000 35%,transparent 96%)}.ld-graticule line{vector-effect:non-scaling-stroke}.ld-corner{position:absolute;z-index:5;font-size:10.5px;font-weight:500;letter-spacing:.12em;color:var(--text-dim);text-transform:uppercase;opacity:0;animation:ld-fade 1s ease .7s forwards}.ld-tl{top:20px;left:28px}.ld-tr{top:20px;right:28px}.ld-bl{bottom:20px;left:28px}.ld-br{bottom:34px;right:28px}.ld-scalebar{display:block}.ld-scalebar line{stroke:var(--text-dim);stroke-width:1}.ld-scalebar text{fill:var(--text-dim);stroke:none;font-size:8.5px;letter-spacing:.08em}.ld-main{position:relative;z-index:4;height:100%;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);box-sizing:border-box}.ld-hero{display:flex;flex-direction:column;padding:clamp(48px,8vh,96px) clamp(32px,5vw,72px) clamp(40px,6vh,72px);border-right:1px solid var(--ld-rule-strong);min-width:0}.ld-access{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,8vh,96px) clamp(32px,5vw,72px);min-width:0}.ld-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:clamp(28px,5vh,48px)}.ld-bar{width:34px;height:2px;background:var(--red);flex:none}.ld-kicker{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}.ld-title{margin:0;font-size:clamp(34px,5.2vw,62px);line-height:1.02;font-weight:700;letter-spacing:-.035em;max-width:15ch}.ld-title .ld-line{display:inline}.ld-title .ld-accent{font-style:normal;color:var(--red)}.ld-manifesto{margin:clamp(20px,3vh,28px) 0 0;max-width:48ch;font-size:clamp(14px,1.05vw,15px);line-height:1.55;color:var(--text-muted)}.ld-kpis{margin:clamp(28px,5vh,48px) 0 0;padding:0;margin-top:auto;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ld-rule)}.ld-kpis li{display:flex;flex-direction:column;padding:22px 18px 0 0;border-right:1px solid var(--ld-rule);min-width:0}.ld-kpis li:last-child{border-right:0;padding-right:0}.ld-kpis .v{font-size:clamp(20px,2vw,26px);font-weight:700;letter-spacing:-.03em;line-height:1.05;color:var(--text)}.ld-kpis .v .u{font-size:13px;font-weight:600;color:var(--red);margin-left:2px}.ld-kpis .v:not(.num) .u{display:block;margin-left:0;margin-top:1px}.ld-kpis .k{margin-top:9px;font-size:11px;line-height:1.35;letter-spacing:.01em;color:var(--text-muted)}@keyframes ld-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.reveal{opacity:0;animation:ld-rise .6s cubic-bezier(.2,.7,.2,1) forwards}.landing .login-shell{height:auto;background:transparent;display:block}.landing .login-card{width:min(380px,86vw);background:var(--surface);border:1px solid var(--ld-rule-strong);border-radius:0;box-shadow:none;padding:34px 32px 30px;display:flex;flex-direction:column;gap:16px}.landing .login-logo{font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.landing .login-subtitle{margin-top:-12px;font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-muted)}.landing .login-label{display:flex;flex-direction:column;gap:7px;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.landing .login-input{width:100%;border:0;border-bottom:1px solid var(--ld-rule);border-radius:0;background:transparent;padding:8px 0;font:inherit;font-size:14px;letter-spacing:0;color:var(--text);transition:border-color .18s ease}.landing .login-input::placeholder{color:var(--text-dim)}.landing .login-input:focus{outline:0;border-bottom-color:var(--text);box-shadow:none;background:transparent}.landing .login-btn{margin-top:4px;width:100%;border:1px solid var(--text);border-radius:0;background:var(--text);color:var(--bg);font:inherit;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:none;padding:13px 16px;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.landing .login-btn:hover:not(:disabled){background:var(--red);border-color:var(--red);color:#fff;transform:none;box-shadow:none}.landing .login-btn:disabled{opacity:.6;cursor:default}.landing .login-error{border:1px solid var(--red);border-left:3px solid var(--red);border-radius:0;background:var(--red-dim);color:var(--red);font-size:12.5px;padding:9px 11px}.landing .login-link{font-size:12px;letter-spacing:.02em;color:var(--text-muted)}.ld-legal{width:min(380px,86vw);box-sizing:border-box;margin:18px 0 0;font-size:10.5px;line-height:1.5;letter-spacing:.01em;color:var(--text-dim)}.ld-notice{width:min(380px,86vw);box-sizing:border-box;margin-bottom:14px;padding:9px 14px;border:1px solid var(--red);border-left:3px solid var(--red);border-radius:0;background:var(--red-dim);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}@keyframes ld-fade{to{opacity:1}}@keyframes ld-fade-grat{to{opacity:1}}@keyframes ld-fade-35{to{opacity:.35}}@keyframes ld-reveal{to{transform:translateY(0)}}@keyframes ld-rise-soft{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ld-drift{0%{transform:translate(-30px)}to{transform:translate(30px)}}@keyframes ld-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.landing *,.landing *:before,.landing *:after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important}.ld-drift-a,.ld-drift-b,.ld-dial-spin{animation:none!important}.ld-graticule,.ld-contours,.ld-corner,.reveal{opacity:1!important}.ld-grid{opacity:.35!important}.ld-line>span{transform:none!important}}.ld-contours{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;stroke:var(--text);stroke-width:.7;fill:none;opacity:0;animation:ld-fade-contours 2.4s ease .2s forwards}.ld-contours path{stroke-opacity:.07}.ld-contours path:nth-child(odd){stroke-opacity:.04}.ld-drift-a{animation:ld-drift 90s ease-in-out infinite alternate}.ld-drift-b{animation:ld-drift 110s ease-in-out infinite alternate-reverse}@keyframes ld-fade-contours{to{opacity:1}}.ld-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,var(--border-dim) 1px,transparent 1px),linear-gradient(to bottom,var(--border-dim) 1px,transparent 1px);background-size:130px 130px;opacity:0;animation:ld-fade-35 2s ease .1s forwards;mask-image:radial-gradient(110% 100% at 50% 40%,#000 30%,transparent 95%);-webkit-mask-image:radial-gradient(110% 100% at 50% 40%,#000 30%,transparent 95%)}.ld-grain{display:none}.ld-dial{position:absolute;width:min(620px,46vw);height:min(620px,46vw);top:50%;left:50%;translate:-50% -50%;stroke:var(--text);stroke-width:1.2;opacity:.1;pointer-events:none}.ld-dial-spin{transform-origin:320px 320px;animation:ld-spin 240s linear infinite}.ld-dial-n{fill:var(--text);stroke:none;font-size:20px}.ld-screen-center{position:relative;z-index:4;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;opacity:0;animation:ld-fade .7s ease .15s forwards}.ld-screen .ld-dial{position:relative;top:auto;left:auto;translate:none;width:190px;height:190px;opacity:.6;margin-bottom:6px;stroke-width:4}.ld-screen .ld-dial-n{font-size:34px}.ld-screen .ld-dial-spin{animation-duration:22s}.ld-screen-title{font-size:clamp(22px,3vw,30px);font-weight:700;letter-spacing:-.03em;color:var(--text)}.ld-screen-detail{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}.ld-screen-detail:after{content:"…";display:inline-block;width:1.4em;text-align:left;animation:ld-ellipsis 1.6s steps(4) infinite}.ld-screen-btn{margin-top:14px;padding:11px 26px;border:1px solid var(--text);border-radius:0;background:transparent;color:var(--text);font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.ld-screen-btn:hover{background:var(--red);border-color:var(--red);color:#fff}@keyframes ld-ellipsis{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -.1em 0 0)}}@media (max-width: 980px){.landing{overflow-y:auto}.ld-main{grid-template-columns:1fr;height:auto;min-height:100%}.ld-hero{border-right:0;border-bottom:1px solid var(--ld-rule-strong)}.ld-access{justify-content:flex-start}.ld-corner{display:none}}@media (max-width: 680px){.ld-hero,.ld-access{padding:40px 28px}.ld-kpis{grid-template-columns:1fr 1fr}.ld-kpis li{padding-right:18px;padding-bottom:18px;border-bottom:1px solid var(--ld-rule)}.ld-kpis li:nth-child(2){border-right:0}.ld-kpis li:nth-child(3),.ld-kpis li:nth-child(4){border-bottom:0}}.leaflet-control-minimap{border:rgba(255,255,255,1) solid;box-shadow:0 1px 5px #000000a6;border-radius:3px;background:#f8f8f9;transition:all .6s}.leaflet-control-minimap a{background-color:#fff;background-repeat:no-repeat;z-index:99999;transition:all .6s}.leaflet-control-minimap a.minimized-bottomright{-webkit-transform:rotate(180deg);transform:rotate(180deg);border-radius:0}.leaflet-control-minimap a.minimized-topleft{-webkit-transform:rotate(0deg);transform:rotate(0);border-radius:0}.leaflet-control-minimap a.minimized-bottomleft{-webkit-transform:rotate(270deg);transform:rotate(270deg);border-radius:0}.leaflet-control-minimap a.minimized-topright{-webkit-transform:rotate(90deg);transform:rotate(90deg);border-radius:0}.leaflet-control-minimap-toggle-display{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='18'%20width='18'%3e%3cdefs%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M-2.6-2.828L-5.428%200-2.6%202.828.228%200-2.6-2.828z'%20fill-rule='evenodd'%20stroke='%23000'%20stroke-width='.4pt'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cg%20fill='none'%20stroke='%23000'%20stroke-width='.8'%20stroke-linecap='round'%3e%3cpath%20d='M4.566%204.75L-.652%200'/%3e%3cpath%20d='M1.544%204.75L-3.674%200'/%3e%3cpath%20d='M-1.566%204.75L-6.784%200'/%3e%3cpath%20d='M4.566-5.013L-.652-.263'/%3e%3cpath%20d='M1.544-5.013l-5.218%204.75'/%3e%3cpath%20d='M-1.566-5.013l-5.218%204.75'/%3e%3c/g%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M-5.6-5.657L-11.257%200-5.6%205.657.057%200-5.6-5.657z'%20fill-rule='evenodd'%20stroke='%23000'%20stroke-width='.8pt'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M4.616%200l-6.92%204v-8l6.92%204z'%20fill-rule='evenodd'%20stroke='%23000'%20stroke-width='.8pt'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M-10.69-4.437L1.328-.017l-12.018%204.42c1.92-2.61%201.91-6.18%200-8.84z'%20font-size='12'%20fill-rule='evenodd'%20stroke-width='.6875'%20stroke-linejoin='round'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M-4.616%200l6.92-4v8l-6.92-4z'%20fill-rule='evenodd'%20stroke='%23000'%20stroke-width='.8pt'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M10%200l4-4L0%200l14%204-4-4z'%20fill-rule='evenodd'%20stroke='%23000'%20stroke-width='.8pt'/%3e%3c/marker%3e%3cmarker%20orient='auto'%20overflow='visible'%3e%3cpath%20d='M10.69%204.437L-1.328.017l12.018-4.42c-1.92%202.61-1.91%206.18%200%208.84z'%20font-size='12'%20fill-rule='evenodd'%20stroke-width='.6875'%20stroke-linejoin='round'/%3e%3c/marker%3e%3c/defs%3e%3cpath%20d='M13.18%2013.146v-5.81l-5.81%205.81h5.81z'%20stroke='%23000'%20stroke-width='1.643'/%3e%3cpath%20d='M12.762%2012.727l-6.51-6.51'%20fill='none'%20stroke='%23000'%20stroke-width='2.482'%20stroke-linecap='round'/%3e%3c/svg%3e");background-size:cover;position:absolute;border-radius:3px 0 0}.leaflet-oldie .leaflet-control-minimap-toggle-display{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAH1JREFUOI3t0DEKAjEQheFP8ERWqfUCeg9rL+adbKxkYRFEY7ERhkUhCZb7wyuGYX5ewkIvK6z/ITpjxOHHPtWKrsh4fJEl3GpF29LoI9sHSS6pZjeTnTD0iOayjFevCI7hOKaJZHpObNIsih/b3WiDSzgaS+5lfrY0Wph4A4kFM89VzdVFAAAAAElFTkSuQmCC)}.leaflet-control-minimap-toggle-display-bottomright{bottom:0;right:0}.leaflet-control-minimap-toggle-display-topleft{top:0;left:0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.leaflet-control-minimap-toggle-display-bottomleft{bottom:0;left:0;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.leaflet-control-minimap-toggle-display-topright{top:0;right:0;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.leaflet-oldie .leaflet-control-minimap{border:1px solid #999}.leaflet-oldie .leaflet-control-minimap a{background-color:#fff}.leaflet-oldie .leaflet-control-minimap a.minimized{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2)}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/schibsted-grotesk-latin-ext-wght-normal-hsMS0n0O.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/schibsted-grotesk-latin-wght-normal-Bb8VGrTG.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-ui: "Schibsted Grotesk Variable", "Schibsted Grotesk", "Segoe UI", system-ui, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif;--font-mono: "IBM Plex Mono", "Cascadia Code", ui-monospace, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", monospace;--font-display: "Schibsted Grotesk Variable", "Schibsted Grotesk", "Segoe UI", system-ui, sans-serif;--ease: cubic-bezier(.32, .72, 0, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration: .22s;--duration-slow: .36s;--radius-xs: 3px;--radius-sm: 5px;--radius-md: 7px;--radius-lg: 10px;--radius-xl: 14px}[data-theme=light]{color-scheme:light;--bg: #FAFAF8;--surface: #FFFFFF;--surface-2: #F3F2EC;--surface-3: #E9E7DF;--border: #DAD8D0;--border-dim: #ECEAE3;--text: #16243A;--text-muted: #586473;--text-dim: #8A929D;--accent: #153E73;--accent-dim: rgba(21, 62, 115, .1);--accent-strong:#0E2C54;--accent-hover: #0E2C54;--gold: #9C7C4A;--gold-soft: rgba(156, 124, 74, .5);--green: #2E8B57;--green-dim: rgba(46, 139, 87, .14);--amber: #B45309;--amber-dim: rgba(180, 83, 9, .14);--red: #D5403A;--red-dim: rgba(213, 64, 58, .1);--orange: #C2410C;--map-bg: #ECEAE3;--popup-bg: #FFFFFF;--popup-border: #DAD8D0;--sidebar-bg: #FFFFFF;--glass-bg: rgba(250, 250, 248, .78);--glass-border: rgba(22, 36, 58, .1);--shadow-sm: 0 1px 0 rgba(22, 36, 58, .04);--shadow-md: 0 2px 10px rgba(22, 36, 58, .05), 0 1px 2px rgba(22, 36, 58, .04);--shadow-lg: 0 12px 36px rgba(22, 36, 58, .08), 0 3px 8px rgba(22, 36, 58, .05);--shadow-xl: 0 20px 56px rgba(22, 36, 58, .1), 0 6px 16px rgba(22, 36, 58, .06)}[data-theme=dark]{color-scheme:dark;--bg: #0E1726;--surface: #15233A;--surface-2: #1C2E49;--surface-3: #243A5B;--border: #2A3D58;--border-dim: #20314A;--text: #E7ECF3;--text-muted: #9DAAC0;--text-dim: #6B7C96;--accent: #6E9BD8;--accent-dim: rgba(110, 155, 216, .2);--accent-strong:#A9C4E8;--accent-hover: #87AEE0;--gold: #C9A05A;--gold-soft: rgba(201, 160, 90, .5);--green: #4FB07A;--green-dim: rgba(79, 176, 122, .18);--amber: #E0A23C;--amber-dim: rgba(224, 162, 60, .18);--red: #E5675F;--red-dim: rgba(229, 103, 95, .18);--orange: #E08A4C;--map-bg: #0E1726;--popup-bg: #15233A;--popup-border: #2A3D58;--sidebar-bg: #0E1726;--glass-bg: rgba(14, 23, 38, .8);--glass-border: rgba(231, 236, 243, .08);--shadow-sm: 0 1px 0 rgba(0, 0, 0, .3);--shadow-md: 0 2px 12px rgba(0, 0, 0, .42), 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .55), 0 3px 10px rgba(0, 0, 0, .35);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .65), 0 6px 18px rgba(0, 0, 0, .45)}[data-theme=contrast]{color-scheme:light;--bg: #FFFFFF;--surface: #FFFFFF;--surface-2: #F2F2F2;--surface-3: #E6E6E6;--border: #1A1A1A;--border-dim: #4D4D4D;--text: #000000;--text-muted: #1F1F1F;--text-dim: #3D3D3D;--accent: #0A2E5C;--accent-dim: rgba(10, 46, 92, .16);--accent-strong:#06204A;--accent-hover: #06204A;--gold: #6B4E16;--gold-soft: rgba(107, 78, 22, .5);--green: #1A6B33;--green-dim: rgba(26, 107, 51, .16);--amber: #8A4B00;--amber-dim: rgba(138, 75, 0, .16);--red: #B3160F;--red-dim: rgba(179, 22, 15, .12);--orange: #9A3400;--map-bg: #E6E6E6;--popup-bg: #FFFFFF;--popup-border: #1A1A1A;--sidebar-bg: #FFFFFF;--glass-bg: rgba(255, 255, 255, .94);--glass-border: #1A1A1A;--shadow-sm: 0 0 0 1px #1A1A1A;--shadow-md: 0 0 0 1px #1A1A1A;--shadow-lg: 0 8px 24px rgba(0, 0, 0, .25), 0 0 0 1px #1A1A1A;--shadow-xl: 0 16px 40px rgba(0, 0, 0, .3), 0 0 0 1px #1A1A1A}*,*:before,*:after{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);font-size:14px;line-height:1.47;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}:focus{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}.skeleton{position:relative;overflow:hidden;background:var(--surface-2);border-radius:var(--radius-sm);color:transparent;-webkit-user-select:none;user-select:none}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.06) 40%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.06) 60%,transparent 100%);animation:skeleton-shimmer 1.4s linear infinite}[data-theme=light] .skeleton:after{background:linear-gradient(90deg,transparent 0,rgba(0,0,0,.04) 40%,rgba(0,0,0,.08) 50%,rgba(0,0,0,.04) 60%,transparent 100%)}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-text{height:12px;margin-bottom:6px}.skeleton-title{height:18px;width:60%}.skeleton-block{height:100px}.viewer-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.topbar{position:relative;height:52px;flex-shrink:0;display:flex;align-items:center;gap:0;padding:0 12px 0 18px;background:var(--glass-bg);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border-dim);z-index:2000;overflow:hidden}.topbar-brand{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-right:16px;border-right:1px solid var(--border-dim);margin-right:8px}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft) 16%,var(--gold-soft) 84%,transparent);pointer-events:none}.topbar-title{font-family:var(--font-display);font-size:1.04rem;font-weight:400;color:var(--text);white-space:nowrap;line-height:1.15;letter-spacing:0}.topbar-subtitle{font-size:.6rem;color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.1em;font-weight:500}.topbar-nav{display:flex;align-items:stretch;height:100%;gap:1px;flex-shrink:0}.topbar-tab{display:flex;align-items:center;gap:5px;padding:0 14px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.78rem;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease);position:relative;letter-spacing:-.005em}.topbar-tab:hover{color:var(--text);background:var(--surface-2)}.topbar-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.topbar-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:.62rem;font-weight:700;background:var(--red);color:#fff}.topbar-tab-badge--green{background:var(--green)}.topbar-alerts{display:flex;align-items:center;gap:6px;flex:1;padding:0 8px;overflow:hidden}.topbar-alert{display:flex;align-items:center;gap:5px;padding:3px 8px 3px 10px;border-radius:20px;font-size:.72rem;font-weight:700;white-space:nowrap;animation:topbar-alert-pulse .7s ease-in-out infinite;flex-shrink:0}.topbar-alert--sos{background:var(--red-dim);color:var(--red)}.topbar-alert--fall{background:var(--amber-dim);color:var(--amber)}@keyframes topbar-alert-pulse{0%,to{opacity:1}50%{opacity:.65}}.topbar-alert button{background:transparent;border:none;color:inherit;cursor:pointer;border-radius:50%;width:16px;height:16px;font-size:9px;display:inline-flex;align-items:center;justify-content:center;margin-left:2px;opacity:.65;transition:opacity var(--duration-fast) var(--ease)}.topbar-alert button:hover{opacity:1}.topbar-status{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:0 6px}.topbar-stat{display:inline-flex;align-items:baseline;gap:5px;padding:5px 10px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:99px;color:var(--text-muted);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);white-space:nowrap;letter-spacing:-.005em}.topbar-stat:hover{background:var(--surface-3);color:var(--text)}.topbar-stat-icon{font-size:11px}.topbar-stat-num{font-size:13px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.topbar-stat-lbl{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.topbar-stat-dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim);display:inline-block}.topbar-stat--alert{background:var(--amber-dim);border-color:transparent;color:var(--amber)}.topbar-stat--alert:hover{background:var(--amber-dim);filter:brightness(.96)}.topbar-stat--alert .topbar-stat-num,.topbar-stat--alert .topbar-stat-lbl{color:var(--amber)}.topbar-stat--alert .topbar-stat-dot{background:var(--amber);box-shadow:0 0 0 2px #ff950033;animation:stat-pulse 2.4s ease-in-out infinite}.topbar-stat--breach{background:var(--red-dim);border-color:transparent;color:var(--red);animation:stat-pulse 1.6s ease-in-out infinite}.topbar-stat--breach .topbar-stat-num,.topbar-stat--breach .topbar-stat-lbl{color:var(--red)}.topbar-stat--ok .topbar-stat-num,.topbar-stat--ok .topbar-stat-lbl{color:var(--green)}.topbar-stat--ok .topbar-stat-icon{filter:none}@keyframes stat-pulse{0%,to{opacity:1}50%{opacity:.65}}.topbar-actions{display:flex;align-items:center;gap:0;flex-shrink:0;padding-left:0;margin-left:6px;border-left:1px solid var(--border-dim)}.topbar-actions-group{display:flex;align-items:center;gap:2px;padding:0 8px;border-left:1px solid var(--border-dim)}.topbar-actions-group:first-child{border-left:none}.topbar-action-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);font-size:15px;cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);flex-shrink:0}.topbar-action-btn:hover{background:var(--surface-2);border-color:var(--border);color:var(--text)}.topbar-action-btn:active{transform:scale(.92)}.topbar-action-btn--active{background:var(--accent-dim);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-dim)}.topbar-tab:focus-visible,.topbar-stat:focus-visible,.topbar-action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.topbar-stat{transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.topbar-badge{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:.58rem;font-weight:700;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;pointer-events:none;box-shadow:0 0 0 2px var(--bg)}.topbar-user{display:flex;align-items:center;gap:8px;padding:0 4px 0 12px;margin-left:4px;border-left:1px solid var(--border-dim)}.topbar-user-name{font-size:.72rem;font-weight:500;color:var(--text-muted);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace{display:flex;flex:1;overflow:hidden;position:relative}.panel-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 6px;flex-shrink:0}.panel-section-title{font-size:.7rem;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.07em}.panel-section-badge{font-size:.65rem;font-weight:700;padding:2px 7px;border-radius:10px;color:#fff}.sidebar{display:flex;flex-direction:column;background:var(--sidebar-bg);border-right:1px solid var(--border);overflow:hidden;flex-shrink:0}.sidebar--collapsed{border-right:none}.sidebar-resizer{width:6px;flex-shrink:0;cursor:col-resize;background:transparent;border-right:1px solid transparent;transition:background .12s,border-color .12s}.sidebar-resizer:hover,.sidebar-resizer:active{background:var(--accent-dim);border-right-color:var(--accent)}.sidebar-collapse-row{display:flex;justify-content:flex-end;padding:6px 10px 0}.sidebar-collapse-btn,.sidebar-expand-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);font-size:11px;cursor:pointer;transition:all .13s}.sidebar-collapse-btn:hover,.sidebar-expand-btn:hover{background:var(--surface-3);color:var(--text)}.sidebar-expand-btn{position:absolute;left:10px;top:10px;z-index:55;box-shadow:var(--shadow-sm)}.layer-item label{min-width:0}.layer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.layer-item label>input,.layer-item label .color-dot{flex-shrink:0}.sidebar-header{padding:18px 18px 16px;border-bottom:1px solid var(--border-dim);flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:var(--surface)}.sidebar-eyebrow{display:flex;align-items:center;gap:6px;font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.sidebar-live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0;animation:live-pulse 2s ease-in-out infinite;box-shadow:0 0 0 2px var(--green-dim)}.sidebar-live-dot.dot-error{background:var(--red);box-shadow:0 0 0 2px var(--red-dim);animation:none}.sidebar-live-dot.dot-connecting{background:var(--amber);box-shadow:0 0 0 2px var(--amber-dim);animation:live-pulse 1s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.35}}.sidebar-title{font-size:1.05rem;font-weight:600;color:var(--text);line-height:1.25;letter-spacing:-.018em}.sidebar-subtitle{font-size:.72rem;color:var(--text-muted);margin-top:2px}.theme-toggle{flex-shrink:0;width:32px;height:32px;border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);font-size:.9rem;cursor:pointer;display:grid;place-items:center;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease);margin-top:2px}.theme-toggle:hover{background:var(--surface-3);color:var(--text)}.theme-toggle:active{transform:scale(.95)}.sidebar-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 0 12px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-body::-webkit-scrollbar{width:4px}.sidebar-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-footer{flex-shrink:0;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface)}.sidebar-sync-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;letter-spacing:-.005em;font-family:inherit;cursor:pointer;transition:filter var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.sidebar-sync-btn:hover{filter:brightness(1.08)}.sidebar-sync-btn:active{transform:scale(.985);filter:brightness(.96)}.status-bar{margin:8px 12px;padding:9px 14px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-md);font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:8px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.preview-badge{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;background:var(--amber-dim);color:var(--amber);padding:2px 8px;border-radius:99px;margin-top:4px}.acc-panel{margin:4px 12px}.acc-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--surface);border:1px solid var(--border-dim);border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:inherit;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);gap:8px}.acc-trigger:hover{background:var(--surface-2);border-color:var(--border)}.acc-trigger[aria-expanded=true]{border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom-color:transparent;background:var(--surface-2)}.acc-trigger-left{display:flex;align-items:center;gap:9px;flex:1;min-width:0}.acc-icon{font-size:1rem;flex-shrink:0;line-height:1}.acc-label{font-size:.82rem;font-weight:500;letter-spacing:-.005em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acc-trigger[aria-expanded=true] .acc-label{font-weight:600}.acc-badge{font-size:.66rem;font-weight:600;font-variant-numeric:tabular-nums;padding:2px 8px;border-radius:99px;background:var(--surface-3);color:var(--text-muted);flex-shrink:0;letter-spacing:-.005em;min-width:22px;text-align:center}.acc-badge.green{background:var(--green-dim);color:var(--green)}.acc-badge.amber{background:var(--amber-dim);color:var(--amber)}.acc-badge.red{background:var(--red-dim);color:var(--red)}.acc-badge.blue{background:var(--accent-dim);color:var(--accent)}.acc-chevron{font-size:.55rem;color:var(--text-dim);transition:transform var(--duration-fast) var(--ease);flex-shrink:0;margin-left:8px}.acc-trigger[aria-expanded=true] .acc-chevron{transform:rotate(180deg);color:var(--text-muted)}.acc-body{background:var(--surface-2);border:1px solid var(--border-dim);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);padding:12px 14px 14px;animation:acc-open var(--duration-fast) var(--ease-out)}@keyframes acc-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.action-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:var(--surface);border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--text);font-size:.78rem;font-family:inherit;font-weight:500;letter-spacing:-.005em;cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);margin-bottom:5px}.action-btn:hover{background:var(--accent-dim);border-color:transparent;color:var(--accent)}.action-btn:last-child{margin-bottom:0}.reload-btn{padding:3px 8px;font-size:.7rem;font-family:inherit;font-weight:600;background:transparent;border:1px solid var(--border-dim);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .13s}.reload-btn:hover{border-color:var(--accent);color:var(--accent)}.layer-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:1px}.layer-item{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px;border-radius:7px;transition:background .1s}.layer-item:hover{background:var(--surface-2)}.layer-item label{display:flex;align-items:center;gap:7px;cursor:pointer;flex:1;min-width:0}.layer-item input[type=checkbox]{width:13px;height:13px;accent-color:var(--accent);flex-shrink:0;cursor:pointer}.color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.layer-name{font-size:.8rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-count{font-size:.68rem;color:var(--text-dim);flex-shrink:0}.timeline-label{font-size:.75rem;font-weight:600;color:var(--accent);margin-bottom:8px}.timeline-nav{display:flex;gap:5px;margin-bottom:8px}.timeline-btn{flex:1;padding:5px 6px;font-size:.72rem;font-family:inherit;font-weight:500;background:var(--surface);border:1px solid var(--border-dim);border-radius:7px;color:var(--text-muted);cursor:pointer;transition:all .13s}.timeline-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.timeline-btn:disabled{opacity:.3;cursor:not-allowed}.timeline-slider{width:100%;accent-color:var(--accent);cursor:pointer}.timeline-range-labels{display:flex;justify-content:space-between;margin-top:5px;font-size:.67rem;color:var(--text-dim)}.timeline-subheader{display:flex;justify-content:space-between;align-items:center;margin:9px 0 5px;font-size:.75rem;color:var(--text-muted);font-weight:500}.support-copy{font-size:.74rem;color:var(--text-muted);line-height:1.5;margin-top:4px}.empty-state{font-size:.76rem;color:var(--text-dim);font-style:italic;padding:4px 0}.map-panel{position:relative;background:var(--map-bg);flex:1;min-width:0;min-height:0;z-index:0}.map{width:100%;height:100%}.map-overlay-stack{position:absolute;top:14px;right:14px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:none}.layers-toggle{display:flex;align-items:center;gap:7px;padding:8px 16px;background:var(--glass-bg);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--glass-border);border-radius:99px;color:var(--text);font-size:.78rem;font-weight:500;font-family:inherit;letter-spacing:-.005em;cursor:pointer;pointer-events:auto;box-shadow:var(--shadow-md);transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.layers-toggle:hover{color:var(--accent)}.layers-toggle:active{transform:scale(.97)}.layers-overlay{width:280px;max-height:min(70vh,600px);overflow-y:auto;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.layers-overlay::-webkit-scrollbar{width:4px}.layers-overlay::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.layers-overlay__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 9px;border-bottom:1px solid var(--border-dim)}.layers-overlay__title{font-size:.82rem;font-weight:700;color:var(--text)}.layers-overlay__close{width:22px;height:22px;background:var(--surface-2);border:none;border-radius:50%;color:var(--text-muted);font-size:.72rem;cursor:pointer;display:grid;place-items:center;transition:all .13s}.layers-overlay__close:hover{background:var(--red-dim);color:var(--red)}.layers-overlay__header{justify-content:flex-start;gap:6px}.layers-overlay__close{margin-left:auto}.layers-overlay__collapse{width:22px;height:22px;background:var(--surface-2);border:none;border-radius:6px;color:var(--text-muted);font-size:.7rem;cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:all .13s}.layers-overlay__collapse:hover{background:var(--surface-3);color:var(--text)}.layers-overlay--collapsed{width:auto;max-height:none;overflow:visible}.overlay-layer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.overlay-layer-list li label{min-width:0}.overlay-layer-list li label>input,.overlay-layer-list li label .color-dot{flex-shrink:0}.layers-overlay__search{display:block;width:calc(100% - 20px);margin:8px 10px 4px;padding:6px 10px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:7px;color:var(--text);font-size:.78rem;font-family:inherit;outline:none;transition:border-color .14s}.layers-overlay__search:focus{border-color:var(--accent)}.layers-overlay__search::placeholder{color:var(--text-dim)}.layers-overlay__group{padding:7px 10px 9px;border-bottom:1px solid var(--border-dim)}.layers-overlay__group:last-child{border-bottom:none}.layers-overlay__group-title{font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-dim);margin-bottom:5px}.overlay-layer-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:1px}.overlay-layer-list li label{display:flex;align-items:center;gap:7px;padding:4px 5px;border-radius:6px;cursor:pointer;font-size:.78rem;color:var(--text);transition:background .1s}.overlay-layer-list li label:hover{background:#80808012}.overlay-layer-list input[type=checkbox]{accent-color:var(--accent);flex-shrink:0}.emoji-marker{background:transparent!important;border:none!important;cursor:pointer!important}.emoji-marker__inner{cursor:pointer}.leaflet-interactive{cursor:pointer!important}.emoji-marker__inner{border-radius:50%;display:grid;place-items:center;transition:transform .14s}.emoji-marker__inner:hover{transform:scale(1.18)}.emoji-marker__inner--normal{box-shadow:0 2px 8px #00000059,0 0 0 1.5px #ffffff26 inset}.emoji-marker__inner--large{box-shadow:0 3px 12px #0006,0 0 0 1.5px #ffffff26 inset}.emoji-marker__inner--xl{box-shadow:0 4px 16px #00000073,0 0 0 1.5px #ffffff26 inset;animation:xl-pulse 2.4s ease-in-out infinite}@keyframes xl-pulse{0%,to{box-shadow:0 4px 16px #00000073,0 0 0 1.5px #ffffff26 inset}50%{box-shadow:0 4px 22px #f8514973,0 0 0 1.5px #ffffff26 inset}}.leaflet-popup-pane{z-index:9999!important}.leaflet-tooltip-pane{z-index:9998!important}.leaflet-layer.deck,.leaflet-layer.deck canvas{pointer-events:none!important}.leaflet-popup-content-wrapper{background:var(--popup-bg)!important;border:1px solid var(--border-dim)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;color:var(--text)!important;padding:0!important;overflow:hidden}.leaflet-popup-content{margin:0!important;width:auto!important;min-width:210px;max-width:280px}.leaflet-popup-tip-container{display:none!important}.leaflet-popup-close-button{color:var(--text-muted)!important;font-size:16px!important;top:9px!important;right:10px!important;line-height:1!important;padding:0!important;width:auto!important;height:auto!important;background:none!important;z-index:10}.leaflet-popup-close-button:hover{color:var(--red)!important;background:none!important}@media (max-width: 768px){.leaflet-popup{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;margin:0!important;transform:none!important;width:100%!important;max-width:100%!important}.leaflet-popup-content-wrapper{border-radius:16px 16px 0 0!important;max-height:60vh;overflow-y:auto;box-shadow:0 -6px 20px #0003!important}.leaflet-popup-content{margin:0!important;width:100%!important}.leaflet-popup-tip{display:none!important}.leaflet-popup-close-button{top:6px!important;right:10px!important;font-size:28px!important}}.popup-card{padding:14px 16px 15px}.popup-card--mine{border-left:3px solid var(--accent, #388bfd);background:#388bfd0a}.popup-mine-badge{display:inline-block;padding:2px 8px;margin-bottom:6px;font-size:11px;font-weight:700;color:var(--accent, #388bfd);background:#388bfd1f;border:1px solid rgba(56,139,253,.3);border-radius:99px}.popup-layer-tag{display:inline-flex;align-items:center;font-size:.63rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);padding:2px 7px;border-radius:99px;margin-bottom:7px}.popup-title{font-size:.9rem;font-weight:700;color:var(--text);margin-bottom:3px;line-height:1.3;padding-right:18px}.popup-type{font-size:.75rem;color:var(--text-muted);margin-bottom:8px}.popup-period{display:inline-block;font-size:.72rem;color:var(--amber);background:var(--amber-dim);padding:2px 7px;border-radius:99px;margin-bottom:8px}.popup-divider{border:none;border-top:1px solid var(--border-dim);margin:8px 0}.popup-table{width:100%;border-collapse:collapse}.popup-table tr+tr td,.popup-table tr+tr th{border-top:1px solid var(--border-dim)}.popup-table th{text-align:left;padding:4px 8px 4px 0;font-size:.71rem;font-weight:500;color:var(--text-muted);white-space:nowrap;width:38%;vertical-align:top}.popup-table td{text-align:left;padding:4px 0;font-size:.76rem;color:var(--text);vertical-align:top;word-break:break-word}.popup-empty{font-size:.76rem;color:var(--text-dim);font-style:italic}.popup-source{margin-top:8px;font-size:.68rem;color:var(--text-dim)}.popup-action-btn{display:flex;align-items:center;gap:6px;margin-top:10px;padding:6px 10px;width:100%;background:var(--accent-dim);border:1px solid rgba(88,166,255,.18);border-radius:7px;color:var(--accent);font-size:.76rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .13s}.popup-action-btn:hover{background:#58a6ff33}[data-theme=light] .popup-action-btn{border-color:#0969da33}.leaflet-control-zoom a{background:var(--popup-bg)!important;color:var(--text)!important;border-color:var(--popup-border)!important}.leaflet-control-zoom a:hover{background:var(--accent-dim)!important;color:var(--accent)!important}.leaflet-control-attribution{background:#0000001f!important;color:var(--text-dim)!important;font-size:.65rem!important}[data-theme=light] .leaflet-control-attribution{background:#ffffffbf!important}.leaflet-control-attribution a{color:var(--text-muted)!important}.cmdp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6000;background:#080c148c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;animation:cmdp-fade .15s ease}@keyframes cmdp-fade{0%{opacity:0}to{opacity:1}}.cmdp-modal{width:min(680px,94vw);max-height:72vh;display:flex;flex-direction:column;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;animation:cmdp-rise .18s cubic-bezier(.16,1,.3,1)}@keyframes cmdp-rise{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.cmdp-input{flex-shrink:0;border:none;outline:none;padding:16px 18px;font-size:16px;font-family:inherit;background:var(--surface);color:var(--text);border-bottom:1px solid var(--border)}.cmdp-input::placeholder{color:var(--text-dim)}.cmdp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px;overflow-y:auto}.cmdp-app{display:flex;flex-direction:column;align-items:center;gap:5px;padding:14px 8px;border-radius:var(--radius-md);background:var(--surface-2);border:1px solid transparent;color:var(--text);cursor:pointer;text-align:center;transition:transform .1s,background .12s,border-color .12s}.cmdp-app:hover,.cmdp-app--sel{background:var(--accent-dim);border-color:var(--accent);transform:translateY(-1px)}.cmdp-app--on{box-shadow:inset 0 0 0 2px var(--green)}.cmdp-app-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:24px;background:var(--surface-2);border:1px solid var(--border);color:var(--accent)}.cmdp-app--sel .cmdp-app-icon,.cmdp-app:hover .cmdp-app-icon{color:var(--accent-strong)}.cmdp-app-label{font-size:12.5px;font-weight:600;line-height:1.2}.cmdp-app-cap{font-size:9.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.cmdp-empty{padding:28px;text-align:center;color:var(--text-muted);font-size:13px}.cmdp-hint{flex-shrink:0;padding:8px 14px;border-top:1px solid var(--border);font-size:10.5px;color:var(--text-dim);font-family:var(--font-mono);letter-spacing:.04em}@media (max-width: 560px){.cmdp-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.topbar{height:auto;min-height:52px;flex-wrap:wrap;padding:6px 8px;gap:4px}.topbar-brand{border-right:none;padding-right:0}.topbar-nav{order:10;width:100%;border-top:1px solid var(--border-dim)}.topbar-tab{padding:6px 10px;font-size:.72rem}.topbar-user-name{display:none}.workspace{flex-direction:column}.sidebar{max-height:50vh;border-right:none;border-bottom:1px solid var(--border)}.map-panel{height:50vh}}.login-shell{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg)}.login-card{background:var(--surface);border:1px solid var(--border-dim);border-radius:var(--radius-lg);padding:44px 40px 36px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--shadow-lg)}.login-logo{font-size:22px;font-weight:600;letter-spacing:-.022em;color:var(--text);text-align:center}.login-subtitle{font-size:13px;color:var(--text-muted);text-align:center;margin-top:-10px}.login-error{background:var(--red-dim);color:var(--red);border:1px solid var(--red);border-radius:6px;padding:8px 12px;font-size:13px}.login-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:var(--text-muted)}.login-input{background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);padding:11px 14px;font-size:14px;color:var(--text);outline:none;font-family:inherit;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.login-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-dim)}.login-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:12px;font-size:14px;font-weight:600;letter-spacing:-.005em;cursor:pointer;margin-top:6px;font-family:inherit;transition:filter var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.login-btn:hover:not(:disabled){filter:brightness(1.08)}.login-btn:active:not(:disabled){transform:scale(.985)}.login-btn:disabled{opacity:.55;cursor:default}.sidebar-header-actions{display:flex;align-items:center;gap:6px}.logout-btn{background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);width:32px;height:32px;cursor:pointer;font-size:16px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.logout-btn:hover{background:var(--red-dim);color:var(--red)}.sidebar-user-info{display:flex;align-items:center;gap:6px;margin-top:6px}.sidebar-user-name{font-size:.75rem;font-weight:500;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-role-badge{font-size:.58rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:99px;flex-shrink:0}.sidebar-role-badge--admin{background:var(--accent-dim);color:var(--accent)}.sidebar-role-badge--supervisor{background:var(--amber-dim);color:var(--amber)}.sidebar-role-badge--operator{background:var(--green-dim);color:var(--green)}.entity-heading{position:absolute;top:-10px;left:50%;transform-origin:center bottom;font-size:10px;line-height:1;translate:-50% 0;pointer-events:none;opacity:.85}.entity-marker--offline{opacity:.45;filter:grayscale(.7)}.entity-layer-group{margin-bottom:4px}.entity-layer-header{display:flex;align-items:center;justify-content:space-between;padding:2px 0}.entity-layer-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px}.entity-list{list-style:none;padding:2px 0 2px 20px;margin:0;display:flex;flex-direction:column;gap:2px}.entity-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);padding:2px 4px;border-radius:4px}.entity-item--offline{color:var(--text-muted);opacity:.6}.entity-emoji{font-size:14px}.entity-id{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-speed{font-size:11px;color:var(--text-muted);white-space:nowrap}.entity-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.entity-status-dot--active{background:var(--green)}.entity-status-dot--idle{background:var(--amber)}.entity-status-dot--offline{background:var(--text-dim)}.entity-status-badge{display:inline-block;font-size:11px;border-radius:4px;padding:1px 6px;font-weight:500}.entity-status-badge--active{background:var(--green-dim);color:var(--green)}.entity-status-badge--idle{background:var(--amber-dim);color:var(--amber)}.entity-status-badge--offline{background:var(--red-dim);color:var(--red)}.action-btn--primary{background:var(--accent);color:#fff;border:none;font-weight:600}.action-btn--primary:hover{filter:brightness(1.15)}.incident-pick-banner{display:flex;align-items:center;justify-content:space-between;background:var(--accent-dim);border:1px solid var(--accent);border-radius:6px;padding:6px 10px;font-size:12px;color:var(--accent);margin-bottom:6px}.incident-pick-banner button{background:none;border:none;cursor:pointer;color:var(--accent);font-size:14px;line-height:1;padding:0 2px}.incident-map-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer;margin-bottom:4px;padding:2px 0}.incident-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.incident-row{position:relative;border:1px solid var(--border-dim);border-left-width:3px;border-left-color:var(--text-dim);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface);transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.incident-row:hover,.incident-row--selected{border-color:var(--accent)}.incident-row[data-priority=critica]{border-left-color:var(--red)}.incident-row[data-priority=alta]{border-left-color:var(--amber)}.incident-row[data-priority=media]{border-left-color:var(--accent)}.incident-row[data-priority=baja]{border-left-color:var(--text-dim)}.incident-row--selected[data-priority=critica],.incident-row--selected[data-priority=alta],.incident-row--selected[data-priority=media],.incident-row--selected[data-priority=baja]{border-left-color:var(--accent)}.incident-row-header{width:100%;display:flex;align-items:center;gap:10px;padding:9px 12px 9px 11px;background:none;border:none;cursor:pointer;color:var(--text);text-align:left;font-size:13px;font-family:inherit}.incident-row-header:hover{background:var(--surface-2)}.incident-emoji{font-size:18px;flex-shrink:0;line-height:1}.incident-row-main{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.incident-row-line1{display:flex;align-items:center;gap:6px;min-width:0}.incident-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:13px;letter-spacing:-.005em;color:var(--text)}.incident-row-line2{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);flex-wrap:wrap}.incident-row-pri{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.incident-row-meta{color:var(--text-muted);font-variant-numeric:tabular-nums}.priority-badge{font-size:10px;font-weight:700;border-radius:99px;padding:2px 8px;white-space:nowrap;flex-shrink:0;letter-spacing:.02em}.status-badge{font-size:10px;font-weight:600;border-radius:99px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.status-badge--open{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border-dim)}.status-badge--assigned{background:var(--accent-dim);color:var(--accent);border:1px solid transparent}.status-badge--in_progress{background:var(--amber-dim);color:var(--amber);border:1px solid transparent}.status-badge--resolved{background:var(--green-dim);color:var(--green);border:1px solid transparent}.status-badge--closed{background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border-dim)}.rep-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:8500;display:flex;align-items:stretch;justify-content:center;animation:overlay-in var(--duration) var(--ease-out)}.rep-shell{width:100%;max-width:1280px;background:var(--bg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-xl)}.rep-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--surface);border-bottom:1px solid var(--border-dim);flex-shrink:0}.rep-header-left{display:flex;align-items:center;gap:14px}.rep-header-right{display:flex;align-items:center;gap:10px}.rep-header-icon{font-size:26px}.rep-header-title{font-size:18px;font-weight:600;letter-spacing:-.018em;color:var(--text)}.rep-header-sub{font-size:12px;color:var(--text-muted);margin-top:2px}.rep-link{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:12px;padding:0}.rep-link:hover{text-decoration:underline}.rep-period{background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);padding:6px 10px;font-size:13px;color:var(--text);font-family:inherit;outline:none}.rep-close{background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);padding:6px 14px;font-size:13px;font-weight:500;cursor:pointer;color:var(--text);font-family:inherit;transition:background var(--duration-fast) var(--ease)}.rep-close:hover{background:var(--surface-3)}.rep-error{margin:14px 24px;padding:10px 14px;background:var(--red-dim);color:var(--red);border-radius:var(--radius-sm);font-size:13px}.rep-loading{padding:60px;text-align:center;color:var(--text-muted)}.rep-content{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.rep-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.rep-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px 14px;display:flex;flex-direction:column;gap:4px;transition:border-color var(--duration-fast) var(--ease);min-height:110px}.rep-kpi:hover{border-color:var(--accent)}.rep-kpi-title{font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.rep-kpi-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:4px}.rep-kpi-value{font-size:38px;font-weight:600;color:var(--text);letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1;flex-shrink:0}.rep-kpi-trend{display:inline-flex;align-items:baseline;gap:2px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;padding:2px 7px;border-radius:99px;background:var(--surface-2);color:var(--text-muted)}.rep-kpi-trend--up{background:var(--green-dim);color:var(--green)}.rep-kpi-trend--down{background:var(--red-dim);color:var(--red)}.rep-kpi-trend--flat{background:var(--surface-2);color:var(--text-muted)}.rep-kpi-trend-num{font-size:10px}.rep-kpi-hint{font-size:11px;color:var(--text-dim);margin-top:auto;padding-top:4px}.rep-kpi--ok .rep-kpi-value{color:var(--green)}.rep-kpi--warn .rep-kpi-value{color:var(--amber)}.rep-kpi--alert .rep-kpi-value{color:var(--red)}.rep-spark{display:block;margin:4px 0 2px;width:100%;max-width:120px;height:28px}.rep-spark-line{stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.rep-spark-area{opacity:.12}.rep-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rep-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-width:0}.rep-card--wide{grid-column:1 / -1}.rep-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.rep-card-head h3{font-size:13px;font-weight:600;color:var(--text);margin:0;letter-spacing:-.005em}.rep-legend{display:flex;gap:12px;font-size:11px;color:var(--text-muted)}.rep-legend>span{display:inline-flex;align-items:center;gap:5px}.rep-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.rep-empty{font-size:12px;color:var(--text-dim);padding:14px 0;text-align:center}@media (max-width: 900px){.rep-grid{grid-template-columns:1fr}}.rep-chart{width:100%;height:auto;display:block}.rep-chart-grid{stroke:var(--border-dim);stroke-width:1}.rep-chart-axis{fill:var(--text-dim);font-size:10px;font-family:inherit}.rep-chart-line{stroke-width:2}.rep-chart-line--created{stroke:var(--accent)}.rep-chart-line--resolved{stroke:var(--green)}.rep-chart-dot--created{fill:var(--accent)}.rep-chart-dot--resolved{fill:var(--green)}.rep-bars{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.rep-bar-row{display:grid;grid-template-columns:minmax(110px,35%) 1fr 36px;align-items:center;gap:10px;font-size:12px}.rep-bar-label{display:flex;align-items:center;gap:6px;color:var(--text);overflow:hidden}.rep-bar-emoji{font-size:14px;flex-shrink:0}.rep-bar-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rep-bar-track{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden}.rep-bar-fill{height:100%;border-radius:99px;transition:width var(--duration) var(--ease)}.rep-bar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:500}.rep-donut-wrap{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.rep-donut{flex-shrink:0}.rep-donut-center-value{fill:var(--text);font-size:22px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.rep-donut-center-label{fill:var(--text-muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.rep-donut-legend{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;flex:1;min-width:130px}.rep-donut-legend li{display:grid;grid-template-columns:14px 1fr auto;align-items:center;gap:8px;font-size:12px}.rep-donut-dot{width:10px;height:10px;border-radius:3px}.rep-donut-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rep-donut-val{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:500}.rep-top{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.rep-top-row{display:grid;grid-template-columns:32px 1fr 40px 60px;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:13px}.rep-top-rank{font-size:11px;color:var(--text-muted);font-weight:600}.rep-top-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rep-top-count{text-align:right;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.rep-top-pct{text-align:right;font-size:11px;color:var(--green);font-variant-numeric:tabular-nums;font-weight:500}.rep-top-pct--low{color:var(--amber)}.cat-picker{position:relative;width:100%}.cat-picker-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:13px;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.cat-picker-trigger:hover{border-color:var(--border);background:var(--surface)}.cat-picker-trigger--filled{background:var(--surface);border-color:var(--border)}.cat-picker-emoji{font-size:16px;line-height:1;flex-shrink:0}.cat-picker-path{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text);letter-spacing:-.005em}.cat-picker-placeholder{flex:1;color:var(--text-dim);font-weight:400}.cat-picker-clear{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;font-size:10px;color:var(--text-muted);background:transparent;cursor:pointer;flex-shrink:0;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.cat-picker-clear:hover{background:var(--red-dim);color:var(--red)}.cat-picker-chev{font-size:10px;color:var(--text-dim);flex-shrink:0}.cat-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100}.cat-picker-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:9101;background:var(--popup-bg);border:1px solid var(--border-dim);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;max-height:380px;animation:modal-in var(--duration-fast) var(--ease-out)}.cat-picker-search{flex-shrink:0;margin:8px 8px 6px;padding:8px 12px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:13px;outline:none;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.cat-picker-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.cat-picker-section-head{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-dim);padding:8px 14px 4px;flex-shrink:0}.cat-picker-divider{height:1px;background:var(--border-dim);margin:6px 0;flex-shrink:0}.cat-picker-list{flex:1;overflow-y:auto;padding:2px 0 6px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.cat-picker-list::-webkit-scrollbar{width:6px}.cat-picker-list::-webkit-scrollbar-thumb{background:var(--border-dim);border-radius:3px}.cat-picker-item{width:100%;display:flex;align-items:center;gap:8px;padding:7px 12px;background:transparent;border:none;font-family:inherit;font-size:13px;color:var(--text);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease);letter-spacing:-.005em}.cat-picker-item--hover,.cat-picker-item:hover{background:var(--surface-2)}.cat-picker-item--selected{background:var(--accent-dim);color:var(--accent);font-weight:500}.cat-picker-item--selected:hover{background:var(--accent-dim);filter:brightness(.96)}.cat-picker-tree-mark{color:var(--text-dim);font-size:11px;flex-shrink:0}.cat-picker-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-picker-code{font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums;background:var(--surface-2);padding:1px 6px;border-radius:4px;flex-shrink:0}.cat-picker-sla{font-size:10px;font-weight:500;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.cat-picker-empty{padding:22px 14px;text-align:center;color:var(--text-dim);font-size:12px;font-style:italic}.cat-picker-foot{padding:8px 12px;border-top:1px solid var(--border-dim);background:var(--surface-2);font-size:10px;color:var(--text-dim);flex-shrink:0}.cat-picker-foot kbd{display:inline-block;padding:1px 5px;margin:0 2px;background:var(--surface);border:1px solid var(--border-dim);border-radius:3px;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Menlo,Consolas,monospace;font-size:9px;color:var(--text-muted)}.incident-cat-context{background:var(--accent-dim);border:1px solid transparent;border-radius:var(--radius-md);padding:12px 14px;margin-top:-2px}.incident-cat-context-row{display:flex;align-items:center;gap:12px}.incident-cat-context-emoji{font-size:22px;line-height:1;flex-shrink:0}.incident-cat-context-body{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.incident-cat-context-path{font-size:13px;font-weight:600;color:var(--accent);letter-spacing:-.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.incident-cat-context-sla{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}.incident-cat-context-sla strong{color:var(--text);font-weight:600}.incident-cat-context-sla .dot{color:var(--text-dim)}.incident-cat-context-sla--nosla{color:var(--text-dim);font-style:italic}.incident-cat-context-pri{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:99px;flex-shrink:0}.incident-cat-context-pri[data-priority=critica]{background:var(--red-dim);color:var(--red)}.incident-cat-context-pri[data-priority=alta]{background:var(--amber-dim);color:var(--amber)}.incident-cat-context-pri[data-priority=media]{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent)}.incident-cat-context-pri[data-priority=baja]{background:var(--surface-2);color:var(--text-muted)}.sla-badge{font-size:10px;font-weight:600;border-radius:99px;padding:2px 8px;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.sla-badge--warn{background:var(--amber-dim);color:var(--amber)}.sla-badge--breach{background:var(--red-dim);color:var(--red);animation:sla-pulse 2s ease-in-out infinite}@keyframes sla-pulse{0%,to{opacity:1}50%{opacity:.6}}.incident-detail{padding:6px 8px 8px;border-top:1px solid var(--border-dim);background:var(--surface-2)}.incident-meta{font-size:11px;color:var(--text-muted);margin:0 0 4px}.incident-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.assign-select select{font-size:11px;padding:3px 6px;border-radius:4px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.inc-btn{font-size:11px;font-weight:600;padding:3px 10px;border-radius:5px;border:1px solid transparent;cursor:pointer;transition:filter .15s}.inc-btn:hover{filter:brightness(1.1)}.inc-btn--primary{background:var(--accent);color:#fff}.inc-btn--blue{background:#1d4ed820;color:#3b82f6;border-color:#3b82f660}.inc-btn--green{background:var(--green-dim);color:var(--green);border-color:var(--green)}.inc-btn--amber{background:var(--amber-dim);color:var(--amber);border-color:var(--amber)}.inc-btn--gray{background:var(--surface);color:var(--text-muted);border-color:var(--border)}.inc-btn--red{background:var(--red-dim);color:var(--red);border-color:var(--red)}.delete-confirm{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--red-dim);border:1px solid var(--red);border-radius:6px;font-size:12px;color:var(--red);margin-top:4px}.delete-confirm span{flex:1}.delete-confirm button{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;cursor:pointer;border:1px solid}.delete-confirm .delete-confirm__yes{background:var(--red);color:#fff;border-color:var(--red)}.delete-confirm .delete-confirm__no{background:transparent;color:var(--text-muted);border-color:var(--border)}.busy-chip{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-size:11px;font-weight:600;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.busy-chip-spinner{width:11px;height:11px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent, #388bfd);animation:busy-spin .7s linear infinite;flex-shrink:0}@keyframes busy-spin{to{transform:rotate(360deg)}}.sim-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid #f59e0b;background:#f59e0b1f;color:#b45309;font-size:11px;font-weight:700;letter-spacing:.5px;cursor:pointer;white-space:nowrap}.sim-chip-dot{width:7px;height:7px;border-radius:50%;background:#f59e0b;animation:sim-pulse 1.2s ease-in-out infinite}@keyframes sim-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.incident-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9000;display:flex;align-items:center;justify-content:center;animation:overlay-in var(--duration) var(--ease-out)}.incident-modal{background:var(--surface);border:1px solid var(--border-dim);border-radius:var(--radius-lg);width:min(440px,96vw);max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:modal-in var(--duration) var(--ease-out)}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.incident-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;font-weight:600;font-size:15px;border-bottom:1px solid var(--border-dim);background-image:linear-gradient(90deg,transparent,var(--gold-soft) 20%,var(--gold-soft) 80%,transparent);background-repeat:no-repeat;background-position:top;background-size:100% 2px}.incident-modal-close{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:16px;line-height:1}.incident-modal-form{padding:12px 16px 16px;display:flex;flex-direction:column;gap:10px}.incident-modal-coords{font-size:11px;color:var(--text-muted);margin:0;font-variant-numeric:tabular-nums}.incident-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted);flex:1}.incident-field span{font-weight:500}.incident-field .req{color:var(--red)}.incident-field .opt{color:var(--text-muted);font-style:normal;font-weight:400}.incident-field input,.incident-field select,.incident-field textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:6px 8px;font-size:13px;color:var(--text);outline:none;width:100%}.incident-field textarea{resize:vertical;font-family:inherit;min-height:60px}.incident-field input:focus,.incident-field select:focus,.incident-field textarea:focus{border-color:var(--accent)}.incident-modal-context{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border-dim);border-radius:6px;font-size:12px;color:var(--text-muted)}.incident-modal-context strong{color:var(--text);font-size:13px}.incident-field-row{display:flex;gap:10px}.incident-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:6px;border-top:1px solid var(--border-dim)}.incident-modal-footer .inc-btn{font-size:13px;padding:6px 16px}.incident-photo-add{display:inline-block;padding:8px 14px;background:var(--surface-2);border:1px dashed var(--border);border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-muted);text-align:center;transition:background .15s,border-color .15s}.incident-photo-add:hover{background:var(--surface-3, var(--surface-2));border-color:var(--accent, #388bfd);color:var(--text)}.incident-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;margin-top:8px}.incident-photo-thumb{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;border:1px solid var(--border)}.incident-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.incident-photo-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;border:none;border-radius:50%;background:#000000a6;color:#fff;font-size:11px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}.incident-photo-remove:hover{background:#ef4444}.popup-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:4px;margin-top:8px}.popup-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid var(--border)}.incident-photo-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;z-index:3000;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.incident-photo-lightbox img{max-width:95vw;max-height:95vh;border-radius:6px}.pick-marker{background:transparent!important;border:none!important}.pick-marker__dot{width:14px;height:14px;background:#ef4444;border:2px solid #fff;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #ef4444;z-index:2}.pick-marker__ring{width:44px;height:44px;border:2px solid #ef4444;border-radius:50%;position:absolute;top:0;left:0;animation:pick-pulse 1.1s ease-out infinite}@keyframes pick-pulse{0%{transform:scale(.35);opacity:.9}to{transform:scale(1.1);opacity:0}}.map-panel--picking .leaflet-container{cursor:crosshair!important}.mobile-dl-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2500;display:flex;align-items:center;justify-content:center;padding:16px;animation:overlay-in var(--duration) var(--ease-out)}.mobile-dl-panel{position:relative;background:var(--surface);border:1px solid var(--border-dim);border-radius:var(--radius-xl);padding:32px 30px 28px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:18px;box-shadow:var(--shadow-xl);animation:modal-in var(--duration) var(--ease-out)}.mobile-dl-close{position:absolute;top:12px;right:14px;background:none;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;line-height:1}.mobile-dl-close:hover{color:var(--text)}.mobile-dl-header{display:flex;align-items:center;gap:16px;width:100%}.mobile-dl-title-block{display:flex;flex-direction:column;gap:3px}.mobile-dl-app-name{font-size:18px;font-weight:700;color:var(--text)}.mobile-dl-version{font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent);border-radius:99px;padding:1px 8px;width:fit-content}.mobile-dl-meta{font-size:11px;color:var(--text-muted)}.mobile-dl-qr-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}.mobile-dl-qr{border-radius:10px;border:4px solid white;box-shadow:0 2px 12px #00000040}.mobile-dl-qr-hint{font-size:12px;color:var(--text-muted);text-align:center}.mobile-dl-url-row{display:flex;align-items:center;gap:8px;width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.mobile-dl-url{flex:1;font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-dl-edit-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 4px;flex-shrink:0;opacity:.7;transition:opacity .15s}.mobile-dl-edit-btn:hover{opacity:1}.mobile-dl-copy{font-size:11px;font-weight:600;padding:3px 10px;background:var(--accent-dim);border:1px solid var(--accent);color:var(--accent);border-radius:6px;cursor:pointer;white-space:nowrap;transition:opacity .15s}.mobile-dl-copy:hover{opacity:.8}.mobile-dl-url-edit{display:flex;flex-direction:column;gap:6px;width:100%}.mobile-dl-url-input{width:100%;padding:7px 10px;font-size:12px;background:var(--surface-2);border:1px solid var(--accent);border-radius:7px;color:var(--text);outline:none}.mobile-dl-url-edit-actions{display:flex;gap:6px;justify-content:flex-end}.mobile-dl-reset{font-size:11px;padding:3px 10px;background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:6px;cursor:pointer}.mobile-dl-reset:hover{color:var(--text)}.mobile-dl-btn{display:block;width:100%;text-align:center;background:var(--accent);color:#fff;font-weight:600;font-size:14px;padding:10px 0;border-radius:8px;text-decoration:none;transition:filter .15s}.mobile-dl-btn:hover{filter:brightness(1.12)}.mobile-dl-unavailable{color:var(--text-muted);font-size:13px;text-align:center;padding:16px 0}.mobile-dl-instructions{width:100%;font-size:12px;color:var(--text-muted)}.mobile-dl-instructions summary{cursor:pointer;color:var(--text-muted);font-weight:500;padding:4px 0}.mobile-dl-instructions summary:hover{color:var(--text)}.mobile-dl-instructions ol{margin:8px 0 0 16px;display:flex;flex-direction:column;gap:5px;line-height:1.5}.mobile-dl-instructions em{font-style:italic}.mobile-dl-instructions strong{color:var(--text)}.ep-wrap{position:relative;display:inline-block}.ep-trigger{display:flex;align-items:center;gap:5px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:5px 10px;cursor:pointer;font-size:13px;color:var(--text);transition:border-color .15s,background .15s;white-space:nowrap}.ep-trigger:hover{border-color:var(--accent);background:var(--surface)}.ep-current{font-size:20px;line-height:1}.ep-arrow{font-size:9px;color:var(--text-muted)}.ep-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:9999;width:280px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column}.ep-search-row{padding:8px 10px 6px;border-bottom:1px solid var(--border-dim)}.ep-search{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;color:var(--text);outline:none}.ep-search:focus{border-color:var(--accent)}.ep-cats{display:flex;gap:2px;padding:6px 8px 4px;border-bottom:1px solid var(--border-dim);overflow-x:auto;scrollbar-width:none}.ep-cats::-webkit-scrollbar{display:none}.ep-cat{font-size:16px;padding:4px 6px;border:none;border-radius:6px;background:none;cursor:pointer;transition:background .12s;flex-shrink:0;line-height:1}.ep-cat:hover{background:var(--surface-2)}.ep-cat--active{background:var(--accent-dim);outline:1px solid var(--accent)}.ep-results-label{padding:4px 10px 2px;font-size:11px;color:var(--text-muted);font-weight:600}.ep-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:6px 8px 10px;max-height:210px;overflow-y:auto}.ep-item{font-size:20px;padding:4px;border:none;border-radius:5px;background:none;cursor:pointer;line-height:1;text-align:center;transition:background .1s,transform .1s}.ep-item:hover{background:var(--surface-2);transform:scale(1.2)}.ep-item--selected{background:var(--accent-dim);outline:1px solid var(--accent);border-radius:5px}.ep-empty{grid-column:1 / -1;text-align:center;color:var(--text-muted);font-size:12px;padding:16px 0}@keyframes entity-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--accent)}50%{opacity:.75;box-shadow:0 0 0 6px transparent}}@keyframes ring-expand{0%{transform:translate(-50%,-50%) scale(1);opacity:.7}to{transform:translate(-50%,-50%) scale(2.2);opacity:0}}.entity-marker--tracked{animation:entity-pulse 1.8s ease-in-out infinite;border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)}.entity-tracked-ring{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:2px solid var(--accent);pointer-events:none;animation:ring-expand 1.8s ease-out infinite}@keyframes sos-blink{0%,to{opacity:1;box-shadow:0 0 #ef4444}50%{opacity:.6;box-shadow:0 0 0 10px #ef444400}}@keyframes sos-ring-expand{0%{transform:translate(-50%,-50%) scale(1);opacity:.8}to{transform:translate(-50%,-50%) scale(2.8);opacity:0}}.entity-marker--emergency{animation:sos-blink .7s ease-in-out infinite!important;border-color:#ef4444!important;box-shadow:0 0 12px 4px #ef4444aa!important}.entity-sos-ring{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:3px solid #ef4444;pointer-events:none;animation:sos-ring-expand .7s ease-out infinite}.tracking-panel{position:absolute;top:56px;left:10px;z-index:1100;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--accent);border-radius:12px;box-shadow:var(--shadow-lg);min-width:220px;max-width:280px;overflow:hidden}.tracking-panel-header{display:flex;align-items:center;gap:6px;padding:8px 10px;background:var(--accent-dim);border-bottom:1px solid var(--border-dim)}.tracking-pulse-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;animation:entity-pulse 1.8s ease-in-out infinite}.tracking-entity-icon{font-size:18px;flex-shrink:0}.tracking-entity-name{flex:1;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tracking-status{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;white-space:nowrap}.tracking-status--active{background:var(--green-dim);color:var(--green)}.tracking-status--idle{background:var(--amber-dim);color:var(--amber)}.tracking-status--offline{background:var(--red-dim);color:var(--red)}.tracking-stop{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:12px;padding:2px 4px;border-radius:4px;flex-shrink:0;transition:background .15s}.tracking-stop:hover{background:var(--surface-2);color:var(--text)}.tracking-panel-body{padding:8px 10px;display:flex;flex-direction:column;gap:3px}.tracking-stat{display:flex;align-items:baseline;gap:6px;font-size:11px;color:var(--text-muted)}.tracking-stat>span:first-child{flex-shrink:0;font-size:12px}.tracking-key{color:var(--text-dim);font-weight:600}.entity-track-btn{background:none;border:none;cursor:pointer;font-size:12px;padding:1px 3px;border-radius:3px;opacity:.5;transition:opacity .15s,background .15s;line-height:1}.entity-track-btn:hover{opacity:1;background:var(--surface-2)}.entity-track-btn--on{opacity:1}.entity-item--tracked{background:var(--accent-dim);border-radius:4px}.popup-action-btn--active{background:var(--accent-dim)!important;color:var(--accent)!important;border-color:var(--accent)!important}.admin-panel-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-dim);background:var(--surface-2);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease);color:var(--text-muted)}.admin-panel-btn:hover{background:var(--surface-3);color:var(--text)}.adm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:8000;display:flex;align-items:stretch;justify-content:center;animation:overlay-in var(--duration) var(--ease-out)}.adm-shell{width:100%;max-width:1100px;background:var(--bg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-xl)}.adm-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.adm-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft) 16%,var(--gold-soft) 84%,transparent);pointer-events:none}.adm-header-left{display:flex;align-items:center;gap:12px}.adm-header-icon{font-size:24px}.adm-header-title{font-size:17px;font-weight:700}.adm-header-sub{font-size:11px;color:var(--text-muted)}.adm-close--header{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text);transition:background .15s}.adm-close--header:hover{background:var(--border)}.adm-tabs{display:flex;gap:2px;padding:10px 16px 0;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.adm-tab{padding:8px 16px;border:none;background:none;border-radius:6px 6px 0 0;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s,background .15s}.adm-tab:hover{color:var(--text);background:var(--surface-2)}.adm-tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.adm-content{flex:1;overflow-y:auto}.adm-tab-content{padding:16px 20px 32px}.adm-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:14px;font-weight:600}.adm-toolbar{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.adm-search{flex:1;min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 12px;font-size:13px;color:var(--text);outline:none;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.adm-search:hover:not(:focus){border-color:var(--text-dim)}.adm-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.adm-btn{font-size:13px;font-weight:600;padding:7px 16px;border-radius:7px;border:1px solid transparent;cursor:pointer;transition:filter .15s;white-space:nowrap}.adm-btn:hover:not(:disabled){filter:brightness(1.1)}.adm-btn:disabled{opacity:.5;cursor:default}.adm-btn--primary{background:var(--accent);color:#fff}.adm-btn--ghost{background:var(--surface);color:var(--text);border-color:var(--border)}.adm-btn--danger{background:var(--red-dim);color:var(--red);border-color:var(--red)}.adm-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border)}.adm-table{width:100%;border-collapse:collapse;font-size:13px}.adm-table th{background:var(--surface);padding:9px 12px;text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.adm-table td{padding:10px 12px;border-bottom:1px solid var(--border-dim);vertical-align:middle}.adm-table tr:last-child td{border-bottom:none}.adm-table tr:hover td{background:var(--surface-2)}.adm-row--inactive td{opacity:.5}.adm-id{font-size:12px;color:var(--accent);background:var(--accent-dim);padding:2px 6px;border-radius:4px;font-variant-numeric:tabular-nums}.adm-name{font-weight:500}.adm-num{font-variant-numeric:tabular-nums;color:var(--text-muted)}.adm-meta{font-size:11px;color:var(--text-muted)}.adm-meta--dim{color:var(--text-dim)}.adm-you{font-size:10px;color:var(--text-muted);margin-left:4px}.adm-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:middle;border:1px solid rgba(255,255,255,.2)}.adm-perm-tags{display:flex;flex-wrap:wrap;gap:3px}.adm-perm-tag{font-size:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:1px 5px;color:var(--text-muted);white-space:nowrap}.adm-actions{display:flex;gap:4px}.adm-action-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:4px 8px;font-size:13px;cursor:pointer;line-height:1;transition:background .15s}.adm-action-btn:hover{background:var(--border)}.adm-footer-count{margin-top:10px;font-size:11px;color:var(--text-muted);text-align:right}.adm-loading,.adm-empty{padding:40px;text-align:center;color:var(--text-muted);font-size:13px}.adm-error{background:var(--red-dim);color:var(--red);border:1px solid var(--red);border-radius:6px;padding:8px 12px;font-size:12px;margin-bottom:12px}.adm-form{display:flex;flex-direction:column;gap:16px;max-width:680px}.adm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 600px){.adm-form-grid{grid-template-columns:1fr}}.adm-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-muted)}.adm-field--full{grid-column:1 / -1}.adm-field--inline{flex-direction:row;align-items:center;gap:8px}.adm-field>span:first-child,.adm-field-label{font-size:12px;font-weight:600;color:var(--text);letter-spacing:-.01em}.adm-req{color:var(--red)}.adm-field input[type=text],.adm-field input[type=password],.adm-field input[type=url],.adm-field input[type=number],.adm-field select,.adm-field textarea{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 11px;font-size:13px;font-family:inherit;line-height:1.4;color:var(--text);outline:none;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.adm-field input::placeholder,.adm-field textarea::placeholder{color:var(--text-dim)}.adm-field input:hover:not(:disabled),.adm-field select:hover:not(:disabled),.adm-field textarea:hover:not(:disabled){border-color:var(--text-dim)}.adm-field input:focus,.adm-field select:focus,.adm-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.adm-field input:disabled,.adm-field select:disabled,.adm-field textarea:disabled{opacity:.5;cursor:not-allowed}.adm-field small{font-size:11px;color:var(--text-dim);line-height:1.45}.ui-input{transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)!important}.ui-input:hover:not(:disabled):not(:focus){border-color:var(--text-dim)!important}.ui-input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-dim);outline:none}.ui-input::placeholder{color:var(--text-dim)}.status-box{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:12.5px}.status-box--ok{background:var(--green-dim);border-color:color-mix(in srgb,var(--green) 40%,transparent);color:var(--green)}.status-box--err{background:var(--red-dim);border-color:color-mix(in srgb,var(--red) 40%,transparent);color:var(--red)}.status-box--info{background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-strong)}.status-box--warn{background:var(--amber-dim);border-color:color-mix(in srgb,var(--amber) 40%,transparent);color:var(--amber)}.status-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px}.status-chip--ok{background:var(--green-dim);color:var(--green)}.status-chip--err{background:var(--red-dim);color:var(--red)}.status-chip--info{background:var(--accent-dim);color:var(--accent-strong)}.status-chip--warn{background:var(--amber-dim);color:var(--amber)}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}button:focus-visible,select:focus-visible,a:focus-visible,input[type=checkbox]:focus-visible,input[type=radio]:focus-visible,input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-tool-emoji svg,.home-kpi-icon svg,.home-modcard-emoji svg,.toolsmenu-emoji svg{display:block}.home-tool-emoji svg,.toolsmenu-emoji svg,.home-kpi-icon svg,.topbar-action-btn svg{color:var(--accent)}.home-tool:hover .home-tool-emoji svg,.home-tool--on .home-tool-emoji svg,.toolsmenu-item:hover .toolsmenu-emoji svg,.toolsmenu-item--on .toolsmenu-emoji svg,.topbar-action-btn:hover svg,.topbar-action-btn--active svg{color:var(--accent-strong)}.topbar-tab svg{vertical-align:-2px;margin-right:5px;color:inherit}.layer-count,.fpanel-sub,.ladm-badge,.map-ctx-header,.panel-section-badge{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.fpanel{position:fixed;top:64px;right:12px;bottom:12px;width:420px;max-width:94vw;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;z-index:1200}.fpanel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;z-index:1;background:linear-gradient(90deg,transparent,var(--gold-soft) 20%,var(--gold-soft) 80%,transparent);pointer-events:none}.fpanel--left{right:auto;left:12px;top:auto;max-height:60vh}.fpanel--narrow{width:360px}.fpanel-head{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:12px 14px;border-bottom:1px solid var(--border)}.fpanel-icon{font-size:18px;line-height:1}.fpanel-title{flex:1;font-size:14px;font-weight:700;letter-spacing:-.01em}.fpanel-sub{font-size:10.5px;color:var(--text-muted)}.fpanel-tabs{display:flex;gap:4px;padding:8px 10px 0;border-bottom:1px solid var(--border);flex-shrink:0}.fpanel-tab{flex:1;padding:8px 6px;font-size:12.5px;font-weight:600;cursor:pointer;border:none;background:none;color:var(--text-muted);border-bottom:2px solid transparent;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.fpanel-tab:hover{color:var(--text)}.fpanel-tab--on{color:var(--accent);border-bottom-color:var(--accent)}.fpanel-body{flex:1;overflow-y:auto;padding:10px 12px}.fpanel-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 11px;margin-bottom:8px;transition:border-color var(--duration-fast) var(--ease)}.fpanel-card--soft{background:var(--surface-2)}.fpanel-muted{font-size:11px;color:var(--text-muted)}.fpanel-err{font-size:12px;color:var(--red);margin:4px 0}.fpanel-btn{font-size:12px;padding:6px 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),opacity var(--duration-fast) var(--ease)}.fpanel-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-dim)}.fpanel-btn:disabled{opacity:.5;cursor:not-allowed}.fpanel-btn--primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.fpanel-btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.fpanel-btn--danger{background:var(--red);border-color:var(--red);color:#fff;font-weight:600}.fpanel-btn--icon{padding:4px 8px}.fpanel-input{width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:13px;outline:none}.adm-perm-list{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:10px 12px}.adm-perm-item{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}.adm-perm-desc{color:var(--text-muted)}.adm-form-error{background:var(--red-dim);color:var(--red);border:1px solid var(--red);border-radius:6px;padding:8px 12px;font-size:12px}.adm-form-actions{display:flex;gap:8px;padding-top:8px;border-top:1px solid var(--border-dim)}.adm-form-row{display:flex;gap:12px;flex-wrap:wrap}.adm-form-row>.adm-field{flex:1 1 180px;min-width:0}.adm-form-section{border:1px solid var(--border-dim);border-radius:var(--radius-md);padding:14px;background:var(--surface-2);display:flex;flex-direction:column;gap:10px}.adm-form-section-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.adm-btn--sm{font-size:11px;padding:4px 10px;border-radius:var(--radius-xs)}.adm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:9500;display:flex;align-items:center;justify-content:center}.adm-modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:min(480px,96vw);box-shadow:var(--shadow-xl);overflow:hidden}.adm-modal--key{width:min(520px,96vw);max-height:90vh;overflow-y:auto}.adm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font-size:15px;font-weight:700;border-bottom:1px solid var(--border-dim)}.adm-close{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:16px;line-height:1}.adm-key-body{padding:16px;display:flex;flex-direction:column;gap:12px}.adm-key-warning{background:var(--amber-dim);color:var(--amber);border:1px solid var(--amber);border-radius:6px;padding:10px 12px;font-size:12px}.adm-key-field{display:flex;flex-direction:column;gap:4px}.adm-key-field label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase}.adm-key-field code{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:6px 10px;font-size:12px;color:var(--text);word-break:break-all}.adm-key-row{display:flex;gap:8px;align-items:flex-start}.adm-key-value{flex:1}.adm-key-hint{font-size:11px;color:var(--text-muted)}.adm-modal-footer{padding:12px 16px;border-top:1px solid var(--border-dim);display:flex;justify-content:flex-end}.adm-copy-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:5px 10px;font-size:11px;font-weight:600;cursor:pointer;color:var(--text);white-space:nowrap;transition:background .15s}.adm-copy-btn:hover{background:var(--border)}.adm-config-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-dim);padding-bottom:0}.adm-config-tab{padding:7px 14px;font-size:12px;font-weight:600;font-family:inherit;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;margin-bottom:-1px;transition:color .15s,border-color .15s}.adm-config-tab:hover{color:var(--text)}.adm-config-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.adm-qr-section{display:flex;flex-direction:column;gap:10px}.adm-qr-server-input{display:block;width:100%;margin-top:4px;padding:6px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--text);font-family:monospace;outline:none;transition:border-color .14s}.adm-qr-server-input:focus{border-color:var(--accent)}.adm-qr-wrapper{display:flex;justify-content:center;align-items:center;background:#fff;border:1px solid var(--border-dim);border-radius:10px;padding:16px;min-height:200px}.adm-qr-img{width:200px;height:200px;border-radius:4px;display:block;image-rendering:pixelated}.adm-qr-placeholder{font-size:12px;color:var(--text-muted)}.adm-qr-actions{display:flex;gap:8px;justify-content:center}.adm-manual-section{display:flex;flex-direction:column;gap:10px}.adm-key-value--secret{letter-spacing:.04em;font-size:11px;word-break:break-all}.act-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:2100;display:flex;align-items:stretch;justify-content:flex-end}.act-panel{background:var(--surface);border-left:1px solid var(--border);width:580px;max-width:96vw;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden}.act-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid var(--border);flex-shrink:0;gap:12px}.act-header-left{display:flex;align-items:baseline;gap:10px}.act-header-title{font-size:15px;font-weight:700;color:var(--text)}.act-header-count{font-size:12px;color:var(--text-muted)}.act-header-right{display:flex;align-items:center;gap:8px}.act-refresh-btn{padding:5px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:background .15s}.act-refresh-btn:hover{background:var(--border)}.act-close-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:18px;padding:2px 6px;border-radius:4px;line-height:1}.act-close-btn:hover{background:var(--surface-2)}.act-filters{border-bottom:1px solid var(--border-dim);padding:12px 16px;display:flex;flex-direction:column;gap:10px;flex-shrink:0;background:var(--surface-2)}.act-filter-cats{display:flex;gap:6px;flex-wrap:wrap}.act-cat-btn{padding:5px 12px;background:var(--surface);border:1px solid var(--border);border-radius:99px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:.15s}.act-cat-btn:hover{border-color:var(--accent);color:var(--accent)}.act-cat-btn--active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.act-filter-row{display:flex;gap:8px;align-items:center}.act-search{flex:1;min-width:0;padding:7px 10px;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--text);font-family:inherit;outline:none;transition:border-color .14s}.act-search:focus{border-color:var(--accent)}.act-date{padding:6px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--text);font-family:inherit;outline:none;width:120px;transition:border-color .14s}.act-date:focus{border-color:var(--accent)}.act-date-sep{color:var(--text-dim);font-size:12px}.act-clear-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px}.act-clear-btn:hover{background:var(--surface)}.act-list{flex:1;overflow-y:auto;display:flex;flex-direction:column}.act-empty{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-muted);font-size:13px;padding:40px 20px}.act-spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.act-row{display:flex;align-items:flex-start;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border-dim);transition:background .12s}.act-row:hover{background:var(--surface-2)}.act-row-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;margin-top:1px}.act-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.act-row-desc{font-size:13px;color:var(--text);line-height:1.4;word-break:break-word}.act-row-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.act-row-ts{font-size:11px;color:var(--text-dim);white-space:nowrap;flex-shrink:0;padding-top:2px}.act-load-more{margin:12px 16px;padding:9px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:background .15s;text-align:center}.act-load-more:hover:not(:disabled){background:var(--border-dim)}.act-load-more:disabled{opacity:.5;cursor:not-allowed}@keyframes sos-banner-pulse{0%,to{background:#7f1d1d}50%{background:#ef4444}}.sos-banner{margin:0;padding:0}.sos-banner-item{padding:8px 14px;font-size:13px;font-weight:600;color:#fff;animation:sos-banner-pulse .7s ease-in-out infinite;border-bottom:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:space-between;gap:8px}.sos-cancel-btn{flex-shrink:0;padding:3px 10px;background:#0000004d;border:1px solid rgba(255,255,255,.4);border-radius:5px;color:#fff;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s}.sos-cancel-btn:hover{background:#0000008c}@keyframes fall-banner-pulse{0%,to{background:#78350f}50%{background:#f59e0b}}.fall-banner{margin:0;padding:0}.fall-banner-item{padding:8px 14px;font-size:13px;font-weight:600;color:#fff;animation:fall-banner-pulse .9s ease-in-out infinite;border-bottom:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:space-between;gap:8px}.fall-dismiss-btn{flex-shrink:0;padding:3px 10px;background:#0000004d;border:1px solid rgba(255,255,255,.4);border-radius:5px;color:#fff;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s}.fall-dismiss-btn:hover{background:#0000008c}.msg-bell-btn{position:relative;background:none;border:none;cursor:pointer;font-size:18px;padding:4px 6px;border-radius:6px;transition:background .15s;line-height:1}.msg-bell-btn:hover{background:var(--surface-2)}.msg-bell-badge{position:absolute;top:-2px;right:-4px;background:#ef4444;color:#fff;font-size:9px;font-weight:700;min-width:16px;height:16px;border-radius:99px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;pointer-events:none}.messages-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:2200;display:flex;align-items:flex-start;justify-content:flex-end;padding:60px 16px 16px}.messages-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:380px;max-width:96vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden}.messages-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid var(--border-dim);font-size:14px;font-weight:600;color:var(--text);flex-shrink:0}.messages-panel-close{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:16px;padding:2px 6px;border-radius:4px}.messages-panel-close:hover{background:var(--surface-2)}.messages-panel-list{overflow-y:auto;flex:1;padding:12px;display:flex;flex-direction:column;gap:8px}.msg-empty{text-align:center;color:var(--text-muted);font-size:13px;padding:24px 0}.msg-item{background:var(--surface-2);border:1px solid var(--border-dim);border-radius:8px;padding:10px 12px;border-left:3px solid var(--border)}.msg-item--urgente{border-left-color:#ef4444}.msg-item--normal{border-left-color:#388bfd}.msg-item-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px}.msg-item-title{font-size:13px;font-weight:600;color:var(--text)}.msg-item-time{font-size:11px;color:var(--text-muted);white-space:nowrap}.msg-item-body{font-size:12px;color:var(--text-muted);margin-bottom:6px;white-space:pre-wrap}.msg-attachment-img{width:100%;max-height:200px;object-fit:cover;border-radius:6px;margin-bottom:6px;cursor:pointer}.msg-attachment-img:hover{opacity:.9}.msg-attachment-audio{width:100%;height:36px;margin-bottom:6px}.msg-item-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11px;color:var(--text-dim)}.msg-item-priority{padding:2px 7px;border-radius:99px;border:1px solid;font-weight:600;font-size:10px}.msg-item-expires{color:var(--text-dim);font-size:10px}.msg-item-actions{display:flex;gap:4px;justify-content:flex-end;margin-top:6px}.msg-action-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:2px 8px;font-size:13px;cursor:pointer;color:var(--text-muted);transition:background .15s}.msg-action-btn:hover{background:var(--surface)}.msg-action-btn--red{color:var(--red);border-color:var(--red)}.msg-action-btn--red:hover{background:var(--red-dim)}.msg-compose{border-bottom:1px solid var(--border-dim);padding:14px 16px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.msg-compose-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:2px}.msg-compose-trigger{background:var(--accent-dim);border:1px solid var(--accent);border-radius:6px;color:var(--accent);font-size:12px;font-weight:600;padding:5px 10px;cursor:pointer;font-family:inherit;transition:opacity .15s}.msg-compose-trigger:hover{opacity:.85}.msg-field-label{font-size:11px;font-weight:600;color:var(--text-muted)}.msg-input,.msg-select,.msg-textarea{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:7px 10px;font-size:12px;color:var(--text);font-family:inherit;outline:none;transition:border-color .14s;box-sizing:border-box}.msg-input:focus,.msg-select:focus,.msg-textarea:focus{border-color:var(--accent)}.msg-textarea{resize:vertical;min-height:64px}.msg-priority-row{display:flex;gap:8px}.msg-priority-btn{flex:1;padding:6px 0;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-size:12px;font-weight:600;font-family:inherit;color:var(--text-muted);cursor:pointer;transition:.15s}.msg-priority-btn--active{background:transparent}.msg-error{font-size:12px;color:var(--red);background:var(--red-dim);border-radius:6px;padding:6px 10px}.msg-compose-actions{display:flex;gap:8px;justify-content:flex-end}.msg-btn{padding:7px 14px;border-radius:7px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid;transition:opacity .15s}.msg-btn:hover{opacity:.85}.msg-btn:disabled{opacity:.45;cursor:not-allowed}.msg-btn--cancel{background:var(--surface-2);border-color:var(--border);color:var(--text-muted)}.msg-btn--send{background:var(--accent);border-color:var(--accent);color:#fff}.ai-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:4600;display:flex;align-items:stretch;justify-content:flex-end}.ai-panel{background:var(--surface);border-left:1px solid var(--border);width:440px;max-width:96vw;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.ai-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.ai-header-title{font-weight:700;font-size:15px;color:var(--text)}.ai-header-actions{display:flex;gap:6px;align-items:center}.ai-header-btn{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 6px;border-radius:6px;opacity:.7;transition:opacity .15s}.ai-header-btn:hover{opacity:1;background:var(--surface-2)}.ai-header-btn:disabled{opacity:.3;cursor:not-allowed}.ai-close-btn{background:none;border:none;cursor:pointer;font-size:18px;color:var(--text-muted);padding:4px 8px;border-radius:6px}.ai-close-btn:hover{color:var(--text);background:var(--surface-2)}.ai-tool-indicator{padding:6px 16px;font-size:11px;color:var(--accent);background:var(--surface-2);border-bottom:1px solid var(--border);animation:ai-pulse 1.5s ease-in-out infinite}@keyframes ai-pulse{0%,to{opacity:.6}50%{opacity:1}}.ai-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.ai-msg{padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.55;max-width:88%;word-break:break-word}.ai-msg--user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:3px}.ai-msg--assistant{align-self:flex-start;background:var(--surface-2);color:var(--text);border-bottom-left-radius:3px}.ai-msg--assistant .ai-h2{font-weight:700;font-size:14px;margin:8px 0 4px;color:var(--accent)}.ai-msg--assistant .ai-h3{font-weight:600;font-size:13px;margin:6px 0 2px}.ai-msg--assistant .ai-li{padding-left:12px;position:relative}.ai-msg--assistant .ai-li:before{content:"•";position:absolute;left:0;color:var(--accent)}.ai-metrics{display:flex;gap:12px;padding:4px 16px;font-size:10px;color:var(--text-muted);border-bottom:1px solid var(--border);flex-shrink:0}.ai-metrics span{white-space:nowrap}.ai-typing{color:var(--text-muted);animation:ai-pulse 1s ease-in-out infinite}.ai-input-area{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0}.ai-input{flex:1;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:13px;outline:none;transition:border-color .15s}.ai-input:focus{border-color:var(--accent)}.ai-input:disabled{opacity:.5}.ai-send-btn{padding:8px 18px;border:none;border-radius:8px;background:var(--accent);color:#fff;cursor:pointer;font-size:13px;font-weight:600;transition:opacity .15s}.ai-send-btn:hover{opacity:.9}.ai-send-btn:disabled{opacity:.4;cursor:not-allowed}.ai-fab{position:fixed;bottom:24px;right:24px;z-index:4600;width:56px;height:56px;border-radius:50%;border:none;background:var(--accent, #388bfd);color:#fff;font-size:24px;cursor:pointer;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;transition:transform .15s,box-shadow .15s}.ai-fab:hover{transform:scale(1.08);box-shadow:var(--shadow-xl)}.ai-fab-pulse{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid var(--accent, #388bfd);animation:ai-fab-ring 1.5s ease-out infinite;pointer-events:none}@keyframes ai-fab-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(1.4);opacity:0}}.ai-cmd-list{border-top:1px solid var(--border);background:var(--surface);max-height:220px;overflow-y:auto;flex-shrink:0}.ai-cmd-item{display:flex;align-items:baseline;gap:10px;width:100%;padding:8px 16px;border:none;background:none;text-align:left;cursor:pointer;transition:background .1s}.ai-cmd-item:hover,.ai-cmd-item--active{background:var(--surface-2)}.ai-cmd-name{font-family:monospace;font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap}.ai-cmd-desc{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-source{margin-top:8px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:12px}.ai-source a{color:var(--accent);text-decoration:none;font-weight:500}.ai-source a:hover{text-decoration:underline}.ai-code{background:var(--surface-2);padding:1px 5px;border-radius:3px;font-family:monospace;font-size:12px}.ai-copyable{cursor:pointer;transition:background .15s}.ai-copyable:hover{background:var(--accent);color:#fff}.ai-copied{background:#22c55e!important;color:#fff!important}.ai-copied:after{content:" ✓"}.rag-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2400;display:flex;align-items:center;justify-content:center}.rag-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:600px;max-width:94vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.rag-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.rag-header-title{font-weight:700;font-size:16px;color:var(--text)}.rag-status{display:flex;align-items:center;gap:8px;padding:10px 20px;font-size:12px;color:var(--text-muted);border-bottom:1px solid var(--border)}.rag-status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.rag-status-dot--ok{background:#22c55e}.rag-status-dot--err{background:#ef4444}.rag-error{margin:12px 20px;padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:13px}.rag-actions{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border)}.rag-upload-btn{padding:8px 18px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.rag-upload-btn:disabled{opacity:.5;cursor:not-allowed}.rag-hint{font-size:11px;color:var(--text-muted)}.rag-docs{flex:1;overflow-y:auto;padding:12px 20px}.rag-empty{color:var(--text-muted);font-size:13px;text-align:center;padding:24px 0}.rag-table{width:100%;border-collapse:collapse;font-size:13px}.rag-table th{text-align:left;padding:8px 10px;color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}.rag-table td{padding:10px;border-bottom:1px solid var(--border);color:var(--text)}.rag-doc-name{font-weight:500;word-break:break-all}.rag-delete-btn{background:none;border:none;cursor:pointer;font-size:15px;opacity:.5;transition:opacity .15s;padding:4px}.rag-delete-btn:hover{opacity:1}.ladm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2200;display:flex;align-items:stretch;justify-content:flex-end}.ladm-panel{background:var(--surface);border-left:1px solid var(--border);width:520px;max-width:96vw;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.ladm-panel--wide{width:600px}.ladm-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.ladm-back{background:none;border:none;color:var(--text);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px}.ladm-back:hover{background:var(--surface-2)}.ladm-title{flex:1;font-weight:700;font-size:15px;color:var(--text)}.ladm-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.ladm-tab{flex:1;padding:10px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:13px;cursor:pointer}.ladm-tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.ladm-body{flex:1;overflow-y:auto;padding:12px 16px}.ladm-body--scroll{overflow-y:auto}.ladm-toolbar{display:flex;gap:8px;margin-bottom:12px}.ladm-toolbar--sub{margin-top:-4px;flex-wrap:wrap;align-items:center}.ladm-count{margin-left:auto;font-size:11px;color:var(--text-muted)}.ladm-table-wrap{overflow:auto;max-height:62vh;border:1px solid var(--border);border-radius:8px}.ladm-table{width:100%;border-collapse:collapse;font-size:12px}.ladm-table th{position:sticky;top:0;z-index:1;background:var(--surface-2);text-align:left;padding:6px 8px;border-bottom:1px solid var(--border);white-space:nowrap;font-weight:600;color:var(--text)}.ladm-table td{padding:3px 8px;border-bottom:1px solid var(--border-dim);max-width:240px;color:var(--text)}.ladm-table tr:hover td{background:var(--surface-2)}.ladm-cell{cursor:text}.ladm-cell-val{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.ladm-cell-input{width:100%;box-sizing:border-box;border:1px solid var(--accent);border-radius:4px;padding:2px 4px;font:inherit;background:var(--surface);color:var(--text)}.ladm-search{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:13px}.ladm-search:focus{border-color:var(--accent);outline:none}.ladm-btn{padding:7px 14px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:12px;cursor:pointer;white-space:nowrap}.ladm-btn:hover{background:var(--surface);border-color:var(--text-muted)}.ladm-btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.ladm-btn--primary:hover{opacity:.9}.ladm-btn--primary:disabled{opacity:.5;cursor:not-allowed}.ladm-empty{color:var(--text-muted);text-align:center;padding:24px 0;font-size:13px}.ladm-list{list-style:none;padding:0;margin:0}.ladm-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .1s}.ladm-list-item:hover{background:var(--surface-2)}.ladm-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ladm-emoji{font-size:18px;flex-shrink:0}.ladm-name{flex:1;font-size:13px;font-weight:500;color:var(--text)}.ladm-sub{font-size:11px;color:var(--text-muted)}.ladm-badge{font-size:11px;color:var(--text-muted);background:var(--surface-2);padding:2px 7px;border-radius:99px}.ladm-item-info{flex:1;display:flex;flex-direction:column}.ladm-icon-btn{background:none;border:none;cursor:pointer;font-size:14px;opacity:.5;padding:4px}.ladm-icon-btn:hover{opacity:1}.ladm-item-actions{display:flex;gap:4px;align-items:center;flex-shrink:0}.ladm-export-select{padding:2px 4px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text);font-size:12px;cursor:pointer;width:40px}.ladm-export-select:focus{width:auto}.ladm-form{display:flex;flex-direction:column;gap:10px}.ladm-field{display:flex;flex-direction:column;gap:3px;flex:1}.ladm-field span{font-size:11px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.ladm-field input,.ladm-field select{padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px}.ladm-field input:focus{border-color:var(--accent);outline:none}.ladm-row{display:flex;gap:8px;align-items:flex-end}.ladm-section-title{font-size:12px;font-weight:700;color:var(--text-muted);margin-top:10px;text-transform:uppercase;letter-spacing:.5px}.ladm-meta-key,.ladm-meta-val{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:12px}.ladm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.ladm-photos{display:flex;flex-direction:column;gap:12px}.ladm-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.ladm-photo-card{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:1}.ladm-photo-card img{width:100%;height:100%;object-fit:cover}.ladm-photo-delete{position:absolute;top:4px;right:4px;background:#0009;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:12px}.ladm-history-list{list-style:none;padding:0;margin:0}.ladm-history-list li{padding:10px 0;border-bottom:1px solid var(--border);font-size:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.ladm-history-ts{color:var(--text-muted)}.ladm-history-user{color:var(--accent);font-weight:600}.ladm-history-action{color:var(--text);font-weight:500}.ladm-history-diff{width:100%;font-size:11px;color:var(--text-muted);padding:6px 10px;background:var(--surface-2);border-radius:6px;margin-top:4px}.ladm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:2500;display:flex;align-items:center;justify-content:center}.ladm-dialog{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;width:380px;max-width:90vw}.ladm-dialog h3{margin:0 0 14px;font-size:16px;color:var(--text)}.ladm-dialog{max-height:88vh;overflow-y:auto}.ladm-roles{margin-top:14px;border:1px solid var(--border);border-radius:8px;padding:10px 12px 12px}.ladm-roles legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:0 4px}.ladm-roles-hint{font-size:11px;color:var(--text-muted);margin:2px 0 10px;line-height:1.4}.ladm-role-field{margin-bottom:8px}.ladm-role-field select{padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px;width:100%}.ladm-emoji-btn{padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:18px;cursor:pointer;width:100%;text-align:left}.ladm-emoji-btn:hover{border-color:var(--accent)}.ladm-emoji-picker{position:absolute;top:100%;left:0;z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-md);padding:8px;display:flex;flex-wrap:wrap;gap:4px;width:260px;max-height:200px;overflow-y:auto}.ladm-emoji-opt{width:32px;height:32px;border:none;background:none;border-radius:6px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.ladm-emoji-opt:hover{background:var(--surface-2)}.ladm-emoji-custom{width:100%;margin-top:4px;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text);font-size:13px}.ladm-color-input{width:100%;height:34px;padding:2px;border:1px solid var(--border);border-radius:6px;cursor:pointer}.ladm-select{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px}.ladm-select:focus{border-color:var(--accent);outline:none}.map-ctx-menu{position:absolute;z-index:1500;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);min-width:220px;padding:6px 0;font-size:13px}.map-ctx-header{padding:6px 14px;font-size:11px;color:var(--accent);font-weight:600;font-family:monospace}.map-ctx-address{padding:2px 14px 6px;font-size:11px;color:var(--text-muted);line-height:1.3}.map-ctx-sep{height:1px;background:var(--border);margin:4px 0}.map-ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;border:none;background:none;color:var(--text);font-size:13px;cursor:pointer;text-align:left}.map-ctx-item:hover{background:var(--surface-2)}.heatmap-control{position:absolute;bottom:24px;left:12px;z-index:1000;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow-md);width:200px;font-size:12px}.heatmap-control-title{font-weight:700;font-size:13px;margin-bottom:8px;color:var(--text)}.heatmap-field{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.heatmap-field span{font-size:10px;color:var(--text-muted);font-weight:600;text-transform:uppercase}.heatmap-field select{padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text);font-size:12px}.sysd-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2500;display:flex;align-items:center;justify-content:center}.sysd-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:700px;max-width:96vw;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.sysd-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.sysd-title{font-weight:700;font-size:16px;color:var(--text)}.sysd-body{flex:1;overflow-y:auto;padding:16px 20px}.sysd-loading{text-align:center;color:var(--text-muted);padding:40px}.sysd-section{margin-bottom:20px}.sysd-section h3{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;font-weight:700}.sysd-services{display:flex;flex-direction:column;gap:6px}.sysd-service{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.sysd-service-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sysd-service--ok .sysd-service-dot{background:#22c55e}.sysd-service--error .sysd-service-dot{background:#ef4444}.sysd-service-name{font-weight:600}.sysd-service-detail{color:var(--text-muted);font-size:11px}.sysd-service-error{color:#ef4444;font-size:11px}.sysd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.sysd-stat{padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center}.sysd-stat-value{font-size:18px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.sysd-stat-label{font-size:11px;color:var(--text-muted);margin-top:2px}.sysd-stat-sub{font-size:10px;color:var(--text-muted)}.sysd-notif-form{display:flex;flex-direction:column;gap:8px}.sysd-input{padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px}.sysd-input:focus{border-color:var(--accent);outline:none}.sysd-notif-row{display:flex;gap:8px}.sysd-btn{padding:8px 16px;border:none;border-radius:6px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.sysd-btn:disabled{opacity:.4}.sysd-endpoints{margin-top:12px}.sysd-subtitle{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin:0 0 6px;font-weight:600}.sysd-table{width:100%;border-collapse:collapse;font-size:12px}.sysd-table th,.sysd-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--border)}.sysd-table th{color:var(--text-muted);font-weight:600;font-size:11px}.sysd-table tbody tr:last-child td{border-bottom:none}.sysd-table td:nth-child(1){font-family:ui-monospace,monospace;font-size:11px}.sysd-table td:nth-child(2),.sysd-table td:nth-child(3){text-align:right;color:var(--text-muted)}.modswitch{position:relative;flex-shrink:0;margin:0 6px}.modswitch-btn{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;box-shadow:inset 3px 0 0 var(--mod-color, var(--accent))}.modswitch-btn:hover{background:var(--surface-3);border-color:var(--mod-color, var(--accent))}.modswitch-emoji{font-size:15px}.modswitch-name{white-space:nowrap}.modswitch-caret{color:var(--text-dim);font-size:10px}.modswitch-menu{position:fixed;z-index:2600;min-width:300px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:2px}.modswitch-item{display:flex;align-items:center;gap:10px;text-align:left;padding:9px 10px;border:none;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;width:100%;border-left:3px solid transparent}.modswitch-item:hover{background:var(--surface-2)}.modswitch-item--active{background:var(--accent-dim);border-left-color:var(--mod-color, var(--accent))}.modswitch-item-emoji{font-size:20px;flex-shrink:0}.modswitch-item-text{display:flex;flex-direction:column;flex:1;min-width:0}.modswitch-item-name{font-weight:600;font-size:13px}.modswitch-item-blurb{font-size:11px;color:var(--text-muted)}.modswitch-item-check{color:var(--mod-color, var(--accent));font-weight:700}.home{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--surface-2);overflow:hidden}.home-scroll{height:100%;overflow-y:auto;padding:28px clamp(20px,5vw,64px) 56px}.home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.home-greet{font-size:26px;font-weight:700;letter-spacing:-.02em}.home-sub{font-size:14px;color:var(--text-muted);margin-top:2px}.home-userbox{display:flex;align-items:center;gap:8px;flex-shrink:0}.home-tag{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--accent-dim);color:var(--accent-strong)}.home-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:28px}.home-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px 18px;border-radius:16px;cursor:pointer;text-align:left;background:var(--surface);border:1px solid var(--border);transition:border-color .12s,background .12s}.home-kpi:hover{border-color:var(--accent)}.home-kpi-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:18px;line-height:1;flex-shrink:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.home-kpi-value{font-family:var(--font-display);font-size:34px;font-weight:400;line-height:1.02;letter-spacing:0}.home-kpi-label{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.13em}.home-kpi--alert .home-kpi-value{color:var(--amber)}.home-kpi--breach{border-color:var(--red)}.home-kpi--breach .home-kpi-value{color:var(--red)}.home-kpi--ok .home-kpi-value{color:var(--green)}.home-kpi--muted .home-kpi-value{color:var(--text)}.home-section{margin-bottom:30px}.home-h2{font-size:15px;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:8px}.home-footer{position:relative;margin-top:44px;padding:16px 2px 8px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.home-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft) 22%,var(--gold-soft) 78%,transparent)}.home-footer-name{font-family:var(--font-display);font-size:16px;color:var(--text)}.home-footer-city{font-family:var(--font-display);font-style:italic;font-size:16px;color:var(--gold)}.home-footer-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.home-modgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.home-modcard{position:relative;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:18px;background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--mod-color, var(--accent));transition:border-color .12s,background .12s}.home-modcard:hover{border-color:var(--accent)}.home-modcard--active{border-color:var(--mod-color, var(--accent))}.home-modcard-emoji{display:flex;align-items:center;justify-content:center;width:52px;height:52px;font-size:27px;line-height:1;flex-shrink:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg)}.home-modcard-name{font-size:15px;font-weight:700}.home-modcard-blurb{font-size:12.5px;color:var(--text-muted);line-height:1.4}.home-modcard-badge{position:absolute;top:14px;right:14px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:var(--mod-color, var(--accent));color:#fff}.home-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--mod-color, var(--border))}.home-workspace-emoji{font-size:20px}.home-enter-btn{flex-shrink:0;padding:8px 14px;border-radius:10px;cursor:pointer;border:1px solid var(--mod-color, var(--accent));background:transparent;color:var(--mod-color, var(--accent-strong));font-size:13px;font-weight:600}.home-enter-btn:hover{background:var(--accent-dim)}.home-capgroup{margin-bottom:18px}.home-caplabel{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin-bottom:8px}.home-toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.home-tool{position:relative;display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border-radius:14px;cursor:pointer;background:var(--surface);border:1px solid var(--border);transition:border-color .1s,background .1s}.home-tool:hover:not(:disabled){border-color:var(--accent)}.home-tool:disabled{opacity:.4;cursor:not-allowed}.home-tool--on{border-color:var(--accent);background:var(--accent-dim)}.home-tool-emoji{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;font-size:21px;line-height:1;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.home-tool-text{display:flex;flex-direction:column;min-width:0}.home-tool-label{font-size:13.5px;font-weight:600}.home-tool-desc{font-size:11.5px;color:var(--text-muted);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-tool-on{position:absolute;top:10px;right:12px;color:var(--accent);font-size:10px}.home-kpi:focus-visible,.home-modcard:focus-visible,.home-tool:focus-visible,.home-enter-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 640px){.home-scroll{padding:18px 14px 40px}.home-greet{font-size:21px}.modswitch-name{display:none}}.toolsmenu{display:inline-flex}.toolsmenu-panel{position:fixed;z-index:2600;min-width:300px;max-width:340px;max-height:80vh;overflow-y:auto;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg)}.toolsmenu-group{margin-bottom:8px}.toolsmenu-group:last-child{margin-bottom:0}.toolsmenu-cap{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);padding:4px 8px 3px}.toolsmenu-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;border:none;border-radius:9px;background:transparent;color:var(--text);cursor:pointer}.toolsmenu-item:hover{background:var(--surface-2)}.toolsmenu-item--on{background:var(--accent-dim)}.toolsmenu-emoji{font-size:18px;flex-shrink:0;width:22px;text-align:center}.toolsmenu-text{display:flex;flex-direction:column;min-width:0}.toolsmenu-label{font-size:13px;font-weight:600}.toolsmenu-desc{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1600px){.topbar-status{display:none}}@media (max-width: 1450px){.topbar-user-name{display:none}}
