.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;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.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{width:auto;padding:0;max-width:none!important;max-height:none!important}.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:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.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{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.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;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{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{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{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position: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:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.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-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.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{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;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:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;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{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.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{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.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{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.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{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;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{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*,:before,:after{box-sizing:border-box}html,body{width:100%;max-width:100%;height:100dvh;color:var(--color-text-primary);font-family:var(--font);background:var(--color-bg-app);-webkit-font-smoothing:antialiased;margin:0;padding:0;overflow:hidden}#root{height:100%}button,input,select{font-family:inherit}button,.ribbon-menu__tab,.ribbon-menu__tile,.pill{cursor:pointer;-webkit-tap-highlight-color:transparent}.is-hidden{display:none!important}.scroll-x{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow:auto hidden}.scroll-x::-webkit-scrollbar{display:none}.scroll-x.has-fade-end{-webkit-mask-image:linear-gradient(90deg,#000 0 calc(100% - 20px),#0000 100%);mask-image:linear-gradient(90deg,#000 0 calc(100% - 20px),#0000 100%)}.scroll-x.has-fade-start{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 20px 100%);mask-image:linear-gradient(90deg,#0000 0,#000 20px 100%)}.scroll-x.has-fade-start.has-fade-end{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 20px calc(100% - 20px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 20px calc(100% - 20px),#0000 100%)}.icon{flex-shrink:0;width:18px;height:18px;display:block}.icon--sm{width:14px;height:14px}.icon--lg{width:22px;height:22px}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--fs-md);background:var(--color-bg-white);cursor:pointer;border:1px solid #0000;font-weight:600;line-height:1;display:inline-flex}.btn--primary{color:var(--color-text-on-primary);background:var(--color-primary)}.btn--secondary{border-color:var(--color-border-strong);background:var(--color-bg-white)}.btn--ghost{color:var(--color-text-secondary);background:0 0}.btn--danger{color:var(--color-danger);background:var(--color-danger-bg)}.btn--block{width:100%}.btn--icon{width:40px;padding:0}.btn--sm{height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:12px}.btn__label{white-space:nowrap}.tag{border-radius:var(--radius-full);align-items:center;height:24px;padding:0 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.tag--on{color:var(--color-success);background:var(--color-success-bg)}.tag--off{color:var(--color-danger);background:var(--color-danger-bg)}.tag--info{color:var(--color-primary-active);background:var(--color-primary-bg)}.tag--neutral{color:var(--color-text-secondary);background:var(--color-bg-muted)}.field{align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-tertiary);font-size:var(--fs-md);background:var(--color-bg-white);display:flex}.field input,.field select{width:100%;color:var(--color-text-primary);font:inherit;font-size:var(--fs-md);background:0 0;border:0;outline:none}.field select{cursor:pointer}.field select:disabled{cursor:default;color:var(--color-text-secondary)}.field input::placeholder{color:var(--color-text-tertiary)}.field--filled{color:var(--color-text-primary)}.field--open{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.field--wrap{height:auto;min-height:44px;padding-top:6px;padding-bottom:6px}.select{width:100%;min-width:0}.select .field{width:100%;font-family:inherit;font-size:var(--fs-md);font-weight:400;line-height:var(--lh-tight);text-align:left;cursor:pointer;margin:0}.select .field:disabled,.select .field[aria-disabled=true]{cursor:default;opacity:.55}.select .field:hover:not(:disabled,.field--open){border-color:var(--color-border-strong)}.select .field:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.select__value{min-width:0;color:inherit;font:inherit;white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.select__value--empty{color:var(--color-text-tertiary)}.select__chevron{color:var(--color-text-tertiary);flex-shrink:0;align-items:center;transition:transform .16s,color .16s;display:inline-flex}.select__chevron.is-open{color:var(--color-primary);transform:rotate(180deg)}.select__menu{z-index:90;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);min-width:176px;box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:6px;animation:.16s ease-out select-in;display:flex;position:fixed;overflow:auto}.select__menu--above{animation-name:select-in-above}.select__query{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-muted);height:34px;color:var(--color-text-tertiary);font-size:var(--fs-sm);cursor:text;flex-shrink:0;align-items:center;gap:8px;margin:0 0 4px;padding:0 10px;font-weight:600;display:flex}.select__query-input{width:100%;min-width:0;color:var(--color-text-primary);font:inherit;cursor:text;background:0 0;border:0;outline:none;font-weight:600}.select__query-input::placeholder{color:var(--color-text-tertiary);font-weight:600}.select__query .icon{color:var(--color-text-secondary)}.select__empty{color:var(--color-text-tertiary);font-size:var(--fs-sm);text-align:center;padding:12px 10px;font-weight:500}.select__option{border-radius:var(--radius-sm);width:100%;min-height:36px;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;font-weight:500;display:flex}.select__option-label{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.select__option.is-active{background:var(--color-primary-bg)}.select__option.is-selected{color:var(--color-primary);font-weight:700}.select__option--disabled{color:var(--color-text-tertiary);cursor:default}.select__option--disabled.is-active{background:var(--color-bg-muted)}.select__check{color:var(--color-primary);flex-shrink:0;display:inline-flex}@keyframes select-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes select-in-above{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (hover:none) and (pointer:coarse){.select__option{min-height:40px;padding:10px}}@media (prefers-reduced-motion:reduce){.select__chevron{transition:none}.select__menu,.select__menu--above{animation:none}}.calendar{width:100%;min-width:0}.calendar .field{width:100%;font-family:inherit;font-size:var(--fs-md);font-weight:400;line-height:var(--lh-tight);text-align:left;cursor:pointer;margin:0}.calendar .field:disabled{cursor:default;opacity:.55}.calendar .field:hover:not(:disabled,.field--open){border-color:var(--color-border-strong)}.calendar .field:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.calendar__glyph,.calendar__chevron{color:var(--color-text-tertiary);flex-shrink:0;align-items:center;transition:color .16s;display:inline-flex}.calendar__glyph.is-open,.calendar__chevron.is-open{color:var(--color-primary)}.calendar__chevron{transition:transform .16s,color .16s}.calendar__chevron.is-open{transform:rotate(180deg)}.calendar__value{min-width:0;color:inherit;font:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.calendar__value--empty{color:var(--color-text-tertiary)}.calendar__panel{z-index:96;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:8px;animation:.16s ease-out calendar-in;display:flex;position:fixed;overflow:hidden}.calendar__panel--above{animation-name:calendar-in-above}.calendar__head{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;min-height:36px;display:flex}.calendar__title{color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:600;line-height:var(--lh-tight);text-align:center}.calendar__nav{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.calendar__nav:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.calendar__nav:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.calendar__nav-icon{display:inline-flex}.calendar__nav-icon--prev{transform:rotate(90deg)}.calendar__nav-icon--next{transform:rotate(-90deg)}.calendar__body{flex:auto;min-height:0;overflow:auto}.calendar__week,.calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.calendar__dow{height:24px;color:var(--color-text-tertiary);font-size:var(--fs-xs);justify-content:center;align-items:center;font-weight:600;display:flex}.calendar__dow--rest{color:var(--color-text-secondary)}.calendar__day{border-radius:var(--radius-sm);height:32px;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-weight:500;display:inline-flex}.calendar__day:hover:not(.is-selected){background:var(--color-bg-muted)}.calendar__day:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.calendar__day--rest:not(.is-selected){color:var(--color-text-secondary)}.calendar__day--out:not(.is-selected){color:var(--color-text-tertiary);font-weight:500}.calendar__day.is-today:not(.is-selected){background:var(--color-primary-bg);color:var(--color-primary);font-weight:700}.calendar__day.is-selected,.calendar__day.is-selected:hover{background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:none}.calendar__time{border-top:1px solid var(--color-border-subtle);flex-shrink:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px;padding-top:10px;display:grid}.calendar__colon{color:var(--color-text-tertiary);font-size:var(--fs-lg);padding-bottom:10px;font-weight:700}.calendar__clock-label{color:var(--color-text-tertiary);font-size:var(--fs-xs);text-align:center;margin-bottom:4px;font-weight:700;display:block}.calendar__clock-box{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);align-items:center;height:36px;display:flex;overflow:hidden}.calendar__clock-box:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.calendar__step{height:36px;color:var(--color-text-secondary);font:inherit;font-size:var(--fs-md);cursor:pointer;background:0 0;border:0;flex:0 0 28px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.calendar__step:hover{background:var(--color-primary-bg);color:var(--color-primary)}.calendar__step:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.calendar__clock-input{width:100%;min-width:0;color:var(--color-text-primary);font:inherit;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;outline:none;font-weight:700}.calendar__foot{border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.calendar__foot-start{flex-wrap:wrap;gap:4px;display:flex}.calendar__text{border-radius:var(--radius-md);height:32px;color:var(--color-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;padding:0 10px;font-weight:700}.calendar__text:hover{background:var(--color-primary-bg)}.calendar__text:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}@keyframes calendar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes calendar-in-above{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (hover:none) and (pointer:coarse){.calendar__day{height:36px}.calendar__step{flex-basis:40px}}@media (prefers-reduced-motion:reduce){.calendar__glyph,.calendar__chevron,.calendar__panel,.calendar__panel--above{transition:none;animation:none}}.lang-menu__trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.lang-menu__flag{border:1px solid color-mix(in srgb, var(--color-text-primary) 16%, transparent);width:20px;height:14px;box-shadow:var(--shadow-xs);border-radius:2px;flex:none;display:block;overflow:hidden}.lang-menu__flag svg{width:100%;height:100%;display:block}.lang-menu__flag--menu{border-radius:3px;width:28px;height:19px}.lang-menu__current{letter-spacing:.02em;font-weight:700}.lang-menu__chevron{color:var(--color-text-tertiary);transition:transform .16s;display:inline-flex}.lang-menu__chevron.is-open{color:var(--color-primary);transform:rotate(180deg)}.pill--lang.is-open{border-color:var(--color-primary-bg-strong);color:var(--color-primary);background:var(--color-primary-bg)}.login-page__lang-chip.is-open{border-color:var(--color-primary-bg-strong);color:var(--color-primary);background:var(--color-bg-white)}.lang-menu{z-index:92;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:8px;animation:.16s ease-out lang-menu-in;display:flex;position:fixed;overflow:auto}.lang-menu--above{animation-name:lang-menu-in-above}.lang-menu__caption{color:var(--color-text-tertiary);font-size:var(--fs-xs);letter-spacing:.06em;padding:2px 8px 6px;font-weight:700}.lang-menu__option{border-radius:var(--radius-md);width:100%;min-height:40px;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;font-weight:600;display:flex}.lang-menu__option.is-active{background:var(--color-bg-muted)}.lang-menu__option.is-selected{color:var(--color-primary);background:var(--color-primary-bg)}.lang-menu__option.is-selected.is-active{background:var(--color-primary-bg)}.lang-menu__name{flex:auto;min-width:0}.lang-menu__check{width:14px;color:var(--color-primary);flex:0 0 14px;justify-content:center;align-items:center;display:inline-flex}.lang-menu__check--empty{visibility:hidden}@keyframes lang-menu-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes lang-menu-in-above{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (hover:none) and (pointer:coarse){.lang-menu__option{min-height:44px}}@media (prefers-reduced-motion:reduce){.lang-menu,.lang-menu--above,.lang-menu__chevron{transition:none;animation:none}}.switch{border-radius:var(--radius-full);background:var(--color-primary);flex-shrink:0;width:36px;height:20px;position:relative}.switch:after{background:var(--color-bg-white);width:16px;height:16px;box-shadow:var(--shadow-xs);content:"";border-radius:50%;position:absolute;top:2px;left:18px}.switch--off{background:var(--switch-off)}.switch--off:after{left:2px}.popup{z-index:80;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup__dim{background:color-mix(in srgb, var(--color-text-primary) 42%, transparent);position:absolute;inset:0}.popup__card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-bg-white);width:min(720px,100%);max-height:80dvh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow:hidden}.popup__card:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.popup__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6) var(--space-3);flex-shrink:0;display:flex}.popup__title{color:var(--color-text-primary);font-size:var(--fs-lg);font-weight:700;line-height:var(--lh-tight);margin:0}.popup__close{border-radius:var(--radius-full);background:var(--color-bg-muted);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.popup__close .icon{width:16px;height:16px}.popup__close:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.popup__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.popup__close:disabled{opacity:.4;cursor:not-allowed}.popup__busy{z-index:3;background:color-mix(in srgb, var(--color-bg-white) 78%, transparent);color:var(--color-primary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.popup__busy-label{color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:700}.popup__body{min-height:0;padding:var(--space-2) var(--space-6) var(--space-5);flex:auto;overflow:auto}.popup__foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6) var(--space-5);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.popup__extra,.popup__actions{align-items:center;gap:var(--space-2);display:flex}.popup__actions{margin-left:auto}@media (width<=767px){.popup{padding:var(--space-3);align-items:flex-end}.popup__card{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:80dvh}}@media (prefers-reduced-motion:reduce){.popup__dim,.popup__card{transition:none}}.confirm-dialog{width:min(440px,100%)}.confirm-dialog__body{align-items:flex-start;gap:var(--space-4);padding-top:var(--space-2);display:flex}.confirm-dialog__glyph{border-radius:var(--radius-full);background:var(--color-danger-bg);width:48px;height:48px;color:var(--color-danger);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.confirm-dialog__text{gap:var(--space-2);flex-direction:column;flex:auto;min-width:0;display:flex}.confirm-dialog__question{color:var(--color-text-primary);font-size:var(--fs-md);font-weight:600;line-height:var(--lh-tight);margin:0}.confirm-dialog__subject{white-space:nowrap;text-overflow:ellipsis;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-muted);color:var(--color-text-primary);font-size:var(--fs-sm);margin:0;font-weight:700;overflow:hidden}.confirm-dialog__note{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:var(--lh-base);flex-wrap:wrap;margin:0;display:flex}.confirm-dialog__note.is-danger{color:var(--color-danger)}.confirm-dialog__count{color:var(--color-text-primary);font-weight:700}.confirm-dialog__kbd{padding:1px var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-white);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-xs);border-bottom-width:2px;font-weight:700}.tour{z-index:160;pointer-events:none;animation:.22s tour-in;position:fixed;inset:0}@keyframes tour-in{0%{opacity:0}}.tour__shade{z-index:0;background:color-mix(in srgb, var(--color-text-primary) 46%, transparent);pointer-events:auto;position:absolute;inset:0}.tour--lit .tour__shade{background:0 0}.tour__spot{z-index:1;border:2px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:0 0 0 100vmax color-mix(in srgb, var(--color-text-primary) 46%, transparent);pointer-events:none;transition:top .56s cubic-bezier(.16,1,.3,1),left .56s cubic-bezier(.16,1,.3,1),width .56s cubic-bezier(.16,1,.3,1),height .56s cubic-bezier(.16,1,.3,1);position:fixed}.tour__card{right:auto;bottom:var(--space-4);left:var(--space-4);z-index:2;width:min(360px, 100vw - 2 * var(--space-4));max-height:calc(100vh - 2 * var(--space-4));max-height:calc(100dvh - 2 * var(--space-4));border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-lg);pointer-events:auto;transition:top .56s cubic-bezier(.16,1,.3,1),left .56s cubic-bezier(.16,1,.3,1);position:fixed;overflow:auto}.tour__card:focus{outline:none}.tour__card-body{padding:var(--space-4);position:relative}.tour__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-right:28px;display:flex}.tour__kicker,.tour__count{margin:0;font-size:12px;font-weight:700}.tour__kicker{color:var(--color-text-tertiary)}.tour__count{color:var(--color-text-secondary)}.tour__close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-text-secondary);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:10px;right:10px}.tour__close:hover{color:var(--color-text-primary);background:var(--color-bg-muted)}.tour__steps{margin-top:var(--space-3);scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex-wrap:nowrap;gap:6px;display:flex;overflow:auto hidden}.tour__step{border:1px solid var(--color-border);border-radius:var(--radius-full);min-width:28px;height:28px;color:var(--color-text-secondary);background:var(--color-bg-white);flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:700;display:inline-flex}.tour__step.is-done{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-bg)}.tour__step.is-active{color:var(--color-text-on-primary);background:var(--color-primary);border-color:#0000}.tour__step:hover:not(.is-active){border-color:var(--color-primary);color:var(--color-primary)}.tour__step:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tour__bar .btn:disabled{cursor:default;opacity:.4}.tour__title{margin:var(--space-3) 0 var(--space-2);font-size:18px;line-height:1.3}.tour__body{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.5}.tour__bar{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.tour__bar-main{gap:var(--space-2);display:flex}@media (hover:none) and (pointer:coarse){.tour__step{min-width:36px;height:36px}}@media (prefers-reduced-motion:reduce){.tour,.tour__spot,.tour__card{transition:none;animation:none}}.spinner{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.spinner--sm{width:16px;height:16px}.spinner--lg{width:32px;height:32px}.spinner__ring{box-sizing:border-box;border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:100%;height:100%;animation:.7s linear infinite spinner-turn}.spinner--sm .spinner__ring{border-width:1.5px}@keyframes spinner-turn{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner__ring{opacity:.45;border-right-color:currentColor;animation:none}}.tooltip{z-index:90;visibility:hidden;max-width:min(240px,100vw - 16px);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-text-primary);color:var(--color-bg-white);font-size:var(--fs-xs);font-weight:600;line-height:var(--lh-tight);box-shadow:var(--shadow-md);pointer-events:none;white-space:nowrap;position:fixed}.tooltip-anchor{max-width:100%;display:inline-flex}@media (prefers-reduced-motion:reduce){.tooltip{transition:none}}.ds-page{background:var(--color-bg-subtle);height:100%;overflow:auto}.ds-page__bar{z-index:5;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-8);border-bottom:1px solid var(--color-border);background:var(--color-bg-white);display:flex;position:sticky;top:0}.ds-page__bar-title{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:700}.ds{max-width:1280px;padding:var(--space-10) var(--space-12) var(--space-16);margin:0 auto}.ds__hero{padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-end;margin-bottom:56px;display:flex}.ds__kicker{margin:0 0 var(--space-2);color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.ds__title{margin:0;font-size:40px;font-weight:700;line-height:1.15}.ds__sub{max-width:560px;margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--fs-md)}.ds__meta{color:var(--color-text-tertiary);text-align:right;font-size:12px;font-weight:600}.ds__section{margin-bottom:var(--space-16)}.ds__h{margin:0 0 var(--space-2);font-size:22px;font-weight:700}.ds__p{max-width:640px;margin:0 0 var(--space-6);color:var(--color-text-secondary);font-size:var(--fs-sm)}.ds__row{gap:var(--space-4);flex-wrap:wrap;display:flex}.ds__row--spaced{margin-bottom:var(--space-6)}.swatch{width:132px}.swatch__chip{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);height:88px;box-shadow:var(--shadow-xs)}.swatch__name{margin-top:var(--space-2);font-size:12px;font-weight:600}.swatch__hex{color:var(--color-text-tertiary);font-size:var(--fs-xs)}.type-row{gap:var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);grid-template-columns:180px 1fr 280px;align-items:baseline;display:grid}.type-row__name{color:var(--color-text-secondary);font-size:12px;font-weight:600}.type-row__spec{color:var(--color-text-tertiary);text-align:right;font-size:12px}.space-row{align-items:center;gap:var(--space-4);margin-bottom:10px;display:flex}.space-row__bar{background:var(--color-primary);border-radius:4px;height:16px}.space-row__label{color:var(--color-text-secondary);font-size:var(--fs-sm)}.radius-card,.elev-card{width:140px;padding:var(--space-5) var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;background:var(--color-bg-white)}.radius-card__shape{width:72px;height:72px;margin:0 auto var(--space-3);border:1.5px solid var(--color-primary);background:var(--color-primary-bg)}.elev-card{border:none}.ds__comp-row{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.ds__comp-row--stacked{margin-bottom:var(--space-5)}.ds__field{width:280px;max-width:100%}@media (width<=1440px){.ds{padding:var(--space-8) var(--space-8) 56px}.ds__title{font-size:34px}}@media (width<=1200px){.type-row{grid-template-columns:140px 1fr 200px}}@media (width<=1023px){.ds{padding:28px var(--space-6) var(--space-12)}.ds__hero{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-10);flex-direction:column}.ds__meta{text-align:left}.ds__title{font-size:30px}.ds__section{margin-bottom:var(--space-12)}.type-row{gap:var(--space-2) var(--space-4);grid-template-columns:96px 1fr}.type-row__spec{text-align:left;grid-column:2}}@media (width<=767px){.ds-page__bar{padding:10px var(--space-3)}.ds-page__bar-title{font-size:12px}.ds{padding:var(--space-5) var(--space-3) var(--space-10)}.ds__hero{padding-bottom:var(--space-5);margin-bottom:28px}.ds__title{font-size:var(--fs-2xl)}.ds__sub{font-size:var(--fs-sm)}.ds__section{margin-bottom:36px}.ds__h{font-size:18px}.ds__row{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px;display:grid}.swatch,.radius-card,.elev-card{width:auto}.swatch__chip{height:64px}.radius-card,.elev-card{padding:14px var(--space-2) var(--space-3);font-size:12px}.radius-card__shape{width:52px;height:52px;margin-bottom:var(--space-2)}.type-row{gap:var(--space-1);padding:var(--space-3) 0;grid-template-columns:1fr}.type-row__spec{grid-column:1}.ds__comp-row{gap:var(--space-2)}}@media (width<=400px){.ds__row{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}}.login-page{height:100%;padding:var(--space-8);justify-content:center;align-items:center;display:flex;position:relative}.login-page__back{background:radial-gradient(900px 520px at 12% 0%, var(--login-glow-1), transparent 60%), radial-gradient(700px 480px at 92% 88%, var(--login-glow-2), transparent 55%), var(--login-grad);position:absolute;inset:0}.login-page__topbar{top:var(--space-6);right:var(--space-8);left:var(--space-8);z-index:2;justify-content:space-between;display:flex;position:absolute}.login-page__lead{align-items:center;gap:var(--space-2);display:flex}.login-page__version,.login-page__lang-chip{height:32px;padding:0 var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--chip-bg);box-shadow:var(--shadow-xs);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.login-page__top-actions{gap:var(--space-2);display:flex}.login-page__lang-chip{cursor:pointer}.login-page__card{z-index:1;width:420px;padding:var(--space-10) var(--space-10) 36px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-lg);position:relative}.login-page__logo-wrap{margin-bottom:var(--space-3);text-align:center}.login-page__logo-mark{background:var(--color-primary);width:72px;height:72px;box-shadow:var(--login-mark-shadow);border-radius:18px;justify-content:center;align-items:center;margin:0 auto;display:flex}.login-page__logo-mark svg{width:34px;height:34px;color:var(--color-text-on-primary);fill:var(--color-text-on-primary)}.login-page__title{margin:var(--space-4) 0 var(--space-6);text-align:center;font-size:22px;font-weight:700}.login-page__form{gap:var(--space-3);flex-direction:column;display:flex}.login-page__submit{height:44px;margin-top:var(--space-2)}.login-page__error{color:var(--color-danger);font-size:var(--fs-sm);text-align:center;margin:0;font-weight:600}@media (width<=767px){.login-page{padding:var(--space-4)}.login-page__topbar{top:var(--space-3);right:var(--space-3);left:var(--space-3)}.login-page__card{width:100%;max-width:420px;padding:28px var(--space-5) var(--space-6);border-radius:var(--radius-lg)}.login-page__logo-mark{border-radius:16px;width:60px;height:60px}.login-page__logo-mark svg{width:28px;height:28px}.login-page__title{margin:var(--space-3) 0 var(--space-5);font-size:var(--fs-xl)}}@media (orientation:landscape) and (height<=500px){.login-page{padding:56px var(--space-3) var(--space-4);align-items:flex-start;overflow:auto}.login-page__topbar{top:var(--space-3);right:var(--space-3);left:var(--space-3)}.login-page__card{padding:var(--space-5)}.login-page__logo-mark{border-radius:12px;width:44px;height:44px}.login-page__logo-mark svg{width:22px;height:22px}.login-page__title{margin:var(--space-2) 0 14px;font-size:18px}}@keyframes landing-blink{0%,to{opacity:1}50%{opacity:.35}}@keyframes landing-side-in{0%{transform:translate(-104%)}to{transform:translate(0,0)}}@keyframes landing-side-out{0%{transform:translate(0,0)}to{transform:translate(-104%)}}@keyframes landing-fade-in{0%{opacity:0}to{opacity:1}}@keyframes landing-fade-out{0%{opacity:1}to{opacity:0}}@keyframes landing-tick{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}@keyframes landing-pop{0%{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes landing-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes landing-glow{0%,to{opacity:.7}50%{opacity:1}}@keyframes landing-drift{0%,to{transform:translate(0,0)}50%{transform:translate(-28px,18px)}}.landing{scroll-behavior:smooth;background:radial-gradient(900px 420px at 8% 0%, var(--login-glow-1), transparent 62%), var(--color-bg-app);height:100%;color:var(--color-text-primary);overflow:auto}.landing-wrap{width:min(1520px, 100% - var(--space-8) * 2);min-width:0;max-width:1520px;margin-left:auto;margin-right:auto}.landing-bar{z-index:5;border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-white) 84%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0}.landing-bar__inner{align-items:center;gap:var(--space-3);min-height:64px;display:flex}.landing-bar__brand{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-lg);background:0 0;border:0;padding:0;font-weight:700;display:inline-flex}.landing-logo--mark{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);width:40px;height:40px;box-shadow:var(--shadow-sm);flex-shrink:0;display:block;overflow:hidden}.landing-logo--mark img{object-fit:cover;object-position:center 34%;transform-origin:50% 34%;width:100%;height:100%;display:block;transform:scale(.9)}.landing-logo--lockup{width:min(240px,100%);height:auto;margin:0 0 var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-md);display:block}.landing-bar__menu{border:1px solid var(--color-border);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-primary);background:var(--color-bg-white);justify-content:center;align-items:center;padding:0;display:none}.landing-bar__burger{flex-direction:column;justify-content:center;gap:4px;width:16px;display:flex}.landing-bar__burger span{border-radius:var(--radius-full);background:currentColor;height:2px;display:block}.landing-side{z-index:40;position:fixed;inset:0}.landing-side[data-state=open] .landing-side__backdrop{animation:.28s both landing-fade-in}.landing-side[data-state=closed] .landing-side__backdrop{animation:.22s both landing-fade-out}.landing-side[data-state=open] .landing-side__panel{animation:.38s cubic-bezier(.22,1,.36,1) both landing-side-in}.landing-side[data-state=closed] .landing-side__panel{animation:.28s cubic-bezier(.4,0,1,1) both landing-side-out}.landing-side[data-state=open] .landing-side__link{animation:.5s backwards landing-rise}.landing-side__backdrop{background:color-mix(in srgb, var(--color-text-primary) 42%, transparent);border:0;position:absolute;inset:0}.landing-side__panel{gap:var(--space-5);width:min(380px,90vw);padding:var(--space-5) var(--space-4) calc(var(--space-5) + var(--safe-b));border-inline-end:1px solid var(--color-border);background:radial-gradient(320px 180px at 0% 0%, var(--color-primary-bg), transparent 70%), var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;inset-block:0;inset-inline-start:0;overflow:auto}.landing-side__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.landing-side__title{font-size:var(--fs-lg);margin:0;font-weight:700}.landing-side__close{border:1px solid var(--color-border);border-radius:var(--radius-full);width:40px;height:40px;color:var(--color-text-primary);background:var(--color-bg-white);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.landing-side__nav{gap:var(--space-2);flex-direction:column;display:flex}.landing-side__link{align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-md);text-align:start;background:0 0;border:1px solid #0000;font-weight:700;transition:background .18s,border-color .18s,transform .18s;display:flex}.landing-side__link:nth-child(2){animation-delay:40ms}.landing-side__link:nth-child(3){animation-delay:80ms}.landing-side__link:nth-child(4){animation-delay:.12s}.landing-side__link:nth-child(5){animation-delay:.16s}.landing-side__link:hover{border-color:var(--color-border);background:var(--color-bg-subtle);transform:translate(4px)}.landing-side__icon{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-primary);background:var(--color-primary-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.landing-side__label{flex:auto;min-width:0}.landing-side__foot{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;margin-top:auto;display:flex}.landing-side__tools{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.landing-side__user{width:100%;max-width:none;height:auto;min-height:52px}.landing-bar__nav{flex:auto;gap:2px;min-width:0;display:flex}.landing-bar__actions{align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:auto;display:flex}.landing-bar__actions .btn{white-space:nowrap}.landing-bar__link{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:0;font-weight:600;display:inline-flex}.landing-bar__link .icon{color:var(--color-primary)}.landing-bar__link:hover{color:var(--color-text-primary);background:var(--color-bg-muted)}.landing-user{align-items:center;gap:var(--space-2);max-width:240px;height:40px;padding:0 var(--space-3) 0 4px;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-primary);text-align:start;background:var(--color-bg-white);font-family:inherit;display:inline-flex}.landing-user__mark,.landing-hero__mark{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-on-primary);font-size:var(--fs-sm);background:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.landing-user__text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.landing-user__name,.landing-user__login{white-space:nowrap;text-overflow:ellipsis;max-width:148px;overflow:hidden}.landing-user__name{font-size:var(--fs-sm);font-weight:700}.landing-user__login{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:600}.landing-kicker{color:var(--color-primary);font-size:var(--fs-sm);margin:0;font-weight:700}.landing-hero{padding:72px 0 var(--space-12);position:relative;overflow:hidden}.landing-hero__glow,.landing-hero__drift{pointer-events:none;position:absolute}.landing-hero__glow{background:radial-gradient(520px 320px at var(--landing-px,78%) var(--landing-py,12%), var(--login-glow-2), transparent 62%);animation:7s ease-in-out infinite landing-glow;inset:0}.landing-hero__drift{border-radius:var(--radius-full);background:radial-gradient(circle, var(--login-glow-1), transparent 68%);width:520px;height:520px;animation:18s ease-in-out infinite landing-drift;top:-140px;right:4%}.landing-hero__brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.landing-hero__brand .landing-logo--mark{width:56px;height:56px}.landing-hero__id{flex-direction:column;min-width:0;display:flex}.landing-hero__name{font-size:var(--fs-lg);margin:0;font-weight:700}.landing-hero__acronym{max-width:28em;color:var(--color-text-secondary);font-size:var(--fs-xs);letter-spacing:.02em;margin:0;font-weight:600}.landing-hero__kicker{margin-bottom:var(--space-4);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--color-primary-bg);display:inline-flex}.landing-rise{animation:.7s both landing-rise}.landing-rise--2{animation-delay:80ms}.landing-rise--3{animation-delay:.16s}.landing-rise--4{animation-delay:.24s}.landing-hero__who{align-items:center;gap:var(--space-2);margin:var(--space-5) 0 0;padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-white);box-shadow:var(--shadow-xs);font-size:var(--fs-sm);flex-wrap:wrap;display:inline-flex}.landing-hero__person{font-weight:700}.landing-hero__login{color:var(--color-text-secondary);font-weight:600}.landing-hero__grid{gap:var(--space-10);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;display:grid;position:relative}.landing-hero__grid>*{min-width:0}.landing-hero__title{max-width:14em;margin:0 0 var(--space-4);font-size:42px;font-weight:600;line-height:1.15}.landing-hero__lede{max-width:38em;margin:0 0 var(--space-6);color:var(--color-text-secondary);font-size:var(--fs-lg);line-height:1.6}.landing-hero__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.landing-board{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;margin:0;display:flex}.landing-board__tabs{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-lg);background:var(--color-bg-subtle);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing-board__tab{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;min-height:40px;padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-xs);background:0 0;border:0;font-weight:700;display:inline-flex;position:relative}.landing-board__tab-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.landing-board__tab.is-selected{color:var(--color-text-primary);background:var(--color-bg-white);box-shadow:var(--shadow-sm)}.landing-board__meter{border-radius:var(--radius-full);background:var(--color-primary);transform-origin:0;height:2px;animation-name:landing-meter;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;bottom:5px;left:18%;right:18%}.landing-board__stage{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:radial-gradient(240px 140px at 12% 0%, var(--color-primary-bg), transparent 70%), var(--color-bg-subtle);flex-direction:column;flex:auto;min-height:0;display:flex;position:relative;overflow:hidden}.landing-board__face{flex:auto;min-height:0;animation:.4s both landing-swap}.landing-board__tree{gap:var(--space-2);padding:var(--space-4);flex-direction:column;justify-content:center;display:flex}.landing-board__cards{gap:var(--space-2);padding:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing-board__table,.landing-board__dispatch{gap:var(--space-2);padding:var(--space-3);flex-direction:column;justify-content:center;display:flex}.landing-board__thead,.landing-board__trow{gap:var(--space-2);min-height:40px;padding:0 var(--space-3);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,.9fr);align-items:center;display:grid}.landing-board__thead{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.landing-board__trow{border-top:1px solid var(--color-border-subtle)}.landing-board__trow.is-selected{border-radius:var(--radius-md);background:var(--color-primary-bg)}.landing-board__trow.is-off{border-radius:var(--radius-md);background:var(--color-danger-bg)}.landing-board__state{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700;display:inline-flex}.landing-board__state.is-off{color:var(--color-danger)}.landing-board__draw{padding:var(--space-4);grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;display:grid}.landing-board__symbol{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-3) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);text-align:center;flex-direction:column;display:flex}.landing-board__symbol.is-selected{border-color:var(--color-primary)}.landing-board__symbol.is-off{border-color:var(--color-danger);background:var(--color-danger-bg)}.landing-board__symbol .landing-board__name{max-width:100%}.landing-board__wire{border-radius:var(--radius-full);background:var(--color-primary);height:2px}.landing-board__wire.is-off{background:var(--color-danger)}.landing-board__saidi{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-white);flex-direction:column;gap:2px;margin:0;display:flex}.landing-board__row,.landing-board__card,.landing-board__pin,.landing-board__alert{align-items:center;gap:var(--space-3);min-width:0;min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-xs);display:flex}.landing-board__row--child{margin-inline-start:var(--space-6)}.landing-board__row--deep{margin-inline-start:var(--space-10)}.landing-board__card{flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:132px}.landing-board__row.is-selected,.landing-board__card.is-selected,.landing-board__pin.is-selected,.landing-board__alert.is-selected{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.landing-board__row.is-off,.landing-board__card.is-off,.landing-board__pin.is-off,.landing-board__alert.is-off{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));background:var(--color-danger-bg)}.landing-board__glyph{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-primary);background:var(--color-primary-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.landing-board__glyph.is-off{color:var(--color-danger);background:var(--color-bg-white)}.landing-board__copy{flex-direction:column;flex:auto;min-width:0;line-height:1.25;display:flex}.landing-board__name,.landing-board__meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.landing-board__name{font-size:var(--fs-sm);font-weight:700}.landing-board__meta{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:600}.landing-board__meta.is-off{color:var(--color-danger)}.landing-board__dot{border-radius:var(--radius-full);background:var(--color-primary);flex-shrink:0;width:8px;height:8px}.landing-board__dot.is-off{background:var(--color-danger);animation:1.6s steps(2,end) infinite landing-blink}.landing-board__map{background:radial-gradient(140px 90px at 24% 36%, var(--color-primary-bg), transparent 72%), radial-gradient(180px 120px at 72% 64%, var(--login-glow-1), transparent 74%), var(--color-bg-subtle);min-height:220px;position:relative}.landing-board__blocks{inset:var(--space-4);gap:var(--space-2);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;display:grid;position:absolute}.landing-board__block{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-white) 72%, var(--color-primary-bg))}.landing-board__pin{z-index:1;border-radius:var(--radius-full);max-width:210px;position:absolute}.landing-board__pin--root{top:16%;left:8%}.landing-board__pin--gear{top:42%;right:8%}.landing-board__pin--meter{bottom:12%;left:14%}.landing-board__caption{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600}.landing-facts{z-index:1;margin:var(--space-8) 0 0;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-md);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid;position:relative}.landing-facts__item{align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-4) var(--space-5);border-left:1px solid var(--color-border);display:flex}.landing-facts__icon{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-primary);background:var(--color-primary-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.landing-facts__item:first-child{border-left:0}.landing-facts__copy{min-width:0}.landing-facts__value{font-size:var(--fs-lg);font-weight:600;line-height:var(--lh-tight);margin:0}.landing-facts__note{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--fs-sm)}.landing-block{padding:88px 0;scroll-margin-top:80px}.landing-block__title{margin:0 0 var(--space-3);font-size:var(--fs-3xl);font-weight:600;line-height:var(--lh-tight)}.landing-block__lede{max-width:40em;margin:0 0 var(--space-8);color:var(--color-text-secondary);font-size:var(--fs-lg);line-height:1.55}.landing-chapters{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing-chapter{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white)}.landing-chapter__index{color:var(--color-primary);font-size:var(--fs-sm);font-weight:700}.landing-chapter__title{margin:var(--space-3) 0 var(--space-2);font-size:var(--fs-xl);font-weight:700}.landing-chapter__body{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.55}.landing-price__tools{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.landing-price__year-note{margin:0 0 var(--space-5);color:var(--color-text-secondary);font-size:var(--fs-sm)}.landing-price__cycle,.landing-price__presets{border-radius:var(--radius-full);background:var(--color-bg-muted);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.landing-price__team{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.landing-price__cycle-btn,.landing-price__preset{height:32px;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-sm);background:0 0;border:0;font-weight:600}.landing-price__cycle-btn.is-selected,.landing-price__preset.is-selected{color:var(--color-text-primary);background:var(--color-bg-white);box-shadow:var(--shadow-xs)}.landing-price__count{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600;display:inline-flex}.landing-price__count input{width:76px;height:36px;padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-md);text-align:center;background:var(--color-bg-white);font-weight:600}.landing-plans{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing-plan{align-items:flex-start;gap:var(--space-2);min-height:292px;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:var(--color-text-primary);text-align:start;background:var(--color-bg-white);box-shadow:var(--shadow-xs);flex-direction:column;font-family:inherit;display:flex}.landing-plan.is-selected,.landing-custom-pick.is-selected{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.landing-plan.is-muted{background:var(--color-bg-subtle)}.landing-plan__mark:empty{height:22px;display:block}.landing-plan__mark:not(:empty){height:22px;padding:0 var(--space-2);border-radius:var(--radius-full);color:var(--color-primary-active);font-size:var(--fs-xs);background:var(--color-primary-bg);align-items:center;font-weight:700;display:inline-flex}.landing-plan__name{font-size:var(--fs-xl);margin:0;font-weight:700}.landing-plan__audience{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.5}.landing-plan__range,.landing-plan__note,.landing-plan__per{color:var(--color-text-tertiary);font-size:var(--fs-xs)}.landing-plan__price{margin-top:auto;font-size:28px;font-weight:600;line-height:1.1}.landing-plan__note{min-height:1.2em}.landing-custom-pick{justify-content:space-between;align-items:center;gap:var(--space-6);width:100%;margin-top:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:inherit;text-align:start;background:var(--color-bg-white);flex-wrap:wrap;scroll-margin-top:84px;font-family:inherit;display:flex}.landing-custom-pick__copy{gap:var(--space-2);flex-direction:column;display:flex}.landing-custom-pick__price{justify-content:flex-end;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;max-width:100%;font-size:28px;font-weight:600;display:flex}.landing-build{margin-top:var(--space-8);scroll-margin-top:120px}.landing-build__title{margin:0 0 var(--space-2);font-size:var(--fs-xl);font-weight:700}.landing-build__lede{max-width:46em;margin:0 0 var(--space-5);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:1.55}.landing-build__layout{gap:var(--space-5);grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);align-items:start;display:grid}.landing-build__groups{gap:var(--space-5);flex-direction:column;display:flex}.landing-build__group-title{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.landing-build__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.landing-pick{align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3) 0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-sm);background:var(--color-bg-white);font-weight:700;transition:border-color .2s,background .2s,transform .2s;display:inline-flex}.landing-pick:hover{transform:translateY(-1px)}.landing-pick.is-on{border-color:var(--color-primary);background:var(--color-primary-bg)}.landing-pick__check{border-radius:var(--radius-full);color:#0000;background:var(--color-bg-muted);justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.landing-pick.is-on .landing-pick__check{color:var(--color-text-on-primary);background:var(--color-primary);animation:.28s both landing-tick}.landing-pick__glyph{color:var(--color-primary);display:inline-flex}.landing-pick__price{color:var(--color-text-secondary);font-weight:600}.landing-bill{gap:var(--space-3);max-height:calc(100dvh - 120px - var(--space-5));min-height:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:sticky;top:120px;overflow:hidden}.landing-bill__summary,.landing-bill__foot{gap:var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.landing-bill__foot{padding-top:var(--space-3);border-top:1px solid var(--color-border)}.landing-bill__scroll{gap:var(--space-3);flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto}.landing-bill__enter{flex-shrink:0;align-self:stretch;width:auto;max-width:100%}.landing-bill__figure{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;margin:0;font-size:32px;font-weight:600;animation:.35s both landing-pop;display:flex}.landing-bill__per,.landing-bill__invoice,.landing-bill__save,.landing-bill__empty,.landing-bill__note{color:var(--color-text-secondary);font-size:var(--fs-sm)}.landing-bill__invoice,.landing-bill__save,.landing-bill__empty,.landing-bill__note,.landing-bill__seats{margin:0}.landing-bill__lines{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.landing-bill__row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;animation:.35s both landing-rise;display:grid}.landing-bill__name{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.landing-bill__amt{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600}.landing-bill__remove{border-radius:var(--radius-full);width:28px;height:28px;color:var(--color-text-secondary);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.landing-bill__remove:hover{color:var(--color-danger);background:var(--color-bg-muted)}.landing-bill__seats{justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);font-size:var(--fs-sm);font-weight:700;display:flex}.landing-bill__clear{color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-sm);background:0 0;border:0;align-self:flex-start;padding:0;font-weight:700}.landing-bill__clear:hover{color:var(--color-text-primary)}.landing-detail{gap:var(--space-8);margin-top:var(--space-4);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-md);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);display:grid}.landing-detail.is-custom{color:var(--color-text-on-primary);background:var(--color-primary-active);border-color:#0000}.landing-detail__name{margin:0 0 var(--space-2);font-size:var(--fs-2xl);font-weight:700}.landing-detail__audience,.landing-detail__bands,.landing-detail__warn,.landing-detail__save,.landing-detail__invoice{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:1.5}.landing-detail.is-custom .landing-detail__audience,.landing-detail.is-custom .landing-detail__per{color:var(--color-text-on-primary);opacity:.86}.landing-detail__figure{align-items:baseline;gap:var(--space-2);margin:var(--space-4) 0 var(--space-2);flex-wrap:wrap;font-size:40px;font-weight:600;line-height:1;display:flex}.landing-detail__per{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600}.landing-detail__split{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing-detail__split dt,.landing-detail__facts dt{color:var(--color-text-tertiary);font-size:var(--fs-xs)}.landing-detail__split dd,.landing-detail__facts dd{margin:var(--space-1) 0 0;font-weight:700}.landing-detail.is-custom .landing-detail__split dt,.landing-detail.is-custom .landing-detail__facts dt{color:var(--color-text-on-primary);opacity:.75}.landing-detail__actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.landing-detail__includes{margin:0 0 var(--space-3);color:var(--color-text-tertiary);font-size:var(--fs-xs);font-weight:700}.landing-detail__points{margin:0;padding-left:1.15em;line-height:1.7}.landing-detail__facts{margin:var(--space-5) 0 0}.landing-detail__facts div{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border);grid-template-columns:112px minmax(0,1fr);display:grid}.landing-detail.is-custom .landing-detail__facts div{border-top-color:var(--color-border-subtle)}.landing-compare__scroller{max-width:100%;max-height:calc(100dvh - var(--landing-bar-h,64px) - var(--space-6));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);overflow:auto}.landing-compare__table{border-collapse:collapse;width:100%;min-width:960px}.landing-compare__table th,.landing-compare__table td{border-bottom:1px solid var(--color-border);font-size:var(--fs-sm);text-align:start;vertical-align:middle;padding:11px 12px;font-weight:500}.landing-compare__table thead th{z-index:2;background:var(--color-bg-white);box-shadow:inset 0 -1px 0 var(--color-border);position:sticky;top:0}.landing-compare__corner,.landing-compare__name{z-index:1;background:var(--color-bg-white);min-width:168px;position:sticky;left:0}.landing-compare__table thead .landing-compare__corner{z-index:3}.landing-compare__name{font-weight:600}.landing-compare__group{color:var(--color-text-secondary);font-size:var(--fs-xs);background:var(--color-bg-subtle);font-weight:700}.landing-compare__pick{color:inherit;font-family:inherit;font-size:inherit;text-align:start;background:0 0;border:0;padding:0;font-weight:700}.landing-compare__cell.is-selected,.landing-compare__table thead th.is-selected{background:var(--color-primary-bg)}.landing-compare__cell.is-yes{color:var(--color-success);font-weight:700}.landing-compare__cell.is-limited{color:var(--color-warning);font-weight:700}.landing-compare__cell.is-no{color:var(--color-text-tertiary)}.landing-close{gap:var(--space-8);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:start;display:grid}.landing-faq__item{border-top:1px solid var(--color-border)}.landing-faq__item summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;color:var(--color-text-primary);cursor:pointer;font-weight:700;list-style:none;display:flex}.landing-faq__item summary::-webkit-details-marker{display:none}.landing-faq__item summary:after{content:"+";color:var(--color-text-tertiary);font-weight:500}.landing-faq__item[open] summary:after{content:"–"}.landing-faq__item p{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:1.55}.landing-close__aside{padding:var(--space-8);border-radius:var(--radius-xl);color:var(--color-text-on-primary);background:var(--color-primary-active)}.landing-close__title{margin:0 0 var(--space-3);font-size:var(--fs-2xl);font-weight:600;line-height:var(--lh-tight)}.landing-close__lede{margin:0 0 var(--space-5);font-size:var(--fs-sm);opacity:.86;line-height:1.55}.landing-foot{padding:var(--space-6) 0 calc(var(--space-8) + var(--safe-b));border-top:1px solid var(--color-border)}.landing-foot__inner{justify-content:space-between;align-items:baseline;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.landing-foot__inner p{margin:0}.landing-foot__brand{color:var(--color-text-primary);font-weight:700}.landing-plan:focus-visible,.landing-pick:focus-visible,.landing-bill__remove:focus-visible,.landing-bill__clear:focus-visible,.landing-custom-pick:focus-visible,.landing-bar__link:focus-visible,.landing-bar__brand:focus-visible,.landing-bar__menu:focus-visible,.landing-side__link:focus-visible,.landing-side__close:focus-visible,.landing-side__backdrop:focus-visible,.landing-stage__gate:focus-visible,.landing-user:focus-visible,.landing-board__tab:focus-visible,.landing-price__cycle-btn:focus-visible,.landing-price__preset:focus-visible,.landing-compare__pick:focus-visible,.landing-price__count input:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}@media (width<=1200px){.landing-hero__title{font-size:38px}.landing-build__layout{flex-direction:column;display:flex}.landing-bill{top:calc(var(--landing-bar-h,64px) + var(--space-3));z-index:4;width:100%;max-height:min(440px, 100dvh - var(--landing-bar-h,64px) - var(--space-6));order:-1;align-self:stretch;position:sticky}}@media (width<=1023px){.landing-hero__grid,.landing-detail,.landing-close{grid-template-columns:1fr}.landing-chapters,.landing-plans,.landing-facts{grid-template-columns:1fr 1fr}.landing-bar__nav{display:none}.landing-bar__menu{display:inline-flex}.landing-user{display:none}.landing-side__user{display:flex}.landing-bar__inner{min-height:0;padding-top:var(--space-2);padding-bottom:var(--space-2)}.landing-block,.landing-custom-pick{scroll-margin-top:120px}.landing-facts__item:nth-child(odd){border-left:0}.landing-facts__item:nth-child(n+3){border-top:1px solid var(--color-border)}}@media (width<=767px){.landing-wrap{width:min(1520px, 100% - var(--space-4) * 2)}.landing-hero{padding:var(--space-5) 0 var(--space-10)}.landing-bar__name,.landing-bar__lang{display:none}.landing-bar__actions .btn{padding-right:var(--space-3);padding-left:var(--space-3)}.landing-compare__scroller{width:calc(100% + var(--space-4) * 2);max-width:none;max-height:calc(100dvh - var(--landing-bar-h,64px) - var(--space-4));margin-right:calc(var(--space-4) * -1);margin-left:calc(var(--space-4) * -1);border-left:0;border-right:0;border-radius:0}.landing-hero__actions{grid-template-columns:1fr;display:grid}.landing-hero__actions .btn{width:100%}.landing-hero__title{font-size:34px}.landing-board__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-board__cards,.landing-board__draw{grid-template-columns:1fr}.landing-board__wire{justify-self:center;width:2px;height:16px}.landing-block{padding:var(--space-12) 0;scroll-margin-top:88px}.landing-chapters,.landing-plans,.landing-facts{grid-template-columns:1fr}.landing-facts__item{border-top:1px solid var(--color-border);border-left:0}.landing-facts__item:first-child{border-top:0}.landing-plan{min-height:0}.landing-custom-pick{flex-direction:column;align-items:flex-start;scroll-margin-top:168px}.landing-custom-pick__price{align-items:flex-start}.landing-detail{padding:var(--space-5)}.landing-detail__split{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.landing-detail__facts div{grid-template-columns:104px minmax(0,1fr);align-items:baseline}}@media (width<=400px){.landing-hero__title{font-size:30px}}@media (hover:none) and (pointer:coarse){.landing-price__cycle-btn,.landing-price__preset,.landing-pick{height:44px}.landing-bar__link{min-height:44px}}@media (prefers-reduced-motion:reduce){.landing{scroll-behavior:auto}.landing-hero__glow,.landing-hero__drift,.landing-rise,.landing-pick.is-on .landing-pick__check,.landing-bill__figure,.landing-bill__row,.landing-board__face,.landing-board__meter,.landing-board__dot.is-off,.landing-side__panel,.landing-side__backdrop,.landing-side__link{animation:none}.landing-facts__item,.landing-pick,.landing-side__link{transition:none}.landing-pick:hover,.landing-side__link:hover{transform:none}}.network-demo__name{min-width:0;color:var(--color-text-primary);font-size:var(--fs-lg);overflow-wrap:anywhere;flex:1;margin:0}.landing-products{padding-block:var(--space-8)}.landing-products__links{gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}@keyframes landing-rail{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes landing-meter{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes landing-swap{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes landing-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes landing-sheen{0%{transform:translate(-130%)}to{transform:translate(320%)}}.landing-rail{padding:var(--space-8) 0;border-block:1px solid var(--color-border);background:var(--color-bg-white);overflow:hidden}.landing-rail__head{margin-bottom:var(--space-5)}.landing-rail__title{margin:0 0 var(--space-2);font-size:var(--fs-xl);font-weight:700}.landing-rail__lede{max-width:40em;color:var(--color-text-secondary);font-size:var(--fs-md);margin:0;line-height:1.55}.landing-rail__viewport{overflow:hidden}.landing-rail__track{width:max-content;animation:48s linear infinite landing-rail;display:flex}.landing-rail:hover .landing-rail__track{animation-play-state:paused}.landing-rail__set{gap:var(--space-3);padding:0 var(--space-3) 0 0;margin:0;list-style:none;display:flex}.landing-rail__item{align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-primary);font-size:var(--fs-sm);white-space:nowrap;background:var(--color-bg-subtle);font-weight:700;display:inline-flex}.landing-cards{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.landing-cards--ahead{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-card{gap:var(--space-3);min-height:220px;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-xs);flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.landing-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}.landing-card--quiet{background:var(--color-bg-subtle)}.landing-card__icon{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-primary);background:var(--color-primary-bg);justify-content:center;align-items:center;display:flex}.landing-card__title{font-size:var(--fs-lg);margin:0;font-weight:700}.landing-card__body{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.55}.landing-stage{gap:var(--space-4);flex-direction:column;display:flex}.landing-nets{gap:var(--space-1);margin:0 0 var(--space-5);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-muted);flex-wrap:wrap;display:inline-flex}.landing-net{align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4) 0 var(--space-1);border-radius:var(--radius-full);color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-sm);background:0 0;border:1px solid #0000;font-weight:700;transition:color .2s,background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.landing-net:hover{color:var(--color-text-primary)}.landing-net.is-selected{color:var(--color-text-primary);background:var(--color-bg-white);box-shadow:var(--shadow-sm)}.landing-net__mark{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:color .2s,background .2s;display:inline-flex}.landing-net__label{white-space:nowrap}.landing-net[data-net=electric] .landing-net__mark{color:var(--color-warning);background:var(--color-warning-bg)}.landing-net[data-net=electric].is-selected{border-color:color-mix(in srgb, var(--color-warning) 42%, var(--color-border));background:color-mix(in srgb, var(--color-warning-bg) 72%, var(--color-bg-white))}.landing-net[data-net=electric].is-selected .landing-net__mark{color:var(--color-text-on-primary);background:var(--color-warning)}.landing-net[data-net=gas] .landing-net__mark{color:color-mix(in srgb, var(--color-warning) 38%, var(--color-danger));background:color-mix(in srgb, var(--color-warning-bg) 78%, var(--color-danger-bg))}.landing-net[data-net=gas].is-selected{border-color:color-mix(in srgb, var(--color-warning) 48%, var(--color-danger));background:color-mix(in srgb, var(--color-warning-bg) 84%, var(--color-bg-white))}.landing-net[data-net=gas].is-selected .landing-net__mark{color:var(--color-text-on-primary);background:color-mix(in srgb, var(--color-warning) 42%, var(--color-danger))}.landing-net[data-net=water] .landing-net__mark{color:var(--color-primary);background:var(--color-primary-bg)}.landing-net[data-net=water].is-selected{border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));background:color-mix(in srgb, var(--color-primary-bg) 72%, var(--color-bg-white))}.landing-net[data-net=water].is-selected .landing-net__mark{color:var(--color-text-on-primary);background:var(--color-primary)}.landing-stage__tabs{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.landing-stage__tab{justify-content:center;align-items:center;gap:var(--space-2);min-height:88px;padding:var(--space-3) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-family:inherit;font-size:var(--fs-sm);text-align:center;background:var(--color-bg-white);flex-direction:column;font-weight:700;line-height:1.2;display:flex;position:relative;overflow:hidden}.landing-stage__glyph{color:var(--color-primary);display:inline-flex}.landing-stage__tab.is-selected{border-color:var(--color-primary);color:var(--color-text-primary);background:var(--color-primary-bg)}.landing-stage__meter{background:var(--color-primary);transform-origin:0;height:2px;animation:5.6s linear forwards landing-meter;position:absolute;bottom:0;left:0;right:0}.landing-stage__tilt{min-width:0;transform:perspective(1100px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .45s}.landing-stage__panel{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);min-width:0;box-shadow:var(--shadow-md);flex-direction:column;animation:8s ease-in-out infinite landing-float;display:flex;overflow:hidden}.landing-stage.is-held .landing-stage__panel{animation-play-state:paused}.landing-stage__hint{max-width:46em;margin:calc(var(--space-8) * -1) 0 var(--space-6);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:1.55}.landing-stage__frame{min-height:320px;animation:.45s both landing-swap;position:relative}.landing-stage__gate{z-index:3;padding:var(--space-4);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:flex-end;font-weight:700;display:flex;position:absolute;inset:0}.landing-stage__gate span{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-bg-white) 92%, transparent);box-shadow:var(--shadow-md)}.landing-stage__copy{padding:var(--space-5);border-top:1px solid var(--color-border)}.landing-stage__title{margin:0 0 var(--space-2);font-size:var(--fs-xl);font-weight:700}.landing-stage__body{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.55}.landing-window__chrome{align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);display:flex;position:relative;overflow:hidden}.landing-window__chrome:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-bg-white) 72%, transparent), transparent);pointer-events:none;width:38%;animation:5.2s ease-in-out infinite landing-sheen;position:absolute;top:0;bottom:0;left:0}.landing-window__dots{gap:6px;display:inline-flex}.landing-window__dots span{border-radius:var(--radius-full);background:var(--color-border-strong);width:8px;height:8px}.landing-window__dots span:first-child{background:var(--color-danger)}.landing-window__dots span:nth-child(2){background:var(--color-warning)}.landing-window__mark{color:var(--color-primary);display:inline-flex}.landing-window__title{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:700}.landing-window__stage{background:var(--diagram-bg);min-height:280px}.landing-window__stage--live{background:var(--color-bg-app);overscroll-behavior:contain;height:640px;min-height:0;display:flex;position:relative;overflow:hidden}.landing-window__stage--live>.landing-live.view{box-shadow:none;opacity:0;pointer-events:none;border:0;border-radius:0;flex-direction:column;transition:opacity .4s;display:flex;position:absolute;inset:0}.landing-window__stage--live>.landing-live.view.is-active{z-index:1;opacity:1;pointer-events:auto}.landing-live>.view-split__body{flex:1;min-height:0}.landing-domains{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.landing-domain{align-items:center;gap:var(--space-2);min-height:52px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:inherit;font-size:var(--fs-sm);text-align:start;background:var(--color-bg-white);font-weight:700;transition:border-color .2s,background .2s,transform .2s;display:flex}.landing-domain__icon{color:var(--color-primary);flex-shrink:0;display:inline-flex}.landing-domain:hover{border-color:var(--color-primary);transform:translateY(-2px)}.landing-domain.is-selected{border-color:var(--color-primary);background:var(--color-primary-bg)}.landing-domain-note{margin-top:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-white);box-shadow:var(--shadow-xs);animation:.35s both landing-swap}.landing-domain-note__title{margin:0 0 var(--space-2);font-size:var(--fs-lg);font-weight:700}.landing-domain-note__body{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;line-height:1.55}.landing-reveal.is-in{animation:.7s both landing-rise}.landing-facts.landing-reveal.is-in,.landing-reveal.is-in .landing-cards,.landing-reveal.is-in .landing-domains{animation:none}.landing-facts.landing-reveal.is-in .landing-facts__item,.landing-reveal.is-in .landing-card,.landing-reveal.is-in .landing-domain{animation:.6s both landing-rise}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(2),.landing-reveal.is-in .landing-card:nth-child(2),.landing-reveal.is-in .landing-domain:nth-child(2){animation-delay:70ms}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(3),.landing-reveal.is-in .landing-card:nth-child(3),.landing-reveal.is-in .landing-domain:nth-child(3){animation-delay:.14s}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(4),.landing-reveal.is-in .landing-card:nth-child(4),.landing-reveal.is-in .landing-domain:nth-child(4){animation-delay:.21s}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(5),.landing-reveal.is-in .landing-card:nth-child(5),.landing-reveal.is-in .landing-domain:nth-child(5){animation-delay:.28s}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(6),.landing-reveal.is-in .landing-card:nth-child(6),.landing-reveal.is-in .landing-domain:nth-child(6){animation-delay:.35s}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(7),.landing-reveal.is-in .landing-card:nth-child(7),.landing-reveal.is-in .landing-domain:nth-child(7){animation-delay:.42s}.landing-facts.landing-reveal.is-in .landing-facts__item:nth-child(8),.landing-reveal.is-in .landing-card:nth-child(8),.landing-reveal.is-in .landing-domain:nth-child(8){animation-delay:.49s}.landing-stage__tab:focus-visible,.landing-net:focus-visible,.landing-domain:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}@media (width<=1200px){.landing-cards,.landing-domains{grid-template-columns:1fr 1fr}.landing-stage__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1023px){.landing-stage__tabs{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;display:flex;overflow:auto hidden}.landing-stage__tab{flex:none;min-width:112px}.landing-cards--ahead{grid-template-columns:1fr}.landing-window__stage--live{height:520px}}@media (width<=767px){.landing-nets{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex-wrap:nowrap;width:100%;display:flex;overflow:auto hidden}.landing-net{flex:1 0 auto;justify-content:center}.landing-cards,.landing-domains,.landing-cards--ahead{grid-template-columns:1fr}.landing-window__stage--live{height:420px}}@media (prefers-reduced-motion:reduce){.landing-stage__meter,.landing-stage__frame,.landing-stage__panel,.landing-window__chrome:after,.landing-domain-note,.landing-reveal.is-in,.landing-facts.landing-reveal.is-in .landing-facts__item,.landing-reveal.is-in .landing-card,.landing-reveal.is-in .landing-domain{animation:none}.landing-stage__tilt{transition:none;transform:none}.landing-rail__track{width:auto;padding:0 var(--space-4);flex-wrap:wrap;justify-content:center;animation:none}.landing-rail__set{flex-wrap:wrap;justify-content:center}.landing-rail__set--copy{display:none}.landing-card,.landing-domain{transition:none}.landing-card:hover,.landing-domain:hover{transform:none}}.app-layout{background:var(--color-bg-app);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--color-border);background:var(--color-bg-white);box-shadow:var(--shadow-xs);flex-shrink:0}.ribbon-menu__top-row{min-height:var(--header-tabs-h);border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);align-items:stretch;display:flex}.ribbon-menu__tabs{min-width:0;padding:0 var(--space-4);flex:1;align-items:center;gap:2px;display:flex}.ribbon-menu__tab{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);height:36px;color:var(--color-text-secondary);font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:none;padding:0 14px;font-weight:500;display:inline-flex}.ribbon-menu__tab.is-active{color:var(--color-primary);background:var(--color-primary-bg);font-weight:700}.ribbon-menu__actions{align-items:center;gap:var(--space-2);padding:0 var(--space-4) 0 var(--space-3);border-left:1px solid var(--color-border);display:flex}.ribbon-menu__actions-main{align-items:center;gap:inherit;min-width:0;display:flex}.ribbon-menu__actions-end{display:contents}.ribbon-menu__utility{padding-right:var(--space-2);flex:none;gap:6px}.ribbon-menu__utility:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ribbon-menu__utility-label{font-weight:600}.pill{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3) 0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--fs-sm);background:var(--color-bg-white);box-shadow:var(--shadow-xs);font-weight:500;display:inline-flex}.pill--icon{justify-content:center;width:36px;padding:0}.pill__label{white-space:nowrap}.pill.is-active{border-color:var(--color-primary-bg-strong);color:var(--color-primary);background:var(--color-primary-bg)}.ribbon-menu__tour{width:36px;color:var(--color-text-on-primary);background:var(--color-primary);border-color:#0000;justify-content:center;padding:0}.ribbon-menu__tour.is-active{color:var(--color-text-on-primary);background:var(--color-primary-active);border-color:#0000}.pill--danger{width:36px;color:var(--color-danger);background:var(--color-danger-bg);border-color:#0000;justify-content:center;padding:0;font-weight:600}.ribbon-menu__translate{justify-content:center;width:36px;padding:0}.avatar{background:var(--color-primary);border-radius:50%;width:24px;height:24px}.ribbon-menu__actions-divider{background:var(--color-border);width:1px;height:20px}.ribbon-menu__role{padding-right:var(--space-2);flex:none;gap:6px}.ribbon-menu__role:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ribbon-menu__role.is-open,.ribbon-menu__theme.is-open,.ribbon-menu__utility.is-open{border-color:var(--color-primary-bg-strong);color:var(--color-primary);background:var(--color-primary-bg)}.ribbon-menu__theme:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ribbon-menu__role-label{font-weight:600}.ribbon-role__chevron{color:var(--color-text-tertiary);transition:transform .16s;display:inline-flex}.ribbon-role__chevron.is-open{color:var(--color-primary);transform:rotate(180deg)}.ribbon-role{z-index:92;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:8px;animation:.16s ease-out ribbon-role-in;display:flex;position:fixed;overflow:auto}.ribbon-role--above{animation-name:ribbon-role-in-above}.ribbon-role__caption{color:var(--color-text-tertiary);font-size:var(--fs-xs);letter-spacing:.06em;padding:2px 8px 6px;font-weight:700}.ribbon-role__option{border-radius:var(--radius-md);width:100%;min-height:40px;color:var(--color-text-primary);font-size:var(--fs-sm);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;font-weight:600;display:flex}.ribbon-role__option.is-active{background:var(--color-bg-muted)}.ribbon-role__option.is-selected{color:var(--color-primary);background:var(--color-primary-bg)}.ribbon-role__name{flex:auto;min-width:0}.ribbon-role__check{width:14px;color:var(--color-primary);flex:0 0 14px;justify-content:center;align-items:center;display:inline-flex}.ribbon-role__check--empty{visibility:hidden}@keyframes ribbon-role-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes ribbon-role-in-above{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ribbon-menu__collapse{display:none}.ribbon-menu__collapse .icon{transition:transform .18s}.app-layout.is-ribbon-collapsed .ribbon-menu__collapse .icon{transform:rotate(-180deg)}.app-layout.is-ribbon-collapsed .ribbon-menu__content{display:none}.ribbon-drawer{z-index:74;position:fixed;inset:0}.ribbon-drawer__dim{background:color-mix(in srgb, var(--color-text-primary) 28%, transparent);position:absolute;inset:0}.ribbon-drawer__panel{gap:var(--space-4);width:min(320px,100%);height:100%;padding:var(--space-4);border-left:1px solid var(--color-border);background:var(--color-bg-white);box-shadow:var(--shadow-lg);flex-direction:column;animation:.18s ease-out ribbon-drawer-in;display:flex;position:absolute;top:0;right:0}.ribbon-drawer__head{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ribbon-drawer__name{min-width:0;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:700;overflow:hidden}.ribbon-drawer__close{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-secondary);background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.ribbon-drawer__close:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.ribbon-drawer__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ribbon-drawer__body{gap:var(--space-2);flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.ribbon-drawer .ribbon-menu__role{justify-content:space-between;width:100%}.ribbon-drawer .ribbon-menu__role-label{max-width:none}.ribbon-drawer__row{align-items:center;gap:var(--space-2);min-height:44px;display:flex}.ribbon-drawer__label{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600}.ribbon-drawer__value{min-width:0;color:var(--color-text-primary);font-size:var(--fs-sm);text-align:right;flex:1;font-weight:600}.ribbon-drawer .pill--lang{flex:none;margin-left:auto;display:inline-flex}.ribbon-drawer__action,.ribbon-drawer__logout{align-items:center;gap:var(--space-2);width:100%;height:40px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--fs-sm);background:var(--color-bg-white);font-weight:600;display:flex}.ribbon-drawer__action.is-active{border-color:var(--color-primary-bg-strong);color:var(--color-primary);background:var(--color-primary-bg)}.ribbon-drawer__logout{color:var(--color-danger);background:var(--color-danger-bg);border-color:#0000;justify-content:center;margin-top:auto}.ribbon-drawer__action:focus-visible,.ribbon-drawer__logout:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}@keyframes ribbon-drawer-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.ribbon-menu__content{justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--header-content-h);padding:var(--space-3) var(--space-5);background:var(--color-bg-white);display:none}.ribbon-menu__content.is-active{display:flex}.ribbon-menu__tiles{padding:var(--space-1) 0;align-items:center;gap:10px;display:flex}.ribbon-menu__tile{justify-content:center;align-items:center;gap:var(--space-1);min-width:72px;height:64px;padding:6px var(--space-2) var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);background:0 0;border:1px solid #0000;flex-direction:column;display:flex}.ribbon-menu__tile.is-active{border-color:var(--color-border);color:var(--color-primary);background:var(--color-bg-white);box-shadow:var(--shadow-sm)}.ribbon-menu__tile-icon{justify-content:center;align-items:center;width:28px;height:28px;display:flex}.ribbon-menu__tile-icon .icon{width:22px;height:22px}.ribbon-menu__tile-label{text-align:center;font-size:10px;font-weight:600;line-height:1.2}.ribbon-menu__search{align-items:center;gap:var(--space-2);width:280px;height:40px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-tertiary);font-size:var(--fs-sm);background:var(--color-bg-subtle);display:flex}.ribbon-menu__find{flex-shrink:0;position:relative}.ribbon-menu__filter-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.ribbon-menu__filter-btn.is-on{color:var(--color-primary);background:var(--color-primary-bg)}.ribbon-menu__scan-btn{border:1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border));border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-primary);background:var(--color-primary-bg);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-primary) 18%, transparent);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.ribbon-menu__scan-btn .icon{width:16px;height:16px}.ribbon-menu__scan-btn:hover,.ribbon-menu__scan-btn.is-on{color:var(--color-text-on-primary);background:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.ribbon-menu__filter{z-index:56;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);width:240px;max-height:320px;box-shadow:var(--shadow-lg);padding:8px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.ribbon-menu__filter-head{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);justify-content:space-between;align-items:center;margin-bottom:6px;padding:0 4px 6px;font-size:12px;font-weight:600;display:flex}.ribbon-menu__filter-clear{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.ribbon-menu__filter-clear:disabled{color:var(--color-text-tertiary);cursor:default}.ribbon-menu__filter-row{border-radius:var(--radius-sm);width:100%;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 4px;font-size:13px;display:flex}.ribbon-menu__filter-row:hover{background:var(--color-bg-subtle)}.ribbon-menu__search input{width:100%;color:var(--color-text-primary);font-size:var(--fs-sm);background:0 0;border:0;outline:none}.ribbon-menu__search input::placeholder{color:var(--color-text-tertiary)}.ribbon-menu__tools{gap:6px;padding:3px 0;display:flex}.ribbon-menu__tool-row{flex:0 auto;align-items:center;gap:6px;min-width:0;display:flex}.ribbon-menu__tool-row .ribbon-menu__tools{order:0}.split-layout{flex-shrink:0;position:relative}.split-layout__menu{z-index:40;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);width:232px;box-shadow:var(--shadow-md);grid-template-columns:1fr 1fr;gap:6px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.split-layout__option{border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;display:flex}.split-layout__option.is-active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-bg)}.split-layout__glyph{gap:2px;width:36px;height:28px;display:grid}.split-layout__cell{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:2px}.app-main{min-height:0;padding:var(--app-pad-y) calc(var(--app-pad-x) + var(--safe-r)) calc(var(--app-pad-x) + var(--safe-b)) calc(var(--app-pad-x) + var(--safe-l));flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.network-load{z-index:30;background:var(--color-bg-app);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.network-load__card{align-items:center;gap:var(--space-3);max-width:320px;padding:var(--space-6) var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-sm);text-align:center;flex-direction:column;display:flex}.network-load__mark{border-radius:var(--radius-full);background:var(--color-primary-bg);width:56px;height:56px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex}.network-load__title{color:var(--color-text-primary);font-size:var(--fs-md);margin:0;font-weight:700}.network-load__copy{max-width:28ch;color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;font-weight:500;line-height:1.45}.view{flex:1;min-height:0;display:none}.view.is-active{flex-direction:column;display:flex}.view-split{flex:1;min-width:0;min-height:0;display:grid;position:relative}.view-split>.view.is-active{min-width:0;min-height:0}.view-split.is-resizing-col,.view-split.is-resizing-col .view-split__gutter{cursor:col-resize}.view-split.is-resizing-row,.view-split.is-resizing-row .view-split__gutter{cursor:row-resize}.view-split.is-resizing-col,.view-split.is-resizing-row{-webkit-user-select:none;user-select:none}.view-split__body{flex-direction:column;flex:1;align-self:stretch;width:100%;min-width:0;min-height:0;display:flex;position:relative}.statistics-view>.view-split__body,.reports-view>.view-split__body,.catalogs-view>.view-split__body,.outage-log-view>.view-split__body,.about-view>.view-split__body{display:block;overflow:auto}.diagram-view>.view-split__body{flex-direction:row;align-items:stretch;gap:16px}.view-split.is-tiled>.diagram-view.is-active{flex-direction:column;gap:0}.view-split.is-tiled>.view.is-focused{box-shadow:var(--shadow-xs), inset 0 0 0 2px var(--color-primary)}.view-split__bar{border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);flex-shrink:0;align-items:center;height:44px;padding:4px 8px;display:flex}.view-split.is-tiled>.view.is-focused>.view-split__bar{background:var(--color-primary-bg)}.view-split__pick{width:100%;min-width:0;color:var(--color-text-tertiary);font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.view-split__pick .select{flex:1;width:auto}.view-split__pick .select .field{height:36px;font-size:var(--fs-sm);padding:0 10px}.view-split__gutter{z-index:6;touch-action:none;position:absolute}.view-split__gutter--col{cursor:col-resize;width:10px;margin-left:-5px}.view-split__gutter--row{cursor:row-resize;height:10px;margin-top:-5px}.view-split__gutter:after{content:"";background:var(--color-border);position:absolute}.view-split__gutter--col:after{width:2px;top:0;bottom:0;left:4px}.view-split__gutter--row:after{height:2px;top:4px;left:0;right:0}.view-split__gutter:hover:after,.view-split__gutter:focus-visible:after,.view-split__gutter.is-dragging:after{background:var(--color-primary)}.excel-view-wrap,.organization-view,.map-view,.about-view{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);height:100%;box-shadow:var(--shadow-xs);overflow:hidden}.about-view{padding:var(--space-8);align-items:flex-start}.about-view h1{margin:0 0 var(--space-2);font-size:22px}.about-view p{color:var(--color-text-secondary);font-size:var(--fs-md);margin:0}.about-view__release{width:min(100%,560px);padding-block:var(--space-8);margin-inline:auto}.about-view__badge{max-width:100%;margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);color:var(--color-primary);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;display:inline-block}.about-view__details{gap:var(--space-4);margin:var(--space-6) 0 0;padding-top:var(--space-6);border-top:1px solid var(--color-border);font-size:var(--fs-sm);display:grid}.about-view__details dt{margin-bottom:var(--space-1);color:var(--color-text-secondary)}.about-view__details dd{overflow-wrap:anywhere;margin:0}.popup__card.translation-dialog{width:min(640px,100%)}.translation-dialog__key{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0 0 var(--space-3);font-size:var(--fs-sm)}.translation-dialog__note{margin:var(--space-3) 0 0;color:var(--color-text-secondary);font-size:var(--fs-sm)}html.is-translating .app-layout{cursor:pointer}@media (width<=1440px){.ribbon-menu__tabs{padding:0 var(--space-3)}.ribbon-menu__tab{padding:0 10px;font-size:12px}.ribbon-menu__content{padding:10px var(--space-4)}.ribbon-menu__tile{min-width:64px;height:60px}.ribbon-menu__tile-icon{width:24px;height:24px}.ribbon-menu__tile-icon .icon{width:20px;height:20px}.ribbon-menu__search{width:220px}}@media (width<=1200px){.pill--user{justify-content:center;width:36px;padding:0}.pill--user .pill__label{display:none}.ribbon-menu__search{width:200px}}@media (width<=1023px){.ribbon-menu__content{height:auto;padding:10px var(--space-3);flex-wrap:wrap;row-gap:10px}.ribbon-menu__tiles{gap:var(--space-2);flex:100%;order:1}.ribbon-menu__find,.ribbon-menu__search{flex:200px;order:2;width:auto;min-width:0}.ribbon-menu__tools,.ribbon-menu__tool-row{flex:0 auto;order:3;min-width:0}.ribbon-menu__tabs{padding:0 var(--space-2)}.ribbon-menu__tab{height:34px}.ribbon-menu__actions{gap:var(--space-2);max-width:none;padding:0 var(--space-2);flex:none}.ribbon-menu__actions-end{align-items:center;gap:inherit;flex:none;display:flex}.ribbon-menu__actions-divider{display:none}.ribbon-menu__collapse{display:inline-flex}.ribbon-menu__role-label{white-space:nowrap;text-overflow:ellipsis;max-width:5.5rem;overflow:hidden}.pill--lang{display:none}.diagram-view>.view-split__body{gap:0}}@media (width<=767px){.ribbon-menu__top-row{flex-wrap:wrap;min-height:0}.ribbon-menu__tabs{min-height:44px;padding:0 var(--space-2);flex:100%;order:1}.ribbon-menu__tab{height:36px;padding:0 var(--space-2);gap:6px;font-size:12px}.ribbon-menu__tab .icon{width:16px;height:16px}.ribbon-menu__actions{justify-content:space-between;gap:var(--space-2);max-width:none;min-height:44px;padding:6px var(--space-3);border-top:1px solid var(--color-border);border-left:0;flex:100%;order:2}.ribbon-menu__utility-label{white-space:nowrap;text-overflow:ellipsis;max-width:6.5rem;overflow:hidden}.pill{height:32px}.pill--icon,.ribbon-menu__tour,.ribbon-menu__translate,.pill--danger{width:32px}.pill--user{display:none}.ribbon-menu__role{padding-left:var(--space-2)}.ribbon-menu__role-label{max-width:4rem}.ribbon-menu__content{gap:var(--space-2);padding:var(--space-2)}.ribbon-menu__tiles{gap:var(--space-2);flex-wrap:nowrap;flex:100%;order:1;min-width:0}.ribbon-menu__tile{min-width:72px;height:56px;padding:var(--space-1) var(--space-2) 6px;flex:none}.ribbon-menu__tile-icon{width:22px;height:22px}.ribbon-menu__tile-icon .icon{width:18px;height:18px}.ribbon-menu__tile-label{white-space:nowrap;font-size:11px}.ribbon-menu__find{flex:100%;order:2;width:100%;min-width:0}.ribbon-menu__search{width:100%;height:40px}.ribbon-menu__translate{display:none}.ribbon-menu__tool-row{flex:100%;order:3}.ribbon-menu__tools{flex:auto;justify-content:space-between;min-width:0}.ribbon-menu__tools .btn{flex:1 1 0;height:40px}:is(.ribbon-menu__tools .btn--icon,.ribbon-menu__tools .btn:has(.btn__label)){width:auto;min-width:40px;padding:0}.ribbon-menu__tools .btn__label{display:none}}@media (width<=400px){.ribbon-menu__tile{height:52px}.ribbon-menu__tile-label{font-size:10px}.ribbon-menu__search{height:36px}.ribbon-menu__role-label{max-width:3.25rem}}@media (orientation:landscape) and (height<=500px){.ribbon-menu__top-row{min-height:40px}.ribbon-menu__tab{height:30px}.ribbon-menu__content{padding:6px var(--space-2);row-gap:6px}.ribbon-menu__tiles{flex:0 auto}.ribbon-menu__search{flex:160px;height:34px}.ribbon-menu__tools{flex:0 auto;min-width:0}.ribbon-menu__tile{min-width:52px;height:46px;padding:2px 6px var(--space-1)}.ribbon-menu__tile-icon{width:18px;height:18px}.ribbon-menu__tile-icon .icon{width:16px;height:16px}}@media (orientation:landscape) and (height<=500px) and (width<=1023px){.ribbon-menu__tools .btn{height:34px}:is(.ribbon-menu__tools .btn--icon,.ribbon-menu__tools .btn:has(.btn__label)){width:34px;padding:0}.ribbon-menu__tools .btn__label{display:none}}@media (hover:none) and (pointer:coarse){.ribbon-role__option{min-height:44px}}@media (prefers-reduced-motion:reduce){.ribbon-menu__collapse .icon{transition:none}.ribbon-role,.ribbon-role--above,.ribbon-role__chevron,.ribbon-drawer__panel{transition:none;animation:none}}.statistics-view{width:100%;height:100%;overflow:auto}.view.is-active.statistics-view{gap:0}.statistics-stack,.statistics-overview{gap:var(--space-6);flex-direction:column;flex-shrink:0;width:100%;min-width:0;display:flex}.statistics-charts{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.statistics-view__block{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.statistics-view__title-main{font-size:var(--fs-2xl);margin:0;font-weight:700;line-height:1.2}.statistics-view .section-title{margin:0}.section-title{font-size:var(--fs-lg);font-weight:700;line-height:1.2}.stat-grid,.type-grid{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin:0;display:grid}.statistics-view .outage-list,.statistics-view .outage-empty{width:100%;margin:0}.stat-card{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs)}.stat-card__label{margin-bottom:var(--space-2);color:var(--color-text-secondary);font-size:var(--fs-sm)}.stat-card__value{font-size:var(--fs-3xl);letter-spacing:-.03em;font-weight:700;line-height:1.1}.stat-card__value--primary{color:var(--color-primary)}.stat-card__value--success{color:var(--color-success)}.stat-card__value--danger{color:var(--color-danger)}.stat-card__value--warning{color:var(--color-warning)}.stat-card__hint{margin-top:var(--space-2);color:var(--color-text-tertiary);font-size:12px}.statistics-view__placeholder{padding:var(--space-5);border:1px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--fs-sm);background:var(--color-bg-subtle);margin:0}.stat-chart{gap:var(--space-4);min-width:0;height:100%;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs);flex-direction:column;display:flex}.stat-chart__body{align-items:center;gap:var(--space-6);flex-wrap:wrap;flex:1;display:flex}.stat-chart__pie{flex-shrink:0;width:160px;height:160px}.stat-chart__hole{fill:var(--color-bg-white)}.stat-chart__legend{flex-direction:column;flex:1;gap:8px;min-width:8rem;margin:0;padding:0;list-style:none;display:flex}.stat-chart__legend li{font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.stat-chart__swatch{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.stat-chart__n,.stat-bars__n{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-left:auto}.stat-bars{flex-direction:column;flex:1;justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.stat-bars__row{font-size:var(--fs-sm);grid-template-columns:7rem minmax(0,1fr) 3rem;align-items:center;gap:10px;display:grid}.stat-bars__track{border-radius:var(--radius-full);background:var(--color-bg-muted);height:6px;overflow:hidden}.stat-bars__fill{border-radius:inherit;height:100%;display:block}@media (width<=1440px){.stat-card,.stat-chart{padding:var(--space-4)}.stat-card__value{font-size:28px}}@media (width<=1023px){.stat-grid,.type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-charts{grid-template-columns:1fr}}@media (width<=767px){.view.is-active.statistics-view{gap:0}.statistics-stack,.statistics-overview{gap:var(--space-4)}.statistics-view__block{gap:var(--space-2)}.statistics-view__title-main{font-size:var(--fs-xl)}.section-title{font-size:15px}.stat-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.type-grid{gap:var(--space-2);grid-template-columns:1fr}.stat-bars__row{grid-template-columns:1fr;gap:4px}.stat-card,.stat-chart{padding:var(--space-3);border-radius:var(--radius-md)}.stat-chart__pie{width:128px;height:128px}.stat-card__label{margin-bottom:var(--space-1);font-size:12px}.stat-card__value{font-size:22px}.stat-card__hint{margin-top:var(--space-1);font-size:var(--fs-xs)}}.reports-view{width:100%;height:100%;overflow:auto}.view.is-active.reports-view{gap:0}.reports-stack{gap:var(--space-6);flex-direction:column;width:100%;min-width:0;display:flex}.reports-view__title,.reports-block__title{margin:0;font-weight:700;line-height:1.2}.reports-view__title{font-size:var(--fs-2xl)}.reports-block{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.reports-block__title{font-size:var(--fs-lg)}.reports-filters,.reports-table-wrap,.reports-bars{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs)}.reports-filters{align-items:flex-end;gap:var(--space-3);padding:var(--space-4);flex-wrap:wrap;display:flex}.reports-filters__item{gap:var(--space-1);flex-direction:column;flex:160px;min-width:160px;max-width:240px;display:flex}.reports-filters__label{color:var(--color-text-secondary);font-size:var(--fs-sm)}.reports-filters__clear{margin-left:auto}.reports-view__error,.reports-view__empty{color:var(--color-text-secondary);margin:0}.reports-view__error{color:var(--color-danger)}.reports-view__empty{padding:var(--space-5);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);font-size:var(--fs-sm)}.reports-table-wrap{width:100%;overflow-x:auto}.reports-table{border-collapse:collapse;width:100%;font-size:var(--fs-md)}.reports-table th,.reports-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);text-align:left}.reports-table th{color:var(--color-text-secondary);font-size:var(--fs-sm);background:var(--color-bg-subtle);font-weight:600}.reports-table td:first-child{font-weight:600}.reports-table td:not(:first-child),.reports-table th:not(:first-child){font-variant-numeric:tabular-nums;text-align:right}.reports-table tbody tr:last-child td{border-bottom:0}.reports-table tbody tr:hover td{background:var(--color-bg-subtle)}.reports-bars{gap:var(--space-3);padding:var(--space-5);flex-direction:column;margin:0;list-style:none;display:flex}.reports-bars__row{align-items:center;gap:var(--space-3);font-size:var(--fs-sm);grid-template-columns:minmax(7rem,12rem) minmax(0,1fr) 3.5rem;display:grid}.reports-bars__label{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reports-bars__track{border-radius:var(--radius-full);background:var(--color-bg-muted);height:8px;overflow:hidden}.reports-bars__fill{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.reports-bars__n{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;text-align:right}@media (width<=767px){.reports-view__title{font-size:var(--fs-xl)}.reports-filters__item{flex-basis:100%;max-width:none}.reports-filters__clear{margin-left:0}.reports-bars__row{grid-template-columns:minmax(0,1fr) 3.5rem}.reports-bars__label{grid-column:1/-1}}.popup__card.outage-dialog{width:min(480px,100%)}.outage-dialog__form{gap:var(--space-4);flex-direction:column;display:flex}.outage-dialog__who{color:var(--color-text-primary);font-size:var(--fs-md);margin:0;font-weight:700}.outage-dialog__block{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);flex-direction:column;gap:6px;font-weight:700;display:flex}.outage-dialog__seg{gap:var(--space-2);flex-wrap:wrap;display:flex}.outage-dialog__chip{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg-white);color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.outage-dialog__chip.is-on{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary)}.outage-dialog__files{gap:var(--space-2);flex-wrap:wrap;display:flex}.outage-dialog__file{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg-white);color:var(--color-text-primary);font-size:var(--fs-sm);cursor:pointer;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative}.outage-dialog__file input{opacity:0;cursor:pointer;position:absolute;inset:0}.outage-dialog__names{padding-left:var(--space-4);color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;font-weight:500}.outage-dialog__names li{align-items:center;gap:8px;display:flex}.outage-dialog__thumb{object-fit:cover;border-radius:var(--radius-sm);width:36px;height:36px}.outage-dialog__hint{color:var(--color-text-tertiary);font-size:var(--fs-xs);margin:0;font-weight:500}.outage-dialog__sms{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--color-bg-muted);width:100%;color:var(--color-text-secondary);font:inherit;font-size:var(--fs-sm);cursor:pointer;border:0;padding:8px 10px;font-weight:600;display:flex}.outage-log-view{width:100%;height:100%;overflow:auto}.outage-log-view__head{margin-bottom:var(--space-4)}.outage-log-view__title{font-size:var(--fs-2xl);margin:0;font-weight:700;line-height:1.2}.outage-log-view__lede{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:6px 0 0;font-weight:500;line-height:1.4}.outage-list,.outage-empty{margin:0 0 var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs);padding:0;list-style:none;overflow:hidden}.outage-empty{align-items:center;gap:var(--space-3);padding:var(--space-5);color:var(--color-text-secondary);display:flex}.outage-empty .icon{width:22px;height:22px;color:var(--color-warning)}.outage-empty__copy{font-size:var(--fs-sm);margin:0;font-weight:500}.outage-list__item{align-items:center;gap:var(--space-3) var(--space-4);border:0;border-bottom:1px solid var(--color-border-subtle);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;flex-wrap:wrap;padding:14px 18px;display:flex}.outage-list li:last-child .outage-list__item{border-bottom:0}.outage-list__item:hover{background:var(--color-bg-subtle)}.outage-list__mark{border-radius:var(--radius-md);background:var(--color-success-bg);width:40px;height:40px;color:var(--color-success);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.outage-list__mark.is-open{background:var(--color-danger-bg);color:var(--color-danger)}.outage-list__main{flex-direction:column;flex:1;gap:4px;min-width:140px;display:flex}.outage-list__who{font-size:var(--fs-sm);font-weight:700}.outage-list__when{color:var(--color-text-secondary);font-size:12px;font-weight:500}.outage-list__tags,.outage-list__extra{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.outage-list__extra{color:var(--color-text-secondary);font-size:12px;font-weight:600}.outage-log-view__sms-card{padding:var(--space-5);margin-bottom:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs)}.outage-log-view__sms-title{margin:0 0 var(--space-2);font-size:var(--fs-lg);font-weight:700}.outage-log-view__hint{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:500;line-height:1.4}.outage-log-view__sms{width:100%;min-height:96px;margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);resize:vertical;line-height:1.45;display:block}.outage-log-view__actions{display:flex}.app-toast{right:var(--space-4);bottom:var(--space-4);z-index:90;max-width:min(360px, 100% - var(--space-8));padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-lg);color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:600;position:fixed}@media (width<=767px){.outage-log-view__title{font-size:var(--fs-xl)}.outage-log-view__sms-card{padding:var(--space-4)}.outage-list__item{padding:12px 14px}.app-toast{right:var(--space-3);bottom:var(--space-3);left:var(--space-3);max-width:none}}.catalogs-view{width:100%;height:100%;overflow:auto}.catalogs-view__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.catalogs-view__lead{flex:18rem;min-width:0}.catalogs-action{border-radius:var(--radius-sm);height:32px;font:inherit;cursor:pointer;white-space:nowrap;border:0;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.catalogs-action .icon{flex-shrink:0}.catalogs-action--add{border-radius:var(--radius-md);background:var(--color-primary);height:40px;color:var(--color-text-on-primary);font-size:var(--fs-sm);padding:0 14px}.catalogs-action--add .icon{width:16px;height:16px}.catalogs-action--edit{background:var(--color-bg-muted);color:var(--color-text-secondary)}.catalogs-action--del{background:var(--color-danger);color:var(--color-text-on-primary)}.catalogs-action--file{background:var(--color-primary-bg);color:var(--color-primary)}.catalogs-action--excel{border-radius:var(--radius-md);background:var(--color-excel);height:40px;color:var(--color-text-on-primary);font-size:var(--fs-sm);padding:0 14px}.catalogs-action--excel .icon{width:16px;height:16px}.catalogs-action--compact{width:32px;padding:0}.catalogs-action:hover:not(:disabled){box-shadow:var(--shadow-sm)}.catalogs-action:disabled{opacity:.4;cursor:not-allowed}.catalogs-view__heading{align-items:center;gap:10px;display:flex}.catalogs-chains{gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;display:flex}.catalogs-chain-list{gap:var(--space-3);flex-direction:column;display:flex}.catalogs-chain__line{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;display:flex}.catalogs-chain__bit{align-items:center;gap:2px;display:inline-flex}.catalogs-chain__arrow{color:var(--color-text-tertiary);margin-right:4px;font-weight:600}.catalogs-chain__name{color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:700}.catalogs-chain__name:disabled{cursor:default;opacity:.6}.catalogs-chain__fields{gap:var(--space-2);flex-direction:column;grid-column:1/-1;margin:0;padding:0;list-style:none;display:flex}.catalogs-chain__field{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:6px 8px 6px 12px;display:flex}.catalogs-chain__field-name{min-width:0;color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:700}.catalogs-chains .catalogs-view__heading{justify-content:space-between}.catalogs-chains .catalogs-view__title{font-size:var(--fs-xl)}.catalogs-view__heading .spinner{color:var(--color-primary)}.catalogs-view__title{font-size:var(--fs-2xl);margin:0;font-weight:700;line-height:1.2}.catalogs-view__hint{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:6px 0 0;font-weight:500;line-height:1.4}.catalogs-view__chips{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.catalogs-view__chip{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-white);height:36px;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex}.catalogs-view__chip.is-on{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary-active)}.catalogs-view__dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.catalogs-view__panel{margin-bottom:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs);overflow:auto}.catalogs-view__notice{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-danger-bg);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);font-size:var(--fs-sm);font-weight:600}.catalogs-view__tools{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-left:auto;display:flex}.catalogs-view__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.catalogs-view__actions .catalogs-action--file{border-radius:var(--radius-md);height:40px;font-size:var(--fs-sm);padding:0 14px}.catalogs-view__actions .catalogs-action--file .icon{width:16px;height:16px}.catalogs-view__filters{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.catalogs-view__search{width:min(22rem,100%);margin:0}.catalogs-view__filters .catalogs-view__search{width:100%}.catalogs-view:has(.catalogs-chain){overflow:hidden}.catalogs-view__switch{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);padding:2px;display:inline-flex}.catalogs-view__switch-btn{border-radius:var(--radius-sm);height:32px;color:var(--color-text-secondary);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;padding:0 12px;font-weight:600}.catalogs-view__switch-btn.is-on{background:var(--color-bg-white);color:var(--color-text-primary);box-shadow:var(--shadow-xs)}.catalogs-chain{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);flex:1;min-height:320px;display:flex;overflow:hidden}.catalogs-chain__tree{border-right:1px solid var(--color-border);background:var(--color-bg-white);flex-direction:column;width:280px;min-width:220px;display:flex}.catalogs-chain__all{align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:600;display:flex}.catalogs-chain__tree-scroll{flex:1;min-height:0;overflow:auto}.catalogs-chain__empty{padding:var(--space-4);color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0}.catalogs-chain__row{align-items:center;gap:var(--space-2);width:100%;min-height:36px;padding-top:0;padding-right:var(--space-3);padding-bottom:0;display:flex}.catalogs-chain__tick{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-text-primary);font-size:var(--fs-sm);cursor:pointer;flex:1;font-weight:600;display:flex}.catalogs-chain__check{width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0;margin:0}.catalogs-chain__chevron{width:22px;height:22px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;transform:rotate(-90deg)}.catalogs-chain__chevron.is-open{transform:rotate(0)}.catalogs-chain__chevron--spacer{pointer-events:none}.catalogs-chain__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.catalogs-chain__parent{max-width:42%;color:var(--color-text-tertiary);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;font-weight:500;overflow:hidden}.catalogs-chain__stage{flex:1;min-width:0;min-height:0;position:relative}.catalogs-chain__canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;width:100%;height:100%;display:block}.catalogs-chain__canvas:active{cursor:grabbing}.catalogs-chain__stage.is-copy .catalogs-chain__canvas,.catalogs-chain__stage.is-copy .catalogs-chain__canvas:active{cursor:copy}.catalogs-chain__stage.is-deny .catalogs-chain__canvas,.catalogs-chain__stage.is-deny .catalogs-chain__canvas:active{cursor:not-allowed}.catalogs-chain__hint{top:var(--space-3);max-width:min(440px,100% - 24px);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-xs);color:var(--color-text-secondary);font-size:var(--fs-sm);pointer-events:none;margin:0;position:absolute;left:50%;transform:translate(-50%)}.catalogs-chain__zoom{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--chip-bg);box-shadow:var(--shadow-sm);flex-direction:column;gap:4px;padding:4px;display:flex;position:absolute;bottom:12px;right:12px}.catalogs-chain__zoom-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.catalogs-chain__zoom-btn:hover{color:var(--color-primary);background:var(--color-primary-bg)}.catalogs-chain__zoom-btn--level{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;font-size:10px;font-weight:700}.catalogs-chain__bar{bottom:var(--space-3);left:var(--space-3);justify-content:flex-start;align-items:center;gap:var(--space-2);flex-wrap:wrap;max-width:calc(100% - 72px);display:flex;position:absolute}.catalogs-chain__picked{border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-xs);color:var(--color-text-primary);font-size:var(--fs-sm);padding:6px 10px;font-weight:600}.catalogs-chain__error{border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);font-size:var(--fs-sm);padding:6px 10px;font-weight:600}.catalogs-grid{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.catalogs-grid--types{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(400px,1fr));position:relative}.catalogs-card{gap:var(--space-3);min-width:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs);flex-direction:column;display:flex;position:relative}.catalogs-card--type:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.catalogs-card--add{border-style:dashed;border-color:var(--color-primary);background:var(--color-primary-bg);width:100%;box-shadow:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.catalogs-card--add:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.catalogs-card--add:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.catalogs-card--add .catalogs-card__title{color:var(--color-primary-active)}.catalogs-card.is-on{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.catalogs-card.is-dragging{z-index:3;border-color:var(--color-primary);background:var(--color-bg-white);box-shadow:var(--shadow-md)}.catalogs-grip{z-index:2;border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-tertiary);cursor:grab;touch-action:none;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.catalogs-card__head .catalogs-grip{align-self:center}.catalogs-grip:hover{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.catalogs-grip:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.catalogs-grip:disabled{cursor:default;opacity:.45}.is-sorting{-webkit-user-select:none;user-select:none}.is-sorting .catalogs-grip{cursor:grabbing}.is-sorting [data-reorder-id],.catalogs-card.is-busy{pointer-events:none}.catalogs-card__busy{z-index:4;border-radius:inherit;background:color-mix(in srgb, var(--color-bg-white) 80%, transparent);color:var(--color-text-primary);font-size:var(--fs-sm);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-weight:700;display:flex;position:absolute;inset:0}.catalogs-card__busy .spinner{color:var(--color-danger)}.catalogs-card__hit{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.catalogs-card:has(.catalogs-card__hit:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.catalogs-card__head{align-items:flex-start;gap:var(--space-4);min-width:0;display:flex}.catalogs-card__sign{border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex;overflow:hidden}.catalogs-card__sign svg{width:40px;height:40px;display:block;overflow:visible}.catalogs-card__sign--expr{color:var(--color-primary)}.catalogs-card__sign--sum{color:var(--color-success)}.catalogs-card__sign--list{color:var(--color-primary-active)}.catalogs-card__sign--add{background:var(--color-bg-white);color:var(--color-primary)}.catalogs-card__sign--add svg,.catalogs-card__sign--custom svg{width:22px;height:22px}.catalogs-card__sign--add,.catalogs-card__sign--custom{color:var(--color-primary)}.catalogs-card__copy{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.catalogs-card--type .catalogs-card__top{flex-wrap:nowrap}.catalogs-card--type .catalogs-card__actions{flex-shrink:0;flex-basis:auto;margin-left:auto}.catalogs-card__top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.catalogs-card__swatch{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.catalogs-card__title{min-width:0;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-weight:700;line-height:1.3;overflow:hidden}.catalogs-card__meta{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;font-weight:500}.catalogs-card__meta--parent{color:var(--color-primary);font-weight:600}.catalogs-card__chips{flex-wrap:wrap;gap:6px;display:flex}.catalogs-chip{border-radius:var(--radius-full);background:var(--color-bg-muted);max-width:100%;height:24px;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex;overflow:hidden}.catalogs-card__code{border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-primary-active);white-space:pre-wrap;word-break:break-all;padding:10px 12px;font-size:12px;font-weight:600;line-height:1.4;display:block;overflow:auto}.catalogs-card__actions{z-index:2;flex-wrap:wrap;flex-basis:100%;gap:6px;display:flex;position:relative}.catalogs-table{border-collapse:collapse;width:100%;font-size:13px}.catalogs-table th{border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text-secondary);text-align:left;white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:600}.catalogs-table td{border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;padding:14px 16px}.catalogs-table tbody tr:last-child td{border-bottom:0}.catalogs-table tbody tr:hover td{background:var(--color-bg-subtle)}.catalogs-table tbody tr.is-busy td{opacity:.72}.catalogs-table tbody tr.is-busy .catalogs-table__actions{align-items:center}.catalogs-table__name{font-weight:600;display:block}.catalogs-table__key{color:var(--color-text-tertiary);margin-top:2px;font-size:12px;font-weight:500;display:block}.catalogs-table__actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.catalogs-fields{min-width:0;position:relative}.catalogs-fields__scroll:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.catalogs-fields__row{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-white);grid-template-columns:36px minmax(0,1.6fr) auto auto auto max-content;align-items:center;column-gap:12px;padding:10px 16px;display:grid}.catalogs-fields__row:last-child{border-bottom:0}.catalogs-fields__row--head{background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:12px;font-weight:600}.catalogs-fields__row>span:last-child{justify-self:end}.catalogs-fields__row:hover:not(.catalogs-fields__row--head){background:var(--color-bg-subtle)}.catalogs-fields__row.is-busy{opacity:.72}.catalogs-fields__row.is-dragging{z-index:3;background:var(--color-bg-white);box-shadow:var(--shadow-md);position:relative}.catalogs-fields__row.is-flip{transform-origin:0 0;z-index:1}.catalogs-table th:last-child,.catalogs-table td:last-child{text-align:right}.catalogs-empty{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs);color:var(--color-text-secondary);flex-direction:column;display:flex}.catalogs-empty .icon{width:28px;height:28px;color:var(--color-primary)}.catalogs-empty__title{color:var(--color-text-primary);font-size:var(--fs-md);margin:0;font-weight:700}.catalogs-empty__copy{max-width:42ch;font-size:var(--fs-sm);margin:0;font-weight:500;line-height:1.45}.catalogs-empty--busy{padding-top:var(--space-10);padding-bottom:var(--space-10);text-align:center;align-items:center}.catalogs-empty--busy .spinner{color:var(--color-primary)}.catalogs-empty--busy .catalogs-empty__copy{max-width:none}.catalogs-api{gap:var(--space-4);flex-direction:column;display:flex}.catalogs-api__card .catalogs-empty__copy{max-width:56ch}.catalogs-api__group{margin-bottom:0}.catalogs-api__head{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);flex-wrap:wrap;padding:14px 16px 12px;display:flex}.catalogs-api__title{color:var(--color-text-primary);font-size:var(--fs-sm);margin:0;font-weight:700}.catalogs-api__meta{color:var(--color-text-tertiary);margin:0;font-size:12px;font-weight:600}.catalogs-api__group .catalogs-table th:last-child,.catalogs-api__group .catalogs-table td:last-child{text-align:left}.catalogs-api__ops{flex-direction:column;display:flex}.catalogs-op{border-bottom:1px solid var(--color-border-subtle)}.catalogs-op:last-child{border-bottom:0}.catalogs-op__bar{cursor:pointer;align-items:center;gap:12px;padding:10px 14px;list-style:none;display:flex}.catalogs-op__bar::-webkit-details-marker{content:"";display:none}.catalogs-op__bar::marker{content:"";display:none}.catalogs-op__bar:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.catalogs-op__method{border-radius:var(--radius-sm);width:72px;height:24px;color:var(--color-text-on-primary);letter-spacing:.04em;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.catalogs-op__path{min-width:0;color:var(--color-text-primary);word-break:break-all;font-size:13px;font-weight:700}.catalogs-op__summary{color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;font-size:13px;font-weight:500}.catalogs-op__bar .icon{color:var(--color-text-tertiary);flex-shrink:0;transition:transform .16s}.catalogs-op[open] .catalogs-op__bar .icon{transform:rotate(180deg)}.catalogs-op--get{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-bg-white))}.catalogs-op--get .catalogs-op__bar{border-left:4px solid var(--color-primary)}.catalogs-op--get .catalogs-op__method{background:var(--color-primary)}.catalogs-op--post{background:color-mix(in srgb, var(--color-success) 10%, var(--color-bg-white))}.catalogs-op--post .catalogs-op__bar{border-left:4px solid var(--color-success)}.catalogs-op--post .catalogs-op__method{background:var(--color-success)}.catalogs-op--put{background:color-mix(in srgb, var(--color-warning) 12%, var(--color-bg-white))}.catalogs-op--put .catalogs-op__bar{border-left:4px solid var(--color-warning)}.catalogs-op--put .catalogs-op__method{background:var(--color-warning)}.catalogs-op--delete{background:color-mix(in srgb, var(--color-danger) 8%, var(--color-bg-white))}.catalogs-op--delete .catalogs-op__bar{border-left:4px solid var(--color-danger)}.catalogs-op--delete .catalogs-op__method{background:var(--color-danger)}.catalogs-op__body{gap:var(--space-3);background:var(--color-bg-white);flex-direction:column;padding:4px 16px 16px;display:flex}.catalogs-op__try{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-direction:column;padding:12px;display:flex}.catalogs-op__field{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);flex-direction:column;gap:6px;font-weight:700;display:flex}.catalogs-op__actions{align-items:center;gap:var(--space-2);display:flex}.catalogs-op__heading{margin:var(--space-2) 0 0;color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:700}.catalogs-op__copy{color:var(--color-text-secondary);font-size:var(--fs-sm);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.45}.catalogs-op__copy code{font-weight:700}.catalogs-api__table-scroll{max-width:100%;overflow:auto}.catalogs-api__table-scroll:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.catalogs-api__table{margin:0}.catalogs-api__table .catalogs-table__key{margin-top:0;display:inline}.catalogs-op__responses{gap:var(--space-3);flex-direction:column;display:flex}.catalogs-op__status{color:var(--color-text-secondary);font-size:var(--fs-sm);align-items:center;gap:10px;margin:0 0 8px;font-weight:600;display:flex}.catalogs-op__code{border-radius:var(--radius-sm);justify-content:center;align-items:center;min-width:40px;height:22px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.catalogs-op__code--ok{color:var(--color-success);background:var(--color-success-bg)}.catalogs-op__code--off{color:var(--color-danger);background:var(--color-danger-bg)}.catalogs-op__code--warn{color:var(--color-warning);background:var(--color-warning-bg)}@media (width<=767px){.catalogs-op__summary{display:none}}.popup__card.catalogs-dialog{width:min(640px,100%)}.popup__card.catalogs-dialog--list{width:min(1080px,100%)}.popup__card.catalogs-dialog--formula{width:min(720px,100%)}.catalogs-dialog__form{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.catalogs-dialog__item{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);flex-direction:column;gap:6px;font-weight:700;display:flex}.catalogs-dialog__item--wide{grid-column:1/-1}.catalogs-connect__chips{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex}.catalogs-connect__chip{border-radius:var(--radius-full);background:var(--color-bg-muted);max-width:100%;height:28px;color:var(--color-text-primary);align-items:center;gap:4px;padding:0 8px 0 10px;font-size:12px;font-weight:600;display:inline-flex;overflow:hidden}.catalogs-connect__drop{border-radius:var(--radius-full);width:16px;height:16px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.catalogs-connect__drop .icon{width:10px;height:10px}.catalogs-connect__drop:hover{color:var(--color-text-primary)}.catalogs-connect__flags{flex-direction:column;gap:12px;margin-top:8px;display:flex}.catalogs-connect__flag{color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;font-weight:600;display:flex}.catalogs-connect__flag:disabled{opacity:.55;cursor:not-allowed}.catalogs-dialog__form--list{gap:var(--space-4);flex-direction:column;display:flex}.catalogs-dialog__table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);width:100%;max-height:min(440px,52vh);overflow:auto}.catalogs-table--values{width:100%;min-width:720px}.catalogs-table--values.is-linked{min-width:980px}.catalogs-table--values .select .field{height:36px;font-size:var(--fs-sm);padding:0 10px}.catalogs-table--values th.is-parent,.catalogs-table--values td.is-parent{width:280px;min-width:220px}.catalogs-table--values .field{height:36px;padding:0 10px}.catalogs-table--values th.is-num,.catalogs-table--values td.is-num{width:48px;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.catalogs-table--values th.is-action,.catalogs-table--values td.is-action{width:56px}.catalogs-table__empty td{color:var(--color-text-secondary);padding:20px 16px;font-weight:500}.catalogs-table__composer td{background:var(--color-bg-subtle)}.catalogs-dialog__switch-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.catalogs-dialog__switch-note{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:500;line-height:1.35}.catalogs-dialog__kinds{gap:var(--space-2);border:0;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;display:grid}.catalogs-dialog__kinds-legend{color:var(--color-text-secondary);font-size:var(--fs-xs);grid-column:1/-1;margin:0 0 2px;padding:0;font-weight:700}.catalogs-dialog__kinds>.catalogs-dialog__switch{border-radius:var(--radius-md);background:var(--color-bg-white);height:100%;box-shadow:var(--shadow-xs);grid-column:auto;align-items:flex-start;padding:12px}.catalogs-dialog__kinds>.catalogs-dialog__switch:hover{border-color:var(--color-border-strong)}.catalogs-dialog__kinds>.catalogs-dialog__switch.is-active{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-text-primary);box-shadow:var(--shadow-focus)}.catalogs-dialog__kinds>.catalogs-dialog__switch.is-active:hover{border-color:var(--color-primary)}.catalogs-dialog__switch-mark{border:2px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-bg-white);flex:none;width:16px;height:16px;margin-top:1px}.catalogs-dialog__kinds>.catalogs-dialog__switch.is-active .catalogs-dialog__switch-mark{border:5px solid var(--color-primary);background:var(--color-bg-white)}.catalogs-dialog__switch{align-items:flex-start;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);min-width:0;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left;grid-column:1/-1;padding:10px 12px;font-weight:600;display:flex}.catalogs-dialog__switch.is-active{border-color:var(--color-border-strong);background:var(--color-bg)}.catalogs-dialog__width{align-items:center;gap:var(--space-3);grid-column:1/-1;display:flex}.catalogs-dialog__width-copy{min-width:0;color:var(--color-text-primary);font-size:var(--fs-sm);flex-direction:column;flex:1;gap:2px;font-weight:600;display:flex}.catalogs-dialog__width .field{flex:none;width:72px}.catalogs-dialog__width input{width:100%;color:inherit;font:inherit;background:0 0;border:0}.catalogs-dialog__switch.catalogs-dialog__switch--pair{grid-column:auto;align-self:end;height:44px}.catalogs-dialog__set{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-wrap:wrap;grid-column:1/-1;margin:0;display:flex}.catalogs-dialog__set legend{padding:0 var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.catalogs-dialog__set--deps{grid-template-columns:1fr;display:grid}.catalogs-dialog__deps{gap:var(--space-3);flex-direction:column;grid-column:1/-1;display:flex}.catalogs-dialog__deps-title{color:var(--color-text-primary);font-size:var(--fs-sm);margin:0;font-weight:700}.catalogs-dialog__dep{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);flex-direction:column;gap:8px;padding:12px 14px 14px;display:flex}.catalogs-dialog__dep-title{color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:700}.catalogs-dialog__chain{color:var(--color-text-secondary);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-weight:600;display:flex}.catalogs-dialog__chain-gap{color:var(--color-text-tertiary);margin-right:6px;font-weight:500}.catalogs-dialog__chain .is-current{color:var(--color-text-primary);font-weight:700}.catalogs-dialog__star{color:var(--color-danger);margin-right:4px}.catalogs-dialog__locales{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);flex-direction:column;grid-column:1/-1;gap:8px;margin:0;display:flex}.catalogs-dialog__locales legend{padding:0 var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.catalogs-dialog__locale{align-items:center;gap:var(--space-2);min-width:0;display:flex}.catalogs-dialog__locale .field{flex:1;min-width:0}.catalogs-dialog__locale-code{border:1px solid color-mix(in srgb, var(--color-text-primary) 16%, transparent);background:var(--color-bg-white);width:46px;height:31px;box-shadow:var(--shadow-xs);border-radius:4px;flex:0 0 46px;display:block;overflow:hidden}.catalogs-dialog__locale-code svg{width:100%;height:100%;display:block}.catalogs-dialog__locale:focus-within .catalogs-dialog__locale-code{border-color:var(--color-primary)}.catalogs-dialog__locale:focus-within .field{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.catalogs-dialog__sub{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.palette-item__mark svg{width:22px;height:22px}.catalogs-dialog__svg-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.catalogs-dialog__svg-row{align-items:stretch;gap:var(--space-3);display:flex}.catalogs-dialog__svg-preview{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);width:88px;color:var(--color-text-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.catalogs-dialog__svg-preview svg{width:48px;height:48px;display:block;overflow:visible}.catalogs-dialog__svg{min-width:0;min-height:88px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);font:inherit;resize:vertical;flex:1;font-size:12px;line-height:1.4}.catalogs-dialog__items{grid-column:1/-1;margin:0;padding:0;list-style:none}.catalogs-dialog__items li{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.catalogs-dialog__items .field{flex:1;min-width:0}.catalogs-dialog__add-row{align-items:center;gap:var(--space-2);grid-column:1/-1;display:flex}.catalogs-dialog__add-row .field{flex:1;min-width:0}.catalogs-dialog__hint{color:var(--color-text-secondary);font-size:var(--fs-sm);grid-column:1/-1;margin:0;font-weight:500;line-height:1.4}.catalogs-dialog__error{color:var(--color-danger);font-size:var(--fs-sm);grid-column:1/-1;margin:0;font-weight:600;line-height:1.4}.popup__card.catalogs-dialog--import{width:min(980px,100%)}.catalogs-import__file{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.catalogs-import__name{min-width:0;font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.catalogs-import__grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.catalogs-import__sample-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700;display:flex}.catalogs-import__sample{max-height:240px}.catalogs-import__summary{flex-wrap:wrap;gap:8px;display:flex}.catalogs-import__stat{border-radius:var(--radius-full);background:var(--color-bg-muted);color:var(--color-text-secondary);font-size:var(--fs-xs);align-items:baseline;gap:6px;padding:6px 10px;font-weight:700;display:inline-flex}.catalogs-import__stat strong{color:var(--color-text-primary);font-size:var(--fs-sm)}.catalogs-import__errors{flex-direction:column;gap:6px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.catalogs-import__errors li{color:var(--color-danger);font-size:var(--fs-sm);font-weight:600;line-height:1.4}.catalogs-import__bad{color:var(--color-danger)}@media (width<=767px){.catalogs-import__grid{grid-template-columns:1fr}}.catalogs-dialog__expr{width:100%;min-height:96px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);resize:vertical;line-height:1.45}.catalogs-dialog__expr:focus{border-color:var(--color-primary);outline:none}.catalogs-dialog__ops{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-primary-bg);grid-column:1/-1}.catalogs-dialog__ops-title{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--fs-sm);margin:0;font-weight:700;display:flex}.catalogs-dialog__ops-list{margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--fs-sm);padding-left:1.25em;font-weight:500;line-height:1.55}.catalogs-dialog__ops-list code{font-weight:700}.catalogs-dialog__vars{gap:var(--space-4);grid-column:1/-1;display:grid}.catalogs-dialog__vars-title{color:var(--color-text-secondary);font-size:var(--fs-sm);margin:0;font-weight:700}.catalogs-dialog__chips{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.catalogs-dialog__chip{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-white);height:28px;color:var(--color-text-primary);font:inherit;cursor:pointer;padding:0 10px;font-size:12px;font-weight:600}.catalogs-dialog__chip:hover{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary-active)}.catalogs-dialog__color{align-items:center;gap:var(--space-2);display:flex}.catalogs-dialog__color input[type=color]{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;width:40px;height:32px;padding:0}.catalogs-dialog__color code{color:var(--color-text-secondary);font-size:var(--fs-xs)}.catalogs-dialog__paste{width:100%;min-height:120px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);resize:vertical;line-height:1.45}.catalogs-dialog--items .catalogs-detail{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.catalogs-detail{margin-bottom:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-xs)}.catalogs-detail__head{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.catalogs-detail__name{flex:1;min-width:0;margin:0}.catalogs-detail__name .catalogs-dialog__locales,.catalogs-detail__add .catalogs-dialog__locales{flex:1;min-width:0}.catalogs-detail__add{align-items:flex-end;gap:var(--space-2);display:flex}.catalogs-detail__items{margin:0 0 var(--space-4);padding:0;list-style:none}.catalogs-detail__items li{justify-content:space-between;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-border-subtle);font-size:var(--fs-sm);padding:8px 0;font-weight:600;display:flex}.catalogs-detail__add .field{flex:1;min-width:0}.catalogs-split{gap:var(--space-4);flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}.catalogs-view:has(.catalogs-split){overflow:hidden}.catalogs-view:has(.catalogs-split)>.view-split__body{flex-direction:column;display:flex;overflow:hidden}.catalogs-split__pane{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.catalogs-split__bar{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;display:flex}.catalogs-split__lead{flex:8rem;min-width:0}.catalogs-split__title{color:var(--color-text-primary);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;line-height:1.3;overflow:hidden}.catalogs-split__tools{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;max-width:100%;margin-left:auto;display:flex}.catalogs-split__bar .catalogs-view__search{width:min(16rem,100%)}.catalogs-split__scroll{min-height:0;padding:var(--space-4);flex:1;overflow:auto}.catalogs-split__meta{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:500;line-height:1.4}.catalogs-split__list--1 .catalogs-grid--types{grid-template-columns:minmax(0,1fr)}.catalogs-split__list--2 .catalogs-grid--types{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogs-split .catalogs-grid--types{transition:gap .32s cubic-bezier(.22,1,.36,1)}.catalogs-split .catalogs-card--type.is-flip{transform-origin:0 0;will-change:transform;z-index:1}.catalogs-split .catalogs-table__actions .catalogs-action--compact{width:28px;height:28px}.catalogs-split__scroll .catalogs-view__panel{box-shadow:none;background:0 0;border:0;border-radius:0;margin-bottom:0}.catalogs-split .catalogs-card--type{padding:var(--space-4)}.catalogs-split .catalogs-card__sign{width:48px;height:48px}@media (width<=1023px){.catalogs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogs-view:has(.catalogs-split){overflow:auto}.catalogs-view:has(.catalogs-split)>.view-split__body{display:block;overflow:auto}.catalogs-split{grid-template-columns:minmax(0,1fr)}.catalogs-split__pane{min-height:28rem;overflow:visible}.catalogs-split__scroll{overflow:visible}}@media (width<=767px){.catalogs-view__filters{grid-template-columns:1fr}.catalogs-fields{min-width:40rem}.catalogs-view__title{font-size:var(--fs-xl)}.catalogs-view__head{margin-bottom:var(--space-3)}.catalogs-grid{gap:var(--space-3);grid-template-columns:1fr}.catalogs-split__list--2 .catalogs-grid--types{grid-template-columns:minmax(0,1fr)}.catalogs-chain{flex-direction:column}.catalogs-chain__tree{border-right:0;border-bottom:1px solid var(--color-border);width:100%;max-height:220px}.catalogs-chain__zoom{flex-direction:row}.catalogs-card{padding:var(--space-4)}.catalogs-card--type{min-height:0;padding:var(--space-4)}.catalogs-card--type .catalogs-card__top{flex-wrap:wrap}.catalogs-card--type .catalogs-card__title{white-space:normal;overflow-wrap:anywhere;flex-basis:100%}.catalogs-dialog__form,.catalogs-dialog__kinds{grid-template-columns:1fr}.catalogs-dialog__locale-code{flex-basis:36px;width:36px;height:24px}.catalogs-table th,.catalogs-table td{padding:10px 12px}.catalogs-toast{right:var(--space-3);bottom:var(--space-3);left:var(--space-3);max-width:none}}.catalogs-toast{right:var(--space-4);bottom:var(--space-4);z-index:140;min-width:min(300px, 100% - var(--space-8));max-width:min(380px, 100% - var(--space-8));border:1px solid color-mix(in srgb, var(--color-success) 22%, var(--color-border));background:var(--color-bg-white);box-shadow:var(--shadow-lg);border-radius:18px;grid-template-columns:auto 1fr auto;align-items:start;column-gap:14px;padding:16px 12px 18px 16px;animation:.28s cubic-bezier(.22,1,.36,1) catalogs-toast-in;display:grid;position:fixed;overflow:hidden}.catalogs-toast--delete{border-color:color-mix(in srgb, var(--color-danger) 22%, var(--color-border))}.catalogs-toast__mark{border-radius:var(--radius-full);background:var(--color-success-bg);width:40px;height:40px;color:var(--color-success);place-items:center;display:grid}.catalogs-toast--delete .catalogs-toast__mark{background:var(--color-danger-bg);color:var(--color-danger)}.catalogs-toast__body{min-width:0;padding-top:2px}.catalogs-toast__title{color:var(--color-success);letter-spacing:.01em;font-size:12px;font-weight:700}.catalogs-toast--delete .catalogs-toast__title{color:var(--color-danger)}.catalogs-toast__label{color:var(--color-text-primary);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 6px;font-weight:700;line-height:1.3;overflow:hidden}.catalogs-toast__meta{color:var(--color-text-secondary);flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0;font-size:12px;font-weight:600;line-height:1.4;display:flex}.catalogs-toast__meta time{font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:700}.catalogs-toast__close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.catalogs-toast__close:hover{background:var(--color-bg-muted);color:var(--color-text-secondary)}.catalogs-toast__life{transform-origin:0;background:color-mix(in srgb, var(--color-success) 55%, transparent);height:3px;animation:5.2s linear forwards catalogs-toast-life;position:absolute;bottom:0;left:0;right:0}.catalogs-toast--delete .catalogs-toast__life{background:color-mix(in srgb, var(--color-danger) 55%, transparent)}@keyframes catalogs-toast-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes catalogs-toast-life{to{transform:scaleX(0)}}.excel-view{flex:1;min-height:0;position:relative;overflow:auto}.list-foot{border-top:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text-tertiary);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px 16px;padding:8px 16px;font-size:12px;font-weight:600;display:flex}.list-foot__lead{flex-shrink:0;align-items:center;gap:12px;display:flex}.list-foot__legend{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:4px 14px;margin:0;padding:0;list-style:none;display:flex}.list-foot__key{align-items:center;gap:6px;display:inline-flex}.list-foot__swatch{border-radius:var(--radius-sm);border:1px solid #0000;flex-shrink:0;width:12px;height:12px}.list-foot__swatch--on{background:var(--row-on-bg);border-color:var(--color-primary-active)}.list-foot__swatch--branch{background:var(--row-off-bg);border-color:var(--color-danger)}@keyframes list-foot-blink{0%,to{opacity:1}50%{opacity:.35}}.list-foot__swatch--off{background:var(--row-off-bg);border-color:var(--color-danger);animation:1.2s ease-in-out infinite list-foot-blink}.list-foot__swatch--warn{background:var(--color-warning-bg);border-color:var(--color-warning)}.table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}.table th{z-index:2;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text-secondary);text-align:left;white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:600;position:sticky;top:0}.table td{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-white);text-overflow:ellipsis;white-space:nowrap;height:40px;padding:0 16px;overflow:hidden}.table__pad td{background:var(--color-bg-white);border:0;padding:0}.table th:first-child,.table td:first-child{z-index:1;min-width:48px;box-shadow:var(--shadow-xs);text-align:center;position:sticky;left:0}.table th:last-child,.table td:last-child{z-index:1;box-shadow:var(--shadow-xs);position:sticky;right:0}.table th:first-child,.table th:last-child{z-index:4}.table tr.row-on td{background:var(--row-on-bg);color:var(--color-primary-active);font-weight:700}.table tr.row-off td{background:var(--row-off-bg);color:var(--color-danger);font-weight:700}.table tr.row-warn td{background:var(--color-warning-bg);color:var(--color-warning);font-weight:700}@keyframes table-off-direct{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:var(--shadow-md)}}.table tr.row-off-direct{animation:1.2s ease-in-out infinite table-off-direct}.table tr.row-selected td{background:var(--color-primary-bg-strong)}.table__actions{align-items:center;gap:6px;display:flex}.table__power{cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.icon-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-on-primary);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn--add{background:var(--color-primary)}.icon-btn--edit{background:var(--color-bg-muted);color:var(--color-text-secondary)}.icon-btn--del{background:var(--color-danger)}.icon-btn:hover:not(:disabled){box-shadow:var(--shadow-sm)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}@media (width<=767px){.table{font-size:12px}.table th{padding:8px 10px;font-size:11px}.table td{height:36px;padding:0 10px}.table th:last-child,.table td:last-child{box-shadow:none;position:static}.table th:first-child,.table td:first-child{min-width:40px}.list-foot{padding:6px 10px;font-size:11px}.list-foot__legend{justify-content:flex-start;gap:4px 10px}}@media (hover:none) and (pointer:coarse){.icon-btn{width:30px;height:30px}}@media (prefers-reduced-motion:reduce){.table tr.row-off-direct,.list-foot__swatch--off{animation:none}.table tr.row-off-direct{box-shadow:var(--shadow-sm)}}.organization-view__section-title{border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);align-items:center;margin:0;padding:14px 16px;font-size:15px;font-weight:600;display:flex}.organization-view__tools{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.organization-view__folds{gap:4px;display:inline-flex}.organization-view__fold{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-secondary);background:var(--color-bg-white);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.organization-view__body{flex:1;min-height:0;display:flex;position:relative}.organization-view__content{flex:1;min-height:0;padding:16px;position:relative;overflow:auto}.organization-view__detail{border-left:1px solid var(--color-border);background:var(--color-bg-subtle);flex:0 0 320px;width:320px;min-width:0;padding:12px;overflow:auto}.organization-view .diagram-info--docked{z-index:1;width:100%;position:relative;top:auto;left:auto;transform:none}.org-detail__path{flex-wrap:wrap;align-items:center;gap:2px 0;min-width:0;margin:10px 12px 0;display:flex}.org-detail__crumb-wrap{align-items:center;min-width:0;display:inline-flex}.org-detail__crumb{white-space:nowrap;text-overflow:ellipsis;border-radius:var(--radius-sm);max-width:140px;color:var(--color-text-secondary);font:inherit;font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;padding:2px 6px;font-weight:600;overflow:hidden}.org-detail__crumb:hover{background:var(--color-primary-bg);color:var(--color-primary)}.org-detail__crumb.is-current{color:var(--color-text-primary);cursor:default}.org-detail__sep{color:var(--color-text-tertiary);font-size:var(--fs-xs)}.org-tree{width:100%}.organization-view__count{color:var(--color-text-tertiary);margin-left:8px;font-size:12px;font-weight:600}.org-tree__pad{flex-shrink:0}.org-node__row.is-target .org-stripe{outline:2px solid var(--color-primary);outline-offset:1px}.org-node__row{align-items:center;width:100%;height:46px;display:flex}.org-node__gutter{flex-shrink:0;align-self:stretch;align-items:stretch;display:flex}.org-indent{width:var(--org-indent-w);flex-shrink:0;position:relative}.org-indent:before{content:"";top:0;bottom:0;left:calc(var(--org-indent-w) / 2);border-left:1px dotted var(--tree-line);position:absolute}.org-indent.is-last:before{bottom:50%}.org-indent.is-end:after{content:"";top:50%;left:calc(var(--org-indent-w) / 2);width:calc(var(--org-indent-w) / 2);border-top:1px dotted var(--tree-line);position:absolute}.org-switcher{border:1px solid var(--color-border-strong);background:var(--color-bg-white);width:18px;height:18px;color:var(--color-text-secondary);cursor:pointer;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;margin:auto 8px auto 0;padding:0;font-size:14px;line-height:1;display:inline-flex}.org-switcher:disabled{pointer-events:none;opacity:0}.org-stripe{white-space:nowrap;cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:12px;min-width:0;min-height:44px;padding:8px 12px;font-weight:700;display:flex}.org-stripe[draggable=true]{cursor:grab}.org-stripe[draggable=true]:active{cursor:grabbing}.org-stripe--on{border:1px solid var(--color-primary-bg-strong);background:var(--row-on-bg);color:var(--color-primary-active)}.org-stripe--off{border:1px solid var(--color-danger-border);background:var(--row-off-bg);color:var(--color-danger);box-shadow:var(--shadow-xs)}.org-stripe--warn{border:1px solid var(--color-warning);background:var(--color-warning-bg);color:var(--color-warning);box-shadow:var(--shadow-xs)}@keyframes org-off-direct{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:var(--shadow-md)}}.org-stripe--off-direct{animation:1.2s ease-in-out infinite org-off-direct}.org-stripe.is-dragging{opacity:.45}.org-stripe.is-drop-into{outline:2px solid var(--color-primary);outline-offset:1px}.org-stripe.is-drop-before{box-shadow:inset 0 2px 0 0 var(--color-primary)}.org-stripe.is-drop-after{box-shadow:inset 0 -2px 0 0 var(--color-primary)}.org-stripe__grip{width:14px;height:20px;color:var(--color-text-tertiary);flex-shrink:0;display:flex}.org-stripe__grip .icon{width:14px;height:20px}.org-stripe__text{flex:1;min-width:0}.org-stripe__actions{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.org-stripe__power{cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.drop-choice-popup{z-index:40;margin-top:-8px;position:fixed;transform:translate(-50%,-100%)}.drop-choice-popup.is-hidden{display:none}.drop-choice-popup__card{border:1px solid var(--color-border);background:var(--color-bg-white);box-shadow:var(--shadow-md);border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:inline-flex}.drop-choice-popup__btn{width:36px;height:36px;color:var(--color-text-on-primary);border:none;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.drop-choice-popup__btn .icon{width:18px;height:18px}.drop-choice-popup__btn--add{background:var(--color-success)}.drop-choice-popup__btn--insert{background:var(--color-warning)}.drop-choice-popup__divider{background:var(--color-border);width:1px;height:20px}.drop-choice-popup__close{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;font-size:18px;line-height:1}@media (width<=767px){.organization-view__section-title{padding:10px 12px;font-size:14px}.organization-view__content{padding:10px}.organization-view__detail{z-index:12;background:var(--color-bg-app);border-left:0;flex:none;width:auto;padding:10px;position:absolute;inset:0}.org-node__row{height:42px}.org-stripe{gap:8px;min-height:40px;padding:6px 10px;font-size:13px}.org-stripe__actions{gap:6px}.org-switcher{margin-right:6px}.drop-choice-popup__btn{width:40px;height:40px}}@media (hover:none) and (pointer:coarse){.org-switcher{width:22px;height:22px}}@media (prefers-reduced-motion:reduce){.org-stripe--off-direct{box-shadow:var(--shadow-sm);animation:none}}.view.is-active.diagram-view{box-shadow:none;background:0 0;border:none;flex-direction:row;align-items:stretch;gap:16px;overflow:hidden}.diagram-view{position:relative}.diagram-palette{width:var(--palette-w);background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.diagram-palette:before{content:"";background:var(--color-primary);flex-shrink:0;height:3px;display:block}.diagram-palette--icons{background:var(--color-bg-subtle);border-top:0;border-bottom:0;border-left:0;border-radius:0;width:120px}.diagram-palette--icons .diagram-palette__title{display:none}.diagram-palette--icons .diagram-palette__head{border-bottom-color:var(--color-border-subtle);flex-direction:column;align-items:stretch;gap:6px;padding:8px 0 6px;display:flex}.diagram-palette--icons .diagram-palette__tabs{border-radius:0;width:100%;margin-bottom:0}.diagram-palette--icons .diagram-palette__tab{height:32px}.diagram-palette--icons .diagram-palette__count{min-width:12px;height:12px;font-size:8px;line-height:12px;top:0;left:auto;right:0}.diagram-palette--icons .diagram-palette__search{background:var(--color-bg-white);width:100%;height:40px;box-shadow:none;border-color:#0000;border-radius:0;justify-content:center;padding:0;position:relative}.diagram-palette--icons .diagram-palette__search:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus);color:var(--color-primary)}.diagram-palette--icons .diagram-palette__search input{text-align:center;padding:0 4px;font-size:12px;font-weight:600;position:absolute;inset:0}.diagram-palette--icons .diagram-palette__search input::-webkit-search-decoration{appearance:none}.diagram-palette--icons .diagram-palette__search input::-webkit-search-cancel-button{appearance:none}.diagram-palette--icons .diagram-palette__search input::placeholder{color:#0000}.diagram-palette--icons .diagram-palette__search:focus-within .icon{opacity:0}.diagram-palette--icons .diagram-palette__search:has(input:not(:placeholder-shown)) .icon{opacity:0}.diagram-palette--icons .diagram-palette__items{grid-template-columns:1fr 1fr;grid-auto-rows:minmax(44px,1fr);gap:4px;padding:0;display:grid}.diagram-palette--icons .diagram-palette__items--top{grid-auto-rows:auto;align-content:start}.diagram-palette--icons .diagram-palette__items--top .palette-item{aspect-ratio:1;align-self:start;height:auto}.diagram-palette--icons .palette-item{border-radius:var(--radius-sm);background:var(--color-bg-white);width:100%;min-width:0;height:100%;min-height:0;box-shadow:var(--shadow-xs);color:var(--color-text-primary);border-color:#0000;justify-content:center;align-items:center;padding:0;display:flex}.diagram-palette--icons .palette-item .icon,.diagram-palette--icons .palette-item__mark svg{width:26px;height:26px}.diagram-palette--icons .palette-item__mark path,.diagram-palette--icons .palette-item__mark circle,.diagram-palette--icons .palette-item__mark ellipse,.diagram-palette--icons .palette-item__mark rect,.diagram-palette--icons .palette-item__mark line,.diagram-palette--icons .palette-item__mark polyline,.diagram-palette--icons .palette-item__mark polygon{vector-effect:non-scaling-stroke}.diagram-palette--icons .palette-item[data-type=substation]{color:var(--color-primary)}.diagram-palette--icons .palette-item[data-type=transformer]{color:var(--color-success)}.diagram-palette--icons .palette-item[data-type=panel]{color:var(--color-warning)}.diagram-palette--icons .palette-item[data-type=subscriber]{color:var(--color-text-primary)}.diagram-palette--icons .palette-item[data-type=generator]{color:var(--color-success)}.diagram-palette--icons .palette-item[data-type=switchgear]{color:var(--color-primary-active)}.diagram-palette--icons .palette-item[data-type=cabinet]{color:var(--color-warning)}.diagram-palette--icons .palette-item[data-type=capacitor]{color:var(--color-danger)}.diagram-palette--icons .palette-item[data-type=cable]{color:var(--color-primary-active)}.diagram-palette--icons .palette-item[data-type^=fav]{color:var(--color-warning)}.diagram-palette--icons .palette-item:hover{box-shadow:var(--shadow-sm);border-color:#0000}.diagram-palette--icons .palette-item.is-armed[data-type]{background:var(--color-primary);color:var(--color-text-on-primary)}.diagram-palette--icons .palette-item[data-type=transformer]:hover{background:var(--color-success-bg);color:var(--color-success)}.diagram-palette--icons .palette-item[data-type=panel]:hover{background:var(--color-warning-bg);color:var(--color-warning)}.diagram-palette--icons .palette-item[data-type=generator]:hover{background:var(--color-success-bg);color:var(--color-success)}.diagram-palette--icons .palette-item[data-type=cabinet]:hover{background:var(--color-warning-bg);color:var(--color-warning)}.diagram-palette--icons .palette-item[data-type=capacitor]:hover{background:var(--color-danger-bg);color:var(--color-danger)}.diagram-palette--icons .palette-item.is-armed[data-type=transformer]{background:var(--color-success);color:var(--color-text-on-primary)}.diagram-palette--icons .palette-item.is-armed[data-type=panel]{background:var(--color-warning);color:var(--color-text-on-primary)}.diagram-palette--icons .palette-item.is-armed[data-type=generator]{background:var(--color-success);color:var(--color-text-on-primary)}.diagram-palette--icons .palette-item.is-armed[data-type=cabinet]{background:var(--color-warning);color:var(--color-text-on-primary)}.diagram-palette--icons .palette-item.is-armed[data-type=capacitor]{background:var(--color-danger);color:var(--color-text-on-primary)}.diagram-palette__head{border-bottom:1px solid var(--color-border);padding:14px 14px 10px}.diagram-palette__title{margin-bottom:10px;font-size:13px;font-weight:700}.diagram-palette__tabs{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-direction:row;gap:2px;margin-bottom:10px;padding:3px;display:flex}.diagram-palette__tab{border-radius:var(--radius-sm);height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.diagram-palette__tab.is-active{background:var(--color-bg-white);color:var(--color-primary);box-shadow:var(--shadow-xs)}.diagram-palette__count{border-radius:var(--radius-full);background:var(--color-primary-bg);min-width:16px;height:16px;color:var(--color-primary);text-align:center;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:2px;left:calc(50% + 6px)}.diagram-palette__tab.is-active .diagram-palette__count{background:var(--color-primary);color:var(--color-text-on-primary)}.diagram-palette__empty{color:var(--color-text-tertiary);text-align:center;padding:16px 8px;font-size:12px;font-weight:600;line-height:1.4}.diagram-palette__search{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle);width:100%;height:34px;color:var(--color-text-tertiary);align-items:center;gap:8px;padding:0 10px;display:flex}.diagram-palette__search:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus);color:var(--color-primary)}.diagram-palette__search input{width:100%;min-width:0;color:var(--color-text-primary);background:0 0;border:0;outline:none;font-size:13px}.diagram-palette__search input::placeholder{color:var(--color-text-tertiary)}.diagram-palette__body{flex-direction:column;flex:1;min-height:0;display:flex}.diagram-palette__items{flex-direction:column;flex:1;gap:8px;min-height:0;padding:10px;display:flex;overflow:auto}.diagram-palette--list .palette-item{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.diagram-palette--icons .diagram-palette__empty{color:var(--color-text-tertiary);grid-column:1/-1;padding:8px 0}.palette-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-xs);color:var(--color-text-primary);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;padding:10px 12px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.palette-item--favorite{justify-content:space-between;align-items:center;gap:8px;display:flex;position:relative}.palette-item__add,.palette-item__remove{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.palette-item__add:hover{background:var(--color-primary-bg);color:var(--color-primary)}.palette-item__remove:hover{background:var(--color-danger-bg);color:var(--color-danger)}.diagram-palette--icons .palette-item__add{display:none}.diagram-palette--icons .palette-item--favorite{position:relative}.diagram-palette--icons .palette-item__remove{background:var(--color-bg-white);width:16px;height:16px;box-shadow:var(--shadow-xs);position:absolute;top:2px;right:2px}.palette-item:hover{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary-active)}.palette-item:active{cursor:grabbing}.palette-item.is-dragging{opacity:.45}.palette-ghost{z-index:40;pointer-events:none;border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-md);color:var(--color-primary-active);opacity:.92;padding:10px 12px;font-size:13px;font-weight:600;position:fixed;transform:translate(-50%,-50%)}.palette-ghost--icon{justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;padding:0;display:flex}.diagram-workspace{background-color:var(--diagram-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;min-height:0;box-shadow:var(--shadow-xs);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.app-layout:not(.is-diagram-full) .app-main:has(>.view-split:not(.is-tiled)>.diagram-view.is-active){padding:0 var(--safe-r) var(--safe-b) var(--safe-l)}.view-split:not(.is-tiled)>.diagram-view.is-active>.view-split__body{gap:0}:where(.view-split:not(.is-tiled)>.diagram-view.is-active>.view-split__body)>.diagram-palette{border-top:0;border-bottom:0;border-left:0;border-radius:0}.view-split:not(.is-tiled)>.diagram-view.is-active>.view-split__body>.diagram-workspace{border-left:0}.app-layout:not(.is-diagram-full) .view-split:not(.is-tiled)>.diagram-view.is-active .diagram-workspace{border-top:0;border-bottom:0;border-radius:0}.diagram-stage{flex:auto;min-width:0;min-height:0;position:relative}.diagram-canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block;position:absolute;inset:0}.diagram-hud{background:var(--chip-bg);border:0;border-top:1px solid var(--color-border);height:30px;color:var(--color-text-secondary);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;white-space:nowrap;border-radius:0;align-items:center;gap:10px;padding:0 12px;font-size:11px;font-weight:600;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.diagram-hud b{color:var(--color-primary);font-variant-numeric:tabular-nums}.diagram-room-exit{z-index:8;pointer-events:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 24px);display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}:is(.diagram-workspace:has(>.diagram-path.is-visible) .diagram-room-exit,.diagram-workspace:has(>.diagram-path.is-visible) .diagram-hint,.diagram-workspace:has(>.diagram-path.is-visible) .diagram-fold--hint){top:48px}.diagram-room-exit .btn{pointer-events:auto;box-shadow:var(--shadow-md)}.diagram-room-exit__split{border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-md);pointer-events:auto;align-items:center;gap:4px;padding:4px 6px;display:inline-flex}.diagram-room-exit__split .btn{box-shadow:none}.diagram-room-exit__split-label{color:var(--color-text-secondary);padding:0 4px;font-size:12px}.diagram-hud__item{align-items:center;gap:4px;display:inline-flex}.diagram-hud__item+.diagram-hud__item{border-left:1px solid var(--color-border);padding-left:10px}.diagram-nav{border-radius:var(--radius-md);background:var(--chip-bg);border:1px solid var(--color-border);width:220px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:8px;position:absolute;bottom:12px;left:12px}.diagram-minimap{border-radius:var(--radius-sm);background:var(--diagram-bg);border:1px solid var(--color-border);cursor:crosshair;touch-action:none;width:204px;height:116px;display:block}.diagram-hint{border-radius:var(--radius-md);background:var(--chip-bg);border:1px solid var(--color-border);max-width:min(300px,100% - 24px);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-text-secondary);pointer-events:none;font-size:11px;font-weight:600;line-height:1.4;position:absolute;top:12px;right:12px;overflow:hidden}.diagram-fold{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--chip-bg);width:28px;height:28px;color:var(--color-text-secondary);box-shadow:var(--shadow-xs);cursor:pointer;pointer-events:auto;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.diagram-fold--up .icon{transform:rotate(180deg)}.diagram-fold--edge{z-index:6;position:absolute}.diagram-fold--path{top:8px;left:50%;transform:translate(-50%)}.diagram-fold--hint{top:12px;right:12px}.diagram-fold--map{bottom:12px;left:12px}.diagram-fold--hud{bottom:8px;left:50%;transform:translate(-50%)}.diagram-hint__head .diagram-fold,.diagram-nav .diagram-fold,.diagram-path>.diagram-fold,.diagram-hud .diagram-fold{width:22px;height:22px;box-shadow:none}.diagram-hint__head .diagram-fold{margin-left:auto}.diagram-nav .diagram-fold{z-index:3;position:absolute;top:4px;right:4px}.diagram-hud .diagram-fold{margin-left:auto}:is(.diagram-workspace:has(.diagram-hud) .diagram-nav,.diagram-workspace:has(.diagram-hud) .diagram-fold--map,.diagram-workspace:has(.diagram-hud) .diagram-tools){bottom:42px}.diagram-workspace:has(.diagram-hud) .diagram-place{bottom:46px}.diagram-hint:before{content:"";background:var(--color-primary);height:2px;display:block}.diagram-hint__head{color:var(--color-primary);align-items:center;gap:6px;padding:8px 10px 6px;font-size:11px;font-weight:700;display:flex}.diagram-hint__mouse,.diagram-hint__touch{flex-direction:column;gap:6px;padding:0 10px 10px;display:flex}.diagram-hint__line{flex-wrap:wrap;align-items:center;gap:4px 5px;display:flex}.diagram-hint__key{background:var(--color-primary-bg);border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));height:18px;color:var(--color-primary);border-radius:4px;align-items:center;padding:0 6px;font-family:inherit;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.diagram-hint__plus,.diagram-hint__or,.diagram-hint__dot{color:var(--color-text-tertiary)}.diagram-tools{flex-direction:row;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.diagram-display{border-radius:var(--radius-md);background:var(--chip-bg);border:1px solid var(--color-border);width:260px;min-height:0;max-height:min(440px,100vh - 96px);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:10px 12px;overflow:auto}.diagram-display__title{color:var(--color-text-secondary);margin-bottom:8px;font-size:12px;font-weight:700}.diagram-display__row{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;font:inherit;font-size:var(--fs-sm);color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:0;padding:6px 0;display:flex}.diagram-display__row--depth{cursor:default}.diagram-display__step{align-items:center;gap:4px;display:flex}.diagram-display__step-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;line-height:1}.diagram-display__step-btn:hover:not(:disabled){background:var(--color-primary-bg);color:var(--color-primary)}.diagram-display__step-btn:disabled{opacity:.4;cursor:default}.diagram-display__step-value{font-variant-numeric:tabular-nums;text-align:center;min-width:1.4em;font-weight:700}.diagram-display__step-value--text{min-width:6.6em;font-size:11px}.diagram-display__choice{border-radius:var(--radius-sm);background:var(--color-bg-muted);padding:2px;display:flex}.diagram-display__choice-btn{border-radius:var(--radius-sm);color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 8px;font-size:11px;font-weight:700}.diagram-display__choice-btn:hover:not(.is-on){color:var(--color-text-primary)}.diagram-display__choice-btn.is-on{background:var(--color-bg-white);color:var(--color-primary)}.diagram-display__rule{background:var(--color-border);height:1px;margin:6px 0}.diagram-zoom{border-radius:var(--radius-md);background:var(--chip-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;gap:4px;padding:4px;display:flex}.diagram-zoom__btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.diagram-zoom__btn:hover,.diagram-zoom__btn.is-on{background:var(--color-primary-bg);color:var(--color-primary)}.diagram-zoom__btn--level{font-variant-numeric:tabular-nums;color:var(--color-text-tertiary);font-size:10px;font-weight:700}.diagram-palette-toggle,.diagram-scrim,.diagram-hint__touch{display:none}.diagram-hint__draw{border-top:1px solid var(--color-border);flex-direction:column;gap:6px;margin:0 10px 10px;padding:8px 0 0;display:flex}@media (hover:none) and (pointer:coarse){.diagram-hint__mouse{display:none}.diagram-hint__touch{display:flex}.diagram-zoom__btn{width:40px;height:40px}}.diagram-place{z-index:15;border-radius:var(--radius-full);background:var(--color-primary);max-width:calc(100% - 24px);color:var(--color-text-on-primary);box-shadow:var(--shadow-md);align-items:center;gap:8px;padding:8px 8px 8px 14px;font-size:12px;font-weight:600;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.diagram-place__text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.diagram-place__cancel{background:color-mix(in srgb, var(--color-text-on-primary) 22%, transparent);width:24px;height:24px;color:inherit;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.palette-item.is-armed{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-text-on-primary)}@media (width<=1023px){.view.is-active.diagram-view{gap:0}.diagram-palette{z-index:20;width:min(var(--palette-w), 82vw);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);border-left:1px solid var(--color-border);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:var(--shadow-lg);transition:transform .22s;position:absolute;top:0;bottom:0;left:0;transform:translate(-102%)}.diagram-view:has(.diagram-palette-toggle[aria-expanded=true]) .diagram-palette{transform:none}.diagram-palette--icons{width:120px}.diagram-scrim{z-index:19;background:color-mix(in srgb, var(--color-text-primary) 32%, transparent);opacity:0;pointer-events:none;transition:opacity .22s;display:block;position:absolute;inset:0}.diagram-view:has(.diagram-palette-toggle[aria-expanded=true]) .diagram-scrim{opacity:1;pointer-events:auto}.diagram-palette-toggle{z-index:22;width:var(--tap);height:var(--tap);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--chip-bg);color:var(--color-text-secondary);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.diagram-view:has(.diagram-palette-toggle[aria-expanded=true]) .diagram-palette-toggle{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-primary)}.diagram-hud{overflow:hidden}.diagram-hint{right:calc(12px + var(--tap) + 8px);max-width:min(240px, 100% - 24px - var(--tap) - 8px)}.diagram-fold--hint{right:calc(12px + var(--tap) + 8px)}.diagram-nav{width:180px}.diagram-minimap{width:164px;height:92px}.diagram-zoom__btn{width:var(--tap);height:var(--tap)}}@media (width<=767px){.diagram-hud{height:26px;padding:0 10px;font-size:10px}.diagram-hint,.diagram-nav,.diagram-hud__item--extra{display:none}.diagram-palette-toggle{top:8px;right:8px}.diagram-palette{width:min(var(--palette-w), 86vw)}.diagram-palette--icons{width:120px}.diagram-tools{flex-direction:column;max-width:calc(100% - 16px);max-height:calc(100% - 16px);bottom:8px;right:8px}.diagram-workspace:has(.diagram-hud) .diagram-tools{max-height:calc(100% - 42px);bottom:34px}.diagram-display{width:236px;max-width:100%}.diagram-zoom{flex-flow:wrap;flex-shrink:0;width:226px;max-width:100%}.diagram-zoom__btn{flex:0 0 40px;width:40px;height:40px}.diagram-place{bottom:112px}.diagram-workspace:has(.diagram-hud) .diagram-place{bottom:130px}}@media (orientation:landscape) and (height<=500px) and (width<=1023px){.diagram-hint,.diagram-nav{display:none}.diagram-tools{flex-direction:column;max-width:calc(100% - 24px);max-height:calc(100% - 24px)}.diagram-workspace:has(.diagram-hud) .diagram-tools{max-height:calc(100% - 54px)}.diagram-zoom{flex-flow:row;flex-shrink:0;width:auto;max-width:100%;overflow-x:auto}.diagram-zoom__btn{flex:0 0 34px;width:34px;height:34px}.diagram-place{bottom:60px}.diagram-workspace:has(.diagram-hud) .diagram-place{bottom:78px}}@media (prefers-reduced-motion:reduce){.diagram-palette,.diagram-scrim,.palette-item{transition:none}}.diagram-room-plan{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.diagram-room-plan__chips,.diagram-room-plan__presets,.diagram-room-plan__list{flex-wrap:wrap;gap:8px;display:flex}.diagram-room-plan__list{flex-direction:column;align-items:stretch}.diagram-room-plan__chip{touch-action:none;-webkit-user-select:none;user-select:none}.diagram-room-plan__body,.diagram-room-plan__editor{gap:12px;display:grid}.diagram-room-plan__body p{color:var(--color-text-secondary);margin:0}.diagram-room-plan__geometry{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.diagram-room-plan__field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.diagram-room-plan__label{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.diagram-room-plan__editor input[type=number]{appearance:textfield}.diagram-room-plan__editor input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.diagram-room-plan__editor input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.diagram-info{z-index:24;border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-bg-white);width:max-content;min-width:min(300px,100% - 24px);max-width:min(560px,100% - 24px);box-shadow:var(--shadow-lg);pointer-events:auto;position:absolute;overflow:hidden;transform:translate(-50%,-100%)}.diagram-info:before{content:"";background:var(--color-primary);height:3px;display:block}.diagram-info--transformer:before{background:var(--color-success)}.diagram-info--panel:before{background:var(--color-warning)}.diagram-info--subscriber:before{background:var(--color-text-secondary)}.diagram-info--generator:before{background:var(--color-success)}.diagram-info--switchgear:before{background:var(--color-primary-active)}.diagram-info--cabinet:before{background:var(--color-warning)}.diagram-info--capacitor:before{background:var(--color-danger)}.diagram-info--cable:before{background:var(--color-primary)}.diagram-info--off,.diagram-info--off-branch{border-color:var(--color-danger-border)}.diagram-info--off:before,.diagram-info--off-branch:before{background:var(--color-danger)}.diagram-info--warn{border-color:var(--color-warning)}.diagram-info--warn:before{background:var(--color-warning)}@keyframes info-off-direct{0%,to{box-shadow:var(--shadow-md)}50%{box-shadow:var(--shadow-lg)}}.diagram-info--off{animation:1.2s ease-in-out infinite info-off-direct}.diagram-info--draft{border-color:var(--color-warning);animation:1.2s ease-in-out infinite info-draft}.diagram-info--draft:before{background:var(--color-warning)}.diagram-info__draft{color:var(--color-warning);font-size:var(--fs-sm);margin:8px 12px 0;font-weight:600}@keyframes info-draft{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:0 0 0 3px var(--color-warning-bg), var(--shadow-md)}}.diagram-info__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);padding:12px 12px 0;display:flex}.diagram-info__who{align-items:flex-start;gap:10px;min-width:0;display:flex}.diagram-info__mark{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-primary);background:var(--color-primary-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.diagram-info__sign{width:22px;height:22px;display:flex}.diagram-info__sign svg{width:100%;height:100%;display:block;overflow:visible}.diagram-info--transformer .diagram-info__mark{color:var(--color-success);background:var(--color-success-bg)}.diagram-info--panel .diagram-info__mark{color:var(--color-warning);background:var(--color-bg-muted)}.diagram-info--subscriber .diagram-info__mark{color:var(--color-text-secondary);background:var(--color-bg-muted)}.diagram-info--generator .diagram-info__mark{color:var(--color-success);background:var(--color-success-bg)}.diagram-info--switchgear .diagram-info__mark{color:var(--color-primary-active);background:var(--color-primary-bg)}.diagram-info--cabinet .diagram-info__mark{color:var(--color-warning);background:var(--color-bg-muted)}.diagram-info--capacitor .diagram-info__mark{color:var(--color-danger);background:var(--color-danger-bg)}.diagram-info--cable .diagram-info__mark{color:var(--color-primary);background:var(--color-primary-bg)}.diagram-info--off .diagram-info__mark,.diagram-info--off-branch .diagram-info__mark{color:var(--color-danger);background:var(--color-danger-bg)}.diagram-info--warn .diagram-info__mark{color:var(--color-warning);background:var(--color-warning-bg)}.diagram-info__who-text{min-width:0}.diagram-info__kicker{color:var(--color-text-secondary);font-size:var(--fs-xs);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.2;overflow:hidden}.diagram-info__name{white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-primary);font-size:var(--fs-md);font-weight:700;line-height:var(--lh-tight);margin-top:2px;overflow:hidden}.diagram-info--off .diagram-info__name,.diagram-info--off-branch .diagram-info__name{color:var(--color-danger)}.diagram-info--warn .diagram-info__name{color:var(--color-warning)}.diagram-info__folds{flex-shrink:0;align-items:center;gap:2px;display:flex}.diagram-info__turns{border-right:1px solid var(--color-border);gap:2px;margin-right:4px;padding-right:6px;display:flex}.diagram-info__turns .btn{color:var(--color-text-primary)}.diagram-info__folds .btn{width:28px;height:28px}.diagram-info__turns .icon{overflow:visible}.diagram-info__rows{border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-direction:column;gap:8px;margin:12px 12px 0;padding:10px 12px;display:flex}.diagram-info__row{grid-template-columns:1fr auto;align-items:baseline;gap:4px 10px;min-width:0;display:grid}.diagram-info__label{color:var(--color-text-tertiary);font-size:var(--fs-xs);font-weight:600}.diagram-info__value{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--color-text-primary);font-size:var(--fs-sm);text-align:right;font-weight:700;overflow:hidden}.diagram-info__meter{border-radius:var(--radius-full);background:var(--color-bg-muted);grid-column:1/-1;height:4px;overflow:hidden}.diagram-info__meter>span{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.diagram-info--transformer .diagram-info__meter>span{background:var(--color-success)}.diagram-info--off .diagram-info__meter>span,.diagram-info--off-branch .diagram-info__meter>span{background:var(--color-danger)}.diagram-info--warn .diagram-info__meter>span{background:var(--color-warning)}.diagram-info__input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-app);width:100%;min-width:0;height:28px;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);margin-top:2px;padding:0 8px;font-weight:700}.diagram-info__power{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--color-success-bg);width:calc(100% - 24px);color:var(--color-text-secondary);font:inherit;cursor:pointer;border:0;margin:10px 12px 0;padding:8px 10px;display:flex}.diagram-info--off .diagram-info__power,.diagram-info--off-branch .diagram-info__power{background:var(--color-danger-bg)}.diagram-info--warn .diagram-info__power{background:var(--color-warning-bg)}.diagram-info__power-copy{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);text-align:left;flex:1;font-weight:700}.diagram-info__actions{gap:6px;padding:12px;display:flex}.diagram-info__btn{border-radius:var(--radius-md);min-width:36px;height:36px;box-shadow:var(--shadow-xs);cursor:pointer;border:none;flex:1;justify-content:center;align-items:center;display:inline-flex}.diagram-info__btn .icon{width:18px;height:18px}.diagram-info__btn--map,.diagram-info__btn--edit{color:var(--color-primary);background:var(--color-primary-bg)}.diagram-info__btn--add{color:var(--color-success);background:var(--color-success-bg)}.diagram-info__btn--insert,.diagram-info__btn--sibling{color:var(--color-warning);background:var(--color-bg-muted)}.diagram-info__btn--delete{color:var(--color-danger);background:var(--color-danger-bg)}.diagram-info__btn:hover{background:var(--color-primary-bg-strong)}.diagram-info__btn--add:hover{background:var(--color-success-bg);box-shadow:inset 0 0 0 1px var(--color-success)}.diagram-info__btn--insert:hover,.diagram-info__btn--sibling:hover{background:var(--color-bg-muted);box-shadow:inset 0 0 0 1px var(--color-warning)}.diagram-info__btn--delete:hover{background:var(--color-danger-bg);box-shadow:inset 0 0 0 1px var(--color-danger)}.diagram-info__btn--map:hover,.diagram-info__btn--edit:hover{box-shadow:inset 0 0 0 1px var(--color-primary)}.diagram-info__btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}@media (prefers-reduced-motion:reduce){.diagram-info--off{box-shadow:var(--shadow-lg);animation:none}.diagram-info--draft{box-shadow:0 0 0 3px var(--color-warning-bg), var(--shadow-md);animation:none}}.element-form{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.element-form__item--wide{grid-column:1/-1}.element-form__field,.element-form__item{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.element-form__field--invalid .field[aria-invalid=true]{border-color:var(--color-danger)}.element-form__field--invalid .field:has([aria-invalid=true]){border-color:var(--color-danger)}.element-form__field--invalid .element-form__label{color:var(--color-danger)}.element-form__error{color:var(--color-danger);font-size:var(--fs-xs);line-height:var(--lh-base);margin:0}.element-form__place{gap:var(--space-2);flex-direction:column;display:flex}.element-form__place-search{position:relative}.element-form__place-hits{z-index:2;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);max-height:160px;box-shadow:var(--shadow-md);margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.element-form__place-hits li.is-muted{color:var(--color-text-secondary);font-size:var(--fs-xs);padding:8px 10px}.element-form__place-hits button{border-radius:var(--radius-sm);width:100%;color:inherit;font:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 10px;display:block}.element-form__place-hits button:hover{background:var(--color-bg-muted)}.element-form__place-map{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-muted);width:100%;height:180px;position:relative;overflow:hidden}.element-form__place-map .leaflet-container{z-index:0;width:100%;height:100%;font:inherit;background:var(--color-bg-muted);position:absolute;inset:0}.element-form__location{gap:var(--space-2);display:flex}.element-form__location .field,.element-form__barcode .field{flex:1;min-width:0}.element-form__barcode{gap:var(--space-2);display:flex}.element-form__scan{border:1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border));border-radius:var(--radius-md);background:var(--color-primary-bg);width:44px;height:44px;color:var(--color-primary);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-primary) 18%, transparent);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.element-form__scan:hover{color:var(--color-text-on-primary);background:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.element-form__label{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:700}.element-form__file-name{color:var(--color-text-secondary);font-size:var(--fs-sm);align-items:center;gap:6px;font-weight:500;display:flex}.element-form__power{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--color-success-bg);width:100%;color:var(--color-text-secondary);font:inherit;cursor:pointer;border:0;grid-column:1/-1;padding:8px 10px;display:flex}.element-form__power:disabled{cursor:default;opacity:.7}.element-form__power--off{background:var(--color-danger-bg)}.element-form__power-copy{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-xs);text-align:left;flex:1;font-weight:700}@media (width<=767px){.element-form{grid-template-columns:1fr}}.graph-empty{z-index:20;padding:var(--space-6);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.graph-empty--busy{pointer-events:auto;background:color-mix(in srgb, var(--color-bg-white) 72%, transparent)}.graph-empty--busy .graph-empty__mark{color:var(--color-primary)}.graph-empty__card{pointer-events:auto;align-items:center;gap:var(--space-3);max-width:320px;padding:var(--space-6) var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-sm);text-align:center;flex-direction:column;display:flex}.graph-empty__mark{border-radius:var(--radius-full);background:var(--color-primary-bg);width:56px;height:56px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex}.graph-empty__title{color:var(--color-text-primary);font-size:var(--fs-md);margin:0;font-weight:700}.graph-empty__copy{margin:0 0 var(--space-1);max-width:28ch;color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:500;line-height:1.45}.scan-popup{width:min(420px,100%)}.scan-popup__hint,.scan-popup__error{margin:0 0 var(--space-3);font-size:var(--fs-sm);font-weight:500;line-height:1.4}.scan-popup__hint{color:var(--color-text-secondary)}.scan-popup__error{color:var(--color-danger)}.scan-popup__video{aspect-ratio:3/4;border-radius:var(--radius-md);background:var(--color-text-primary);object-fit:cover;width:100%;max-height:min(52vh,420px);display:block}.scan-popup__file{border-radius:var(--radius-md);background:var(--color-bg-muted);height:40px;color:var(--color-text-primary);font-size:var(--fs-sm);cursor:pointer;align-items:center;padding:0 14px;font-weight:600;display:inline-flex}.scan-popup__stage{border-radius:var(--radius-md);position:relative;overflow:hidden}.scan-popup__reticle{border:2px solid color-mix(in srgb, var(--color-text-on-primary) 85%, transparent);border-radius:var(--radius-sm);box-shadow:0 0 0 999px color-mix(in srgb, var(--color-text-primary) 35%, transparent);pointer-events:none;position:absolute;inset:18%}.assist-cursor{z-index:100;color:var(--color-primary);pointer-events:none;align-items:flex-start;display:flex;position:fixed;transform:translate(2px,2px)}.assist-cursor__arrow{width:16px;height:16px;fill:var(--color-primary);filter:drop-shadow(0 1px 1px var(--color-border))}.assist-tap{z-index:99;border:2px solid var(--color-primary);border-radius:var(--radius-full);opacity:.85;pointer-events:none;width:28px;height:28px;animation:.45s ease-out forwards assist-tap;position:fixed;transform:translate(-50%,-50%)}.assist-tap--mark{border-width:3px;width:44px;height:44px;animation:1.6s ease-out forwards assist-mark}@keyframes assist-tap{0%{opacity:.9;transform:translate(-50%,-50%)scale(.35)}to{opacity:0;transform:translate(-50%,-50%)scale(1.7)}}@keyframes assist-mark{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)}12%{opacity:1;transform:translate(-50%,-50%)scale(1)}70%{opacity:.95;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.2)}}.assist-cursor__name{margin-left:var(--space-1);padding:1px var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-bg-white);font-size:var(--fs-xs);font-weight:700;line-height:1.4}.assist-bar{z-index:95;left:50%;bottom:var(--space-4);gap:var(--space-2);width:max-content;max-width:min(560px, 100% - var(--space-6));padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);color:var(--color-text-primary);font-size:var(--fs-sm);flex-wrap:wrap;justify-content:center;align-items:center;font-weight:600;display:flex;position:fixed;transform:translate(-50%)}.assist-bar__audio{gap:var(--space-1);display:flex}.assist-bar .assist-bar__mic--on,.assist-bar .assist-bar__speaker--on{color:var(--color-text-on-primary);background:var(--color-success);border-color:var(--color-success)}.assist-bar .assist-bar__mic--off,.assist-bar .assist-bar__speaker--off{color:var(--color-danger);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.assist-bar__scope{color:var(--color-text-secondary);font-size:var(--fs-xs);text-align:center;flex-basis:100%;margin:0;font-weight:600;line-height:1.4}.assist-bar__muted{color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:600}.assist-dialog{width:min(420px,100%)}.assist-code{margin:0 0 var(--space-3);color:var(--color-text-primary);font-size:var(--fs-3xl);letter-spacing:.18em;text-align:center;font-weight:700}.assist-hint,.assist-error{margin:0 0 var(--space-3);font-size:var(--fs-sm);font-weight:500;line-height:1.4}.assist-hint{color:var(--color-text-secondary)}.assist-error{color:var(--color-danger)}.assist-qr{width:min(220px,70%);height:auto;margin:0 auto var(--space-3);display:block}.assist-actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.assist-menu{gap:var(--space-2);flex-direction:column;display:flex}.assist-choice{justify-content:flex-start;gap:var(--space-3);height:auto;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:left}.assist-choice:hover{border-color:var(--color-primary-bg-strong);background:var(--color-bg-subtle)}.assist-choice:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.assist-choice__mark{border-radius:var(--radius-md);background:var(--color-primary-bg);width:40px;height:40px;color:var(--color-primary);flex:none;place-items:center;display:grid}.assist-choice__text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.assist-choice__title{color:var(--color-text-primary);font-size:var(--fs-md);font-weight:700}.assist-choice__hint{color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:500;line-height:1.35}.assist-toast{z-index:90;top:var(--space-4);max-width:min(420px, 100% - var(--space-6));padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-text-primary);color:var(--color-bg-white);font-size:var(--fs-sm);text-align:center;font-weight:700;animation:.22s ease-out assist-toast;position:fixed;left:50%;transform:translate(-50%)}@keyframes assist-toast{0%{opacity:0;transform:translate(-50%)translateY(-8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.assist-offstage{display:none}.assist-stage{z-index:60;background:var(--color-bg-app);place-items:center;display:grid;position:fixed;inset:0}.assist-stage__phone{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-white);box-shadow:var(--shadow-lg);overflow:hidden}.assist-stage__frame{background:var(--color-bg-white);transform-origin:0 0;border:0;display:block}.assist-actions__btn{flex:1}@media (prefers-reduced-motion:reduce){.assist-tap,.assist-toast{animation:none}}.comm{gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.comm--split{grid-template-columns:minmax(14rem,22rem) minmax(0,1fr);align-items:start;display:grid}.comm__folders,.comm__actions,.comm-sign__factors{gap:var(--space-2);flex-wrap:wrap;display:flex}.comm__compose{gap:var(--space-3);flex-direction:column;display:flex}.comm__compose textarea,.comm__compose input{width:100%;color:inherit;font:inherit;background:0 0;border:0}.comm__list,.comm__lines{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.comm__letter,.comm__lines li{gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-white);flex-direction:column;display:flex}.comm__lines li.is-mine{background:var(--color-bg-subtle)}.comm__empty,.comm__error{color:var(--color-text-secondary);margin:0}.comm__error{color:var(--color-danger)}.comm__threads,.comm__thread,.comm__audits{min-width:0}.map-view{background:var(--map-grad);flex-direction:column;min-height:0;position:relative}.map-view__stage{flex:1;min-height:0;position:relative}.map-view__container,.map-view .leaflet-container{z-index:0;isolation:isolate;width:100%;height:100%;font:inherit;background:var(--map-grad);position:relative}html[data-theme=midnight] .leaflet-tile-pane{filter:invert()hue-rotate(180deg)brightness(.92)saturate(.65)}.leaflet-control-attribution{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--chip-bg);box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--color-text-tertiary);margin:0 10px 10px 0;padding:4px 10px;font-size:10px;font-weight:600}.leaflet-control-attribution a{color:var(--color-text-secondary)}.map-pin,.map-edge-label{background:0 0;border:none;overflow:visible}.map-pin__box{--pin-fill:var(--color-primary);width:20px;height:20px;position:relative}.map-pin__halo{z-index:0;background:color-mix(in srgb, var(--pin-fill) 38%, transparent);filter:blur(5px);pointer-events:none;border-radius:50%;width:28px;height:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-60%)}.map-pin__inner{z-index:1;border:2px solid var(--color-text-on-primary);width:20px;height:20px;box-shadow:var(--shadow-sm), inset 0 1px 0 color-mix(in srgb, var(--color-text-on-primary) 35%, transparent);border-radius:50% 50% 50% 0;display:block;position:relative;transform:rotate(-45deg)}.map-pin__col{z-index:2;pointer-events:none;white-space:nowrap;flex-direction:column;gap:2px;display:none;position:absolute;top:50%;transform:translateY(-50%)}.map-pin__col--left{align-items:flex-end;right:calc(100% + 6px)}.map-pin__col--right{align-items:flex-start;left:calc(100% + 6px)}.map-pin__tag,.map-edge-label__tag{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--chip-bg);box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--color-text-primary);padding:2px 7px;font-size:10px;font-weight:600;line-height:16px}.map-edge-label{display:none}.map-edge-label__tag{white-space:nowrap;pointer-events:none;display:block;transform:translate(-50%,-50%)}.leaflet-container.map-view--labels .map-pin__col,.map-pin--selected .map-pin__col,.map-pin--focus .map-pin__col{display:flex}.leaflet-container.map-view--labels .map-edge-label,.map-edge-label--selected{display:block}.map-pin--off .map-pin__inner{background:var(--color-danger);animation:1.2s ease-in-out infinite map-pin-off}.map-pin--off .map-pin__halo{background:color-mix(in srgb, var(--color-danger) 45%, transparent)}.map-pin--selected .map-pin__halo,.map-pin--focus .map-pin__halo{background:color-mix(in srgb, var(--color-warning) 50%, transparent);width:36px;height:36px;animation:1.4s ease-in-out infinite map-pin-halo}.map-pin--selected .map-pin__inner,.map-pin--focus .map-pin__inner{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-warning) 85%, transparent), var(--shadow-md), inset 0 1px 0 color-mix(in srgb, var(--color-text-on-primary) 35%, transparent);transform:rotate(-45deg)scale(1.12)}.map-view__line{stroke:var(--color-primary);stroke-linecap:round;stroke-linejoin:round}.map-view__line--off{stroke:var(--color-danger)}.map-view__line--selected{stroke:var(--color-warning);filter:drop-shadow(0 0 4px color-mix(in srgb, var(--color-warning) 55%, transparent))}.map-view__line-hit{fill:none;stroke:#0000}.map-view__hud{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--chip-bg);max-width:calc(100% - 24px);height:30px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--color-text-secondary);pointer-events:none;white-space:nowrap;align-items:center;gap:10px;padding:0 12px;font-size:11px;font-weight:600;display:flex;position:absolute;top:12px;left:12px;overflow:hidden}.map-view__hud b{color:var(--color-primary);font-variant-numeric:tabular-nums}.map-view__hud-item{align-items:center;gap:4px;display:inline-flex}.map-view__hud-item+.map-view__hud-item{border-left:1px solid var(--color-border);padding-left:10px}.map-view__hud-item--off b{color:var(--color-danger)}.map-zoom{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--chip-bg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;gap:4px;padding:4px;display:flex;position:absolute;bottom:12px;left:12px}.map-zoom__btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.map-zoom__btn:hover{background:var(--color-primary-bg);color:var(--color-primary)}.map-zoom__btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.map-view__filter-panel{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--chip-bg);width:240px;max-height:60vh;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;top:12px;right:12px;overflow:hidden auto}.map-view__filter-panel:before{background:var(--color-primary);content:"";height:2px;display:block}.map-view__filter-panel-title{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);padding:10px 14px 6px;font-size:12px;font-weight:700;display:flex}.map-view__filter-panel-count{color:var(--color-primary);font-variant-numeric:tabular-nums}.map-filter{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;color:var(--color-text-primary);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:0;padding:7px 14px;display:flex}.map-filter:hover{background:var(--color-primary-bg)}.map-filter:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.map-filter__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.map-dot{border:2px solid color-mix(in srgb, var(--color-text-on-primary) 70%, transparent);width:10px;height:10px;box-shadow:var(--shadow-xs);border-radius:50%;flex-shrink:0}.map-view__empty-hint{z-index:20;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--chip-bg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--color-text-secondary);font-size:var(--fs-sm);padding:10px 14px;font-weight:600;display:flex;position:absolute;bottom:12px;left:56px;right:12px}.map-view__empty-hint .icon{color:var(--color-primary)}.map-view .diagram-info{z-index:30}@keyframes map-pin-off{0%,to{opacity:1;transform:rotate(-45deg)scale(1)}50%{opacity:.7;transform:rotate(-45deg)scale(1.08)}}@keyframes map-pin-halo{0%,to{opacity:.55;transform:translate(-50%,-60%)scale(1)}50%{opacity:.9;transform:translate(-50%,-60%)scale(1.12)}}@media (width<=1023px){.map-view__filter-panel{width:200px}}@media (width<=767px){.map-view__hud-item--extra{display:none}.map-view__filter-panel{width:176px;top:8px;right:8px}.map-zoom{bottom:8px;left:8px}.map-filter{padding:6px 12px;font-size:12px}.map-view__empty-hint{bottom:8px;left:52px;right:8px}}@media (width<=400px){.map-view__filter-panel{width:164px}}@media (prefers-reduced-motion:reduce){.map-pin--off .map-pin__inner,.map-pin--selected .map-pin__halo,.map-pin--focus .map-pin__halo{animation:none}}.dispatch-view{isolation:isolate;position:relative;overflow:hidden}.view.is-active.dispatch-view{contain:paint;box-shadow:none;border:none;flex-direction:column;overflow:hidden}.dispatch-view__stage{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;flex:1;min-height:0;position:relative;overflow:hidden}.dispatch-view__stage:active{cursor:grabbing}.dispatch-view__canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block;position:absolute;inset:0}.dispatch-view__stage:active .dispatch-view__canvas{cursor:grabbing}.dispatch-view__chrome{z-index:2;pointer-events:none;position:absolute;inset:0}.dispatch-view__tools,.dispatch-view__zoom,.dispatch-view__search,.dispatch-view__hud{pointer-events:auto}.dispatch-view__tools{border:1px solid var(--color-border);background:var(--color-bg-white);box-shadow:var(--shadow-sm);border-radius:2px;align-items:center;gap:2px;padding:3px 4px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.dispatch-view__tool{width:28px;height:24px;color:var(--color-text-primary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dispatch-view__tool--red{color:var(--color-danger)}.dispatch-view__hud{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--chip-bg);height:30px;box-shadow:var(--shadow-xs);color:var(--color-text-secondary);align-items:center;gap:10px;padding:0 12px;font-size:11px;font-weight:600;display:flex;position:absolute;top:12px;left:12px}.dispatch-view__hud-item b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.dispatch-view__hud-item--off b{color:var(--color-danger)}.dispatch-view__hud-btn{border:1px solid var(--color-border);border-radius:var(--radius-full);height:22px;color:var(--color-text-secondary);background:var(--color-bg-white);align-items:center;gap:4px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.dispatch-view__hud-btn:hover,.dispatch-view__hud-btn.is-active{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-bg)}.dispatch-view__zoom{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--chip-bg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;gap:4px;padding:4px;display:flex;position:absolute;bottom:12px;right:12px}.dispatch-view__zoom-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.dispatch-view__zoom-btn:hover{color:var(--color-primary);background:var(--color-primary-bg)}.dispatch-view__zoom-btn--level{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;font-size:10px;font-weight:700}.dispatch-view .diagram-info{z-index:30;pointer-events:none}.dispatch-view .diagram-info button,.dispatch-view .diagram-info a,.dispatch-view .diagram-info input{pointer-events:auto}.dispatch-view .diagram-info--cable .diagram-info__power,.dispatch-view .diagram-info--cable .diagram-info__btn--add{display:none}.dispatch-view__search{border:1px solid var(--color-border-strong);background:var(--color-bg-white);width:360px;max-height:min(420px,100% - 24px);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:absolute;top:10px;right:12px}.dispatch-view__search-head{height:28px;color:var(--color-text-primary);font-size:var(--fs-sm);background:var(--color-bg-muted);justify-content:space-between;align-items:center;padding:0 8px;font-weight:600;display:flex}.dispatch-view__search-x{color:var(--color-text-secondary);background:0 0;border:none;padding:0;display:inline-flex}.dispatch-view__search-tabs{border-bottom:1px solid var(--color-border);gap:0;display:flex}.dispatch-view__search-tab{height:28px;color:var(--color-text-secondary);background:var(--color-bg-subtle);border:none;border-bottom:2px solid #0000;flex:1;padding:0 8px;font-size:12px}.dispatch-view__search-tab.is-active{color:var(--color-text-primary);border-bottom-color:var(--color-primary);background:var(--color-bg-white);font-weight:600}.dispatch-view__search-body{flex:1;min-height:0;display:flex}.dispatch-view__search-list{border-right:1px solid var(--color-border);width:140px;margin:0;padding:4px 0;list-style:none;overflow:auto}.dispatch-view__search-list button{width:100%;color:var(--color-text-primary);text-align:left;background:0 0;border:none;padding:3px 10px;font-size:12px;display:block}.dispatch-view__search-list button.is-active{color:var(--color-text-on-primary);background:var(--color-primary)}.dispatch-view__search-fields{gap:var(--space-3);padding:var(--space-3);flex-direction:column;flex:1;display:flex}.dispatch-view__search-label{color:var(--color-text-secondary);flex-direction:column;gap:4px;font-size:12px;display:flex}.dispatch-view__search-label input{border:1px solid var(--color-border);height:32px;color:var(--color-text-primary);font-size:var(--fs-sm);background:var(--color-bg-white);padding:0 8px}@media (hover:none) and (pointer:coarse){.dispatch-view__zoom-btn{width:40px;height:40px}}.dispatch-view .graph-empty__card{border:1px solid var(--dispatch-empty-border);background:var(--dispatch-empty-bg);max-width:280px;box-shadow:var(--dispatch-empty-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;gap:10px;padding:28px 32px 24px}.dispatch-view .graph-empty__mark{background:var(--dispatch-empty-accent-bg);width:48px;height:48px;color:var(--dispatch-empty-accent)}.dispatch-view .graph-empty__title{color:var(--dispatch-empty-text);letter-spacing:.01em;font-size:15px}.dispatch-view .graph-empty__copy{color:var(--dispatch-empty-muted);margin-bottom:4px}.dispatch-view .graph-empty .btn--primary{border-color:var(--dispatch-empty-button);background:var(--dispatch-empty-button);min-width:148px;color:var(--dispatch-empty-button-text)}.dispatch-view .graph-empty .btn--primary:hover{background:var(--dispatch-empty-accent);border-color:var(--dispatch-empty-accent)}@media (width<=767px){.dispatch-view__search{width:calc(100% - 16px);right:8px}.dispatch-view__tools{left:12px;transform:none}}.app-layout.is-diagram-full .app-header,.app-layout.is-palette-hidden .diagram-palette,.app-layout.is-palette-hidden .diagram-palette-toggle,.app-layout.is-palette-hidden .diagram-scrim{display:none}.app-layout.is-diagram-full .app-main{padding:0}.app-layout.is-diagram-full .diagram-workspace{border:0;border-radius:0}.diagram-path{z-index:7;border-radius:var(--radius-full);background:var(--chip-bg);border:1px solid var(--color-border);height:32px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;align-items:center;gap:4px;padding:0 6px 0 8px;font-size:11px;font-weight:600;display:none;position:absolute;top:8px;left:12px;right:12px;overflow:hidden}.diagram-path.is-visible{display:flex}.diagram-path.is-folded{justify-content:center;width:auto;height:28px;padding:2px;display:flex;top:8px;left:50%;right:auto;transform:translate(-50%)}.diagram-path__crumb{border-radius:var(--radius-sm);font:inherit;color:var(--color-text-secondary);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:180px;padding:2px 6px;overflow:hidden}.diagram-path__crumb:hover{background:var(--color-primary-bg);color:var(--color-primary)}.diagram-path__crumb.is-current{color:var(--color-text-primary)}.diagram-path__sep{color:var(--color-text-tertiary)}.diagram-path__inner{border-radius:var(--radius-full);background:var(--color-primary-bg);color:var(--color-primary);padding:2px 8px}.diagram-path__cable{border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text-on-primary);padding:2px 8px}.diagram-path__meta{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;margin-left:auto;padding:2px 8px}.diagram-path__isolate{border-radius:var(--radius-full);background:var(--color-primary-bg);color:var(--color-primary);align-items:center;gap:6px;margin-left:auto;padding:2px 4px 2px 8px;display:inline-flex}.diagram-path__isolate button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:13px;line-height:1}.diagram-path>.diagram-fold{flex:none;margin-left:auto}.diagram-path.is-folded>.diagram-fold{margin-left:0}.diagram-path__isolate~.diagram-fold{margin-left:4px}.canvas-menu{z-index:60;border-radius:var(--radius-md);background:var(--color-bg-white);border:1px solid var(--color-border);min-width:216px;max-width:280px;max-height:calc(100vh - 16px);box-shadow:var(--shadow-lg);padding:4px;position:fixed;overflow:auto}.canvas-menu__title{color:var(--color-text-tertiary);text-overflow:ellipsis;white-space:nowrap;padding:6px 10px;font-size:11px;font-weight:600;overflow:hidden}.canvas-menu__hint{border-radius:var(--radius-sm);background:var(--color-primary-bg);color:var(--color-primary-active);align-items:flex-start;gap:6px;margin:0 4px 6px;padding:6px 8px;font-size:11px;font-weight:600;line-height:1.35;display:flex}.canvas-menu__hint .icon{color:var(--color-primary);margin-top:1px}.canvas-menu__hint-text{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.canvas-menu__kbd{background:var(--color-bg-white);border:1px solid color-mix(in srgb, var(--color-primary) 28%, var(--color-border));height:18px;color:var(--color-primary);border-radius:4px;align-items:center;padding:0 6px;font-family:inherit;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.canvas-menu__item{border-radius:var(--radius-sm);width:100%;font:inherit;text-align:left;color:var(--color-text-primary);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:7px 10px;font-size:13px;display:block;overflow:hidden}.canvas-menu__item:hover{background:var(--color-bg-subtle)}.canvas-menu__item.is-current{color:var(--color-primary);font-weight:700}.canvas-menu__item--danger{color:var(--color-danger)}.canvas-menu__sep{background:var(--color-border);height:1px;margin:4px 6px;display:block}.ribbon-menu__search{position:relative}.search-results{z-index:55;border-radius:var(--radius-md);background:var(--color-bg-white);border:1px solid var(--color-border);max-height:280px;box-shadow:var(--shadow-lg);padding:4px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.search-results__item{border-radius:var(--radius-sm);width:100%;font:inherit;text-align:left;color:var(--color-text-primary);cursor:pointer;background:0 0;border:0;align-items:baseline;gap:8px;padding:6px 8px;font-size:13px;display:flex}.search-results__item:hover,.search-results__item.is-active{background:var(--color-primary-bg)}.search-results__type{color:var(--color-text-tertiary);margin-left:auto;font-size:11px;font-weight:600}.search-results__empty{color:var(--color-text-tertiary);padding:8px;font-size:12px}@media (width<=1023px){.diagram-path{right:calc(12px + var(--tap) + 8px)}.diagram-path.is-folded{left:50%;right:auto}}@media (width<=767px){.diagram-path{top:8px;right:calc(8px + var(--tap) + 8px);left:8px}.diagram-path.is-folded{left:50%;right:auto}.diagram-path__crumb{max-width:108px}.canvas-menu{min-width:200px;max-width:calc(100vw - 16px)}.canvas-menu__item{padding:10px;font-size:14px}}@media (width<=400px){.diagram-path__crumb{max-width:76px}}@media (hover:none) and (pointer:coarse){.canvas-menu__item{padding:10px}.canvas-menu__hint{display:none}}html[data-theme=midnight]{--color-primary:#5b8cff;--color-primary-hover:#7aa3ff;--color-primary-active:#c7d7ff;--color-primary-bg:#1b2a4a;--color-primary-bg-strong:#243860;--color-danger:#ff6b7a;--color-danger-bg:#3a1c22;--color-danger-border:#6b3038;--color-success:#3dd68c;--color-success-bg:#163528;--color-warning:#f5b942;--color-warning-bg:#3a2e12;--color-text-primary:#eef2ff;--color-text-secondary:#9aa6c2;--color-text-tertiary:#6d7894;--color-bg-app:#0b1020;--color-bg-white:#141a2e;--color-bg-subtle:#101628;--color-bg-muted:#1c243c;--color-border:#2a3554;--color-border-strong:#3d4b70;--color-border-subtle:#ffffff0f;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 1px 3px #00000052, 0 1px 2px #00000038;--shadow-md:0 4px 12px #0000005c, 0 1px 3px #0000003d;--shadow-lg:0 16px 40px #00000073;--row-on-bg:#1b2a4a;--row-off-bg:#3a1c22;--row-off-node-bg:#3a1c22;--switch-off:#3d4b70;--login-glow-1:#5b8cff47;--login-glow-2:#3dd68c1f;--login-grad:linear-gradient(160deg, #0b1020 0%, #141a2e 50%, #0e1528 100%);--login-mark-shadow:0 10px 24px #5b8cff59;--chip-bg:#141a2edb;--diagram-bg:#101628;--diagram-grid:#ffffff0d;--diagram-line:#7aa3ff;--map-grad:linear-gradient(180deg, #152018 0%, #1a2420 45%, #12181c 100%);--header-bg:#141a2e;--tabs-bg:#101628;--tree-line:#3d4b70}
